Groebner - Maple Programming Help

Home : Support : Online Help : Mathematics : Algebra : Polynomials : Groebner : Groebner/IsBasis

Groebner

 IsBasis
 test for a Groebner basis

 Calling Sequence IsBasis(G, T) IsBasis(G, T, characteristic=p)

Parameters

 G - set or list of polynomials T - MonomialOrder or ShortMonomialOrder p - (optional) characteristic

Description

 • IsBasis(G, T) outputs true if G is a Groebner basis for the ideal I generated by G with respect to the monomial order T and false otherwise.
 • The test applies Buchberger's S-polynomial criterion which states that G is a Groebner basis for I if and only if the S-polynomial of each pair of polynomials in G when divided by G has 0 remainder.  Note, this test can take longer than the time it takes to compute the Groebner basis.
 • The argument T is a monomial order.  For a list of available monomial orders, see the Monomial Orders help page.
 • An optional argument characteristic=p can be used to specify the ring characteristic. The default value is zero.

Examples

 > $\mathrm{with}\left(\mathrm{Groebner}\right):$
 > $G≔\left[{x}^{2}+1,{y}^{2}+x+1\right]$
 ${G}{:=}\left[{{x}}^{{2}}{+}{1}{,}{{y}}^{{2}}{+}{x}{+}{1}\right]$ (1)

Our example shows that whether G is not a Groebner basis or not depends on the monomial ordering.

 > $\mathrm{IsBasis}\left(G,\mathrm{grlex}\left(x,y\right)\right)$
 ${\mathrm{true}}$ (2)
 > $\mathrm{IsBasis}\left(G,\mathrm{plex}\left(x,y\right)\right)$
 ${\mathrm{false}}$ (3)
 > $s≔\mathrm{SPolynomial}\left({G}_{1},{G}_{2},\mathrm{plex}\left(x,y\right)\right)$
 ${s}{:=}{-}{x}{}{{y}}^{{2}}{-}{x}{+}{1}$ (4)
 > $\mathrm{NormalForm}\left(s,G,\mathrm{plex}\left(x,y\right)\right)$
 ${{y}}^{{4}}{+}{2}{}{{y}}^{{2}}{+}{2}$ (5)

Now we compute a (reduced) Groebner basis for the ideal generated by G in the lexicographical monomial ordering with $y.

 > $H≔\mathrm{Basis}\left(G,\mathrm{plex}\left(x,y\right)\right)$
 ${H}{:=}\left[{{y}}^{{4}}{+}{2}{}{{y}}^{{2}}{+}{2}{,}{{y}}^{{2}}{+}{x}{+}{1}\right]$ (6)
 > $\mathrm{IsBasis}\left(H,\mathrm{plex}\left(x,y\right)\right)$
 ${\mathrm{true}}$ (7)

Compatibility

 • The Groebner[IsBasis] command was introduced in Maple 16.