up previous next
NC.MRBP

Buchberger procedure for computing a (partial) Groebner basis of a finitely generated two-sided ideal over a monoid ring.
Syntax
          
NC.MRBP(X:STRING, Ordering:STRING, R:LIST, F:LIST):LIST
NC.MRBP(X:STRING, Ordering:STRING, R:LIST, F:LIST, DegreeBound:INT, LoopBound:INT, BFlag:BOOL):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 note all of the following 3 additional optional parameters must be used at the same time.

Example
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.MRBP(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"]], 
[[1, "ttyy"], [-1, "ttty"]], [[1, "tyyx"], [-1, "ttyx"]]]
-------------------------------
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.MRBP(X, Ordering, R, F);
[[[1, "yt"], [-1, "ty"]], [[1, "tyy"], [-1, "tty"]], [[1, "ttyy"], [-1, "ttty"]], 
[[1, "xt"], [-1, "tx"]], [[1, "xy"], [-1, "ty"]], [[1, "yyx"], [-1, "tyx"]], 
[[1, "tyyx"], [-1, "ttyx"]], [[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.MRBP(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, "yxz"]]]
-------------------------------
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.MRBP(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, "yyz"], [-1, "zyy"]], [[1, "yyy"], [-1, "yzz"]], [[1, "x"], [-1, "yz"]]]
-------------------------------


See Also