What is a Gröbner basis?

 
pdf

A Gröbner basis is a set of multivariate polynomials that has desirable algorithmic properties. Every set of polynomials can be transformed into a Gröbner basis. This process generalizes three familiar techniques: Gaussian elimination for solving linear systems of equations, the Euclidean algorithm for computing the greatest common divisor of two univariate polynomials, and the Simplex Algorithm for linear programming; see [3]. For example, the input for Gaussian elimination is a collection of linear forms such as ={2x+3y+4z5,3x+4y+5z2} and the algorithm transforms into the Gröbner basis 𝒢={x_z+14,y_+2z11}.
Let K be any field, such as the real numbers K=, the complex numbers K=, the rational numbers K=, or a finite field K=𝔽p. We write K[x1,...,xn] for the ring of polynomials in n variables xi with coefficients in the field K. If is any set of polynomials, then the ideal generated by is the set consisting of all polynomial linear combinations:={p1f1++prfr:f1,,fr and p1,,prK[x1,,xn]}In our example the set and its Gröbner basis 𝒢 generate the same ideal: 𝒢=. By Hilbert’s Basis Theorem, every ideal I in K[x1,...,xn] has the form I=; i.e., it is generated by some finite set of polynomials.
A term order on K[x1,...,xn] is a total order ≺ on the set of all monomials xa=x1a1xnan which has the following two properties:
(1) It is multiplicative; i.e., xaxb implies xa+cxb+c for all a,b,cn.
(2) The constant monomial is the smallest; i.e., 1xa for all an{0}.
An example of a term order (for n=2) is the degree lexicographic order 1x1x2x12x1x2x22x13x12x2
If we fix a term order ≺, then every polynomial f has a unique initial term in(f)=xa. This is the ≺-largest monomial xa which occurs with nonzero coefficient in the expansion of f. We write the terms of f in ≺-decreasing order, and we often underline the initial term. For instance, a quadratic polynomial is written f=3x22+5x1x2+7x12+11x1+13x2+17. Suppose now that I is an ideal in K[x1,...,xn]. Then its initial ideal in(I) is the ideal generated by the initial terms of all the polynomials in I:in(I)=in(f):fI
A finite subset 𝒢 of I is a Gröbner basis with respect to the term order ≺ if the initial terms of the elements in 𝒢 suffice to generate the initial ideal: in(I)=in(g):gG
There is no minimality requirement for being a Gröbner basis. If 𝒢 is a Gröbner basis for I, then any finite subset of I that contains 𝒢 is also a Gröbner basis. To remedy this nonminimality, we say that 𝒢 is a reduced Gröbner basis if
(1) for each gG, the coefficient of in(g) in g is 1,
(2) the set {in(g):gG} minimally generates in(I), and
(3) no trailing term of any gG lies in in(I).
With this definition, we have the following theorem:

If the term order ≺ is fixed, then every ideal I in K[x1,...,xn] has a unique reduced Gröbner basis.


The reduced Gröbner basis 𝒢 can be computed from any generating set of I by a method that was introduced in Bruno Buchberger’s 1965 dissertation.
Buchberger named his method after his advisor, Wolfgang Gröbner. With hindsight, the idea of Gröbner bases can be traced back to earlier sources, including a paper written in 1900 by the invariant theorist Paul Gordan. But Buchberger was the first to give an algorithm for computing Gröbner bases.
Gröbner bases are very useful for solving systems of polynomial equations. Suppose K, and let be a finite set of polynomials in K[x1,...,xn].
The variety of is the set of all common complex zeros:𝒱()={(z1,,zn)n:f(z1,,zn)=0 for all f}The variety does not change if we replace by another set of polynomials that generates the same ideal in K[x1,...,xn]. In particular, the reduced Gröbner basis 𝒢 for the ideal specifies the same variety:𝒱()=𝒱()=𝒱(𝒢)=𝒱(𝒢)The advantage of 𝒢 is that it reveals geometric properties of the variety that are not visible from . The first question that one might ask about a variety 𝒱(F) is whether it is empty. Hilbert’s Nullstellensatz implies that

