up previous next
NC.MRIntersection

Enumerate a (partial) Groebner basis of the intersection of two finitely generated two-sided ideals in a finitely presented monoid ring.
Syntax
          
NC.MRIntersection(X:STRING, Relations:LIST, G1:LIST, G2:LIST):LIST
NC.MRIntersection(X:STRING, Relations:LIST, G1:LIST, G2:LIST, DegreeBound:INT, LoopBound:INT, Flag:INT):LIST

          

Description
Please note: The function(s) explained on this page is/are using the ApCoCoAServer. You will have to start the ApCoCoAServer in order to use it/them.

Please set coefficient field via the function NC.SetFp (or NC.UnsetFp) before calling this function. The default coefficient field is Q. For more information, please check the relevant function. Since this function is based on Groebner basis computations, we refer users to NC.MRGB or NC.MRReducedGB for information on the following three optional parameters:

Example
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.
--------------------------------------------------


See Also