X := "xyt";
Ordering := "LLEX";
R := [];
F1 := [[1,"xx"], [-1,"yx"]];
F2 := [[1,"xy"], [-1,"ty"]];
F3 := [[1,"xt"], [-1, "tx"]];
F4 := [[1,"yt"], [-1, "ty"]];
F := [F1, F2, F3, F4]; --F=(xx-yx, xy-ty, xt-tx, yt-ty)
NC.MRReducedBP(X, Ordering, R, F);
[[[1, "yt"], [-1, "ty"]], [[1, "xt"], [-1, "tx"]], [[1, "xy"], [-1, "ty"]],
[[1, "xx"], [-1, "yx"]], [[1, "tyy"], [-1, "tty"]], [[1, "yyx"], [-1, "tyx"]]]
-------------------------------
X := "xyt";
Ordering := "ELIM";
R := [];
F1 := [[1,"xx"], [-1,"yx"]];
F2 := [[1,"xy"], [-1,"ty"]];
F3 := [[1,"xt"], [-1, "tx"]];
F4 := [[1,"yt"], [-1, "ty"]];
F := [F1, F2, F3, F4]; --F=(xx-yx, xy-ty, xt-tx, yt-ty)
NC.MRReducedBP(X, Ordering, R, F);
[[[1, "yt"], [-1, "ty"]], [[1, "tyy"], [-1, "tty"]], [[1, "xt"], [-1, "tx"]],
[[1, "xy"], [-1, "ty"]], [[1, "yyx"], [-1, "tyx"]], [[1, "xx"], [-1, "yx"]]]
-------------------------------
X := "xyz";
Ordering := "LLEX";
R := [];
F1 := [[1,"xy"], [-1,"z"]];
F2 := [[1,"yz"], [-1,"x"]];
F3 := [[1,"zx"], [-1, "y"]];
F := [F1, F2, F3]; -- F=(xy-z, yz-x, zx-y)
NC.MRReducedBP(X, Ordering, R, F);
[[[1, "zx"], [-1, "y"]], [[1, "yz"], [-1, "x"]], [[1, "yy"], [-1, "zz"]],
[[1, "xy"], [-1, "z"]], [[1, "xx"], [-1, "zz"]], [[1, "zzz"], [-1, "yx"]],
[[1, "zzy"], [-1, "xz"]], [[1, "yxz"], [-1, "zyx"]], [[1, "xzz"], [-1, "zy"]],
[[1, "xzy"], [-1, "zyx"]]]
-------------------------------
X := "xyz";
Ordering := "ELIM";
R := [];
F1 := [[1,"xy"], [-1,"z"]];
F2 := [[1,"yz"], [-1,"x"]];
F3 := [[1,"zx"], [-1, "y"]];
F := [F1, F2, F3]; -- F=(xy-z, yz-x, zx-y)
NC.MRReducedBP(X, Ordering, R, F);
[[[1, "zzzzz"], [-1, "z"]], [[1, "zyz"], [-1, "y"]], [[1, "yzz"], [-1, "zzy"]],
[[1, "zzzy"], [-1, "yz"]], [[1, "yy"], [-1, "zz"]], [[1, "yzy"], [-1, "z"]], [[1, "x"], [-1, "yz"]]]
-------------------------------
X := "xy";
Ordering := "ELIM";
R := [];
F1 := [[1,"xxxxxxx"], [-1,"x"],[-1,""]]; -- x^7-x-1
F2 := [[1,"xxxxxx"], [-9,"xxxxx"],[1,"x"],[11,""],[-1,"y"]]; -- x^6-9x^4+x+11-y
NC.MRReducedBP(X, Ordering, R, [F1, F2], 10, 100, 1);
[[[1, "yyyyyyy"], [-83, "yyyyyy"], [2999, "yyyyy"], [-61029, "yyyy"], [726440, "yyy"], [-4538196, "yy"], [9285526, "y"], [22670839, ""]],
[[1, "x"], [525616288261/14118890761967198651, "yyyyyy"], [-405570529121531/70594453809835993255, "yyyyy"],
[2710544866140242/14118890761967198651, "yyyy"], [-174004165559977174/70594453809835993255, "yyy"],
[60896454800481540/14118890761967198651, "yy"], [15482248046125353437/70594453809835993255, "y"],
[-58757124289632819543/70594453809835993255, ""]]]
-------------------------------
-- Examples from "Classification of the finite generalized tetrahedron groups", Gerhard Rosenberger.
-- (1)
X := "xyz";
Ordering := "LLEX";
R := [];
F1 := [[1,"xx"], [-1,""]];
F2 := [[1,"yyy"], [-1,""]];
F3 := [[1,"zz"], [-1,""]];
F4 := [[1,"xyxyyxyxyy"], [-1,""]];
F5 := [[1,"xzxz"], [-1,""]];
F6 := [[1,"yzyz"], [-1,""]];
F := [F1, F2, F3, F4, F5, F6];
G:=NC.MRReducedBP(X, Ordering, R, F);
Len(G);
19
-------------------------------
G;
[[[1, "zz"], [-1, ""]], [[1, "xz"], [-1, "zx"]], [[1, "xx"], [-1, ""]], [[1, "zyz"], [-1, "yy"]], [[1, "zyy"], [-1, "yz"]],
[[1, "yzy"], [-1, "z"]], [[1, "yyz"], [-1, "zy"]], [[1, "yyy"], [-1, ""]], [[1, "zxyz"], [-1, "xyy"]], [[1, "zxyy"], [-1, "xyz"]],
[[1, "yyxyz"], [-1, "zyxyy"]], [[1, "yyxyy"], [-1, "zyxyz"]], [[1, "xyzxy"], [-1, "yzxyx"]], [[1, "xyyxy"], [-1, "yyxyx"]],
[[1, "xyxyy"], [-1, "yxyyx"]], [[1, "yzxyxy"], [-1, "xyxyz"]], [[1, "yyxyxy"], [-1, "zxyxyz"]], [[1, "yxyxyz"], [-1, "zyxyxy"]],
[[1, "xyxyxy"], [-1, "yxyxyx"]]]
-------------------------------
-- (37)
X := "xyz";
Ordering := "LLEX";
R := [];
F1 := [[1,"xxx"], [1,""]];
F2 := [[1,"yyyyy"], [1,""]];
F3 := [[1,"zzz"], [1,""]];
F4 := [[1,"xyxxyyxyxxyy"], [1,""]];
F5 := [[1,"xzxz"], [1,""]];
F6 := [[1,"yyzyyz"], [1,""]];
F := [F1, F2, F3, F4, F5, F6];
NC.MRReducedBP(X, Ordering, R, F,20, 150, True);
[[[1, "zzz"], [1, ""]], [[1, "zxz"], [-1, "xx"]], [[1, "xzx"], [-1, "zz"]], [[1, "xxx"], [1, ""]], [[1, "zzxx"], [1, "xz"]],
[[1, "zyyz"], [-1, "yyy"]], [[1, "xxzz"], [1, "zx"]], [[1, "zzyyy"], [1, "yyz"]], [[1, "yyzyy"], [-1, "zz"]], [[1, "yyyzz"], [1, "zyy"]],
[[1, "yyyyy"], [1, ""]], [[1, "yyzyzz"], [-1, "zzyzyy"]], [[1, "xyxxyyxyxx"], [-1, "yyy"]], [[1, "yxxyyxyxxyy"], [-1, "xx"]]]
-------------------------------
|