ApCoCoA-1:NCo.BIsGB

From ApCoCoAWiki
Revision as of 10:17, 7 October 2020 by AndraschkoBot (talk | contribs) (insert version info)
This article is about a function from ApCoCoA-1.

NCo.BIsGB

Check whether a finite LIST of non-zero polynomials in a free monoid ring over the binary field F_{2}={0,1} is a Groebner basis.

Syntax

NCo.BIsGB(G:LIST):INT

Description

Given a word ordering Ordering, a set Gb of non-zero polynomials is called a Groebner basis with respect to Ordering if the leading word set BLW{Gb} generates the leading word ideal BLW(<Gb>). The function checks whether a given finite set of non-zero polynomials G is a Groebner basis by using the Buchberger Criterion, i.e. G is a Groebner basis if the S-polynomials of all obstructions of G have the zero normal remainder with respect to G.

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 ring environment alphabet (or set of indeterminates) X and word ordering via the functions NCo.SetX and NCo.SetOrdering, respectively, before calling this function. The default ordering is the length-lexicographic ordering ("LLEX"). For more information, please check the relevant functions.

  • @param G: a LIST of non-zero polynomials in the free monoid ring F_{2}<X>. Each polynomial is represented as a LIST of words (or terms) in <X>. Each word is represented as a STRING. For example, xy^2x is represented as "xyyx", and the identity is represented as the empty string "". Thus, the polynomial f=xy-y+1 is represented as F:=["xy", "y", ""]. The zero polynomial 0 is represented as the empty LIST [].

  • @return: a BOOL, which is True if G is a Groebner basis with respect to the current word ordering and is False otherwise.

Example

NCo.SetX(<quotes>ab</quotes>);
NCo.SetOrdering(<quotes>LLEX</quotes>);
F1:=[<quotes>aa</quotes>, <quotes></quotes>];
F2:=[<quotes>bbb</quotes>, <quotes></quotes>];
F3:=[<quotes>abababbabbabababbabb</quotes>, <quotes></quotes>];
G:=[F1,F2,F3];
NCo.BIsGB(G);

False
-------------------------------
GB:=NCo.GGB(G);
GB;

