Difference between revisions of "ApCoCoA-1:NCo.BIsGB"
m (replaced <quotes> tag by real quotes) |
|||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | {{Version|1}} | ||
<command> | <command> | ||
<title>NCo.BIsGB</title> | <title>NCo.BIsGB</title> | ||
<short_description> | <short_description> | ||
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. | 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. | ||
− | |||
− | |||
</short_description> | </short_description> | ||
<syntax> | <syntax> | ||
Line 10: | Line 9: | ||
</syntax> | </syntax> | ||
<description> | <description> | ||
+ | Given a word ordering <tt>Ordering</tt>, a set <tt>Gb</tt> of non-zero polynomials is called a <em>Groebner basis</em> with respect to <tt>Ordering</tt> if the leading word set <tt>BLW{Gb}</tt> generates the leading word ideal <tt>BLW(<Gb>)</tt>. The function checks whether a given finite set of non-zero polynomials <tt>G</tt> is a Groebner basis by using the <tt>Buchberger Criterion</tt>, i.e. <tt>G</tt> is a Groebner basis if the S-polynomials of all obstructions of <tt>G</tt> have the zero normal remainder with respect to <tt>G</tt>. | ||
+ | <par/> | ||
<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 ( | + | 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 ("LLEX"). 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}<X></tt>. Each polynomial is represented as a LIST of words (or terms) in <tt><X></tt>. Each word is represented as a STRING. For example, <tt>xy^2x</tt> is represented as | + | <item>@param <em>G:</em> a LIST of non-zero polynomials in the free monoid ring <tt>F_{2}<X></tt>. Each polynomial is represented as a LIST of words (or terms) in <tt><X></tt>. Each word is represented as a STRING. For example, <tt>xy^2x</tt> is represented as "xyyx", and the identity is represented as the empty string "". Thus, the polynomial <tt>f=xy-y+1</tt> is represented as F:=["xy", "y", ""]. The zero polynomial <tt>0</tt> is represented as the empty LIST [].</item> |
<item>@return: a BOOL, which is True if G is a Groebner basis with respect to the current word ordering and is False otherwise.</item> | <item>@return: a BOOL, which is True if G is a Groebner basis with respect to the current word ordering and is False otherwise.</item> | ||
</itemize> | </itemize> | ||
<example> | <example> | ||
− | NCo.SetX( | + | NCo.SetX("ab"); |
− | NCo.SetOrdering( | + | NCo.SetOrdering("LLEX"); |
− | F1:=[ | + | F1:=["aa", ""]; |
− | F2:=[ | + | F2:=["bbb", ""]; |
− | F3:=[ | + | F3:=["abababbabbabababbabb", ""]; |
G:=[F1,F2,F3]; | G:=[F1,F2,F3]; | ||
NCo.BIsGB(G); | NCo.BIsGB(G); | ||
Line 31: | Line 32: | ||
GB; | 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); | NCo.BIsGB(GB); | ||
Line 63: | Line 64: | ||
</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> | ||
Line 80: | Line 81: | ||
<key>NCo.BIsGB</key> | <key>NCo.BIsGB</key> | ||
<key>BIsGB</key> | <key>BIsGB</key> | ||
− | <wiki-category>Package_gbmr</wiki-category> | + | <wiki-category>ApCoCoA-1:Package_gbmr</wiki-category> |
</command> | </command> |
Latest revision as of 13:37, 29 October 2020
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