X := "abc";
Ordering := "LLEX";
Relations := [["aa",""], ["bb",""], ["ab","c"], ["ac", "b"], ["cb", "a"]];
F1 := [[1,"a"],[1,""]];
F2 := [[1,"b"],[1,"ba"]];
NC.MRMultiply(X, Ordering, Relations, F1, F2);
[[1, "ba"], [1, "ca"], [1, "b"], [1, "c"]]
-------------------------------
NC.MRMultiply(X, Ordering, Relations, F2, F1);
[[2, "ba"], [2, "b"]]
-------------------------------
X := "abc";
Ordering := "LLEX";
Relations := [["aa",""], ["bb",""], ["ab","c"], ["ac", "b"], ["cb", "a"]];
F1 := [[1,"a"],[1,""]];
NC.MRMultiply(X, Ordering, Relations, F1, []); -- F1*0
[ ]
-------------------------------
|