the variety 𝒱() is empty if and only if 𝒢 equals {1}.

How can one count the number of zeros of a given system of equations? To answer this, we need one more definition. Given a fixed ideal I in K[x1,...,xn] and a term order ≺, a monomial xa=x1a1xnan is called standard if it is not in the initial ideal in(I). The number of standard monomials is finite if and only if every variable xi appears to some power in the initial ideal. For example, if in(I)=x13,x24,x35, then there are sixty standard monomials, but if in(I)=x13,x24,x1x34, then the set of standard monomials is infinite.
The variety 𝒱(I) is finite if and only if the set of standard monomials is finite, and the number of standard monomials equals the cardinality of 𝒱(I), when zeros are counted with multiplicity.
For n=1 this is the Fundamental Theorem of Algebra, which states that the variety 𝒱(f) of a univariate polynomial fK[x] of degree d consists of d complex numbers. Here the singleton {f} is a Gröbner basis, and the standard monomials are 1,x,x2,...,xd1.
Our criterion for deciding whether a variety is finite generalizes to the following formula for the dimension of a variety. Consider a subset S of the variables {x1,...,xn} such that no monomial in the variables in S appears in in(I), and suppose that S has maximal cardinality among all subsets with this property. That maximal cardinality |S| equals the dimension of 𝒱(I).
The set of standard monomials is a K-vectorspace basis for the residue ring K[x1,...,xn]/I.
The image of a polynomial p modulo I can be expressed uniquely as a K-linear combination of standard monomials. This expression is the normal form of p. The process of computing the normal form is the division algorithm. In the familar case of only one variable x, where I=f and f has degree d, the division algorithm writes any polynomial pK[x] as a K-linear combination of 1,x,x2,...,xd1. But the division algorithm works relative to any Gröbner basis 𝒢 in any number of variables.
How can we test whether a given set of polynomials 𝒢 is a Gröbner basis or not? Consider any two polynomials g and g in 𝒢, and form their S-polynomial mgmg. Here m and m are monomials of smallest possible degree such that min(g)=min(g). The S-polynomial mgmg lies in the ideal 𝒢. We apply the division algorithm with respect to the tentative Gröbner basis 𝒢 to mgmg.
The resulting normal form is a K-linear combination of monomials none of which is divisible by an initial monomial from 𝒢. A necessary condition for 𝒢 to be a Gröbner basis is

normalform𝒢(mgmg)=0 for all g,gG.


Buchberger’s Criterion states that this necessary condition is sufficient: a set 𝒢 of polynomials is a Gröbner basis if and only if all its S-polynomials have normal form zero. From this criterion, one derives Buchberger’s Algorithm [1] for computing the reduced Gröbner basis 𝒢 from any given input set .
In summary, Gröbner bases and the Buchberger Algorithm for finding them are fundamental notions in algebra. They furnish the engine for more advanced computations in algebraic geometry, such as elimination theory, computing cohomology, resolving singularities, etc. Given that polynomial models are ubiquitous across the sciences and engineering, Gröbner bases have been used by researchers in optimization, coding, robotics, control theory, statistics, molecular biology, and many other fields. We invite the reader to experiment with one of the many implementations of Buchberger’s algorithm (e.g., in CoCoA, Macaulay2, Magma, Maple, Mathematica, or Singular).

References
[1] David Cox, John Little, and Donal O’ Shea, Ideals, Varieties and Algorithms. An Introduction to Computational Algebraic Geometry and Commutative Algebra, second ed., Undergraduate Texts in Mathematics, Springer-Verlag, New York, 1997.
[2] Niels Lauritzen, Concrete Abstract Algebra: From Numbers to Gröbner Bases, Cambridge University Press, 2003.
[3] Bernd Sturmfels, Two Lectures on Gröbner Bases, New Horizons in Undergraduate Mathematics, VMath Lecture Series, Mathematical Sciences Research Institute, Berkeley, California, 2005, http://www.msri.org/communications/vmath/special_productions/.