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