up previous next

calculate a Groebner basis

GBasis(M:IDEAL, MODULE, or TAGGED("Quotient")):LIST

If M is an ideal or module, this function returns a list whose components form a Groebner basis for M with respect to the term-ordering of the polynomial ring of M. If M is a quotient ring by an ideal I or of a free module by a submodule N, then the Groebner basis for M is defined to be that of I or N, respectively.

If M is a variable, then the result is stored in M for later use. It can be retrieved as M.GBasis and can also be seen using the command Describe.

For a reduced Groebner basis, use the command ReducedGBasis.

The coefficient ring must be a field.

  Use R ::= QQ[t,x,y];
  I := Ideal(t^3-x,t^4-y);
  Describe I;
Record[Type = IDEAL, Value = Record[Gens = [t^3 - x, t^4 - y]]]
[t^3 - x, -tx + y, t^2y - x^2, x^3 - ty^2]
  Describe(I);  -- the Groebner basis has been stored in I
Record[Type = IDEAL, Value = Record[Gens = [t^3 - x, t^4 - y],
GBasis = [t^3 - x, -tx + y, t^2y - x^2, x^3 - ty^2]]]
[t^3 - x, -tx + y, t^2y - x^2, x^3 - ty^2]
For fine control and monitoring of Groebner basis calculations, see The Interactive Groebner Framework and Introduction to Panels.

See Also