up previous next
NC.MRGB

(Partial) Groebner basis of a finitely generated two-sided ideal over a finitely presented monoid ring.
Syntax
          
NC.MRGB(X:STRING, Ordering:STRING, Relations:LIST, G:LIST):LIST
NC.MRGB(X:STRING, Ordering:STRING, Relations:LIST, G: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. About the optional parameters: For most cases we do not know whether there exists a finite Groebner basis. Instead of forcing computer yelling and informing nothing valuable, the function has 3 optional parameters to control the computation. Note that at the moment all of the following 3 additional optional parameters must be used at the same time.

Example
X := "xyzt"; 
Ordering := "LLEX"; 
Relations:=[]; 
F1 := [[1,"xx"], [-1,"yx"]];   
F2 := [[1,"xy"], [-1,"ty"]];  
F3 := [[1,"xt"], [-1, "tx"]];  
F4 := [[1,"yt"], [-1, "ty"]];  
G := [F1, F2,F3,F4]; 
NC.MRGB(X, Ordering, Relations, G);
[[[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 := "abc"; 
Ordering := "LLEX"; 
Relations := [["aa",""], ["bb",""], ["ab","c"], ["ac", "b"], ["cb", "a"]]; 
F1 := [[1,"a"], [1,"b"], [1,"c"]]; 
F2 := [[1,"b"]]; 
G := [F1, F2];
NC.MRGB(X, Ordering, Relations, G);
[[[1, "b"]], [[1, "a"], [1, "b"], [1, "c"]]]
-------------------------------


See Also