NC.SetFp(3);
NC.SetX("abc");
NC.RingEnv();
Coefficient ring : Fp = Z/(3)
Alphabet : abc
Ordering : LLEX
-------------------------------
F1 := [[2,"a"],[1,""]];
F2 := [[2,"b"],[1,"ba"]];
NC.Multiply(F1,F2); -- over F3
[[2, "aba"], [1, "ab"], [1, "ba"], [2, "b"]]
-------------------------------
NC.Multiply(F2,F1);
[[2, "baa"], [2, "ba"], [2, "b"]]
-------------------------------
NC.Multiply(F1,[]);
[ ]
-------------------------------
NC.Multiply([],F1);
[ ]
-------------------------------
NC.Multiply([],[]);
[ ]
-------------------------------
NC.UnsetFp();
NC.RingEnv();
Coefficient ring : Q
Alphabet : abc
Ordering : LLEX
-------------------------------
NC.Multiply(F1,F2); -- over Q
[[2, "aba"], [4, "ab"], [1, "ba"], [2, "b"]]
-------------------------------
NC.Multiply(F2,F1);
[[2, "baa"], [5, "ba"], [2, "b"]]
-------------------------------
|