[[<quotes>aa</quotes>, <quotes></quotes>], [<quotes>bbb</quotes>, <quotes></quotes>], [<quotes>abbabbabab</quotes>, <quotes>bbabbababa</quotes>], 
[<quotes>abbabababb</quotes>, <quotes>babbabbaba</quotes>], [<quotes>ababbabbab</quotes>, <quotes>bbabababba</quotes>], [<quotes>abababbabb</quotes>, <quotes>bababbabba</quotes>], 
[<quotes>babbabbabab</quotes>, <quotes>abbababa</quotes>], [<quotes>ababbabbaba</quotes>, <quotes>bbabababb</quotes>], [<quotes>bbabbabababb</quotes>, <quotes>abbabbaba</quotes>], 
[<quotes>bbabababbabb</quotes>, <quotes>ababbabba</quotes>], [<quotes>ababbabbabab</quotes>, <quotes>bbababa</quotes>], [<quotes>bababbabbabab</quotes>, <quotes>ababa</quotes>], 
[<quotes>abababbababab</quotes>, <quotes>babababbababa</quotes>], [<quotes>ababababbabab</quotes>, <quotes>bababbabababa</quotes>], [<quotes>abbababababbab</quotes>, <quotes>babbababababba</quotes>], 
[<quotes>ababbababababb</quotes>, <quotes>bbababababbaba</quotes>], [<quotes>abababbabbabab</quotes>, <quotes>baba</quotes>], [<quotes>ababababbababa</quotes>, <quotes>bababbababab</quotes>], 
[<quotes>bbabababbababab</quotes>, <quotes>abababbababa</quotes>], [<quotes>bababbababababb</quotes>, <quotes>ababababbaba</quotes>], [<quotes>ababbababababba</quotes>, <quotes>bbababababbab</quotes>], 
[<quotes>abababbabbababa</quotes>, <quotes>bab</quotes>], [<quotes>bbabbababababbab</quotes>, <quotes>abbababababba</quotes>], [<quotes>abababbababbabab</quotes>, <quotes>bababbababbababa</quotes>], 
[<quotes>abababbabbabababb</quotes>, <quotes>ba</quotes>], [<quotes>bbabababbababbabab</quotes>, <quotes>ababbababbababa</quotes>], [<quotes>babbabbabbabbabbab</quotes>, <quotes>abbababababababba</quotes>], 
[<quotes>abbabbabbabbabbaba</quotes>, <quotes>bbabbababababababb</quotes>], [<quotes>abbababbababbababa</quotes>, <quotes>bababbabababababab</quotes>], [<quotes>abbabababababababb</quotes>, <quotes>babbabababababbaba</quotes>], 
[<quotes>ababbabababababbab</quotes>, <quotes>bbabababababababba</quotes>], [<quotes>abababbabbabababba</quotes>, <quotes>b</quotes>], [<quotes>bbabbababbababbabab</quotes>, <quotes>ababbababababababa</quotes>], 
[<quotes>bbabbababababababba</quotes>, <quotes>abbabbabbabbabbab</quotes>], [<quotes>bababbababbababbabb</quotes>, <quotes>abababababababbaba</quotes>], [<quotes>bababbabababababbab</quotes>, <quotes>abababababababba</quotes>], 
[<quotes>bababbababababababa</quotes>, <quotes>abbababbababbabab</quotes>], [<quotes>ababbababbababbabba</quotes>, <quotes>bbabababababababbab</quotes>], [<quotes>ababbabababababbaba</quotes>, <quotes>bbabababababababb</quotes>], 
[<quotes>bbabbabababababababb</quotes>, <quotes>abbabababababbaba</quotes>], [<quotes>bbabababababababbaba</quotes>, <quotes>ababbababbababbabb</quotes>], [<quotes>bababbababbababbabba</quotes>, <quotes>abababababababbab</quotes>], 
[<quotes>abababbabbabababbabb</quotes>, <quotes></quotes>], [<quotes>abbababababababababbab</quotes>, <quotes>babbababababababababba</quotes>], 
[<quotes>ababbababbabababababab</quotes>, <quotes>bababbababbabababababa</quotes>], [<quotes>ababbababababababababb</quotes>, <quotes>bbababababababababbaba</quotes>], 
[<quotes>babbababbababbababbabab</quotes>, <quotes>abbabababababababababa</quotes>], [<quotes>bababbababbababbababbab</quotes>, <quotes>ababababababababababba</quotes>], 
[<quotes>abbababababababababbaba</quotes>, <quotes>babbababababababababb</quotes>], [<quotes>ababbababbababbababbaba</quotes>, <quotes>bbababababababababababb</quotes>], 
[<quotes>ababbababababababababab</quotes>, <quotes>babbabababababababababa</quotes>], [<quotes>ababababababababababbab</quotes>, <quotes>babababababababababbaba</quotes>], 
[<quotes>bbabbababababababababbab</quotes>, <quotes>abbababababababababba</quotes>], [<quotes>bbabbabababababababababa</quotes>, <quotes>abbababbababbababbabab</quotes>], 
[<quotes>bbababababababababababba</quotes>, <quotes>ababbababbababbababbab</quotes>], [<quotes>abbababababababababababb</quotes>, <quotes>babbababbababbababbaba</quotes>], 
[<quotes>ababababababababababbaba</quotes>, <quotes>babababababababababbab</quotes>], [<quotes>abababababababababababab</quotes>, <quotes>babababababababababababa</quotes>], 
[<quotes>abbababababababababababab</quotes>, <quotes>babababababababababababba</quotes>], [<quotes>ababababababababababababb</quotes>, <quotes>bbabababababababababababa</quotes>], 
[<quotes>bbabababababababababababab</quotes>, <quotes>abababababababababababa</quotes>], [<quotes>ababababababababababababba</quotes>, <quotes>bbababababababababababab</quotes>]]
-------------------------------
NCo.BIsGB(GB);

True
-------------------------------

See also

NCo.BGB

NCo.BLW

NCo.BReductedGB

NCo.BTruncatedGB

NCo.SetOrdering

NCo.SetX

Introduction to CoCoAServer