From Academic Kids

In computer algebra, computational algebraic geometry, and computational commutative algebra, a Gröbner basis G (named after Wolfgang Gröbner) is a particular kind of generating subset of an ideal I in a polynomial ring R. One can view it as a multivariate, nonlinear generalization of:
 the Euclidean algorithm for computation of univariate greatest common divisors, and
 Gaussian elimination for linear systems.
A Gröbner basis 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;
 division of any polynomial in the polynomial ring R gives a unique remainder;
 division of any polynomial in the ideal I by the polynomials of G has remainder 0.
It should be clear that all these properties are equivalent; different authors use different definitions depending on the topic they choose.
It is a significant fact of commutative algebra that such generating subsets exist, and can be effectively obtained starting with any generating subset.
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 lexicographic, a variant on lexicographic ordering where monomials are sorted first by degree, then by lexicographic ordering when two monomials are of the same degree.
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 generating them is known as Buchberger's algorithm. All subsequent algorithms for computing Gröbner bases (including the justifiably celebrated algorithms of Faugére) are a refinement of Buchberger's algorithm.
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 coefficients of the other elements of the basis. Both standard and reduced Gröbner bases are often computable in practice.
The concept and algorithms of Gröbner bases have been generalized (in a limited way) to modules.
Contents 
Properties and applications of Gröbner bases
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.
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.
Elimination property
If a Gröbner basis for an ideal I in
 k[x_{1}, x_{2}, ..., x_{n}]
is computed relative to the lexicographic ordering with
 x_{1} > x_{2} > ... > x_{n},
the intersection of I with
 k[x_{k}, x_{k+1}, ..., x_{n}]
is given by the intersection of the Gröbner basis with
 k[x_{k}, x_{k'+1}, ..., x_{n}].
In particular a polynomial f lies in
 k[x_{k}, x_{k+1}, ..., x_{n}],
if and only if its leading term lies in this subring. This is known as the elimination property
Solving equations
In particular, this gives us a method for solving simultaneous polynomial equations. If there are only finitely many solutions to the system of equations
 {f_{1}[x_{1}, ..., x_{n}] = a_{1}, ..., f_{m}[x_{1}, ..., x_{n}] = a_{n}},
we should be able to manipulate these equations to get something of the form
 g(x_{n}) = b.
The elimination property says that if we compute a Gröbner basis for the ideal generated by {f_{1} − a_{1}, ..., f_{m} − a_{m}} 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 x_{n−1} and x_{n}, so we can take our possible solutions for x_{n} and find corresponding values for x_{n−1}. This lifting continues all the way up until we've found the values of all the variables.
Conversion of parametric equations
The same elimination property can almost be used to convert parametric equations of polynomials into nonparametric equations. Given the equations
 {x_{1} = f_{1}(t_{1}, ..., t_{m}), ..., x_{n} = f_{n}(t_{1}, ..., t_{m})},
we compute a Gröbner basis for the ideal generated by
 {x_{1} − f_{1}, ..., x_{n} − f_{n}}
relative to any ordering which places polynomials involving t greater than those which don't: for example, lexicographic ordering with
 t_{1} > t_{2} > ... > t_{m} > x_{1} > ... > x_{n}.
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.
Intersecting ideals
 If I is generated by
 {f_{1}, ..., f_{m}}
and J is generated by some
 {g_{1}, ..., g_{k}},
then the intersection of I and J can be found by taking a Gröbner basis for the ideal generated by
 {tf_{1}, ..., tf_{m}, (1 − t)g_{1}, ..., (1 − t)g_{k}}
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 no euclidian domain, so the Euclidian algorithm doesn't work here.
External link
 Comparative Timings Page for Gröbner Bases Software (http://magma.maths.usyd.edu.au/users/allan/gb)