5 The existence of Gröbner basis

5
The existence of Gröbner basis
We use Buchberger’s criterion from the previous section to give an algorithm that
constructs a Gröbner basis of an ideal from any given set of generators—Hilbert’s
Basis Theorem is used to show that the algorithm terminates. Here is Buchberger’s
criterion again:
Theorem. Let G = {g1 , . . . , gs } ⊂ k[x1 , . . . , xn ] be a set of nonzero polynomials, and
let I = (g1 , . . . , gs ) ⊂ k[x1 , . . . , xn ] be the ideal they generate. Then G is Gröbner
basis for I if and only if
G
S(f, g) = 0 for every 1 ≤ i < j ≤ s.
G
Remember that the notation S(f, g) denotes the reduced remainder of the Spolynomial S(f, g) after division by the polynomials in G—you get the same reduced
remainder however you do the division because G is a Gröbner basis.
5.1
The proof of Buchberger’s criterion
Let’s think again about the Buchberger criterion. One implication in this theorem is
clear: S-polynomials lie in the ideal I and so reduce to zero on division by a Gröbner
basis G. The converse is the point. By construction, S-polynomials are expressions
that kill a pair of leading terms. The next lemma says that any k-linear expression
that kills leading terms is a combination of S-polynomials.
Lemma 29. Suppose
P f1 , . . . , fs ∈ k[x1 , . . . , xn ] have the same leading term, LT(fi ) =
X 6= 0. If
f
=
ci fi with ci ∈ k satisfies LT(f ) < X, then there are di,j ∈ k so
P
that f = i<j di,j S(fi , fj ).
Proof Let LT(fi ) = ai X so that S(fi , fj ) = (1/ai )fi − (1/aj )fj . The coefficient
of X in f is zero by hypothesis, so c1 a1 + · · · cs as = 0. The proof is complete by
rearranging the defining expression of f into S-polynomial terms:
f = c1 f1 + · · · cs fs
1
f
a1 1
1
f
as s
+ · · · + cs as
= c1 a1 a11 f1 − a12 f2 + (c1 a1 + c2 a2 ) a12 f2 − a13 f3
1
1
+(c1 a1 + c2 a2 + c3 a3 ) a3 f3 − a4 f4
1
fs−1 − a1s fs
+ · · · + (c1 a1 + · · · + cs−1 as−1 ) as−1
+(c1 a1 + · · · + cs as ) a1s fs
= c1 a1
since most terms cancel in the addition and the final
1
P
ci ai factor is zero. Q.E.D.
Proof of Buchberger’s criterion Let f ∈ I. We must show that LT(gi ) divides
LT(f ) for some i. We can write
f = h1 g1 + · · · + hs gs
(1)
but of course we do not have any bound on the leading terms on the right-hand side
of (1). Define the largest such term to be
X = max {LM(hi gi ) : i = 1, . . . , s} .
i
We can suppose that the expression (1) for f has been chosen so that this X is
minimal (with respect to the monomial order) among leading terms appearing in
such expressions.
If X = LM(f ) then we are done. So supposing not, we identify the worst
offending terms:
SX = {i ∈ {1, . . . , s} : LM(hi gi ) = X} ,
and for i ∈ SX P
we write hi = ci Xi + h0i where ci ∈ k and X > LT(h0i ).
Define g = i∈SX cx (Xi gi ). This has the same leading part as that of the expression (1), and that completely cancels out. So LM(g) < X although LM(Xi gi ) = X
for every i ∈ S. So by Lemma 29, g is really a k-linear combination of S-polynomials:
there are di,j ∈ k for which
X
di,j S(Xi gi , Xj gj ).
g=
i,j∈S,i<j
The proof is almost complete, bar the calculation: these S-polynomials are almost
S(gi , gj ), and indeed we check that they do reduce to zero under G; but then we can
make an expression for f with smaller leading term X than (1), which contradicts
the minimality of X.
It is easy to see that
X
S(Xi gi , Xj gj ) =
S(gi , gj )
LCM(LM(gi ), LM(gj ))
P
so that S(Xi gi , Xj gj ) = v hi,j,v gv for hi,j,v satisfying
max{LM(hi,j,v } = LM(S(Xi gi , Xj gj )) < X.
v
So we conclude that
P
P
f = Pi∈SX hi gi + i∈S
gi
/ X hiP
0
= Pi∈SX (ci Xi + hP
i )gi +
1
P
= Pi∈SX ci Xi gi +P i∈SX h0i gi + P
1
P
=
d
h
g
+
v
i,j∈SX
,i<j i,j
v∈SX i,j,v 2+
1
P
P
P P
=
v∈SX
i,j∈SX ,i<j di,j hi,j,v gv +
2+
1.
Now every expression
P pv gv on the right-hand side has leading term < X. So this is
an expression f =
qi gi with maxi {LM(qi gi } < X, contradicting the minimality
of (1).
Q.E.D.
2
5.2
Existence of Gröbner bases and Buchberger’s algorithm
Buchberger’s criterion allows one to check whether a given finite set is a Gröbner
basis, but it does not explain why an ideal should have a Gröbner basis.
It is easy to see that how to use it to make an algorithm that computes a Gröbner
basis from a given (finite) basis.
Algorithm 1 (Buchberger’s algorithm).
input
I = (f1 , . . . , fs ) ⊂ k[x]
output Gröbner basis G ⊂ I
start
H := {f1 , . . . , fs }
repeat
G := H
P := {{f, g} : f, g ∈ H and f 6= g}
for {f, g} ∈ P do
H
h := S(f, g)
if h 6= 0 then
H := H ∪ {h}
end if
end for
until H = G
return G.
The key point in the proof of this algorithm is its termination. As you must
expect, this follows from Hilbert’s basis theorem, and so we discuss that now.
Finite generation and the ascending chain condition Let R be any ring and
I ⊂ R a non-zero ideal. Certainly I contains infinitely many non-zero elements, so
we can make an infinite sequence (f1 , f2 , . . . ) = (fi )∞
i=1 of distinct fi ∈ I. Consider
the ideals Ij = (f1 , . . . , fj ) which form a chain of inclusions
I1 ⊂ I2 ⊂ I3 ⊂ · · · .
Can one ever choose a sequence so that every inclusion in this chain is strict?
Definition 30. Let R be a commutative ring. An ascending chain of ideals in R is
a sequence of ideals I1 , I2 , . . . for which
I1 ⊂ I2 ⊂ I3 ⊂ · · · .
An ascending chain is said to terminate if there is some K ∈ N for which Ij = IK
whenever j ≥ K.
So an ascending chain that terminates looks like
I1 ⊂ I2 ⊂ I3 ⊂ · · · . ⊂ IK−1 ⊂ IK = IK+1 = IK+2 = · · ·
and the inclusions Ij ⊂ Ij+1 for j < K may be strict or not.
3
Example Just for the purposes of this exercise, imagine that the only ideals you
work with are monomial ideals. We can try to make an ascending chain of monomial
ideals I1 ⊂ I2 ⊂ I3 ⊂ · · · in k[x, y] where each inclusion is strict. Suppose we start
with I1 = (x4 , x3 y, x2 y 3 , xy 4 , y 6 ). Only 14 monomials are not in I1 : namely
1, x, x2 , x3 ,
y, xy, x2 y,
y 2 , xy 2 , x2 y 2 ,
y 3 , xy 3 ,
y4,
y5.
(Drawing a picture of the exponents (i, j) ∈ N2 of monomials xi y j makes this clear.)
To make I2 strictly bigger than I1 , we must include at least one of these missing
monomials. Suppose we include xy 2 , so that
I2 = (x4 , x3 y, xy 2 x2 y 3 , xy 4 , y 6 ) = (x4 , x3 y, xy 2 , y 6 ).
Only 11 monomials are not in I2 : namely
1, x, x2 , x3 ,
y, xy, x2 y,
y2, y3, y4, y5.
To make I3 strictly bigger than I2 , we must include at least one of these missing
monomials. Suppose we include x2 , so that
I3 = (x4 , x3 y, xy 2 , y 6 , x2 ) = (x2 , xy 2 , y 6 ).
Only 8 monomials are not in I3 : namely
1, x,
y2, y3, y4, y5.
y, xy,
And so we can continue. But, whatever choices we make for monomial to add,
eventually we will make an ideal that contains all the monomials (and so is equal
to k[x, y]) and cannot be enlarged at all. So we cannot make an infinite and strictly
increasing chain of ideals: our chain of ideals terminates.
Of course, we could have allowed ourselves to make steps Ik = Ik+1 along the
way—that is allowed in the definition of ascending chain, after all. But that won’t
help: there has to come a point in the increasing chain I1 ⊂ I2 ⊂ I3 ⊂ · · · where the
ideals stop increasing and are all equal—any ascending chain of monomial ideals we
build will terminate.
♦
Lemma 31. Let R be a ring. Statements (a) and (b) below are equivalent.
(a) Every ideal in R has a finite basis.
(b) Every ascending chain of ideals in R terminates.
Proof Suppose that (a) holds and let I1 ⊂ I2 ⊂ ·S
· · be an ascending chain of
ideals in R. It is easy to check that the subset I = ∞
j=1 Ij is an ideal of R. Let
f1 , . . . , fs ∈ I be a basis of I, which exists by (a). Each fi must lie in some ideal of
the chain, say fi ∈ Ij(i) . Of course, then fi ∈ Ik whenever k ≥ j(i). In particular, if
N = max{j(1), . . . , j(s)} then every fi ∈ IN . So
IN ⊂ IN +1 ⊂ · · · ⊂ I ⊂ IN ,
and therefore every inclusion in this chain is in fact equality.
The converse is easy: if an ideal does not have a finite basis, then the ascending
chain constructed as in the example above cannot terminate.
Q.E.D.
Theorem 32 (Hilbert’s Basis Theorem). If I ⊂ k[x1 , . . . , xn ] is an ideal, then there
are finitely many polynomials f1 , . . . , fs ∈ I so that I = (f1 , . . . , fs ).
4
Discussion in place of proof We will not prove this theorem—there is a standard
proof that could appear in several courses. But there is an interesting point for us
that is often omitted. Imagine that this theorem was proved for monomial ideals:
that result is called Dickson’s Lemma, and a precise statement of it is
if I ⊂ k[x1 , . . . , xn ] be an ideal generated by a (possibly infinite) set of monomials
A ⊂ I, then there is a finite subset {m1 , . . . , ms } ⊂ A so that I = (m1 , . . . , ms ).
Theorem 32 follows from this at once. Given I, consider its ideal of leading terms
LT(I). By definition, LT(I) is generated by the set of all LT(g) for g ∈ I. By
Dickson’s Lemma, it is generated by only finitely many of these monomials, LT(I) =
(LT(g1 ), . . . , LT(gs ) for g1 , . . . , gs ∈ I. By construction, {g1 , . . . , gs } is a Gröbner
basis for I, and so in particular it is a basis.
One might expect a proof of Dickson’s Lemma (see [Cox, Little, O’Shea], for
instance) to be easier that a proof of Hilbert’s Basis Theorem. But in fact, the
proofs are an almost identical induction on the number of variables working with
leading terms of polynomials. It is not usually emphasised, but the usual proof of
Theorem 32 does prove the existence of Gröbner bases for every ideal.
Proof of Algorithm 1 At every stage, the sets G, H, P are all finite, and so each
operation can be carried out and the for-endfor loop is a finite loop. If at the end
of the repeat-until loop, the two sets H and G are equal, then every S-polynomial
between elements of H reduces to zero modulo H and so H (and therefore also G)
is a Gröbner basis for the ideal it generates. Of course, that ideal is I because H
contains the original basis f1 , . . . , fs of I, and every element h added to H was also
in I.
The only question is why does the repeat-until loop terminate. Define H1 to be
the set H after one pass through this loop, H2 to be the set H after two passes
through this loop, and so on. If the loop does not terminate, then it generates a
sequence of strict inclusions
H1 ⊂ H2 ⊂ H3 ⊂ · · · .
Let Ij be the ideal generated by {LT(h) : h ∈ Hj }, and consider the ascending chain
I1 ⊂ I2 ⊂ I3 ⊂ · · · .
I claim that Ij ⊂ Ij+1 is a strict inclusion for every j ≥ 1. Certainly there is some
Hj
h ∈ Hj+1 \ Hj . Moreover, it arises from the algorithm as h = S(f, g) for some pair
f, g ∈ Hj . Certainly LT(h) ∈ Ij+1 . But equally clearly LT(h) ∈
/ Ij for h is reduced
with respect to Hj by construction.
We have constructed an ascending chain in I that does not terminate. By
Lemma 31, this means that I does not have a finite basis. But that contradicts
Hilbert’s basis theorem. So our initial hypothesis that the repeat-until loop did not
terminate was wrong.
Q.E.D.
5
Homework
Q.1. Follow the Buchberger algorithm step by step to compute Gröbner basis of
the ideal I = (x2 − y, xy − 1) ⊂ k[x, y] with respect to the lex order with x > y.
Compute the sequence of ideals generated by the leading terms of polynomials
in the basis at each stage of the calculation. For example, LT(x2 − y) = x2 and
LT(xy − 1) = xy, and the ideal generated by these two leading terms is simply
(x2 , xy). Now the first (reduced) S-polynomial you compute will turn out to be
x − y 2 . This has leading term x. Including that in the ideal basis leading terms
gives (x2 , xy, x) = (x)—the ideal has grown a bit, as is clear by drawing the Newton
polygon. Now compute another S-polynomial and see whether including its leading
term makes the ideal still bigger.
Q.2. Follow the Buchberger algorithm step by step to compute Gröbner basis of
the ideal I = (x3 − 1, xy − 1) ⊂ k[x, y] with respect to the lex order with x > y.
Compute the sequence of ideals generated by the leading terms of polynomials
in the basis at each stage of the calculation.
Q.3. Follow the Buchberger algorithm step by step to compute Gröbner basis of
the ideal I = (x3 − y, xy 2 − 1) ⊂ k[x, y] with respect to the lex order with x > y.
Compute the sequence of ideals generated by the leading terms of polynomials
in the basis at each stage of the calculation.
Q.4. Let I1 = (x2 , xy 2 , y 3 ), an ideal in k[x, y]. Find an ascending chain I1 ⊂ I2 ⊂
· · · for which the first three inclusions are strict (that is, I1 6= I2 6= I3 6= I4 ). Sketch
your ideals in N2 , by plotting their exponents (i, j) for xi y j .
Can you find an example for which I4 6= k[x, y]?
Q.5. Explain why a sequence of monomial ideals that starts with the ideal I1 =
(x2 y, y 4 ) in k[x, y] must terminate. (Note that there are infinitely many monomials
not lying in this ideal, so the basic finiteness argument that forces termination in
the previous example needs something extra.)
6