Gröbner basis
From Wikipedia, the free encyclopedia
In computer algebra, computational algebraic geometry, and computational commutative algebra, a Gröbner basis is a particular kind of generating subset of an ideal I in a polynomial ring R. One can view it as a multivariate, non-linear generalization of:
- the Euclidean algorithm for computation of univariate greatest common divisors,
- Gaussian elimination for linear systems, and
- integer programming problems.
The theory of Gröbner bases for polynomial rings was developed by Bruno Buchberger in 1965, who named them after his advisor Wolfgang Gröbner. An analogous concept for local rings was developed independently by Heisuke Hironaka in 1964, who named them standard bases.
Contents |
[edit] Formal definition
A Gröbner basis G is characterised by any one of the following properties, stated relative to some monomial order:
- the ideal given by the leading terms of polynomials in the ideal I is itself generated by the leading terms of the basis G;
- the leading term of any polynomial in I is divisible by the leading term of some polynomial in the basis G;
- multivariate division of any polynomial in the polynomial ring R by G gives a unique remainder;
- multivariate division of any polynomial in the ideal I by G gives 0.
All these properties are equivalent; different authors use different definitions depending on the topic they choose. It is the last two properties which allow calculations in the factor ring R/I with the same facility as modular arithmetic. It is a significant fact of commutative algebra that Gröbner bases always exist, and can be effectively obtained starting for any ideal starting with a generating subset.
Multivariate division requires a monomial ordering, the basis depends on the monomial ordering chosen, and different orderings can give rise to radically different Gröbner bases. Two of the most commonly used orderings are lexicographic ordering, and degree reverse lexicographic order (also called graded reverse lexicographic order or simply total degree order). Lexicographic order eliminates variables, however the resulting Gröbner bases are often very large and expensive to compute. Degree reverse lexicographic order typically provides for the fastest Gröbner basis computations. In this order monomials are compared first by total degree, with ties broken by taking the smallest monomial with respect to lexicographic ordering with the variables reversed.
In most cases (polynomials in finitely many variables with complex coefficients (more generally coefficients over any field), for example), Gröbner bases exist for any monomial ordering. One method for computing them is known as Buchberger's algorithm. Another method for computing Gröbner bases, based on the same mathematics as the Buchberger algorithm, is the Faugère F4 algorithm. There are also two algorithms for converting a Gröbner basis with respect to one monomial order to another; the FGLM algorithm and the Gröbner walk algorithm. These algorithms are often employed to compute (difficult) lexicographic Gröbner bases from (easier) total degree Gröbner bases.
A Gröbner basis is termed reduced if the leading coefficient of each element of the basis is 1 and no monomial in any element of the basis is in the ideal generated by the leading terms of the other elements of the basis. In the worst case, computation of a Gröbner basis may require time that is exponential or even doubly-exponential in the number of solutions of the polynomial system (for degree reverse lexicographic order and lexicographic order, respectively). Despite these complexity bounds, both standard and reduced Gröbner bases are often computable in practice, and most computer algebra systems contain routines to do so.
The concept and algorithms of Gröbner bases have been generalized to modules over a polynomial ring and to non-commutative (skew) polynomial rings such as Weyl algebras.
[edit] Properties and applications of Gröbner bases
[edit] Deciding equality of ideals
Reduced Gröbner bases can be shown to be unique for any given ideal and monomial ordering, and are also often computable in practice. Thus one can determine if two ideals are equal by looking at their reduced Gröbner bases.
[edit] Deciding membership of ideals
The reduction of a polynomial f by the multivariate division algorithm for an ideal using a Gröbner basis will yield 0 if and only if f is in the ideal. (This is not true in general for polynomials in more than one variable). This gives a test for determining whether or not a polynomial is in an ideal with a given set of generators.
[edit] Elimination property
If a Gröbner basis for an ideal I in
- k[x1, x2, ..., xn]
is computed relative to the lexicographic ordering with
- x1 > x2 > ... > xn,
the intersection of I with
- k[xk, xk+1, ..., xn]
is given by the intersection of the Gröbner basis with
- k[xk, xk'+1, ..., xn].
In particular a polynomial f lies in
- k[xk, xk+1, ..., xn],
if and only if its leading term lies in this subring. This is known as the elimination property.
[edit] Solving equations
In particular, this gives us a method for solving simultaneous polynomial equations. If there are only finitely many solutions (over an algebraic closure of the field in which the coefficients lie) to the system of equations
- {f1[x1, ..., xn] = a1, ..., fm[x1, ..., xn] = am},
we should be able to manipulate these equations to get something of the form
- g(xn) = b.
The elimination property says that if we compute a Gröbner basis for the ideal generated by {f1 − a1, ..., fm − am} relative to the right lexicographic ordering, then we can find the polynomial g as one of the elements of our basis. Furthermore, (taking k = n − 1) there will be another polynomial in the basis involving only xn−1 and xn, so we can take our possible solutions for xn and find corresponding values for xn−1. This lifting continues all the way up until we've found the values of all the variables.
[edit] Conversion of parametric equations
The same elimination property can almost be used to convert parametric equations of polynomials into nonparametric equations. Given the equations
- {x1 = f1(t1, ..., tm), ..., xn = fn(t1, ..., tm)},
we compute a Gröbner basis for the ideal generated by
- {x1 − f1, ..., xn − fn}
relative to any ordering which places polynomials involving t greater than those which don't: for example, lexicographic ordering with
- t1 > t2 > ... > tm > x1 > ... > xn.
Taking only the elements of the basis which do not involve the t variables, we get a set of equations describing not the original surface, but the smallest affine variety containing it.
[edit] Intersecting ideals
- If I is generated by
- {f1, ..., fm}
and J is generated by some
- {g1, ..., gk},
then the intersection of I and J can be found by taking a Gröbner basis for the ideal generated by
- {tf1, ..., tfm, (1 − t)g1, ..., (1 − t)gk}
relative to any lexicographic ordering which places t first, then taking only those terms not involving t. In particular, this allows us to calculate the least common multiple (and hence the greatest common divisor) of two polynomials f and g, since it is the generator of the intersection of the ideals generated by f and by g. This is true even if we do not know how to factor the polynomials! Also, note that for more than one variable the polynomial ring is not a Euclidean domain, so the Euclidean algorithm doesn't work here.
[edit] See also
- Buchberger's algorithm
- Faugère F4 algorithm
- Gröbner-Shirshov basis
- Mathematica includes an implementation of the Buchberger algorithm, with performance-improving techniques such as the Gröbner walk, Gröbner trace, and an improvement for toric bases
- Maple has implementations of the Buchberger and Faugere F4 algorithms
- SINGULAR free software for computing Gröbner bases
- Macaulay 2 free software for doing polynomial computations, particularly Gröbner bases calculations.
- CoCoA free computer algebra system for computing Gröbner bases
[edit] Further reading
- David Cox, John Little, and Donal O'Shea (1997). Ideals, Varieties, and Algorithms: An Introduction to Computational Algebraic Geometry and Commutative Algebra, Springer. ISBN 0-387-94680-2. See Chapter 2: Groebner Bases.
[edit] External links
- B. Buchberger, Groebner Bases: A Short Introduction for Systems Theorists in Proceedings of EUROCAST 2001.
- Comparative Timings Page for Gröbner Bases Software
- ogb Online Gröbner Basis, Galway, Éire
- Java applet for computing Gröbner bases by Fabrizio
- Gröbner Basis Theory Leicester University
- Eric W. Weisstein, Gröbner Basis at MathWorld.