Difference between revisions of "ApCoCoA-1:NCo.BIsGB"

From ApCoCoAWiki
m (Bot: Category moved)
m (fixed links to namespace ApCoCoA)
Line 12: Line 12:
 
<em>Please note:</em> The function(s) explained on this page is/are using the <em>ApCoCoAServer</em>. You will have to start the ApCoCoAServer in order to use it/them.
 
<em>Please note:</em> The function(s) explained on this page is/are using the <em>ApCoCoAServer</em>. You will have to start the ApCoCoAServer in order to use it/them.
 
<par/>
 
<par/>
Please set ring environment <em>alphabet</em> (or set of indeterminates) <tt>X</tt> and <em>word ordering</em> via the functions <ref>NCo.SetX</ref> and <ref>NCo.SetOrdering</ref>, respectively, before calling this function. The default ordering is the length-lexicographic ordering (<quotes>LLEX</quotes>). For more information, please check the relevant functions.
+
Please set ring environment <em>alphabet</em> (or set of indeterminates) <tt>X</tt> and <em>word ordering</em> via the functions <ref>ApCoCoA-1:NCo.SetX|NCo.SetX</ref> and <ref>ApCoCoA-1:NCo.SetOrdering|NCo.SetOrdering</ref>, respectively, before calling this function. The default ordering is the length-lexicographic ordering (<quotes>LLEX</quotes>). For more information, please check the relevant functions.
 
<itemize>
 
<itemize>
 
<item>@param <em>G:</em> a LIST of non-zero polynomials in the free monoid ring <tt>F_{2}&lt;X&gt;</tt>. Each polynomial is represented as a LIST of words (or terms) in <tt>&lt;X&gt;</tt>. Each word is represented as a STRING. For example, <tt>xy^2x</tt> is represented as <quotes>xyyx</quotes>, and the identity is represented as the empty string <quotes></quotes>. Thus, the polynomial <tt>f=xy-y+1</tt> is represented as F:=[<quotes>xy</quotes>, <quotes>y</quotes>, <quotes></quotes>]. The zero polynomial <tt>0</tt> is represented as the empty LIST [].</item>
 
<item>@param <em>G:</em> a LIST of non-zero polynomials in the free monoid ring <tt>F_{2}&lt;X&gt;</tt>. Each polynomial is represented as a LIST of words (or terms) in <tt>&lt;X&gt;</tt>. Each word is represented as a STRING. For example, <tt>xy^2x</tt> is represented as <quotes>xyyx</quotes>, and the identity is represented as the empty string <quotes></quotes>. Thus, the polynomial <tt>f=xy-y+1</tt> is represented as F:=[<quotes>xy</quotes>, <quotes>y</quotes>, <quotes></quotes>]. The zero polynomial <tt>0</tt> is represented as the empty LIST [].</item>
Line 63: Line 63:
 
</description>
 
</description>
 
<seealso>
 
<seealso>
<see>NCo.BGB</see>
+
<see>ApCoCoA-1:NCo.BGB|NCo.BGB</see>
<see>NCo.BLW</see>
+
<see>ApCoCoA-1:NCo.BLW|NCo.BLW</see>
<see>NCo.BReductedGB</see>
+
<see>ApCoCoA-1:NCo.BReductedGB|NCo.BReductedGB</see>
<see>NCo.BTruncatedGB</see>
+
<see>ApCoCoA-1:NCo.BTruncatedGB|NCo.BTruncatedGB</see>
<see>NCo.SetOrdering</see>
+
<see>ApCoCoA-1:NCo.SetOrdering|NCo.SetOrdering</see>
<see>NCo.SetX</see>
+
<see>ApCoCoA-1:NCo.SetX|NCo.SetX</see>
<see>Introduction to CoCoAServer</see>
+
<see>ApCoCoA-1:Introduction to CoCoAServer|Introduction to CoCoAServer</see>
 
</seealso>
 
</seealso>
 
<types>
 
<types>

Revision as of 08:26, 7 October 2020

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