Groebner bases


groebner_basis(polynomials; ordering=:deglex)

Computes a Groebner basis of the ideal generated by the given polynomials. The basis is reduced, thus guaranteed to be unique.


julia> using Symbolics

julia> @variables x y;

julia> groebner_basis([x*y^2 + x, x^2*y + y])

The coefficients in the resulting basis are in the same domain as for input polynomials. Hence, if the coefficient becomes too large to be represented exactly, DomainError is throwed.

By default, degree lexicographic monomial ordering is used. All possible orderings are:

  • lex for lexicographic;
  • deglex for degree lexicographic;
  • degrevlex for degree reversed lexicographic.

The basis will be correct with respect to the specified ordering, however, the terms in the output will always be ordered with deglex.