1 Preliminary
We denote by K a field and by K[X] the polynomial ring over K in n variables X1, . . . , Xn. For α = (α1, . . . , αn) ∈ Nn we abbreviate X1α1X2α2· · · Xnαn by Xα, and we call Xα a power product.
Definition 1.1. A term order (or a term ordering or even a monomial ordering) on K[X] is any relation < on Nn satisfying :
(1) < is a total (or linear) ordering on Nn. (2) If α < β and γ ∈ Nn, then α + γ < β + γ .
(3) < is a well-ordering on Nn. This means that every nonempty subset of Nn has a smallest element under < .
For a simple example of a term order, note that the usual numerical order 0 < 1 < 2 < 3 < · · · < m < m + 1 < · · ·
on the elements of N satisfies the three conditions of Definition 1.1. Hence, the degree ordering 1 < x < x2 < · · · < xm< xm+1 < · · ·
on the monomials in K[X] is a term order.
Definition 1.2. (Lexicographic Order) For α = (α1, . . . , αn), β = (β1, . . . , βn) ∈ Nn we define α <lex β ⇐⇒ there is a j ∈ {1, 2, . . . , n} such that αk = βk if k < j and αj < βj.
Example 1 : (0, 2, 0) <lex (1, 0, 0) <lex (1, 0, 1).
With P
αcαXα or P
α∈NncαXα we always tacitly mean that only finitely many of the coefficients cα are different from zero. If f = P
αcαXα is a polynomial in K[X] and we have selected a term order <, then we can order the monomials of f in an unambiguous way with respect to <. For example, let f = 4xy2z + 4z2− 5x3+ 7x2z2 ∈ K[x, y, z]. Then with respect to the lex order, we would reorder the terms of f in decreasing order as
f = −5x3+ 7x2z2+ 4xy2z + 4z2. We will use the following terminology.
Definition 1.3. Let f = P
αcαXα be a nonzero polynomial in K[X] and let < be a term order.
(1) The degree of f is
deg(f ) := max { α ∈ Nn| cα 6= 0 } . (2) The leading coefficient of f is
lc(f ) := cdeg(f ) . (3) The leading monomial of f is
lm(f ) := Xdeg(f ) . (4) The leading term of f is
lt(f ) := lc(f ) · lm(f ) .
Example 2 : Let f = 4xy2z + 4z2− 5x3+ 7x2z2 and let < denote the lex order. Then deg(f ) = (3, 0, 0), lc(f ) = −5, lm(f ) = x3, lt(f ) = −5x3.
For a subset F ⊆ K[X] we define
deg(F ) := { deg(f ) | f ∈ F − {0} } , D(F ) := deg(F ) + Nn and LT (F ) := { lt(f ) | f ∈ F − {0} } .
Let us firstly look at the special case of the division of f by g, where f, g ∈ K[X]. We fix a term order on K[X].
Definition 1.4. Given f, g, h in K[X], with g 6= 0, we say that f reduces to h modulo g in one step, written
f −→ h,g if and only if lm(g) divides lt(f ) and
h = f − lt(f ) g .
Example 3 : Let f = 6x2y − x + 4y3− 1 and g = 2xy + y3 be polynomials in Q[x, y]. If the term order is lex order with y < x, then f −→ h, where h = −3xyg 3− x + 4y3− 1, since, in this case lt(f ) = 6x2y is the term of f we have canceled using lt(g) = 2xy.
In the multivariable case we may have to divide by more than one polynomial at a time, and so we extend the process of reduction defined above to include this more general setting.
Definition 1.5. Let f , h, and f1, . . . , fs be polynomials in K[X], with fi 6= 0 (1 ≤ i ≤ s), and let F = {f1, . . . , fs}. We say that f reduces to h modulo F , denoted
f −→F + h,
if and only if there exist a sequence of indices i1, i2, . . . , it ∈ {1, 2, . . . , s} and a sequence of polynomials h1, . . . , ht−1 ∈ K[X] such that
f −→ hfi1 1 −→ hfi2 2 −→ · · ·fi3 f−→it−1 ht−1 −→ h .fit
Definition 1.6. A polynomial r is called reduced with respect to a set of non-zero polynomials F = {f1, . . . , fs} if r = 0 or no power product that appears in r is divisible by any one of the lm(fi), i = 1, 2, . . . , s. In other words, r cannot be reduced modulo F .
Definition 1.7. Fix a term order and let I be an ideal in K[X], I 6= {0}. A finite subset G of I − {0} is a Gr¨obner basis of I ⇐⇒ LT (G) generates the ideal < LT (I) > .
Definition 1.8. Let 0 6= f, g ∈ K[X], and let L = lcm lm(f ), lm(g). The polynomial S(f, g) = L
lt(f ) f − L lt(g) g is called the S-polynomial of f and g .
Example 4 : Let f = 2yx − y, g = 3y2− x ∈ Q[x, y]. If the term order is lex order with x < y, then L = y2x, and S(f, g) = y2yx2x f − y3y2x2 g = 12yf − 13xg = −12y2+13x2.
Algorithm 1.9. ( Buchberger’s Algorithm for Computing Gr¨obner Bases ) INPUT : F = {f1, . . . , fs} ⊆ K[X] with fi 6= 0 (1 ≤ i ≤ s) OUTPUT : G = {g1, . . . , gt}, a Gr¨obner basis for < f1, . . . , fs >
INITIALIZATION : G := F , G :={fi, fj} | fi 6= fj ∈ G WHILE G 6= Ø DO
Choose any {f, g} ∈ G G := G −{f, g}
S(f, g) −→G + h, where h is reduced with respect to G IF h 6= 0 THEN
G := G ∪{u, h} | for all u ∈ G G := G ∪ {h}
Example 5 : Let f1 = xy − x, f2 = −y + x2 ∈ Q[x, y] ordered by the lex term ordering with x < y.
INITIALIZATION : G := {f1, f2}, G :={f1, f2} First pass through the WHILE loop
G := Ø
S(f1, f2) −→G + x3 − x = h ( reduced with respect to G ) Since h 6= 0, let f3 := x3− x
G :={f1, f3}, {f2, f3} G := f1, f2, f3
Second pass through the WHILE loop
G :={f2, f3}
S(f1, f3) −→G + 0 = h Third pass through the WHILE loop
G := Ø
S(f2, f3) −→G + 0 = h The WHILE loop stops, since G := Ø .
Thus, {f1, f2, f3} is a Gr¨obner basis for the ideal < f1, f2 > .
Definition 1.10. Let I be an ideal of K[X]. The initial ideal of I for the term order < is the ideal
in<(I) =Xα | for all α ∈ D(I) .
The ideal in<(I) is highly dependent on the chosen ordering ; once < is fixed, the ideal is
Let us fix, for our discussion, a term order which we denote simply by <. Let S = {Xα+ I | α /∈ D(I)}, where I is a non-zero ideal in K[X]. We are going to show that S is a basis for the K-vector space K[X] / I.
We first show that every element f + I in K[X] / I is a linear combination of S. Let f =Pr
i=0cβiXβi ∈ K[X], and we may assume that β0 < β1 < β2 < · · · < βr := deg(f ).
Let l1 = max { i | βi ∈ D(I), 0 ≤ i ≤ r }.
If l1 = 0, then obviously, f + I is a linear combination of S.
Suppose l1 > 0. Since βl1 ∈ D(I), there exists a non-zero polynomial g1 ∈ I such that βl1 = deg(g1) and lt(g1) = cβl1Xβl1 .
Let h1 = f − g1. Then f + I = h1+ I.
Write h1 =Ps
i=0dγiXγi ∈ K[X].
Again, let l2 = max { i | γi ∈ D(I), 0 ≤ i ≤ s }.
If l2 = 0, then h1+ I is a linear combination of S, so is f + I.
Suppose l2 > 0. Since γl2 ∈ D(I), there exists a non-zero polynomial g2 ∈ I such that γl2 = deg(g2) and lt(g2) = dγl2Xγl2 .
Let h2 = h1− g2. Then f + I = h1+ I = h2+ I.
Doing the same thing on h2 and keeping going, we will get that f + I is a linear combination of S.
Next, we show that S is a linearly independent subset of K[X] / I. Let Pm
i=0aαi(Xαi+I) = I, where Xαi+ I ∈ S and α0 < α1 < · · · < αm. Then Pm
i=0aαiXαi ∈ I.
If aαm 6= 0, then αm ∈ D(I), a contradiction. So, aαm = 0 and Pm−1
i=0 aαiXαi ∈ I.
If aαm−1 6= 0, then αm−1 ∈ D(I), a contradiction. So, aαm−1 = 0 and Pm−2
i=0 aαiXαi ∈ I.
Continuing in the same way, we get that aαm = aαm−1 = · · · = aα0 = 0.
Therefore, S is a basis for the K-vector space K[X] / I.
Definition 1.11. For a given f ∈ K[X], the unique polynomial N ormalF orm(f ) =X
cαXα, where each α /∈ D(I), such that
f − N ormalF orm(f ) ∈ I, is called the normal form of f with respect to the chosen ordering.
Lemma 1.1. Let I be an ideal of K[X]. Then the mapping
N ormalF orm : K[X] / I −→ K[X] / in(I) is an isomorphism of K-vector spaces.
Proof : Define
N ormalF orm : K[X] / I −→ K[X] / in(I)
f + I −→ N ormalF orm(f ) + in(I)
Since {Xα+ I | α /∈ D(I)} is a basis of the K-vector space K[X] / I, clearly, NormalForm is well-defined, epimorphism, and ker(N ormalF orm) = { I }.
Therefore, K[X] / I ' K[X] / in(I) .