X := "xyz";
Relations := []; -- free associative algebra
F1 := [[1,"xy"], [-1,"z"]];
F2 := [[1,"yz"], [-1, "x"]];
F3 := [[1,"zx"], [-1,"y"]];
G1 := [F1, F2]; -- (xy-z, yz-x)
G2 := [F2, F3]; -- (yz-x, zx-y)
NC.MRIntersection(X, Relations, G1, G2, 20, 50, 0); -- intersection of ideals (xy-z, yz-x) and (yz-x, zx-y)
[[[1, "zyzzz"], [-1, "zzzyz"], [-1, "yzz"], [1, "zzy"]], [[1, "yzyz"], [-1, "zyzy"]],
[[1, "yyzz"], [-1, "zzyy"]], [[1, "zzyzyy"], [-1, "yyzy"], [-1, "zyzz"], [1, "yz"]],
[[1, "zyzyyz"], [-1, "yzyy"], [-1, "zzyz"], [1, "zy"]], [[1, "yzzyzy"], [-1, "yzyy"], [-1, "zzyz"], [1, "zy"]],
[[1, "yzzzyzy"], [-1, "yzzyy"], [-1, "zyyzy"], [1, "zzyyy"], [-1, "zzyzz"], [1, "zyz"]],
[[1, "zyzyyyz"], [-1, "yyzyy"], [-1, "zyzzy"], [-1, "zzyyz"], [1, "zzzyy"], [1, "yzy"]],
[[1, "yyzyyyz"], [-1, "zyzyyyy"], [1, "zyzzyyz"], [-1, "zzzyyyz"], [-2, "yzyyz"], [1, "yzzyy"], [1, "zyyzy"]],
[[1, "zyzyyyyz"], [-1, "yzyyyy"], [-1, "zzyyyz"], [1, "zyyy"]],
[[1, "zyzyyyyyz"], [-1, "yyzyyyy"], [1, "zyyzyyz"], [-1, "zyzzyyy"], [-1, "zzyyyyz"], [-1, "zzyyzyy"],
[1, "zzzyyyy"], [1, "yzyyy"], [1, "zzyzzyz"], [-1, "zzzyzzy"], [-1, "zzzzyyz"], [1, "zzzzzyy"]],
[[1, "yyzyyyyyz"], [-1, "zyzyyyyyy"], [1, "zyzzyyyyz"], [-1, "zzzyyyyyz"], [1, "yyzyyzy"], [-1, "yzyyyyz"],
[-1, "zyyzyyy"], [1, "zzyyyyy"], [-2, "zzyzzyy"], [-2, "zzzyyzy"], [2, "zzzzyyy"], [2, "zyzyy"], [2, "zzzyz"], [-2, "zzy"]],
[[1, "x"], [-1, "yz"]]]
--------------------------------------------------
Note that it is a partial Groebner basis.
|