Macaulay2 » Documentation
Packages » gfanInterface :: gfanBuchberger
next | previous | forward | backward | up | index | toc

gfanBuchberger -- reduced Groebner basis with respect to some monomial order



This method computes a reduced Groebner basis of an ideal with respect to the lexicographic order (by default) or with respect to some weight vector if option w is specified. The output is a MarkedPolynomialList. The input can be given as an Ideal, List of polynomials, or MarkedPolynomialList. In the case of a MarkedPolynomialList, the marked terms are ignored.

i1 : QQ[x,y,z];
i2 : I = ideal(x*y + z, x*z + y);

o2 : Ideal of QQ[x..z]
i3 : gfanBuchberger(I)

        2     2
o3 = {(y ) - z , (x*z) + y, (x*y) + z}

o3 : MarkedPolynomialList
i4 : gfanBuchberger(I, "w" => {1,2,3})

                              2     2
o4 = {(x*y) + z, (x*z) + y, (z ) - y }

o4 : MarkedPolynomialList
i5 : gfanBuchberger({x*y + z, x*z +y}, "w" => {1,2,3})

                              2     2
o5 = {(x*y) + z, (x*z) + y, (z ) - y }

o5 : MarkedPolynomialList

Note that Macaulay 2 can compute Groebner bases with respect to given weights without using gfan.

i6 : QQ[x,y,z, MonomialOrder => { Weights => {1,2,3}, Lex } ];
i7 : G = gens gb ideal(x*y + z,  x*z + y )

o7 = | xy+z xz+y z2-y2 |

                      1                3
o7 : Matrix (QQ[x..z])  <--- (QQ[x..z])
i8 : markedPolynomialList transpose  apply(flatten entries G, g-> {leadTerm g, g})

                              2     2
o8 = {(x*y) + z, (x*z) + y, (z ) - y }

o8 : MarkedPolynomialList

gfan Documentation This program computes a reduced lexicographic Groebner basis of the polynomial ideal given as input. The default behavior is to use Buchberger's algorithm. The ordering of the variables is $a>b>c...$ (assuming that the ring is Q[a,b,c,...]).Options:-w: Compute a Groebner basis with respect to a degree lexicographic order with $a>b>c...$ instead. The degrees are given by a weight vector which is read from the input after the generating set has been read.-r: Use the reverse lexicographic order (or the reverse lexicographic order as a tie breaker if -w is used). The input must be homogeneous if the pure reverse lexicographic order is chosen. Ignored if -W is used.-W: Do a Groebner walk. The input must be a minimal Groebner basis. If -W is used -w is ignored.-g: Do a generic Groebner walk. The input must be homogeneous and must be a minimal Groebner basis with respect to the reverse lexicographic term order. The target term order is always lexicographic. The -W option must be used.--parameters value: With this option you can specify how many variables to treat as parameters instead of variables. This makes it possible to do computations where the coefficient field is the field of rational functions in the parameters.

Ways to use gfanBuchberger :

For the programmer

The object gfanBuchberger is a method function with options.