Library of Congress CataloginginPubIication Data Adams, William W., 1937": An introduction to Grbner bases/William W. Adams, Philippe Loustaunau. p. cm. ~(Graduate studies in mathematics, ISSN 1065'7339; 3) Includes bibliographical references and index. ISBN (l.821838040 IL Title. III. Series. 1. Grobner bases. I. Loustaunau, Philippe, 1958QA25l.3.A32 1994 512' .4dc20
9419081 CIP
Copying and reprinting. Individual readers of this publication, and non profit libraries acting for them, are permitted to make fair use of the material, such as to copy a chapter for use in teaching or research. Permission is granted to quote brief passages from this publication in reviews, provided the customary acknowledgment of the source is given. Republication, systematic copying, or multiple reproduction of any materiai in this publication (including abstracts) is permitted only under license from the American Mathematical Society. Requests for sueh permission should be addressed to the Assistant to the Publsher, American Mathematical Society, P.O. Box 6248, Providence, Rhode Island 029406248. Requests can aIse be made by email ta reprintpermissionlams. org.
Copyright 1994 by the American Mathematical Society. AlI rights reserved. Reprinted with corrections in 1996. The American Mathematical Society retains ail rights except those granted to the United States Government. Printed in the United States of America. The paper used in tbis book is acidfree and falls within the guidelines established to ensure permanence and durability. This publication was typeset by the authors, with assistance from the American Mathematical Society, using A,A.1S TEX, the American Mathematical Society's TEX macro system. 109876543 04 03 02 01 00
PL
Contents
Preface Chapter 1. Basic Theory of Grbner Bases 1.1. Introduction 1. 2. The Linear Case 1.3. The One Variable Case 1.4. Term Orders 1.5. Division Algorithm 1.6. Grbner Bases 1.7. SPolynomials and Buchberger's Algorithm 1.8. Reduced Grbner Bases 1. 9. Summary Chapter 2. Applications of Grbner Bases 2.1. Elementary Applications of Grbner Bases 2.2. Hilbert Nullstellensatz 2.3. Elimination 2.4. Polynomial Maps 2.5. Sorne Applications to Algebraic Geometry 2.6. Minimal Polynomials of Elements in Field Extensions 2.7. The 3Color Problem 2.8. Integer Programming Chapter 3. Modules and Grbner Bases 3.1. Modules 3.2. Grbner Bases and Syzygies 3.3. Improvements on Buchberger's Algorithm 3.4. Computation of the Syzygy Module 3.5. Grbner Bases for Modules 3.6. Elementary Applications of Grbner Bases for Modules 3.7. Syzygies for Modules 3.8. Applications of Syzygies 3.9. Computation of Hom
vii
ix 1 1 7 JO 18 25 32 39 46 50 53 53 61 69 79 90 97 102 105
ll3 ll3 ll8 124 134 140 152 161
171
183
viii
CONTENTS
3.10. Free Resolutions Chapter 4. Griibner Bases over Rings 4.1. Basic Definitions 4.2. Computing Griibner Bases over Rings 4.3. Applications of Griibner Bases over Rings 4.4. A Primality Test 4.5. Griibner Bases over Principal Ideal Domains 4.6. Primary Decomposition in Rix] for R a PID Appendix A. Computations and Algorithms Appendix B.
References
Well~ordering
237
246 259
275 277
279
and Induction
283
285
Preface
We wrote this book with two goals in mind: (i) To give a leisurely and fairly comprehensive introduction to the definition and construction of Grobner bases; (ii) To discuss applications of Griibner bases by presenting computational methods to solve problems which involve rings of polynomials. This book is designed to be a fust course in the theory of Griibner bases suitable for an advanced undergraduate or a beginning graduate student. This book is also suitable for students of computer science, applied mathematics, and engineering who have sorne acquaintance with modern algebra. The book does not assume an extensive knowledge of algebra. Indeed, one of the attributes of this subject is that it is very accessible. In fact, aU that is required is the notion of the ring of polynomials in several variables (and rings in general in a few places, in particular in Chapter 4) together with the ideals in this ring and the concepts of a quotient ring and of a vector space introduced at the level of an undergraduate abstract and linear algebra course. Except for linear algebra, even these ideas are reviewed in the text. Sorne topies in the later sections of Chapters 2, 3, and 4 require more advanced material. This is always clearly stated at the beginning of the section and references are given. Moreover, most of this material i8 reviewed and basic theorems are stated without proofs. The book can be read without ever "computing" anything. The theory stands by itself and has important theoretical applications in its own right. However, the reader will not fully appreciate the power of, or get insight into, the methods introduced in the book without actually doing sorne of the computations in the examples and the exercises by hand or, more often, using a Computer Algebra System (there are over 120 workedout examples and over 200 exercises). Computing is useful in producing and analyzing exarnples which illustrate a concept already understood, or which one hopes will give insight into a less weIl understood idea or technique. But the real point here is that cnmputing is the very essence of the subject. This is why Griibner basis theory has become a major research area in computational algebra and computer science. Indeed, Grbner hasis theory is generating increasing interest because of its usefulness in proix
PREFACE
viding computational tools which are applicable to a wide range of problems in mathematics, science, engineering, and computer science. Grbner bases were introduced in 1965 by Bruno Buchberger ' [Bu65]. The basic idea behind the theory can be described as a generalization of the theory of polynomials in one variable. In the polynomial ring k[x], where k is a field, any ideal J can be generated by a single element, namely the greatest comrnon divisor of the elements of J. Given any set of generators {f" ... ,J,} <:: k[x] for J, one can compute (using the Euclidean Aigorithm) a single polynomial d = gCd(f"", ,J,) such that J = (f" ... ,J,) = (d). Then a polynomial JE k[x] is in J if and only if the rernainder of the division of J by d is zero. Grbner bases are the analog of greatest cornmon divisars in the multivariate case in the following sense. A Grbner basis for an ideal J <:: k[XI' ... ,xn ] generates J and a polynomial J E k[XI'" . ,xn ] is in J if and only if the remainder of the division of J by the polynomials in the Grbner basis is zero (the appropriate concept of division is a central aspect of the theory). This abstract characterization of Grbner bases is only one side of the theory. In fact jt falls far short of the true significance of Grbner bases and of the real contribution of Bruno Buchberger. Indeed, the ideas behind the abstract characterization of Gr6bner bases had been around before Buchberger's work. For example, Macaulay [Mac] used sorne of these ideas at the beginning of the century to determine certain invariants of ideals in polynomial rings and Hironaka [Hi], in 1964, used similar ideas to study power series rings. But the true signmcance of Grbner bases is the fact that they can be cornputed. Bruno Buchberger's great contribution, and what gave Grobner basis theory the status as a subject in its own right, is his algorithm for computing these bases. Our chaice of tapies is designed ta give a braad introduction ta the elementary aspects and applications of the subject. As is the case for rnost topies in commutative algebra, Gr6bner basis theory can be presented from a geometric point of view. We have kept our presentation algebraic except in Sections 1.1 and 2.5. For those interested in a geometric treatment of sorne of the theory we recommend the excellent book by D. Cox, J. Little and D. O'Shea [CLOS]. The reader who is interested in going beyond the contents of this book should use our list of references as a way to access other sources. We mention in particular the books by T. Becker and V. Weispfenning [BeWe] and by B. Mishra [Mi] which contain a lot of material not in this book and have extensive lists of references on the subject. Although this book is about computations in algebra, sorne of the issues which might be of interest to computer scientists are outside the scope of this book. For example, implementation of algorithms and their complexity are discussed only briefly in the book, primarily in Section 3.3. The interested reader should consult the references.
l
PREFACE
xi
In Chapter 1 we give the basic introduction to the concept of a Grbner basis and show how to compute it using Buchberger's Aigorithm. We are careful to give motivations for the definition and algorithm by giving the familiar examples of Gaussian elimination for !inear polynomials and the Euclidean Aigorithm for polynomials in one variable. In Chapter 2 we present the basic applications to algebra and elementary algebraic geometry. We close the chapter with three specialized applications ta algebra, graph theory, and integer programming. In Chapter 3 we begin by using the concept of syzygy modules to give an improve~ ment of Buchberger's Aigorithm. We go on to show how to use Grbner bases to compute the syzygy module of a set of polynomials (this is solving diophantine equations over polynomial rings). We then develop the theory of Grbner bases for finitely generated modules over polynomial rings. With these, we extend the applications frOID the previous chapter, give more efficient methods for com~ puting sorne of the objects from the previous chapter, and conclude by showing how to compute the Hom functor and free resolutions. In Chapter 4 we develop the theory of Grbner bases for polynomial rings when the, coefficients are now allowed to be in a general Noetherian ring and we show how to compute these bases (given certain computability conditions on the coefficient ring). We show how the theory simplifies when the coefficient ring is a principal ideal domain. We also give applications ta determining whether an ideal is prime and to COIDputing the primary decomposition of ideals in polynomial rings in one variable over principal ideal domains. We give an outline of the section dependencies at the end of the Preface. After Chapter 1 the reader has many options in continuing with the rest of the book. There are exercises at the end of each section. Many of these exercises are computational in nature, sorne doable by hand while others require the use of a Computer Algebra System. Other exercises extend the theory presented in the book. A few harder exercises are marked with (*). This book grew out of a series of lectures presented by the fust author at the National Security Agency during the summer of 1991 and by the second author at the University of Calabria, ltaly, during the summer of 1993. We would like to thank many of our colleagues and students for their helpful comments and suggestions. In particular we would like ta thank Beth Arnold, Ann Boyle, Garry Helzer, Karen Horn, Perpetua Kessy, Lyn Miller, Alyson Reeves, Elizabeth Rutman, Brian Williams, and Eric York. We also want to thank Sam Rankin, Julie Hawks and the AMS staff for their help in the prepa~ ration of the manuscript.
xii
PREFACE
Chapter 1
Chapter 2
Chapter 3
Chapter 4
Chapter 3
PREFACE
xiii
Chapter 4
In this chapter we give a leisurely introduction to the theory of Grbner bases. In the fust section we introduce the reader to the kinds of problems we will be interested in throughout this book. In the next two sections we motivate the method of solution of these problems by presenting the method of solution in two familiar special cases, namely the TQW reduction of matrices of systems of linear polynomials, and the division algorithm for polynomials in one variable. The basic method in both cases is to use the leading term of one polynomial to subtract off a term in another polynomial. In Section 1.4 we introduce what we mean by the leading term of a polynomial in n variables. In Section 1.5 we go on to generalize the ideas in Sections 1.2 and 1.3. This leads us in Section 1.6 to defining the central notion in this book, namely the notion of a Grbner basis. In Section 1. 7 we present the algorithm due to Bruno Buchberger which transformed the abstract notion of a Grobner basis into a fundamental tool in computational algebra. We refine the definition of a Grbner basis in an important way in Section 1.8 and summarize what we have done in Section 1.9.
1.1. Introduction. Let k be any field (e.g., the rational numbers, ({,)J, the real numbers, IR, or the complexnumbers, C). We consider polynomials f(X1' ... ,xn ) in n variables with coefficients in k. Such polynomials are finite surns of terms of the farm ax~l ... x~n, where a E k, and l f3i E M, i = 1, ... ,n. We caIl X~l ... x~n a power product. For example, f = XI+x~ 1 and 9 = Xl 3X~+~XIX3 are polynomials in three variables. We let klx1, ... ,xn ] denote the set of ail polyuomials in n variables 2 with coefficients in the field k. Note that in klx1'.'. ,xn ] we have the usual operations of addition and multiplication of polynomials, and with respect ta these operations k[xI, .. _ ,xn ] is a commutative ring. Also, k[Xl, ... ,xn ] is a kvector space with basis the set, 1I'n, of all power products,
1rn
E N,i
1, ... ,n}.
lWe denote by N the set of nonnegative integers, that is, N = {a, 1,2,3, ... }. 2Most of the time, 'from now on, whenever we work with just one, two, or three variables, we will not use variables with subscripts, but instead will use the variables x, y, or z as needed. For example, f = x 2 + y2  1 is a polynomial in Q[x, yJ and 9 = x  3y2 + !xz is a polynomial ln Q[x, y, zJ.
1
= {(a"
... , an) 1 ai E k, i
n
= 1, . ..
, n}.
(For example, if k = IR, then k = IRn is the usual Euclidean nspace.) A polynomial 1 E k[Xl, ... , x n ] determines a function k n ; k defined by
(al, .. ,an) ;I(a" ... ,an), for ail (al, ... ,an) Ek n .
This function is called evaluation. We thus have two ways of viewing a polynomial 1 E k[Xl, ... , Xn]. One is as a formaI polynomial in k[Xl, ... , Xn ] and the other is as a function k n ; k (it should be noted that if k happens to be a finite field then two different polynomials ean give rise ta the same function; however this neecl not concern us here). This "double identity" of polynomials is the bridge between algebra and geometry. For 1 E k[xj, . .. , x n ] we define VU) ta be the set of solutions of the equation 1 = O. More formally,
VU) = {(al, ... ,an) E k n 1 I(a" ... ,an) = O}
kn.
VU) is ealled the variety defined by f. For example, V(X2 + y2  1) IR2 is the eircle in the xyplane with center (0,0) and radius 1. More generally, given fI, ... ,Is E k[Xl, .. , xn], the variety VU" ... , l,) is defined to be the set of ail solutions of the system
(1.1.1)
That is,
fI = 0, h = 0, ...
,Is =
o.
Note that VU" ... , l,) = n:~l VUi). For example, the variety V(x2 + y2 1, x  3y2) IR2 is the intersection of the circle x2 + y2 = 1 and the parabola x = 3y2 in the xyplane. More generally still, if S k[Xl' ... , Xn], we define
V(S) = {(a" ... ,an) Ek n 1 I(a" ... ,an) =Ofor alliE S}. There are many numeric algorithms for solving nonlinear systems such as (1.1.1). These algorithms solve for one solution at a time, and find an "approximation" ta the solution. They ignore the geometric properties of the solution space (the variety), and do not take into consideration possible alternate descriptions of the variety (using a different system). Indeed, as we will see below, a variety can be the solution set of a number of systems sueh as (1.1.1), and the computation of the solutions can drastically improve if the given system of equations is transformed inta a different system that has the same solutions but is "easier" ta solve. Ta illustrate this, recall that the GaussJordan elimination method transforms a system of linear equations inta the socalled row echelon form (see Section 1.2). The system thus obtained has exactly the same solutions as the original system, but is easier ta solve; this example will be discussed
1.1. INTRODUCTION
more thoroughly in the next section. We will develop an analogous procedure for System (1.1.1) which will give us algebraic and geometric information about the entire solution space of System (1.1.1). The method for obtaining this information is to find a better representation for the corresponding variety. This will be done by considering the ideal generated by polynomials ft, ,j" denoted (J" ... ,/s):
{t
~=1
Udi
Ui
E k[X1,'" ,X n], i
l, ...
,s} .
It is easy to check that I = (J" ... ,j,) is an ideal in k[X1"" ,Xn]; that is, if j, 9 E I, then so is j + 9 and if j E I and h is any polynomial in k[X1'" . ,X n ], then hj E I. The set {J" ... ,js} is called a generating set of the ideal I. The desired "better" representation for the variety V(J" ... ,js) will be a better generating set for the ideal I = (J" ... ,J,). To see how this might help, we consider the variety V(I), ~hat is, the solutions of the infinite system of polynomial equations
(1.1.2)
j = O,j E I;
ft = 0, h = 0, ... ,js = O.
l
A solution of System (1.1.2) will clearly be a solution of System (1.1.3), since fi E l for i = 1, ... ,s. Conversely, if (ab'" an) E kn is a solution of System (1.1.3), and if j is any element of I, then j(a" ... ,an) = 0, since f = E:~l Udi, for sorne Ui E k[X1"" ,Xn]. Hence (a" ... ,an) is a solution of System (1.1.2). Thus we have that V(I) = V(J" ... ,j,). We note that an ideal may have many different generating sets with different numbers of elements. For exampIe, in k[x,y], (x + y,x) = (x,y) = (x + xy,x 2,y2,y + xy). Now, if we have I = (J" ... ,j,) = (f{, ... then V(f" ... ,j,) = V(I) = V(f{, ... This means that the system ft = 0, ... ,js = has the same solutions as the system f{ = 0, ... ) ff = D, and hence a variety is determined by an ideal, not by a particular set of equations. Sa, if we obtain a "better" generating set for the ideal l = (!I, ... ,ls), we will have a "better" representation for the variety V(h, ... 118)' And by "better" we mean a set of generators that allows us to understand the algebraic structure of I = (f" ... ,js) and the geometric structure of V (f" ... ,J,) better. The remainder of this chapter is devoted to finding this "better" generating set for I (which will be called a Grbner basis for I). In the case of linear polynomials this "better" generating set is the one obtained from the row echelon form of the matrix of the system. We will now look at the problem from a different perspective. Consider a collection, V, of points of the affine space k n . We define the set I(V) of polynomials
,m,
,m
in k[Xl"" ,Xn] by
J{V) = {f E k[Xl,'" , xn]1 I(a" ... , an) = 0 for ail (a" ... , an) EV}.
It is easy to verify that the set J(V) is an ideal in k[Xl"" , Xn]. It would seern that this ideal is very different from the ideal (f" ... , l,). The latter ideal is defined algebraically as the set of alllinear combinations of h, ... ,l, with polynomial coefficients, while the former ideal is defined by the geometric condition that 1 is in J{V) if and only if I(a" . .. ,an) = 0 for all (a" ... , an) E V We will examine the exact relationship between these two descriptions later. For now, we note that the ideal J(V) can be put in the form (h,. . ,lB) for sorne h, ... , lB E k[Xl, ... ,xn]. Indeed, the Hilbert Basis Theorem (Theorem 1.1.1) states that any ideal J in k[Xl,'" , xn] (in particular the ideal J(V)) has a finite generating set. We will prove the Hilbert Basis Theorem at the end of the section. Another consequence of this result is that if A is an infinite set and for all .\ E A we have a polynomial l E k[Xl, . .. ,Xn], then the solution set of the infinite system
j" = 0,.\ E A
is, in fact, the solution set of a finite system, namely, of a finite generating set for the ideal (j" 1 .\ E A) (this ideal is defined to be the set of ail finite linear combinations of the j", .\ E A, with polynomial coefficients). The construction of the ideal J(V) above is a very important one. It is the bridge from geometry back to algebra sinee, in addition to the map { Subsets of k[Xl"" ,xn]}
> >>
{ Varieties of k n }
S
we now have a map { Subsets of k n
}
V(S),
> >>
J{V).
Understanding the relationship between these two maps allows us to go back and forth between algebraic and geometric questions. In particular, we will be interested in the exact relationship between the ideal J and the ideal J (V(J)). It is easy to see that J J (V(J)) , but equality does not always hold. For example, if J = (X2, y2) k[x, y], then V(I) = {(O,O)}, and so x and y are in the ideal J (V(I)), but they are not in J. For more on the relationship between J and J(V(I)), see Section 2.2. In order to find the "better" generating set discussed abov, we will need to determine whether two finite sets of polynomials in k[Xl,'" ,xn] give rise to the same ideal. More specifically, given h, ... lis E k[Xl1'" ,x n ], and if, ,i; E k[Xl"" , Xn], we will need to determine whether (f" ... ,lB) = (fi, ... , ID For this reason and many others, it is desirable to solve the following problems: given J = (f"", , lB) and 1 E k[Xl"" , Xn],
1.1.
INTRODUCTION
PROBLEM 1. Determine whether J is in 1. This is the socalled "ideal membership problem." PROBLEM 2. If J E l, determine Ul, ,U, E k[Xl' ... ,xnJ such that f =
THEOREM l.l.1 (HILBERT BASIS THEOREM). In the ring k[Xl' ... ,xnJ we have the Jollowing: (i) If lis any ideal of k[Xl' . .. ,xnJ, then there exist polynomials Ir, .. , J, E k[Xl' ... ,xnJ such that l = (f" ... ,j,). (ii) If I, c:; 12 c:; h c:; ... c:; In c:; ... is an ascending chain of idealB of k[xj, ... ,X n ], then there exists N such that IN = IN+l = I N +2 = .... Before we go on to the proof we would like to make a couple of definitions. An ideal l in a general ring R which satisfies Condition (i) is said to be finitely
CHAPTER
1.
generated, or ta have a finite generating set. Condition (ii) is sometimes referred ta as the Ascending Chain Condition, and any commutative ring R satisfying that condition is called a Noetherian ring. In the next two sections we will illustrate the discussion of this section using two examples: !inear systems and polynomials in one variable. These will be fundamental motivations for the general constructions we will develop in the remainder of this chapter. The remainder of this section is devoted ta the proof of Theorem 1.1.1. The reader may skip the proof and proceed directly ta the next section. It turns out that if either of the two conditions in Theorem 1.1.1 holds, then the other also holds; this is the content of the next theorem.
THEOREM 1.1.2. The following conditions are equivalent for a commutative ring R: (i) If l is any ideal of R, then there Xist elements fI, . .. , f, E R such that 1= (fI, .. ,f,). (ii) If h : h : h : ... : In : ... is an ascending chain of ideals of R, then there Xists N such that IN = IN+I = IN+2 = .... That is, the ring R is Noetherian if and only if every ideal in R has a finite generating set. PROOF. Let us first assume Condition (i), and let
h : 1, : h : ... : In : ...
be an ascending chain of ideals of R. Consider the set l = U:;'~I In Since the ideals In are increasing, it is easy ta see that 1 is an ideal of R. By Condition (i), 1= (fI, ... ,J,), for sorne fI, , fs E R. Since for i = 1, ... , S, fi is in l, there exists Ni such that fi E IN,. Let N = maxlSiS' Ni; then fi E IN for ail i = 1, ... ,8, and sa l : IN. Thus 1= IN, and Condition (ii) follows. For the reverse implication, assume ta the contrary that there exists an ideal l of R that is not generated by a finite set of elements of R. Let fI E 1. Then there exists h E l with 12 r;t (fI) Thus (h) (fI, 12) We continue in this fashion, and we get a strietly ascending chain of ideals of R which contradicts Condition (ii). 0
We now state and prave a more general version of the Hilbert Basis Theorem.
THEOREM 1.1.3. If R is a Noetherian ring, then sa is Rlxl. PROOF. Let R be a Noetherian ring, and let J be an ideal of Rlxl. By Theorem 1.1.2, it is enough ta show that J is finitely generated. For each n 2: 0, define In = {r E R 1 r is the leading coefficient of a polynomial in J of degree n } U {O} (that is, r is the coefficient of xn). It is easy ta see that In is an ideal of Rand that In : In+ 1, for ail n 2: O. Since R is Noetherian, there exists N such that In = IN for ail n 2: N. Also, by Theorem 1.1.2, each Ii is finitely generated, say Ii = (ril, ... ,rit.). Now for i = 1, ... ,N and j = 1, ... ,t i1 let /ij be a
polynomial in J of degree i with leading coefficient Tij' To complete the proof of the theorem it suffices to show that J = (fij Il <:: i <:: N,l <:: j <:: t i ). So let J* = (fij 1 <:: i <:: N,l <:: j <:: ti). Clearly J* c:: J. Conversely, let 1 E J, and let the degree of 1 be n. We prove by induction on n that 1 E J'. If 1 = 0 or n = 0, then 1 E ID, and hence 1 E J*. Now let n > 0, and assume that all the elements of J of degree at most n  1 are in J'. Let T be the leading coefficient of f. If n S N, then, since rEIn, we have r = L:~::1 SjTnjl for sorne Sj E R. Then the polynomial 9 = ~~:j sjlnj is of degree n, has leading coefficient T, and is in J*. Thus 1  9 has degree at most n  1 and is in J. By induction, f  9 is in J*, and hence f is also in J*. If n > N, then rEIn = IN, and r = L~~l SjTNj, for sorne Sj E R. The polynomial 9 = L~~l SjX n  N iNj has degree n, leading coefficient T, and is in J*. Thus 1  9 has degree at most n  1 and, by induction, 1  9 E J*. Therefore 1 is in J*. D
1
Using a simple induction on n and the above result, we can easily show that k[xj, ... ,xnJ is Noetherian (first noting that the field k is trivially Noetherian). That is, Theorem 1.1.1 is true. 1.2. The Linear Case. In tllls section we consider the system (1.2.1)
fI
In this case, the algorithmic method to answer ail the questions raised in Section 1.1 is the wellknown row reduction which changes System (l.2.1) to row echelon form. Consider the following examples. EXAMPLE 1.2.1. Let!J = x+yz and 12 = 2x+3y+2z be linear polynomials in !R[x, y, zJ. We consider the ideal l = (!J, 12) and the variety V(fj, 12), that is, the solutions to the system (1.2.2)
+ +
o
O.
1
1
3y
+ 2z
We now perform row reduction on the matrix associated with this system:
1 ]
The last matrix is in row echelon form. The solutions of System (l.2.2) are the same as those of the following system (1.2.3)
X {
y y
o
O.
4z
and are easily obtained parametrically as: x = 5z and y = 4z. The row reduction process is, in fact, a method ta change a generating set for the ideal l = (!J, 12) into another generating set. We subtracted twice the first row from the second row and replaced the second row by this new row. This amounts to creating a new polynomial, h = 12  2!J = Y + 4z, and replacing 12
by h The original ideal l is equal to the ideal (f" 13) lndeed, sinee 13 = h2ft we see that 13 E l = (ft, 12), and sinee 12 = 2ft + 13 we see that 12 E (ft,h) and so l = (f" 12) = (f" 13) This praeess simplifies the generating set of the ideal l and allows for an easy resolution of System (1.2.2), that is, it makes it easy to determine V (I). The praeess by whieh the polyuomial 12 was replaced by 13 using ft is ealled reduction of 12 by ft, and we write
h~h
The new polynomial !3 that was created can be viwed as a remainder of a certain division: we used the first term of h, namely X, to eliminate a term from 12, namely 2x. Since this first term of h cannot eliminate any other terrns, the division stops and the remainder is exactly h. This ean be written in long division form
2
+y 
2x + 3y + 2z 2x + 2y  2z y+4z
whlch gives us 12 = 2ft + h When the system has more than tWQ equations, the division (or reduction) of a polynomial may require more than one polynomial. EXAMPLE 1.2.2. Let ft = y  z, 12 = x + 2y + 3z, and 13 = 3x  4y + 2z be linear polynomials in lQI[x, y, z]. We eonsider the ideal l = (f" h, 13) and the variety V (f, , 12, 13), that is, the solutions to the system (1.2.4) {
3~
;
+

Y 2y 4y
+ +
1 2
z 3z 2z
= 0 = 0 = O.
[~
(1.2.5)
1 2
4
~ ]
[r
~
10 7
;
] [0 1 1 1 2 3 . o 0 17
This says that a new generating set for l = (ft, h, 13) is {ft,h,17z}. Note that the polyuomial 17z is obtained by the following reduetions:
f3
j.
f,
lOy  7z
Jo 
j,
17z.
This amounts to a division, similar to that in Example 1.2.1, of h by 12 and ft in succession. Repeated use of the reduetion steps, as in the above, will be denoted by j"f, 7 3 Jo+ 1 z.
The coefficient "3" of h is the multiple of fz used in the first reduction in (1.2.5) and the coefficient "10" of f, is the multiple of f, used in the second reduction in (1.2.5). We would like ta "extract" from these exarnples sorne general ingredients that will be used in the general situation of nonlinear polynomials. We will concentrate on Example 1.2.2. First, we imposed an order on the variables: we chose ta eliminate x first from the third equation of (1.2.4) and then we chose to eliminate y from the new third equation. That is, when we rowreduce a matrix there iB an order on how to proceed ta introduce zeros: first we introduce zeros into the first column (that is, we eliminate x), and then we introduce zeros in the second column (we eliminate y) etc. We could have written the variables in the polynomials in a different order, say f, = z + y, fz = 3z + 2y + x and J" = 2z  4y + 3x. We would have used the same row reduction method, but would have eliminated z first, then y. We would have wound up with a different set of equations in fQW echelon form, but they would have been just as good for our purpose of solving System (1.2.4). So the order does not matter, but there must be an order. This issue becomes essential in our generalization of these ideas. We note that in OUT example the order is such that x is first followed by y and then z and so the leading term of f, is y, the leading term of fz is x, and the leading term of 13 is 3x. Second, the reduetions in (1.2.5) were obtained by subtracting multiples of fI and fz. This had the effect of using the leading terms of fI and h to eliminate terms in 13 and in lOy  7 z leaving the remainder of 17 z and giving us Equation (1.2.6). Note that 17z cannot be reduced further using the leading terms of fI and 12. The process of row reduction viwed in this light gives us a way ta solve the problems posed in Section 1.1. Let us concentrate on Example 1.2.1. First, we have a very clear description of the solution space:
V(I)
E IR};
it is a line in ]R3. We next turn to the question of determining whether a polynomial f E k[x, y, z] is in l and, if SO, express it as a linear combination of the elements in the generating set. In Qur case, because the leading term of fI is x and the leading term of 13 is y, any polynomial Jean be reduced to a polynomial in z alone by the division process using both fI and 13 in a way similar to that used in (1.2.5). Also, any polynomial in z alone cannot be reduced using division by fI and h. The division process allows us to write J as a linear combination of fI and 13 plus a remainder in a similar fashion to Equation (1.2.6) (the remainder is in z alone). It is not too hard to see that J E l = (f" 12) = (f" 13) if
10
and only if this remainder is zero. Finally one could also check that the basis of the vector space k[x, y, zl/ J is the set of all cosets of powers of z. The statements made in this paragraph may be a little diflicult to verif'y or appreciate at this point but will become clear later.
Exercses 1.2.1. Prove the last statement made about Example 1.2.1 in the last paragraph of the section. Namely, prove that a basis of the vector space lQI[x,y,zl/J s the set of all cosets of powers of z. Assume that we now eliminate z first, then x, then y. What is the row echelon form of the matrix? Use this ta give another basis for the vector space lQI[x, y, zlj J. 1.2.2. Following what was done for Example 1.2.1, solve the problems posed in Section 1.1 for Example 1.2.2. Repeat this eliminating y first, x second and z last. 1.2.3. Consider the following polynomials in lQI[x, y, z, tl, f, = x  2y + z + t, h = x + y + 3z + t, fs = 2x  y  z  t, and j4 = 2x + 2y + z + t. Solve . the problems posed in Section 1.1 for this set of polynomials. 1.2.4. Let A be an s x n matrix with entries in a field k. Let f" ... ,js be the linear polynomials in k[Xl" .. ) x n ] corresponding ta the IOWS of A, as in Example 1.2.2. Let B be a row echelon form for the matrix A and assume that B has t nonzero IOWS. Let 91, ... ,gt be the polynomials corresponding ta the nonzero rows of B. Prove that (f1,'" ,/s) = (g1"" ,gt). Use the polynomials gl, ... ,gt ta obtain a basis of the kvector space k[X1,'" ,xnl/(f" ... ,js). 1.3. The One Variable Case. In this section we consider polynomials in k[x], that is, polynomials in one variable. In this context we will use the wellknown Euclidean Algorithm to solve the problems mentioned in Section 1.1. In doing this we will present sorne of the standard material concerning k[xl but will present this material using notation that will be more immediately generalizable to the study of polynomials in many variables. The theory of polynomials in one variable is a good illustration of the more general theory that will be presented in the remainder of this chapter. For 0 of j E k[x], we recall that the degree of j, denoted deg(f), is the largest exponent of x that appears in f. The leading term of j, denoted lt(f), is the term of j with highest degree. The leading coefficient of j, denoted !c(f), is the coefficient in the leading term of f. Sa, if f = anx n + an_lX n  l + ... + alX + ao, with aD, ... ,an E k and an of 0, then deg(f) = n, lt(f) = anxn and le(f) = an. The main tool in the Euclidean Algorithm is the Division Algorithm (also known as long division of polynomials) which we illustrate in the next example. EXAMPLE 1.3.1. Let j = x 3  2X2 + 2x + 8, and 9 = 2x 2 + 3x + 1 be in lQI[xl. We divide j by 9 to get the quotient ~x and the remainder x+ as follows:
2;
3i
11
2x 2 +3x+l
x 3 2x 2 +2x+8
_IX2 2
_~X2
+ ~x+ 8 2

~X
27 X
and so we have f = (~x  i)g + (2fx + 3i) Let us analyze the steps in the above division. We first multiplied 9 by ~x and subtracted the resulting product from f. The idea was to multiply 9 by an appropriate term) namely ~x, 80 that the leading term of 9 times this term canceled the leading term of f. After this first cancellation we obtained the fusl remainder h = f  ~xg = _~X2 + ~x + 8. In general if we have Iwo polynomials f = anXn+an_lXnl + ... +alx+aO and 9 = bmxm+bm_lXml + .. +b1x+bo, with n = deg(f) ?: m = deg(g), then the first step in the division of f by gis to subtract frOID f the product ~xnmg. Using the notation introduced above, we note Ihal the factor of 9 in this product is and so we get h = f  ::~~l 9 as the first remainder. We call h a reduction of f by 9 and the process of computing h is denoled
+ ;lli 4
::f;l
f .!!... h.
Going back to Example 1.3.1, after this first cancellation we repealed the rocess on h = _lx2 + ~x +8 by subtracting lt(h)g = _lx2  ;Ux  l from h to P 2 2 It(g) 2 4 4 oblain the second (and in tbis example the final) remainder r = 2fx + This can be WTitten using our reduction notation
"t.
f~h~r.
f .!!...+
r.
We note that, in the reduction f .!!... h, the polynomial h has degree strictly less than the degree of f. When we continue this process the degree keeps going down until the degree is less than the degree of g. Thus we have the first half of the following standard Iheorem.
THEOREM 1.3.2. Let 9 be a nonzero polynomial in k[x]. Then for any f E k[x], there exist q and r in k[x] such that
Moreover rand q are unique (q is caUed the quotient and r the remainder).
12
CHAPTER
1.
PROOF. The proof of the existence of q and r was outlined above. The proof of the uniqueness of q and r is an easy exercise (Exercise 1.3.3). 0 Observe that the outline of the proof of Theorem 1.3.2 gives an algorithm for eomputing q and r. This algorithm is the wellknown Division Algorithm, which we present as Algorithm 1.3.1.
op 0
qg + rand
J=
op 0 AND
lt(r)
deg(g) :S deg(r) DO
q:= q+ lt(g)
lt(r)
r:= r  lt(g)g
ALGORITHM 1.3.1. O"e Variable Division Algorithm The steps in the WHILE loop in the algorithm correspond to the reduction proeess mentioned above. It is repeated until the polynomial r in the algorithm satisfies r = 0 or has degree strietly less than the degree of g. As mentioned above this is denoted
J "..,+
r.
EXAMPLE 1.3.3. We will repeat Example 1.3.1 following Algorithm 1.3.1. INITIALIZATION: q := 0, r := J = x 3  2x' + 2x + 8 First pass through the WHILE loop: ._ 0 x3 _ 1 q. + 2X2  2"x
' r := x+3 d The WHILE loop stops since deg(r) = 1 < 2 = deg(g). We obtain the quotient q and the remainder r as in Example 1.3.1. Now let l = (f, g) and suppose that J ".., h. Then, sinee h = J  :~i~i g, it is easy to see that l = (h,g), so we can replace J by h in the generating set of J. This idea is similar to the one presllted for lillear polynomials studied in Section 1.2. Using this idea repeatedly (that is, Ilsing Theorem 1.3.2 repcatedly) we cau prove the followillg result.
_lx 2
'1
1.3. THE ONE VARlABLE CASE THEOREM 1.3.4. Every ideal oJ k[x] is generated by one clement"'
13
PROOF. Let J be a nonzero ideal of k[x]. Let 9 E J be sueh that 9 oJ 0 and n = deg(g) is least. For any J E J we have, by Theorem 1.3.2, that J = qg +r for sorne q, r E k[x], with r = 0 or deg(r) < deg(g) = n. If r oJ 0, then r = J  qg E J, and this contradiets the choice of g. Therefore r = 0, J = qg, and l : (g). Equality follows from the fact that 9 is in J. D Observe that the polynomial 9 in the proof of Theorem 1.3.4 is unique up to a constant multiple. This follows from the fact that if J = (gl) = (g,), then gl divides g2 and g2 divides gl' We see that the polynomial 9 in the proof of Theorem 1.3.4 is the "best" generating set for the ideal J = (JI,'" ,J,). For example, the system of equations (1.3.1)
E k[x], i
= 1, ... ,S,
has precisely the same set of solutions as the single equation g = 0, where (JI, ... ,!,) = (g). We now investigate how to compute the polynomial 9 of Theorem 1.3.4. We will first foeus on ideals J : k[x] generated by two polynomials, say J = (JI, 12), with one of JI, 12 not zero. We reeall that the greatest eommon divis or of h and 12, denoted gcd(fl, 12), is the polynomial 9 such that: 9 divides bath h and 12; if h E k[x] divides JI and h, then h divides g; !erg) = 1 (that is, 9 is monie). We further recall PROPOSITION 1.3.5. Let Ir, 12 E k[x], with one oJ JI,!2 not zero. ged(fl, 12) exists and (JI, hl = (gcd(lr, 12))
Then
PROOF. By Theorem 1.3.4, there exists 9 E k[x] such that (h,h) = (g). Sinee 9 is unique up ta a constant multiple, we may assume that !erg) = 1. We will show that 9 = ged(h, 12). Sinee Ir, 12 E (g), 9 divides both Ir and h NOW, let h be sueh that h divides bath h and h Since 9 is in the ideal (JI, 12), there exist UI, U, E k[x] such that 9 = Uril + u2h. Thus h divides g, and we are done. D As a consequence, if we have an algorithm for finding gcd '8, then we can actually find a single generator of the ideal (JI, 12) The algorithm for eomputing ged's is called the Euclidean Algorithm. Il depends on the Division Algorithm discussed above and the following facto LEMMA 1.3.6. Let JI, 12 E k[x], with one oJh,h notzero. Thenged(fl' 12) = gcd(fl  qh, 12) Jor aU q E k[x].
3Recall that an ideal generated by one element is called a principal ideal, and an integral domain for which every ideal is principal is called a principal ideal domain, or PID. Therefore Theorem 1.3.4 says that k[x] is a PlV.
14
PROOF. It is easy to see that (h,h) = (JI  gh, 12). Therefore, by Proposition 1.3.5, (gcd(h,h))
,Thus sinee the generator of a principal ideal is unique up to constant multiples, and sinee the gcd of two polynomials is de/ined to have leading coefficient l, we have gCd(f" hl = gcd(h  qh, 12) 0
We give the Euclidean Algorithm as Algorithm 1.3.2. The reader should note that the algorithm terminates because the degree of r in the WHILE loop is strictly less than the degree of g, which is the previous r, and hence the degree of r is strictly decreasing as the algorithm progresses. Also, the algorithm does give gCd(f" 12) as an output, sinee at each pass through the WIDLE loop, we have gCd(f" 12) = gcd(f,g) = gcd(r, g), by Lemma 1.3.6, as long as 9 of O. When 9 = 0, then gcd(h,h) = gcd(f,O) = leC!) f. The last step in the algorithm ensures that the final result has leading coefficient 1 (that is, is monic). INPUT: h, 12 E k[x], with one of h, 12 not zero OUTPUT:
gCd(f" 12)
by 9
f :=g
g:= r
f .
1 !c(!)
f
ALGORITHM 1.3.2. Euclidean Algari/hm
To illustrate this algorithm, consider the following EXAMPLE 1.3.7. Let h = x 3  3x + 2 and 12 = x 2 1 be polynomials in <Qi[x]. INITIALIZATION: f := x 3  3x + 2, 9 := x 2  1 First pass through the WHILE loop:
3x+2 + 2x+2 f:= x 2  1 g:= 2x+2 Second pass through the WHILE loop: x 2 _ 1 ~2 X _ 1 ~2 0
X
x 2 _1
f:= 2x+2
1.3.
15
With the ideas developed in this section we can now solve al! the problems raised in Section 1.1 for the special case of polynomials in one variable. As noted before, to solve System (1.3.1) we first compute 9 = gCd(J" ... , J,). It then suffices to solve the single equation 9 = O. The computation of gCd(J"", , J,) is done by induction, a polynomial at a time, as is easily seen from part (ii) of Proposition 1.3.8. To decide whether a polynomial J is in the ideal I = (f" ... , J,), we first compute 9 = gCd(J"", ,/,). We then use the Division Algorithm to divide J by g. The remainder of that division is zero if and only if J is in the ideal I = (f" ... , J,) = (g). Using the notation introduced earlier: JE I = (g) if and only if
J ~+
O.
Also, the coset representative of the element J + I in the quotient ring k[x]/ I is r + I, where r is the remainder of the division of J by 9 (that is, J ~+ r, with r = 0 or deg(r) < deg(g)). Finally, the cosets of 1,x,x 2, ... ,xd" where d = deg(g), form a basis for the kvector space k[xllI (Exercise 1.3.6). In the last section (the linear case) we saw that there were two ingredients for our solution method: a reduction algorithm (in that case it was row reduction) and an order among the terms. In the current section we saw that the concept of reduction leading ta the Division Algorithm (Algorithm 1.3.1) was the key to solving the problems mentioned in Section 1.1. We have not yet stressed the importance of the ordering of the terms in the one variable case, even though we have already used the notion of ordering in the concepts of degree and leading
16
term. In effect, the ordering is forced upon us. Indeed, in the Division Algorithm, when we compute r  ;:i~ig, the terms that we introduce (coming from ;:i~ig) must be smaller than the leading term of r which has been canceled, in order for the algorithm to terminate. This can only OCCliI if the powers of x are ordered so that xn < xm if and only if n < m (Exercise 1.4.2). We note that the condition n < m is equivalent to the statement that xn divides xm.
Exercises 1.3.1. FoUow Algorithm 1.3.1 (as in Example 1.3.3) to divide J = 2x 5  4x 3 + x 2  X + 2 by 9 = x 2 + X + 1. 1.3.2. Find a single generator for the ideal 1 = (x" l, x 4 + 2x 3 + 2x2  2x  3). Is x 5 +X3+ X 2 7 E I? Show that x 4 +2x 2 3 Eland write x 4 +2x 2 3 as a linear combination of x 6  1 and x 4 + 2x 3 + 2X2  2x  3. 1.3.3. Prove that q and r obtained in Theorem 1.3.2 are nnique. 1.3.4. Compute gcd(f" 12, h) using Proposition 1.3.8, where j, = x 5 2x 4_X 2+ 2x,h = x 7 +x6 2x 4 2x3+x+1, and h = x62x5+X4_2x3+X2_2x. 1.3.5. Modify Algorithm 1.3.2 to output J, u" U2 E k[x] such that J = gcd(f" 12) and J = u,j, + u2h. Apply yOliI algorithm to the polynomials j, = x 6  1,12 = x 4 + 2X3 + 2x2  2x  3 E lQI[x] of Exercise 1.3.2. 1.3.6. Let 9 E k[x] be of degree d. Prove that {1 + (9), x + (g), ... , x d  ' + (g)} is a kvector space basis for k[x]/(g). 1.3.7. Show that in k[x, y], Theorem 1.3.4 is false. In particular, show that the ideal (x, y) c:: k[x, y] cannot be generated by a single element. Show that, in general, k[x" ... ,xn ] is not a PID. 1.3.8. Prove that a system of equations J = 0, 9 = 0 with two relatively prime polynomials J, 9 E k[x, y] has at most finitely many solutions. [Hint: View J and 9 in k(x) [y] and use the Gauss Lemma: J and 9 are relatively prime when viewed in k[x, y] if and only if they are relatively prime in k(x )[y], where we recall that k(x) denotes the field of fractions of k[x], i.e.
k(x)={~la,bEk[x],b1"O}.]
1.3.9. Let 9 E k[y] be irreducible, and let J E k[x" ... ,xn , y] be such that J rt (g). Prove that (j,g) n k[x" ... ,xn ] # {O}. [Hint: Use the hint of Exercise 1.3.8 with k(x" ... ,xn)[y], where we recaU that k(x" ... ,xn ) denotes the field of fractions of k[x" ... ,Xn ], i.e. k(x" ... ,xn ) =
al
a,bE k[x" ... ,xn],b1"O}.] 1.3.10. Let J,g E IC[x,y]. Prove that if J and 9 have a nonconstant common factor in IC[x, y], then V(f, g) is infinite. That is, show that if hE IC[x, y]
and h is not in <C, then the equation h = 0 has infinitely many solutions. Generalize this exercise to the case where h E C[Xl 1 ' " ,xn ], for n 2:: 2. 1.3.11. Let j" 12, h E k[x]. We consider the equation u,j, + Ud2 = h, with unknowns U2, to be polynomials in k[x]. a. Show that the above equation is solvable if and only if 9 = gcd(f" 12)
u"
17
divides h. b. Prove that if 9 = gCd(f" 12) divides h, then there exist unique UI, U2 E k[x] that satisfY the equation above and such that deg( UI) < deg(f2)deg(g). Moreover, if deg(h) < deg(f,)+deg(h}deg(g), then deg( U2) < deg(f,) ~ deg(g). Cive an algorithm for computing such UI and U2. c. Let fI = x 3  1,12 = x 2 + X  2, h = x 2  4x + 3 E Ql[x]. Find U" U2 which satisfy b. d. Use b ta show that if fI and 12 are relatively prime, then for every hE k[x] such that deg(h) < deg(fI) +deg(h), there exist UI, U2 E k[x] such that h Ul U2 ~+ fIh ~ fI 12' with deg(uI) < deg(f,) and deg(u2) < deg(h). (This is the partial fraction decomposition of rational functions.) e. Use d ta compute the partial fraction decomposition of
x3 x 3 + 3x 2 + 3x + 2
f. Generalize a and b to the case of s polynomials fI, ... ,J, E k[x J. 1.3.12. When the coefficients of polynomials in one variable are not in a field k, the Division Algorithm (Algorithm 1.3.1) has to be modified. In this exercise we present a "pseudo" division algorithm for polynomials in R[x] , where R is a unique factorization domain (UFD). a. Let J,g E R[x] be such that 9 # 0 and deg(f) 2: deg(g). Prove that there exist polynomials q,r E R[x] such that !c(g)'J = gq + r, where r = 0 or deg(r) < deg(g), and e = deg(f)  deg(g) + 1. b. Give an algorithm for computing q and r. The polynomials q and rare called the pseudoquotient and the pseudo'Temainder respectively. c. Use this algorithm to find q and r in the following cases: (i) J = 6x 4  llx 3 ~ 3x 2 + 2x, 9 = lOx 3 ~ 23x 2  20x  3 E Z[x]; (ii) J = (2 + 4i)x3 + (5 + 3i)x 2  2ix + (1 + i),g = 2X2 + (1 + i)x + (1 + i) E (Z[i])[x], where i 2 = 1. d. A polynomial JE R[x] is called primitive ifits coefficients are relatively prime. Let J,g be primitive polynomials in R[x], and let !c(g)'J = gq + r be as in a. Prove that gcd(f,g) = gcd(g, T'), where r' is the primitive part of r; i.e. r = ar', Ct E R and Tf primitive. e. Use d ta give an algorithm for computing gcd(f,g). f. Use e ta compute gcd(f, g) for the examples in c. g. Use the above to give an algorithm for computing gcd(f,g), where J,g E R[XI, ... ,Xn], R a UFD. h. Use g to compute gcd(f, g), where J = (y2 + y)x 3 + (_y3 ~ y+ 1)x 2 + (C y3 + y2 _ 2)x + (_y2 + 2y), 9 = (y2 + 2y + 1)x 2 + (y3 + 3y2  2)x + (y3 ~ y2  2y) E Z[x, y].
18
1.4. Term Orders. It was important in the last two sections to specif'y an order on the power products. In the linear case, we computed with x first, then y, etc. The particular order used was unimportant but did have to be specified. In the one variable case we used the highest degree term first and thls was required by the procedures used. In more than one variable we need an order analogous to the ones used in these two special cases and this will be the focus of this section. First recall that the set of power products is denoted by
n} .
Sometimes we will denote xf' ... x~n by x(3, where j3 = ((3" . . . , (3n) E l'ln. We would like ta emphasize that, throughout this book, "power product" will always refer ta a product of the Xi variables, and "term" will always refer ta a coefficient times a power product. 80 every power product is a term (with coefficient 1) but a term is not necessarily a power product. We will also always assume that the different terms in a polynomial have different power products (so we never write 3x 2y as 2x2y + x 2y). There are many ways ta order 'JI'n. However, we already know sorne properties that a desirable order must satisf'y. For example, the orders in the linear and one variable cases were used ta define a division (or reduction) algorithm, thus the order had to extend divisibility relations (see the discussion at the end of the previous section). That is, if xa: divides x/3, then we should have xa: ~ x f3 , or equivalently, if ai ~ f3i for aU i = 1, ... ,n, then xa: ~ x f3 . Also, in the divisions described in Sections 1.2 and 1.3, we arranged the terms of the polynomials in increasing or decreasing order, and hence we must be able to compare any two power products. Thus the order must be a total order, that is, given any xo. ,x/3 E 1I'n, exactly one of the following three relations must hold:
xa
= x/3 or
> x/3.
Moreover, the reduction 7+ described in Sections 1.2 and 1.3 must stop after a finite number of steps. Recall that whenever we had f '!.., + T, the polynomial r was such that its leading power product was less than the leading power product of g: in Section 1.2, that meant that the reduced polynomial T was obtained by eliminating a leading variable using g; in Section 1.3, that meant that the remainder polynomial T had degree less than that of g. Therefore, for the reduction to be finite, we need that the order be a wellordering, that is, there is no infinite descending chain x a1 > X U2 > X U3 > ... in 1I'n. An order that satisfies aU these conditions is called a term order, and it turns out that these conditions are captured in the following definition (thls will be justified in Proposition 1.4.5 and Theorem 1.4.6).
DEFINITION 1.4.1. By a term order on 1I'n we mean a total order satisfying the following two conditions:
< on
'['n
19
(i) 1 < x(3 for aU x(3 E 1fn, x(3 of 1; (ii) If X U < x(3, then XUx"y < x(3x"Y, for aU
x"Y
1fn.
Before we prove that the basic properties we discussed above follow from the conditions in Definition 1.4.1, we give three examples of term orders. The easy verification that they are term orders will be left to the exercises (Exercise 1.4.3).
DEFINITION
X2
>
we define the first coordinates ai and {Ji in Q and f3 fram the left, which are difJerent, satisfy ai
Sa, in the case of two variables
Xl
< {Ji
and
X2,
we have
1<
X2
< x~ < x~ < ... < Xl < X2Xl < X~Xl < ... < xi < ....
As noted before, when we do examples in a smaU number of variables, we will usually use X, y, or z instead of the subscripted variables above. It is important to note that we need ta specify the order on the variables. For example, if we use the lexicographie order with x < y, then we have
1 < x < x 2 < x3 < ... < y < xy < x 2y < ... < y2 < ....
(We deliberately altered the order of X and y from what was probably expected to emphasize the point that an order on the variables must be specified.) Note that, for this order, is always greater than X21 for an nonzero /1, vEN. This will be of importance later on (see Section 2.3). We will always denote this order by "lex". We emphasize again that we always need ta specify the arder on the variables.
xr
DEFINITION
Xl
we define
L~=l or
Qi
L~=l Qi = L~=l f3i and xO: < x/3 with respect ta lex with Xl > X2 >
20
80, with this order, we first order by total degree and we break ties by the lex order. In the case of two variables Xl and X2l we have
1<~<x,<~<x,~<~<~<~~<~~<~<.
Or, using the degree lexicographie ordering in k[x, y] with x
< y,
we have
1 < x < y < x 2 < xy < y2 < x 3 < x 2y < xy2 < y3 < ....
We will always denote this order by "deglex". Again, we always need ta specify the order of the variables. DEFINITION 1.4.4. We define the degree reverse lexicographical order on 1I'n with x, > X2 > ... > X n as follows: For
we define
1:7=1 i =
cr
L~=l f3i and the first coordinates i and (Ji in and fj from the right, which are different, satisfy ai > (3,.
We will always denote this order by "degrevlex". It is easy to see that in the case of two variables deglex and degrevlex are the same orders (Exercise 1.4.4). However 1 if there are at least 3 variables, this is not the case anyrnore, as the following example shows:
XiX2X3
X2
>
X3
but
XX2X3
< XIX~
> X2 >
X3
This order tUTns out ta be extremely good for certain types of computations. The important property that this order possesses is given in Exercis 1.4.9. Note that the term "right" in Definition 1.4.4 refers to the smallest variable. That is, we have Xl > X2 > ... > Xn This must be especially kept in mind when we consider examples involving Xl Yl z (see Exercise 1.4.1). There are many other orders on lI'n which we will see later in both the exercises and the text. The three examples given above are the ones we will use the most. We will see that each order has different properties and which order we use will depend on the problem we want to solve. We now return to the general definition of a term order. We want to observe that a term order, as defined in Definition 1.4.1, has all the properties discussed before that definition. That is, we need to prove that any term order extends the clivisibility relation and is a wellordering. PROPOSITION 1.4.5. For xc" x i3 E 1I'n, if X U divides x i3 then
XU
<:: x i3 .
21
By assumption there is an x" Condition (i) in Definition 1.4.1 we have have x(3 = xO:a{Y 2: ::cO:, as desired. D
PROOF.
x"
Now from the Hilbert Basis Theorem (Theorem 1.1.1) we can prove 1.4.6. Every term order on 1I'n is a weUordering; that is, for every subset A of1I'n, there e:rists X U E A such that for aU x i3 E A, X U :':: x i3 .
THEOREM PROOF. Suppose to the contrary that the given term order is not a wellordering. Then there exist ;:ca i E ']l'n, i = 1,2, ... Bueh that
(1.4.1) This defines a chain of ideals in k[x" . . ' ,xn ] (1.4.2) We first note that (x al , ... ,::.c ai ) =F (::cal, ... 1XO'i+l), since if we had equality, then
i
(1.4.3)
xO'.i+ 1 
~
~U
j=l
'Xl'j
where Uj is a polynomial in k[Xl l ,xn ], j = 1, ... ,i. If we expand each Uj as a linear combination of power products, we see that each term in UjX CXj is divisible by X Uj Thus every term of the righthand side of Equation (1.4.3) is divisible by sorne ::.e a j ,I:=:; j :::; i. But x a i+ 1 must appear as the power product of a term on the righthand side of Equation (1.4.3). Therefore x U '+' is divisible by sorne ::.eUj,l ::::; j :::; i, and hence xO:i+ 1 ~ ::.cCXj for sorne j , l ::; j ::;: i, by Proposition 1.4.5 and this contradicts (1.4.1). So if we go back to the chain of ideals (1.4.2), we now see that this chain is a strictly ascending chain of ideals in k[Xl"" ,xn ]. This is a contradiction to the Hilbert Basis Theorem (Theorem 1.1.1). 0 Theorem 1.4.6 will be used throughout this book for many proofs in a manner described in Appendix B. To finish this section, we fix sorne notation. First we choose a terrn order4 on k[Xl"" ,xn ]. Then for all f E k[Xl,'" ,X n ], with f # D,we may write
where 0 # ai E k, ZUi E 1['n, and x cq > X U2 > ... > write our polynornials in this way. We define: Ip(J) = x U ' , the leading power product of f; le(J) = a" the leading coefficient of f; It(J) = a, x U ' , the leading term of f.
4We will say that we have a terru order on k[Xl,'"
X Ur .
22
We also define Ip(O) = le(O) = It(O) = O. Note that Ip, le, and It are multiplicative; that is, Ip(f g) = Ip(f) Ip(g), le(f g) = le(f) le(g), and It(fg) = It(f) It(g). Also, if we change the term arder, then Ip(f), le(f), and It(f) may change. For example, let f = 2x'yz + 3xy3  2X 3 : if the order is lex with x> y > z, then Ip(f) = x 3 ,le(f) = 2, and lt(f) = 2x 3 ; if the arder is deglex with x > y > z, then Ip(f) = x 2 yz, le(f) = 2, and lt(f) = 2x 2 yz; if the arder is degrevlex with x > y > z, then lp(f) = xy3, le(f) = 3, and lt(f) = 3xy3.
Exercises 1.4.1. Consider the polynomial f = 3x 4z 2x3y4 + 7x'y'z3  8xy3z3 E Ql[x, y, z]. Determine the leading term, leading coefficient, and leading power product of f with respect to deglex, lex, and degrevlex with x > y > z. Repeat the exercise with x < y < z. 1.4.2. In the polynomial ring in one variable, k[x], let < be a term order. Show that it must be the usual one, i.e. the one such that
23
ordering be degrevlex with Xl > X2 > ... > Xn Prove that In divides f if and only if X n divides lt(f). Show more generally that f E (Xi,'" ,xn ) if and only if It(f) E (Xi, ... ,xn ). 1.4.10. The revlex ordering is detined as follows: For 0: = (""'" '''n),fJ = (;J" ... ,;Jn) E !\In we define xn < x!3 if and only if the first coordinates "i and ;Ji in a and fJ from the right which are different satisfy "i > ;Ji. Show that revlex is not a term order on k[Xl l ' " ,Xn]. 1.4.11. Let J k[Xl"" ,xn ] be an ideal generated by (possibly infinitely many) power products (such an ideal is called a monomial ideaQ. Prove that there exist a b ... ,Ct'/1l, E Nn Bueh that l = (XO'l, ... ,X O ",). [Hint: First show that a polynomial f E J if and only if each term of f is in J.] 1.4.12. (Dickson's Lemma) Prove that the result of Exercise 1.4.11 is equivalent ta the following statement: Given any A Nn there exist 0:1, .. ,am E A such that
j
A U(a;+ !\In).
i=l
(By a + !\In we mean {a + 'Y l 'Y E !\In}.) 1.4.13. Prove that every monomial ideal J (see Exercise 1.4.11) contains a unique minimal generating set. That is, prove there is a subset G J such that J = (G) and for ail subsets F J with J = (F) we have G F. [Hint: Prove first that if J = (xn" ... ,xn =) then for fJ E !\In we have x!3 E J if and only if there is an i such that xn, divides x!3.] 1.4.14. (MoraRobbiano [MoRo]) Let
We define an order in <!J!m as follows: (""," '''m) < (;J" ... ,;Jm) if and only if the first ai,;Ji from the left which are different satisfy Qi < ;Ji' (Note that this is just lex on <!J!m.) Now we define an order <u in k[Xl" .. ,xn] as follows: for a, (3 E Nn , xn
<u
...
,fJ u m ),
where 0: . Ui is the lisual dot product in Qn. a. Prove that <u is a transitive relation. b. Prove that xo. <lt x/3 implies xct: x1 <u x f3 x' for aU 0:, /3,/ E N r. c. Prove that if the vectors Ul, ... ,U m span Qn 1 then the order, <u, is a total order. d. Prove that if the veetors Ul, ... ,U m span Qn, then <u is a term order if and only if for all i, the first Uj such that UJi cl 0 satisfies Uji > O. e. Let Ul, ... ,Um be vectors satisfying: for aU i, the first Uj sueh that Uji cl 0 satisfies Uji > O. Show that the partial <u can be extended to a term order, <u', that is, xO: <u x/3 implies xCl' <u' x/3.
24
1.4.15. What vectors Ur, ... ,Un E !Qn in Exercise 1.4.14 give rise ta the lex, ta the deglex, and to the degrevlex term orderings with Xl < X2 < ... < xn? Saffie question with Xl > X2 > ... > Xn. 1.4.16. Let f = 2X4 y 5 + 3x 5 y' + x 3 y 9 E Q[x, yJ. Show that there is no term ordering on Q[x, yJ such that Ip(J) = x4 y S. 1.4.17. (*) Let Xi = x~i1 ... x~in 1 i = 1, ... ,T, be power products in k[Xl1 ... ,xn ] and let f = 2:~~1 c;Xi , where Ci E k  {O}, for i = l, ... ,r. Assume that there is a term order < such that Ip(J) = X,. Consider the vectors Qi = (ail)' .. 1 in) E Mn 1 i = 1, ... ,r. In this exercise we show that there exists a vector u = (Ul) ... ,un) E!Qn such that Ui 2: 0 for i = l" .. ,n and 01 . U = 2:7=1 aljUj > L:7=1 CYpjUj = Qe . u for aU = 2, ... , r (compare with Exercise 1.4.14). We will use the following result from linear algebra (see, for example, [Ga]): THEOREM. Let A be any r x n matrix with rational entries, then exactly one of the following two alternatives holds: there exists a row vector v E with nonnegative coardinates such that the coordinates of the vector vA are ail negative or zero; There exists a column vectar U E IQn with nonnegative coordinates such that the coordinates of the vector Au are all positive.
ror
a. Use the above result to show that there is a vector u E Qn with nonnegative coordinates such that D!lU > aeu for f = 2, ... ,T. [Hint: Consider the matrix A whose rows are the vectors al  ae.] There is a geometric way to view the linear algebra theorem used above. First we define the convex hull of the vectors al, ... , a r as follows: conv(I"" ,<>r)
{teii Ci ;:,
1
O,i
= l, ...
,r, and
tei = 1}.
1=1
1=1
AIso, let {er, ... , en} be the standard basis for Qn, that is, ei is the vector in Qn with all coordinates equal to 0 except the ith coordinate which is equal to l. b. Show that the first alternative in the lincar algebra theorem above is equivalent to the condition that the zero vector is in the convex hull of the rows of A together with the vectors ei, i = 1, ... , n. Note that the second alternative irnplies that there is a vector u which makes an acute angle with every row of A; i.e. the hyperplane, L, orthogonal to u has ail the rows of A on one side, and so L has the convex hull of the rows of A and the ei'8 on one side. c. Conclude that Xl is the leading term of f with respect to sorne term order if and only if the zero vector is Ilot in the convx hull of the
25
vectors al ~ ai) i = 2, ... ,r and ej, j = 1, ... ln. [Hint: See Exercise 1.4.14, part e.] d. Use the above to determine all the possible leading terms of 1 = 2x4 y 5 + 3x 5 y 2 +x 3 y 9 _ x7 y . 1.4.18. In this exercise we prove the Fundamental Theorem of Symmetric Polynomials. Recall that a polynomial 1 E klxl,'" , x n ] is called symmetrie provided that when the variables of 1 are rearranged in any way, the resulting polynomial is still equal to f. For example, for n = 3, Xl + X2 + X3, XIX2 + XIX3 + X2X31 and XIX2X3 are symmetric. For general n, let CTl = Xl + X2 + ... + X n1 (T2 = XIX2 +XIX3 + ... + InlX nl ,(ln = X,X2'" Xn. These polynomials are called the elementary symmetric polynomials. The theorem states that every symmetric polynomial is a polynomial in the elementary symmetric polynomials. Fix the lex terrn ordering on k[Xl"" ,xn ] with Xl> X2 > ... > Xn. Let 1 E klxl, ... ,xn] be a symmetric polynomial. We need to show the existence of a polynomial hE klxl,'" ,xn ] such that 1= h(O"l, ... ,O"n). a. Let lt(f) = cx a where a = ((lI,'" ,(ln) E lin and C E k. Show that
(Xl
2:
Q2
2: ... 2:
n
b. Let Show that lp(g) = XO c. Now observe that lp(f  cg) < lp(f) and that 1  cg is a symmetric polynomial. Use the wellordering property of term orders to complete the proof of the existence of h and so ta prove the Fundamental Theorem of Symmetric Polynomials. d. Note that the above proof yields an algorithm for computing h given the symmetric polynomial f. Use it in the case = 2 to write + as a polynomial in CTI = Xl + X2 and CT2 = XIX2.
xf xi
1.5. Division Algorithm. In this section we study the second ingredient in our solution method for the problems mentioned in Section 1.1: a division algorithm in klxl, ... , xn]. In Sections 1.2 and 1.3 we had a division algorithm, alsa referred ta as a reduction process. We will define a division algorithm in klxl, ... , x n ] that extends both of the algorithms seen in the previous sections. The basic idea behind the algorithm is the same as for linear and one variable polynomials: when dividing 1 by Ir, ... , 150 we want to cancel terms of 1 using the leading terms of the fi's (so the new terms which are introduced are smaller than the canceled terrns) and continue this process until it cannat be done anymore. Let us first look at the special case of the division of 1 by g, where 1, g E klxl, ... ,xn]. We fix a term order on klxl,'" ,xn].
26
DEFINITION 1.5.1. Given f,g,h in k[Xl' ... ,xnl, with 9 reduces ta h modulo 9 in one step, written
oF
0, we say that f
f "+
h,
It must be strongly emphasized that in tills definition we have subtracted from f the entire term X and we have replaced X by terms strictly smaller than X. (We observe that in the special cases presented in Sections 1.2 and 1.3 we considered only the case where X = ltU).) For example, let f = 6x 2 y  X + 4y3  1 and 9 = 2xy + y3 be polynomials in Q[x, yi. If the term order is lex with x > y, then f "+ h, where h = 3xy3 2 X + 4y 3 1, sinee, in this case X = 6x y is the term of f we have canceled using lt(g) = 2xy; in fact X = ltU). (We are not allowed to cancel, say, only 4x 2 y. Another way of saying this is that we are not allowed to write f = 4x 2 y + 2x2y2 X + 4 y 3  1 and just cancel 4x y). We now consider the term order deglex with x > y so that now lt(g) = y3 and so f "+ h, where now h = 6x 2 y  8xy  x  1. We note that in this latter case we canceled the term X = 4y 3 from f which is not the leading term of f. We can think of h in the definition as the remainder of a one step division of f by 9 similar to the one seen in Section 1.3. We can continue this process and subtract off ail terms in f that are divisible by lt(g). 2 2 EXAMPLE 1.5.2. Let f = y x + 4yx  3x , 9 = 2y + x + 1 E Q[x, yi. Also, let the order be deglex with y > x. Then
9 >
yx 2
Note that in the last polynomial, namely :1x3  ~X2  ix, no term is divisible by lp(g) = y and so this procedure cannat continue. We could write this reduction process in long division format as
5From now on we will use capitalletters, usually X, Y or Z, to denote power products or terms instead of the more cumbersome ;VCX or aO< unless we need to make an explicit reference to the exponeot o. We will also say X > Y, for term X, Y, provided that Ip(X) > Ip(Y).
27
2y + X
+1
y2 x
+ 4yx _~yx2
2
3x 2
y2X+ hX2 + hX
+ ~yx 
3x2
_lyx2 _
lX 3 _ lX 2 4 4
4 2 4
lx 3
_2X 2
'lX
In the multivariable case we may have ta divide by more than one polynomial at a time, and 80 we extend the process of reduction defined above to include this more general setting.
DEFINITION 1.5.3. Let f,h, and fI, ... ,fs be polynomials in k[XI, ... ,xn ], with J; of 0 (1 SiS s), and let F = {J" ... , fs}. We say that f reduces ta h modulo F, denoted
f >+ h,
if and only if there exist a sequence of indices ib i2, ... ,it E {l, ... , s} and a sequence of polynomials h" ... , h t  l E k[XI, ... , x n ] such that
f" h 1 ? J., h 2 f 4
j.
f"
EXAMPLE 1.5.4. Let fI = yx  y, h = y2  X E lQl[x, y]. Let the arder be deglex with y > x. Let F = {J" h}, f = y 2 x. Then
sinee
h Y2 x il y 2 t
)0
X.
DEFINITION 1.5.5. A polynomial r is caUed reduced with respect ta a set of nonzero polynomials F = {J" ... , fs} ifr = 0 or no power product that appears in r iB divisible by any one of the lp(fi), i = l, ... , s. In other words, r cannat be reduced modulo F. DEFINITION 1.5.6. If f ~+ rand r is reduced with respect ta F, then we caU r a remainder for f with respect ta F.
The reduction pro cess allows us to de:fine a division algorithm that mimics the Division Algorithm in one variable. Given f, fI, , f, E k[XI' ... , x n ] with
28
fi of 0 (1 <:: i <:: s), this algorithm returns quotients U"". ,Us E klxl,'" ,xnJ, and a remainder r E k[Xl' ... ) x n ]) such that J = Ud, + ... + usfs + r.
This algorithm is given as Algorithm 1.5.1.
INPUT: J, fI, .. , , J, E klxl, ... ,xnl with Ji of 0 (1 <:: i <:: s) OUTPUT: Ul, ... , U" r such that J = Ud, + ... + UsJs + rand r is reduced with respect to {fI, ... , J,} and ma.x(lp(ul) lp(f,),,, . , lp( us) lp(f,), lp(r)) = lp(f). INITIALIZATION: Ul := 0, U2 := 0, ... , Us := 0, r := 0, h ;= J
WHILEhofODO
IF there exists i such that lp(fi) divides lp(h) THEN
choose i least such that lp(f;) divides lp( h) lt(h) Ui := Ui + lt(fi)
h '= h  lt(h) f . lt(fi) ,
ELSE
r:=r+lt(h)
h:=hlt(h)
Note that in Algorithm 1.5.1 we have, in effect, assumed an ordering among the polynomials in the set {fI, ... , Js} when we chose i to be least such that lp(f;) divides lp(h). This is an important point and will be illustrated in Example
1.5.10. It is informative to consider the similarities between Algorithm 1.3.1, the one variable Division Algorithm in Section 1.3, and Algorithm 1.5.1, the multivari
able Division Algorithm. The quotients Ul, ... Us in Algorithm 1.5.1 correspond to the single quotient q in Algorithm 1.3.1; we have s different quotients in Algorithm 1.5.1 because we are dividing J by s different polynomials fI, , Js as opposed to dividing J by a single polynomial 9 in Algorithm 1.3.1. The remainders, denoted by r in both algorithms, have the same definition: no term of r is divisible by the leading term of any divisor. In Algorithm 1.3.1, once the leading term of ris not divisible by lt(g), we also know that no other term of r
l
29
is divisible by It(g), and we have obtained the remainder. So in Algorithm 1.3.1 we start with r = f and subtract off multiples of 9 until this occurs. This simple property is not true in the multivariable case, necessitating the introduction of the extra polynomial h in Algorithm 1.5.1. 80 we start with h = f and r = and subtract off the leading term of h when we can or add the leading term of h into r when we cannot, and 80 build up the remainder. EXAMPLE 1.5.7. We recompute Example 1.5.2 but now we follow Algorithm 1.5.1. Let F = {ft}, where ft = 2y + x + 1 E Q[x, yJ. The order is deglex with y > x. Let f = y 2x + 4yx  3x 2. INITIALIZATION: UI := 0, r := 0, h := y 2 x + 4yx  3x2 First pass thmugh the WHILE loop: y = Ip(ft) divides Ip(h) = y 2 x u 1 + ~ lyx U 12y "2 h := h ft 2 = (y x + 4yx  3x 2 ) _ x  3x2 = hx2 + Second pass through the WHILE loop: y = Ip(ft) divides Ip(h) = yx 2
1;'/;;\
y;; (2y + x + 1)
1 2
Ul := Ul
.h h . 
+~ !t(h) f !t(h) l
_lyx2
= 2YX  4"X
=

Third pass through the WHILE loop: y = [p(ft) does not divide Ip(h) = x 3 :=r+lt(h) = h:= h It(h) = ~yx  '4'X2 Fourth pass through the WHILE loop: y = [p(f,) divides Ip( h) = yx Ul "= Ul + ~yx = lyx  lx 2 + lx . 2y2 44
ix3
h:= h  lW;;))ft
= Gyx
= _~X2
!;fx 2)  ~(2y + x + 1)

Fifth pass through the WHILE loop: y = Ip(f,) does not divide Ip( h) = x 2 r := r + It(h) = ~x2 h := h It(h) = ix Sixth pass through the WHILE loop: y = Ip(f,) does not divide Ip( h) = x r := r + It(h) = ~x2  ix h := h  It( h) = 0
iX3 
ix3 
30
and
11
:= U2
+ It(J,)
.y' (2 h .  h  .!!.0lf lt(h) 2  Y 2  y2 Y  x)  x Third pass through the WHILE loop: yx = Ip(j,) does not divide Ip(h) = x y2 = Ip(12) does not divide Ip(h) = x r :=r+lt(h) =x h:= hIt(h) = The WHILE loop stops, and we get
and
J=yj,+12+x.
THEOREM 1.5.9. Given a set oJ nonzero polynomials F = {J" ... ,J,} and J in k[XI"" ,xn], the Division Algorithm (Algorithm 1.5.1) produces polynomialE Ul,'" ,us,r E k[Xl1'" ,Xn] such that
31
PROOF. We first observe that the algorithm terminates. At each stage of the algorithm, the leading term of h is subtracted off until this can no longer be done. That is, we get a sequence hl, h2 , . . . of the h's in the algorithm, where hi+ 1 is obtained from hi by subtracting off lt(h i ) and possibly sorne smaller terms: hi+l = hi  (lt(h i ) + lower terms). This is because we compute hi+l from hi by subtracting off i:~~;i!' = lt(h i ) + lower terms (in case sorne lp(!,) divides lp(h;)) or by subtracting off lt(h i ) (in case no lp(fj) divides lp(h i )). 80 we have that for all i, Ip(h i+1) < lp(h i ). Thus, since the term order is a wellordering (Theorem 1.4.6), the list of the hi's must stop. To pIove the second part, we note that from what we did abov, and since h = J at the beginning of the algorithm, we have at any stage in the algorithm lp(h) <:: lp(f). Now, for each i, we obtain Ui by adding terms l~'c~)), where ;:(~)) li cancels the leading term of h. It is then irnmediate that lp( Ui) lp(fi) <:: lp(f). Moreover, ris obtained by adding in terms lt(h) and so lp(r) <:: lp(f) , as weil. D With J written as in Theorem 1.5.9, we have J  r E (J" ... ,J,). Therefore, = 0, then f is in (h, ... 1 /s). However, the converse iS'not necessarily trUj that is, J may be in the ideal (fI, ... ,J,), but the remainder of the division of J by J" ... ,J, may not be zero as the following example shows. EXAMPLE 1.5.10. Consider the polynomial J = y 2x  x E <Ql[x, yJ, and the ideal J = (J"h) <Ql[x,yJ, where J, = yx  y,h = y2  x. Set F = {J"h}. Using the deglex term order with y > x and the Division Algorithm, we see that
if r
J J.', y2 
JE
X J2., 0, that is, J ....!:..,+ 0 and indeed, J = yJ, + 12, and hence J. However if we reverse the order of J, and 12 (that is, we use 12 first in
the Division Algorithm) then J J2., x 2  x, and x 2  x is reduced with respect to F. So the remainder of the division of J by F is nonzero, but J is in the ideal (fd2). This difficulty already occurred in the one variable case. For example, if J = x, J, = x 2 and h = x2_x, then J is reduced with respect to {J" h}, whereas J = J,  12 E (J" 12) The difliculty was resolved by finding a better generating set for (J" 12), namely x = gcd(X 2 ,X 2  x). To do this in the multivariable CaBe is the subject of the next section.
Exercises 1.5.1. Let J = x 3 y3 + 2y2,J, = 2xy2 + 3x + 4y2,h = y2  2y  2 E <Ql[x,yJ. Using lex with x > y, divide J by J" 12 to obtain a remainder r and an expression as in Theorem 1.5.9. Repeat this exercise reversing the Iole of J, andJ,. 1.5.2. Let J = x 2y2 w 2,J, = xy2w,h = yzw,h = ZW 3 ,J4 = w 3 w E <Ql[x,y,z,wJ. Using lex with x> y > z > w, divide J by J"h,hJ4 to obtain a remainder r and an expression as in Theorem 1.5.9. Repeat this exercise reversing the role of fI, f2l h, f4l i.e. using f4l h, h, fI 1.5.3. Prove that given a set of nonzero polynomials F k[XI' ... ,Xn ], there
32
can be no infinite chain g, .!...., g2 .!...., g3 .!...., .... [Hint: The new point here that did not occur in Theorem 1.5.9 is that we may not be subtracting off leading terITIS in gi .!...., gi+l.] 1.5.4. Show that for any polynomials f,g E k[Xl, ... ,xn ], for any finite set of nonzero polynomials F : k[Xl, ... ,xn], and for any power product X E 'II'n, we have
a. If f E F, then fg ++ O.
b. If f ++ g, then Xf ++ Xg. 1.5.5. Let f, g, h, r, S E k[Xl, ... , x n ] and let F be a collection of nonzero polynomials in k[Xl, ... ,xn ]. Disprove the following: a. If f ++ rand 9 ++ s, then
F F F F F F F
f + g++ r + s.
F
b. If f ++ rand 9 ++ s, then fg ++ rB. c. If f +g ~+ h, f ~+ T, and 9 ~+ s, where h,r, s are reduced with respect ta F, then r + s = h. 1.5.6. Let F = {fI, ... , fs} : k[Xl' ... , Xn ], with fi'" 0 (1 ~ i ~ s), and let f E k[Xl'." ,xn ] such that f = I:;:~l UiJi with Ip(f) = max'<:i<:slp(uiJi). Give an example that shows this does not imply that f .!....,+ O. [Compare with Theorem 1.6.2 part (iii).] 1.6. Grobner Bases. In thls section we finally define the fundamental abject of this book, namely, a Grbner basis.
DEFINITION 1.6.1. A set of nonzero polynomials G = {g" ... , g,} contained in an ideal J, is caUed a Grbner basis6 for J if and only if for aU f E J such
that f '" 0, there exists i E {1, ... , t} such that Ip(gi) divides Ip(f). In other words, if G is a Grobner basis for 1, then there are no nonzero polynomials in J reduced with respect ta G. We note that it is not clear from this definition that Grbner bases exist. We will prove this in Corollary 1.6.5. We first present three other characterizations of a Grbner basis. In order to do thls we need to make the following definition. For a subset S of k[Xl, ... , x n ], we define the leading term ideal of S ta be the ideal Lt(S) = (lt(s)
18 ES).
THEOREM 1.6.2. Let J be a nonzero ideal of k[Xl" .. , x n ]. The foUowing statements are equivalentfor a set of nonzero polynomials G = {g", .. ,g,} : J. (i) G is a Grobner basis for J.
(ii) f E J if and only if f ~+ o. (iii) f E J if and only if f = I:;:~l higi with Ip(f) = max,<:i<:t(lp(hi) Ip(gi)). (iv) Lt(G) = Lt(J).
6 Another
33
PROOF. (i) =? (ii). Let f E klx" ... ,xnl. Then, by Theorem 1.5.9, there exists r E klx" ... ,xn ], reduced with respect to G, such that f '2..,+ r. Thus f  r E I and so f E I if and only if r E I. Clearly, if r = (that is, f '2..,+ 0), then f E I. Conversely, if f E I and r oF then r E I and by (i), there exists i E {l, ... ,t} such that Ip(9i) divides lp(r). This is a contradiction to the fact
that r is reduced with respect to G. Thus r = and f '2..,+ o. (ii) =? (iii). For f E I, we know by hypothesis that f '2..,+ 0, and sinee the process of reduction is exactly the same as the Division Algorithm, we see that (iii) follows from Theorem 1.5.9. (iii) =? (iv).Clearly, Lt(G) Lt(I). For the reverse inclusion it suffices to show that for all f E I, lt(f) E Lt(G), since the lt(f)'s generate Lt(I). Writing f as in the hypothesis, it immediately follows that lt(f) = L
lt(h,) It(9i),
where the sum is over all i such that lp(f) = lp(h i ) Ip(9i). The result follows immediately. (iv) =? (i). Let f E I. Then lt(f) is in Lt(G), and hence
(1.6.1)
lt(f) = L
i=l
hi It(9i),
for sorne hi E klx" ... ,xn ]. Hwe expand the right~hand side of Equation (1.6.1), we see that each term is divisible by sorne Ip(9i). Thus lt(f), the only term in the left~hand side, is also divisible by sorne Ip(9i), as desired. 0 COROLLARY 1.6.3. IfG = {9', ... ,9'} is a Griibner basisforthe idealI, then
I = (9', ... ,9').
I, since each 9i is in I. For the reverse inclusion, let f E I. By Theorem 1.6.2, f '2..,+ 0, and hence f E (9', ,9') 0
PROOF. Clearly (9', ... ,9,)
For the next coroUary we first need sorne information about the special nature of ideals generated by terms.
LEMMA 1.6.4. Let I be an ideal generated by a set 8 of nonzero terms, and let f E klx" ... ,xn ]. Then f is in I if and only if for every term X appearing in f there exists Y E 8 such that Y divides X. Moreover, there exists a finite subset 80 of 8 such that I = (80 ).
,
f= LhiXi'
i=l
where hi E klx" ... ,xnl and Xi E 8, for i = l, ... ,R. Hwe expand the right~ hand side of Equation (1.6.2), we see that every term is divisible by sorne terrn
34
CHAPTER
1.
Xi in S, and hence every term of the lefthand side must also be divisible by
sorne term Xi E S.
Conversely, if for every term X appearing in f there exists a term Y E S such that Y divides X, then each such X is in J = (S), and hence f is in J. In order to prove the last statement we note that, by the Hilbert Basis Theorem (Theorem 1.1.1), J has a finite generating set. By the first part of the lemma each term in each member of this generating set is divisible by an element of S. The finite set, So, of such divisors is dearly a generating set for J. 0 COROLLARY 1.6.5. Every nonzero ideaZ J of k[X1, ... sis.
,xnl
PROOF. By Lemma 1.6.4 the leading term ideal Lt(I) has a finite generating set which can be assumed ta be of the form {lt(g,), ... ,lt(g,)} with g" ... ,g, E J. If we let G = {g" ... ,g,}, then we have Lt(G) = Lt(I) and hence G is a Grbner basis for J by Theorem 1.6.2. 0
We now give a fifth characterization of a Gr6bner basis. We will expand our terrninology a little.
DEFINITION 1.6.6. We say that a subset G = {g" ... ,g,} of k[X1"" ,xn ] is a Grbner basis if and onZy if il is a Grobner basis for the ideal (G) it generates. THEOREM 1.6.7. Let G = {g" ... ,g,} be a set of nonzero poZynomiaLs in k[X1"" ,xn ]. ThenG is a Grobner basisifand onlyifforallf E k[X1"" ,xn ], the remainder of the division of f by G is unique. PROOF. We first aBsume that G is a Grbner basis. Let f S + Tl and f S+ r2, with r, and r2 reduced with respect to G. Since f  r, and f  r2 are bath in (G) = (g" ... ,g,), so is Tl  T2. Moreover r,  r2 is reduced with respect ta G. But then Tl  T2 = 0, by Theorem 1.6.2 (ii).
Conversely, assume that remainders upon division by G are unique. We will
prove condition (ii) in Theorem 1.6.2. So let f E (G). Suppose that f S+ r such that r is reduced. We must show that r = O. (Of course, we know, by hypothesis, that r is unique.) CLAIM: If c E k is nonzero, X E ']l'n is a power product, and 9 E k[Xl" .. ,x n ]
is such that 9 ~+
G
T,
t}, 9 
cXgi ~+ r. (Note that we have not assumed that cX lt(g,) actually cancels a term in g.) We note that if the claim is true we are done. To see this, since f E I, we
can write f = Cv Xl/9i where Cv is in k and is nonzero and Xv E 1['n and each iv E {l, ... ,t} (this can be done by writing f = L:~l higi and writing each hi as a SUll of terms). Then, applying the daim ta 9 = f, we see that
l' ,
2::=1
f 
c1X1gii
S+
T.
f 
C 1 X 19i 1
to
=
obtain
f 
C1X1gil
~+
T.
35
J  L~~I cvXvgi " ~+ r. That is, 0 ~+ r which immediately implies that r = 0, as desired. PROOF OF THE CLAIM: Define d by letting dlc(g;) be the coefficient of X lp(gi) in g. We will consider three cases. Case 1. d = O. Then the coefficient of X lp(gi) in 9  CX9i is clc(9i) which is nonzero and 80 9  eX 9i ~ 9 ~ + r which is the desired result. G Case 2. d = c. Let rI be reduced and assume that 9  cXgi >+ rI. Then, since d = c oF 0 we see that 9 ~ 9  eX 9i ~ + Tl. Thus, since we know 9 2...+ r also, we see r = Tl, as desired (by the assumption that the remainder is unique). Case 3. d # 0 and d # c. Set h = 9  dX 9i' Then the coefficient of X Ip(9i) in h is O. Since d # 0 we have 9 ~ h. Also, since d # c we have 9  cXgi ~ h. So if h ~+ T2, Bueh that T2 is reduced, we get 9 ~ h ~ + T2 and 80 T2 = T, since the remainder. is unique. And 80 9  cXgi ~ h S+ T, as desired. The theorem is now proved. 0
Although we have in Theorem 1.6.7 that remainders are unique for division by a Grobner basis, we saw in Exercise 1.5.2 that the quotients are not necessarily unique (we will see in Exercise 1.6.2 that the polynomials in Exercise 1.5.2 do form a Grbner basis). EXAMPLE 1.6.8. We continue Example l.5.1O. So let J = y 2xx,!J = yxx and 12 = y2  x. Let F = {!J,h}. We use deglex with y> x. We showed in Example l.5.10 that J ~+ 0 and J ~+ x 2  x, the latter being reduced with respect to F. Thus by Theorem l.6.7, F is not a Grbner basis. We can see this in another way. Namely, since J = y!J + 12 E (!J,h) and J ~+ x 2  x we have x 2  xE (h, 12). But x 2 = Ip(x 2  x) is not divisible by either Ip(!J) = xy orlp(h) = y2. Thus by the definition of a Grbner basis (Definition l.6.1), Fis not a Grobner basis. EXAMPLE l.6.9. Consider the polynomials 91 = Z + x, 92 = Y  xE lQ![x, y, z]. Let G = {91,92}, J = (91,92)' We use the lex term order on lQ![x, y, z] with x < y < z. We will prove that G is a Grbner basis for J. Suppose to the contrary that there exists J E J such that lt(f) ~ (lt(91),lt(92)) = (z, y). Then, z does not divide lt(f), and y does not divide lt(f). Thus, because of the lex term order, z and y do not appear in any term of J, and so J E lQ![x]. Let J = (z + x)h l + (y  X)h2' where hl, h 2 E lQ![x, y, z]. Since y does not appear in J, we may set y = x, and we have J = (Z+X)hl(X,X,Z), and hence z+x divides J, a contradiction to the fact that the only variable occurring in J is x. We will give a more systematic way of proving that a set of polynomials is a Grobner basis in the next section. We observe that if we have a Grbner basis G = {91"" ,9,} for an ideal I,
36
then we can solve sorne of the problems posed in Section 1.1 in a fashion similar to what we did in the one variable case. To decide whether a polynomial J is in 1, we use the Division Algorithm and divide J by G. The remainder of the division is zero if and only if J is in 1. Also, by Theorem 1.6.7, the representative of the element J+1 in the quotient ring k[Xl' ... ,xn}/1 is r+1, where r is the remainder of the division of J by G. Also, a basis for the kvector space k[Xl' ... ,xn}/1 is the set of ail cosets of power products that are not divisible by some It(9i) (Exercise 1.6.10). Ali of these applications will be discussed fully in Chapter 2. We note that a Grobner basis with respect ta one term order may not be a Grbner basis with respect ta a different term order. For example, if we use the lex term order with x > y > z in Example 1.6.9, then {91,92} is not a Gr6bner basis for 1 (Exercise 1.6.3). Clearly, the question now is how do we compute a Gr6bner basis for an ideal I? The results in this section only prove existence, and the proofs of these results do not indicate any method for finding Gr6bner bases. We will give Buchberger's Algorithm for their computation in the next section. However, we have already computed (without knowing it!) Gr6bner bases for two special cases. In the linear case, the polynomials obtained from row reducing the matrix of the original linear polynomials ta row eehelon farm constitute a Gr6bner basis for the ideal generated by these original polynomials, the variables being ordered according to the position of their colunm in the matrix of the system of equations (Exercise 1.6.5). In the one variable case, G = {gcd(fI, ... , J,)} is a Gr6bner basis for the ideal 1 = (fI, .. , J,), by Theorem 1.6.2(ii) (Exercise 1.6.6). In both cases we do have an algorithm for computing the Gr6bner basis.
Exercises 1.6.1. Show that the polynomials fI = 2xy2+3x+4y2, Jz = y2 2y2 E Ql[x, y}, with lex with x > y do not form a Gr6bner basis for the ideal theygenerate. (See Exercise 1.5.1.) 1.6.2. Show that the polynomials fI = x  y 2 w, Jz = y  zw, h = z  w 3 , J4 = w 3  w E Ql[Xi y, z, w} in Exercise 1.5.2 form a Gr6bner basis for the ideal they generate, with respect to lex with x > y > z > w. [Hint: Follow Example 1.6.9.} Show that they do not form a Gr6bner basis with respect to lex with w > x > y > z. 1.6.3. Show that the polynomials 91,92 in Example 1.6.9 do not form a Gr6bner basis with respect to lex with x > y > z. 1.6.4. Let < be any term order in k[x, y, z} with x > Y > z. Show that the polynomials fI, Jz, h in Example 1.2.2 do not form a Gr6bner basis for 1, whereas fI, Jz, 17z do. 1.6.5. Let fI, ... ,fm be nonzero !inear polynomials in k[Xl, ... ,xn} which are in row echelon form. Show that they form a Gr6bner basis for the ideal
37
1.6.6.
1.6.7.
1.6.11.
1.6.12.
they generate with respect ta any arder for which the variables are ordered according ta the corresponding colurrms in the matrix. In the polynomial ring in one variable, k[x], consider a set of nonzero polynomials F = {f" ... ,j,} : k[x]. Let d = gCd(f" ... ,j,). Prove that F is a Grbner basis if and only if cd E F, for sorne cE k, col O. Generalize Exercise 1.6.6 ta principal ideals in k[Xl"" ,xn ]. That is, show that if! = (d) is a principal ideal in k[Xl' ... ,X n ], then F : lis a Grbner basis for l if and only if cd E F, for sorne c E k, col O. Let l be an ideal in k[Xl"" ,xn ]. Prove that Lt(I) is the kvector space spanned by {lp(f) 1 j E I}. Let l : k[Xl"" ,xn ] be an ideal generated by a set G = {X" ... ,X,} of nonzero terms. Prave that G i8 a Grobner basis for J. Let l be an ideal of k[Xl"" ,xn ] and let G = {g" ... ,g,} be a Grbner basis for J. Prove that a basis for the kvector space k[Xl"" ,xn]/J is {X + JI X E ']['n and lp(gi) does not divide X for al! i = 1, ... ,t}. In this exercise we give another equivalent definition of a Grbner basis. Let J : k[Xl"" ,xn ] be an ideal. For a subset S : k[Xl' ... ,xn ] set Lp(S) = {lp(f) 1 j ES}. (Note that we havejust taken the setof alllp(f) not the ideal generated by the lp(f)'s.) Set 1* = J  {O}. a. Show that 1['n i8 a monoid; that i8, 1['n i8 closed under multiplication. b. Show that Lp(1*) is a monoideal of ']['n; that is, show that for all X E Lp(I') and Y E ']['n we have XY E Lp(1*). (Note: this is just Exercise 1.7.6.) c. Praye that F : J* is a Grbner basis for J if and only if Lp(F) generates Lp(I') as a monoideal. (We say that Lp(F) generates Lp(1*) as a monoideal if and only if for al! X E Lp(1*) there exists Y E ']['n and Z E Lp(F) such that X = YZ.) In this exercise we give another equivalent definition of a Grbner basis. Let G : k[Xl' ... ,xn ] consist of nonzero polynomials. We cal! the reduc
1.6.13.
"S+" confluent provided that for aU J, g, h E k[Xl" .. ,x n ] such that j S+ 9 and j S+ h, there exists an TE k[Xl"" ,X n ] sueh that h S + T and 9 S + T. Prove that G is a Grbner basis if and only if "S+" is confluent. [Hint: Use Theorem 1.6.7.] Let {g" ... ,g,} : k[Xl, ... ,xn ] and let 0 # h E k[Xl" .. ,xn ]. Prove that
tian relation
{g" ... ,gt} is a Grbner basis if and only if {hg ... ,hg,} is a Grbner " basis. 1.6.14. Let G be a Grbner basis for an ideal J of k[Xl,'" ,xn ] and let K be an extension field of k. Let J be the ideal of K[Xl"" ,xn ] generated by J. Prove that G is also a Grbner basis for J. 1.6.15. Let G be a Grbner basis for an ideal J and let T, jE k[Xl"" ,X n ], where ris reduced with respect to G. Prove that if j  r E J, then j S+ T. 1.6.16. Let Gand G' be two Grbner bases for an ideal J : k[Xl, ... ,xn ] with
38
respect to a single term order. Let f E k[Xl, ... , xn]. Assume that f
f
"++
r and f ~ + r' where r is reduced with respect to Gand r is reduced with respect to Cf. Prove that r = rf. 1.6.17. Let J be an ideal of k[Xl,'" ,xn ]. Assume that we are given two term orderings, say <, and <2 . Let {g" ... , g,} be a Grbner basis for J with respect to <, . Assume that lt<, (gi) = lt<, (gi), for i = 1, ... , t. Prove that {g" ... , g,} is also a Grbner basis for J with respect to <2 . 1.6.18. Let J bean ideal in k[Xl,'" ,xn ] and let G = {g"." ,g,} and G' = {g~ 1 ' . ,g~/} be subsets of l of nonzero polynomials where we assume that G is a Grbner basis for J. Assume that for all gi E G we have gi = L}'~l aijgj where lp(gi) = max,:Si:s,,(lp(aiJ) lp(gj)). Prove that G' is also a Grobner basis for 1, with respect to the same term order. 1.6.19. Let f E k[Xl"" , x n ] have total degree d, and let w be a new varid able. We deline the homogenization of f to be = w f(";];, , ';:) E k[Xl, ... , Xn, w]. Note that fh is homogeneous (see Exercise 1.4.9). For an ideal J of k[Xl"" , Xn], we deline Jh to be the ideal of k[Xl"" , Xn' W] delined by Jh = (fh 1 f E J). Also, for 9 E k[Xl"" , Xn' W] we deline gh =g(Xl,'" ,xn ,l) E k[Xl,'" ,xn]. a. Cive an example that shows that there is an ideal J = (h, , f,) of k[Xl,'" , x n ] such that Jh is strictly larger than (fl', ... ,J~) k[Xl l ' . 1 Xn, WJ. b. Let < be the deglex or degrevlex order in k[Xl, ... ,xn ]. Let <h be the order delined by extending < to k[Xl"" ,xn,w] as follows:
Prove that <h is aterrn order in k[Xl"" ,xn,w] and that lt<h(fh) =
ItU)
c. Let Jbe an idealof k[Xl"" ,xn ] and let G = {g" ... ,g,} be a Grbner basis for J with respect to deglex or degrevlex. Prove that G h = {g?, . .. , gl.'} is a Grbner basis for Jh with respect to <h . [Hint: It suffices to show that Lt<h (Jh) = (lt<h (gn, .. . , lt<h (gl.')). If f E Jh, then we rnay assume that f is homogeneous. Prove that f = w"(ih)h, for sorne v 2' 0 and that h E J.] d. Use c to compute a set of generators for Jh, where J = (yx ~ X, y2 ~ x) by lirst showing that G = {yx~x,y2 ~x,x2 ~x} is a Grbner basis for J with respect to deglex with x > y. [Hint: Show that if f is reduced with respect to G and in J, then f = ax + by for sorne a, b E k, and f = h, (yx ~ x) + h2(y2 ~ x) + h3(X 2 ~ x). Then successively set x = 0 then y = 1.]
39
1.6.20. This material is taken from Robbiano and Sweedler [RoSw]. By a ksubalgebr A k[Xl"" ,xn ] we mean a subring which is also a kvector space. For a subset F = {J" ... ,Js} k[Xl'''' ,xn ] we denote by kiF] the ksubalgebra of k[Xl"" ,xn ] generated by F, that is kiF] = {Lvcvg' ... f::' Cv E k and v = (VI,'" ,v,) ENs and only finitely many CV's are nonzero}. Fix a term order on k[XI J ,xn ]. We will define a reduction procedure that answers the "algebra membership problem" for ksubalgebras of k[Xl' ... ,xn ]. This is the problem of determining, for JE k[Xl, ... ,xn ], whether J E kiF]. (This problem will be solved using Grbner bases in Section 2.4.) a. For F k[Xl,'" ,X n ], let L.p(F) = {lp(J) 1 J E F}. (Note that we have only taken the set of all Ip(J).) For a ksubalgebra A k[Xl,'" ,xn ] show that L.p(A) is a multiplicative submonoid of lI'n. We cali Fa SAGBI brulis for A = kiF] provided L.p(F) generates L.p(A) as a monoid. (SAGBI stands for Subalgebra Analog to Grbner Bases for Ideals. In Robbiano and Sweedler [RoSw], an algorithm for computing SAGBI bases is given.) b. For F = {J" ... ,Js} klxl,'" ,xn ] and v = (VI, ... ,Vs) E li'
1
denote by F V = g' ... Jl:'. For 9, hE k[Xl"" ,xn ] we write 9 b h ta mean there is acE k (c of 0) and v E N' such that It(cFV ) is a term m 9 and h = 9  cFv. If we have 9 ==? 91 ==? 9' ==? ... ==? h we write 9 b+ h. Show that 9 b+ h implies that 9  h E kiF]. c. Show that F k[Xl' ... ,xn ] is a SAGBI basis for kiF] if and only if for all J E kiF] we have J ==?+ O. d. Show that if F consists entirely of terms then F is a SAGBI basis for kiF]. e. Prove that F = {x',y',xy + y,xy'} is a SAGBI basis for <QI[F] lQl[x,y] for deglex with y > x. [Hint: For J = LCv(X')V,(y')"'(xy + y)V, (xy')V' E IQl[F], expand out the xy + y term and show that it suffices ta prove that xnym is in the monoid generated by {x2, y2, xv, xy2} for n <:: m.]
1. 7. SPolynomials and Buchberger's Algorithm. In this section we first lay the theoretical foundation for the algorithm for computing Grbner bases by presenting Buchberger's Theorem [Bu65, Bu85]. This result is given in Theorem 1. 7.4. We then present his algorithm. Let J = (J" ... ,J,) be an ideal of k[Xl"" ,xn], and let F = {J" ... ,Js}, where we assume that fi of 0 (1 <:: i <:: s). In the previous section we defined F ta be a Grbner basis if and only if for all J E J, there exists i E {l, ... ,s} such that Ip(Ji) divides Ip(J). Sa a difficulty arises with elements of J whose leading power products are not divisible by any Ip(J,). But if J is in J, J = L:~l hdi, for sorne hi E k[Xl,'" ,xn ]. Hence the difficulty occurs when the largest of the lp(hdi) = lp(hi ) Ip(Ji)'s cancel. The simplest way for this ta occur is in the
F
. F F
40
oJ
It&,j
reduce f using
J"
we get h 2 = f 
It&j)
h2  hl = It&.)fi  It&j)fj = .!{;S(j"J,). EXAMPLE 1.7.3. Let f = y 2x + l, ft = yx  y, h = y2  x E Q[x, y] with the deglex term ordering with y > x. We consider the term X = y 2 x in f. We have that f y2 + 1 = f  yft, and f ~ x 2 + 1 = f  xJz. Note that X = L = lcm(lp(ft), lp(h)) = y 2 x, and that the ambiguity introduced is _y2 + x 2 = yft  xh = S(ft, h). Also, note that S(ft, h) E (ft, h), and that it ean be reduced: S(fl, h) ~ x 2  x. The polynomial x 2  x is now redueed
"+
with respect to {ft, h}, hut is not zero. Now that we have introduced Spolynomials as a way to "cancel" leading terms and to account for the ambiguity in the Division Algorithm, we can go ahead with a strategy fot computing Grbner bases. It turns out that the Spolynomials account for aU ambiguities we need to be concerned about as the next result shows. THEOREM 1.7.4 (BUCHBERGER). Let G = {gl, ... ,g,} be a set of nonzero polynomials in k[Xl, ... ,xn ]. Then G ,. a Grobner basis for the ideal l = (gl, ... , gt) if and only if for ail i oJ j,
S(gi,g,) ++
o.
LEMMA 1.7.5. Let ft, ... , f, E k[Xl, ... ,xn ] be such that lp(f,) = X oJ 0 for ail i = l, ... ,s. Let f = L:~l cdi with Ci Ek, i = l, ... , s. Iflp(f) < X, then f is a linear combination, with coefficients in k, of S(j" fj), 1 ::; i < j ::; s.
7Recall that the least cornmon multiple of two power products X, Y i8 the power product L such that X divides L, Y divides L and if Z is another power product such that X divides Z and Y divides Z then L divides Z. We denote L by lcm(X, Y).
1.7.
41
PROOF. Write Ji = aiX +lower terms, ai E k. Then the hypothesis says that fi fj) since lp(fi) = lp(fj) = X. Thus
2:::=1 Ciai = 0, since the ci's are in k. Now, by definition, S(fil iJ) =
t ;j
since qal
+ ... + csa s =
O.
We are now ready to prove Buchberger's Theorem. PROOF OF THEOREM 1.7.4. If G = {g"." ,gt} is a Grbner basis for J =
(g", .. ,gt), then S(gi, gj) ~+ 0 for aU i of j by Theorem 1.6.2, sinee S(gi, gj) E J. Conversely, let us assume that S(gi, gj) ~+ 0 for all i of j. We will use Theorem 1.6.2(iii) to prove that G is a Grbner basis for J. Let J E J. Then f can be written in many ways as a linear combination of the 9i '8. We choose ta
write
2:!=1 hi 9i
with
least (here we use the wellordering property of the term order). If X = lp(f), we are done. Otherwise, lp(f) < X. We will find a representation of f with a smaller X, and this will be a contradiction. Let S = {i IIp(h;) lp(gi) = X}. For i E S, write hi = eiXi + lower terms. Set 9 = LiES eiXigi. Then, Ip(Xigi ) = X, for all i E S, but lp(g) < X. By Lemma 1.7.5, there exist dij E k sueh that
9=
L
i,jES,if.j
d;jS(Xigi,Xjgj).
It(Xigi)Xigi ~ It(XjgJ)Xjg j
X X X It(gi)gi  lt(gj)gj = Xij S(gi,gJ)'
where Xij = Icm(lp(gi),lp(gj))' By hypothesis, S(gi,gj) ~+ 0, and so we see from this last equation that S(Xigi,Xjg j ) gives a representation
S(Xig i , Xjgj ) =
L hijvgv ,
v=l
42
CHAPTER
1.
Ip(8(Xi gi , Xjg j ))
< ma.x(lp(Xigi),lp(Xjgj ))
X.
Substituting these expressions into 9 abov, and 9 iuto J, we get = 'E~=1 h~gil with ma.xJ<;i<;t(1p(hD lp(gi)) < X. This is a contradiction. 0 We have as an immediate Corollary of the proof of Theorem 1.7.4, the following additional equivalent condition for a subset G of k[xJ, ... ,xn ] to be a Grbner basis.
COROLLARY 1.7.6. Let G = {gJ, ... ,g,} with gi 7' 0 (1 <; i <; t). Then Gis a Griibner basis iJ and only iJ Jor ail i 7' j (1 <; i,j <; t), we have
t
8(gi,gj)
max (lp(hijv)lp(gv)).
l::::::v$.t
We note that Buchberger's Theorem (Theorem 1.7.4) gives a strategy for computing Grobner bases: reduce the Spolynomials and if a remainder is nOrrzero, add this remainder to the list of polynomials in the generating set; do this until there are "enough" polynomials to make all Spolynomials reduce to zero. Let us fust look at an example. EXAMPLE 1.7.7. Let h = xy  x, 12 = x 2  y E lQl[x, y] with the deglex term order with x < y. Let F = {h, h}. Then 8(h, 12) = xh  yh = y2  x 2 ...!... y2 _ y, and h = y2  Y is reduced with respect to F. Sa we add h to F, and
= {h, fz, h} Then 8(h, 12) + O. Now 8(h, h) = Yh  xh = 0, and F' F' 8(fz, h) = y 2h  x 2h = _y3 + x 2y + x 2y  y2 + O. Thus {h, fz, h} is a
let F
Grobner basis. We give Buchberger's Aigorithm to compute Grbner bases as Aigorithm 1.7.1.
F'
THEOREM 1.7.8. Given F = {h, ... ,J,} with Ji 7' 0 (1 <; i <; s), Buchberger's Algorithm (Algorithm 1.7.1) will produce a Griibner basis Jor the ideal 1 = (h, ,J,). PROOF. We first need to show that this algorithm terminates. Suppose to the contrary that the algorithm does not terminate. Then, as the algorithm progresses, we construct a set Gi strictly larger than Gi  1 and obtain a strictly increasing infinite sequence
GJ
G2
G3
....
Each G i is obtained from G i _ J by adding some h E 1 ta G i  J , where h is the nonzero reduction, with respect to Gil, of an Spolynomial of two elements of
43
0 (1 Sc i Sc s)
OUTPUT: G = {g" ... ,g,}, a Grbner basis for (J"", , J,) INITIALIZATION: G:= F, g:= {{hJ,} 1 Ji WHILEgf0DO Choose any {J, g} E g
f J,
E G}
S+
IFhfOTHEN
g := g U {{ u, h}
G:=GU{h}
for ail u E G}
G i  l . Since h is reduced with respect to Gi  l , we have that It(h) Thus we get Lt( G , ) Lt( G 2 ) Lt( G 3 ) ....
ct Lt(Gi _ l ).
This is a strictly ascending chain of ideals which contradicts the Hilbert Basis Theorem (Thearem 1.1.1). Naw we have F G J, and hence J = (fI, ... , J,) (g"." ,gt) J. Thus G is a generating set for the ideal J. Moreover, if 9i, 9j are polynomials in G, then S(gi,gj) S+ 0 by construction. Therefore G is a Grbner basis far 1 by Thearem 1.7.4. D EXAMPLE 1.7.9. Let fI = xy  x, h = y + x 2 E lQl[x, yJ ordered by the lex term ordering with x < y. INITIALIZATION: G:= {J"h},g:= {{J"h}} First pass through the WHILE loop
g :=0
S(J" 12) S+ x 3  x = h (reduced with respect to G) Since h f 0, let h := x 3  x g := {{Jd3}, {h h}} G:={J"hh} Second pass througb the WHILE loap g:= {{hh}} S(J"h) S+ 0 = h Third pass through the WHILE loop
44
CHAPTER
1.
9 :=0
SU" h) S+ 0 = h The WHILE loop stops, since 9 = 0. Thus {f" 12, h} is a Grbner basis for the ideal (J" 12) We will conclude this section by giving two more simple examples which i1lustrate Buchberger's Algorithm. EXAMPLE 1.7.10. Let ft = y2 + yx + x', 12 = y + x, and h = y E Ql[x, yi. Let us use the lex term order with y > x ta compute a Grbner basis for l =
(J" h, hl
INITIALIZATION: G:= {f" h, h}
g:= {{f" h}, {h,h}} S(ft,h) = x' (reduced with respect to {f"h,h}) let 14 := x' 9 := {{ft,!3}, {f2, M, {f" 14}, {ho M, {h M} G:= {f" h, h 14}
Second pass through the WHILE loop
M, {f2, M, {h M}
{{f" 14}, {ho 14}, {h M} S(h, h) = x (reduced with respect to {f" h, h 14})
/5
:=x
:=
SU"
{{h, M, {h, 14}, {f" /5}, {ho Js}, {h, Js}, {f4, Is}} J4) S+ 0
9 := {{h, M, {ft, Js}, {f" Js}, {h, Id, {J., Is}} SU" J4) S+ O.
The sixth through tenth executions of the WHILE loop will also give Spolynomials which reduce to zero (Exercise 1.7.4) and thus {ft,!''!3' J4,!S} is a Grbner basis for (J" 12, hl So far, in our examples, we have used the field Ql. The theory developed so far is valid for any field k. To illustrate this point, in our next exarnple we compute a Grbner basis in the case when k is a finite field. EXAMPLE 1.7.11. In this example we consider the field k = Z5 = Z/5Z. Let l, = x 2 + y2 + 1 and 12 = x'y + 2xy + x be in Zdx, yi. We use the lex term ordering with x > y to compute a Grbner basis for l = (J" 12) C;; Zs[x, yi
45
INITIALIZATION: G := {j" h}' 9 := {{J" h}} First pass through the WHILE loop
9 :=0
S(f"
Let
13 := 3xy + 4x + y3 + Y
g:= {{J"h}'{hh}} G:={J"hh} Second pass through the WHILE loop g:= {{hh}} S(j"h) = yj,  2xh >+ 4y 5 + 3y4 + y2 + Y + 3 (reduced with respect to G) Let 14 := 4 y 5 + 3y4 + y2 + Y + 3 g: {{hh},{J,,/4},{ht.},{h,t.}} G:= {J" h h, 14}' The third through the sixth executions of the WHILE loop give Spolynomials that reduce to zero (Exercise 1. 7.4) and thus G = {J" 12, 13, 14} forms a Grbner basis for (f" M Zs[x, y].
Exercises 1. 7.1. Compute the Spolynomials of the following pairs in Q[x, y, z] with respect to the lex, deglex, and degrevlex orderings with x > y > z : a, 1 = 3x 2 yz  y3 z3 and g = xy2 + Z2, b, 1 = 3x 2 yz  xy3 and g = xy2 + z2. 2 C, 1 = 3x y  yz and g = xy2 + z" 1.7.2. Use Theorem 1.7.4 to show that the polynomials given in Exercise 1.6.2 do form a Grobner basis with respect to lex with x > y > z > w. 1.7.3. You should do the following exercises without a Computer Algebra System. a. Find a Grbner basis for (x 2y + z, xz + y) Q[x, y, z] with respect to deglex with x > y > z. [Answer: x 2y + z, xz + y, xy2  z2, y3 + z3.] b. Find a Grbner basis for (x 2y + z, xz + y) Q[x, y, z] with respect to lex with x < y < z. [Answer: z + x 2 y, xz + y, x 3 y  y.] 1.7.4. Finish the computation in Examples 1.7.10 and 1. 7.11 without a Computer Alge bra System. 1.7.5. In Example 1.7.11 we obtained G using arithmetic modulo 5 throughout the computation. The reader might think that G could also be obtained by first computing a Grbner basis G' for l = (f" hl viewed as an ideal in Q[x, y], where we assume that the polyaomials in G' have relatively prime integer coefficients, and thell reducing this basis modulo 5. This is not the case as we will see in this exercise. a. Compute the Grbner basis G' for l = (f" hl Q[x, y] with respect
46
to the lex ordering with x > y. b. Reduce G' modulo 5 to obtain G; and compare with Example 1. 7.11. 1.7.6. Assume that we have lixed a term order on 1['n. For 0 of f E k[x" ... ,xnl deline the multidegree of f by deg(f) = a where Ip(f) = X U with a E !\In. Of course, this delinition of deg depends on the term order in use. Deline deg(S) = {deg(f) 1 f E S} for subsets S kixJ, ,xnl not containing O. a. Let l be an ideal in k[x" ... ,xn ]. Let G = {g" ... ,g,} be a Grabner basis for J. Assume that deg(gi) = ai for 1 <: i <: t. Prove that
t
deg(r) = U(ai+!\In)
i=l
where J' = l  {O} (see Exercise 1.4.12). b. In lQI[x, y] let J = (xZy  y + X, xy2  x). Show that, with respect to the deglex ordering with x < y, deg(J') is represented by the shaded region in the diagram given below:
exponent of y
(0,2) p'L....L....(
(3,0)
exponent of x
c. Draw the region which represents deg(J') if we use lex with x < y. 1.7.7. Show how the steps in the Euclidean Algorithm (Algorithm 1.3.2) parallel the steps in Buchberger's Algorithm (Algorithm 1.7.1). 1.7.8. Show how the steps in Gaussian Elimination (see Section 1.2) parallel the steps in Buchberger's Algorithm (Algorithm 1.7.1). 1.7.9. Assume that F = {J" ... ,fs} k[x" ... ,xnl and each fJ is a difference of two power products. Prove that, with respect to any term order, (F) has a Grobner basis consisting of differences of power products. 1.8. Reduced Grobner Bases. In the last section we saw how to compute Grabner bases. However, the Grabner basis obtained from Buchberger's Algorithm might not be unique. In this section we show that by putting certain conditions on the polynomials in the Grobner hasis, we obtain uniqueness.
47
In Buchberger's Aigorithm there are two ploces where choices are made. First, there is the arder in which the polynomials are inputed and this affects the application of the Division Algorithm. Second, in the WHILE loop of Buchberger's Aigorithm where we compute Spolynomials, we choose {f, g} Egat random. Sa, if we were to change either of these choices, we might end up with a different Grobner basis. For example, in Example 1.7.10 ifwe had computed S(f2,/3) = x first, the Spolynomial S(f" 12) would have reduced ta zero, and would not have appeared in the Grbner basis. Sa we would have obtained a different Grbner basis. Note that Even after we have computed the Grbner basis G = {f" 12, /3, J4, J5} for J, we can observe that J4 = x 2 can be removed from G, that is, {f" 12, /3, Js} is also a Grbner basis for (f" 12, h). This is because any term divisible by !t(f4) = x 2 is also divisible by It(f5) = x. The set {f" 12, h, Js} is the Grbner basis for J we would have obtained had we computed S(h, /3) = x before S(f" 12). This leads ta the following definition.
DEFINITION 1.8.1. A Grabner basis G = {g"", ,g,} is 'caUed minimal iJ Jor aU i, lc(gi) = 1 and Jor aU i of j, Ip(gi) does not divide Ip(gj).
LEMMA 1.8.2. Let G = {g" ... , g,} be a Grabner basis Jor the ideal J. Jf Ip(g2) divides Ip(g,), then {g2, ... , gt} is also a Grabner basis Jor J.
PROOF. Clearly, if a polynomial J is such that Ip(f) is divisible by Ip(g,), then it is also divisible by Ip(g2)' Therefore, using Definition 1.6.1, {g2, ... ,g,} is a Grbner basis for J. 0
As a direct consequence of this lemma, we now see how a minimal Gr6bner basis can be obtained from a Grbner basis.
COROLLARY 1.8.3. Let G = {g"", ,gt} be a Grabner basis for the ideal J. To obtain a minimal Grabner basis from G, eliminate aU gi Jor which there exists j of i such that Ip(gj) divides Ip(gi) and divide each remaining gi by lc(gi)' In Example 1.7.10 above, a minimal Grbner basis for Jean be obtained from
{f"h,J3,f4,J5}, by removing j"h, and J4' We could also remove j,,/3, and J4' SA minimal Grabner bases are not unique, but, as the following proposition shows, all minimal Grobner bases for an ideal l have the same number of
elements, and the same leading terms.
PROPOSITION 1.8.4. Jf G = {g"", , gt} and F = {f" ... , J,} are minimal Grobner bases for an ideal l, then s = t, and after renumbering if necessary, It(f;) = It(gi) Jor aU i = 1, . .. , t.
PROOF. Since ft is in 1 and sinee G is a Gr6bner basis for l, there exists i such that Ip(gi) divides Ip(j,). After renumbering if necessary, we may assume that i = 1. Now 91 is also in 1, and hence, since F is a Gr6bner basis for l,
48
CHAPTER
1.
there exists j sueh that lp(fj) divides Ip(YI)' Therefore lp(fj) divides Ip(J,), and henee j = 1, sinee F is a minimal Grbner basis. Thus Ip(J,) = lp(y,). Now 12 is in J, and henee there exists i sueh that lp(y,) divides Ip(12), sinee G is a Grbner basis. The minimality of F and the fact that Ip(YI) = Ip(J,) imply that i i= 1, and, after renumbering if necessary, we may assume that i = 2. As above we get that Ip(Y2) = Ip(12). This proeess continues until al! f's and y's are used up. Thus s = t and after renumbering lp(fi) = Ip(Yi) for ail i = 1, ... , t. 0 As we mentioned after Corollary 1.8.3, minimal Gr6bner bases are nat unique. Ta get uniqueness, we need ~o add a stronger condition on the polynomials in the Grbner basis. DEFINITION 1.8.5. A Grobner basis G = {YI, ... ,y,} is caUed a redueed Grobner basis if, for aU i, !c(Yi) = 1 and Yi is redueed wit.h respect to G  {Yi}' That is, for aU i, no nonzero term in Yi is divisible by any Ip(Yj) for any j of i. Note that a redueed Grbner basis is also minimal. We now prove that redueed Gr6bner bases exist. COROLLARY 1.8.6. Let G = {YI, ... ,Yt} be a minimal Grobner basis for the ideal J. Consider the foUowing reduetion proeess: H, 91 ~+ hl, where h, is reduced with respect ta H, = {g2, ... , g,} H, h 92 ++ 2, where h 2 is redueed with respect ta H 2 = {h g3,." ,g,} " H, h where h3 is redueed with respect ta H3 = {h" h 2 , g4, ... , g,} 93 ++ 3,
9t ~+ ht, where ht is reduced with respect ta H t = {hll h 2, ... ,htI}' Then H = {h" ... , h,} is a reduced Grobner basis for J.
PROOF. Note that, sinee G is a minimal Grbner basis, we have that lp(hi ) = lp(g,) for each i = 1, ... , t. Therefore, H is also a Grbner basis for 1. (in fact, it is a minimal Grobner basis). Sinee the division of 9i by hl, ... 1 h i  b 9i+1, ... 19t is done by eliminating tenns of gi using lp(h , ), ... , lp(h i _ l ), Ip(gi+1)"" , lp(y,), and sinee lp(hj) = lp(gj), for all j, His a redueed Grbner basis. 0 THEOREM 1.8.7 (BUCHBERGER). Fix a term order. Then every nonzero ideal J has a unique redud Grobner basis with respect to this term order. PROOF. We proved in the previous result that every ideal has a redueed Grbner basis. Thus we only need to prove uniqueness. Let G = {g" ... , g,} and H = {h" .. , , ht} be redueed Grbner bases for J. We note that by Proposition 1.8.4, sinee a redueed Grbner basis is minimal, both G and H have the same number of elements and we may assume that, for each i, lt(g,) = lt(h i ). Let i be given, 1 ::; i ::; t. If gi of hi, then gi  hi E J implies that there exists j such that lp(hj ) divides lp(gi  hi)' Sinee lp(gi  hi) < lp(h i ), we see that j of i. But then
1.8.
49
Ip(h j ) = Ip(gj) divides a term of gi or hi. This contradicts the fact that G and H are reduced Grbner bases. So gi = hi 0 EXAMPLE 1.8.8. Let us go back to Example 1.7.10. We have seen Tight after Corollary 1.8.3 that {h, Js} and {h Js} are both minimal Grbner bases for the ideal I. Since h = y and Js = x, we see that {h, Js} is a reduced Grbner basis for I. Since h = y + x, we see that h can be reduced to y using Js So {h,Js} is not a reduced Grbner basis. Of course, the reduced Grbner basis obtained from {h, Js} is in fact {h, Js}, since the reduced Grbner basis is unique. EXAMPLE 1.8.9. We go back to Example 1.7.11. There we showed that a Grbner basis for I = (x 2 + y2 + 1, x 2y + 2xy + x) : Zs [x, y] with respect to the lex ordering with x> y is {x 2+y2+1, x 2y+2xy+x, 3xy+4x+y3+ y , 4ys+3y4+ y2+y+3}. By Corollary 1.8.3, {x 2+y2+1,xy+3x+2y3+2y, yS+2y4+4y2+4y+2} is a minimal Grbner basis for I. In fact it is easy to see that it is the reduced Grbner basis for I. Exercses 1.8.1. Compute the reduced Grbner basis for the ideal in Example 1.7.9. 1.8.2. Compute the reduced Grbner basis for the ideals in Exercise 1. 7.3. 1.8.3. Let I : k[Xl, ...., x n ] be an ideal. We cali I a homogeneous ideal provided that I = (fI, ... , J,) where each Ji is homogeneous (see Exercise 1.4.9). Fix an arbitrary term order on k[Xl, ... , x n ]. a, Show that I is homogeneous if and only if for all J E I, each haillogeneous component of f is also in 1. h, Show that any hOillogeneous ideal has a Grbner basis consisting of hOillogeneous polynomials. c, Prave that I is a homogeneous ideal if and only if the reduced Grbner basis for I consists of homogeneous polynomials. d. Prove that a subset G of a homogeneous ideal I is a reduced Grbner basis with respect to the lex ordering if and only if G is a reduced Grbner basis with respect to the deglex ordering. 1.8.4. Let F : k[Xl, ... , x n ] and let I = (F). Find an algorithm that will determine a subset F' : F such that I = (F') and for which no proper subset of F' generates I. 1.8.5. We use the same notation as in Exercise 1.6.19. Let < be any order on k[Xl' ... , x n ]. We let <h be as in Exercise 1.6.19. Let I = (f" ... , J,) be an ideal of k[XI, ... , x n ]. Let G = {g" ... , g,} be a Grbner basis for (fi', . .. , J!:) with respect to <h . We may assume that the polynomials in G are ail hOillogeneous. Prave that G h = {(g,) h, . . . , (g, h} is a Grbner basis for I. [Hint: First note that even without the assumption that Gis a Grbner basis we have (Gh) = (A 1 J E (fi', ... , J!:)) = J. Then note thal It<, (f)h = It(A) for every homogeneaus polynomial in k[Xl, ... ,xn,w]. Prave thal 8((gi)h, (gj)h) = 8(gi,gj)h. Prave that given
50
f,g E k[XI, ... ,xn,w], if f ">+ g, then!h ~+ gh.] 1.8.6. (*) As mentioned before, a Grbner basis with respect to one term ordering might not be a Grbner basis with respect to another term ordering. In this exercise we show that for a given ideal tbere are only finitely many possible reduced Grbner bases. Let l be an ideal of k[XI, ... , x n ]. a. Let T be tbe (infinite) set of ail possible term orderings on k[XI, . .. ,xnJ. Let R = {reduced Grbner bases for l with respect to tbe term orders in T}, and let 1:. = {leading term ideals of l with respect to the term orders in T}. Prove that there is a one to one correspondence between Rand c.. b. Prove that 1:. is finite. [Sketch of the proof ([MoRo]): Suppose to the contrary that 1:. is infinite. For each leading term ideal in 1:., choose a term ordering which gives this leading term ideal. Let Ta T be the infinite set of these chosen term orderings. Also, let l be generated by {JI, ... ,f,} Since there are only finitely many terms which appear in the fi 's, there exist terrns ml, ... ,ms and an infinite set 'li Ta such that It(Ji) = mi for each term order in Ti. Consider the two possible cases: either (ml, ... ,ms) is the leading term ideal for l with respect to one term order in 11, or it is not. In the first case, use Exercise 1.6.17 and in the second add a polynomial to JI, ... ,f, and repeat the argument.] c. Conclude that tbere are only finitely many reduced Grbner bases for a given ideal. d. A set F which is a Grbner basis for an ideal l with respect to every term order is called a universal Grobner basis. Use c to show that every ideal has a universal Grobner basis. An example of such a basis is given in Exercise 1.8.7. 1.8.7. Find a universal Grbner basis for the ideal (x_y2, xyx) Q[x, y]. [Hint: At each stage of Buchberger's Algorithm, consider ail possible choices of leading terms.] (Answer: {x  y2, xy  x, y3 _ y2, x 2  x}.)
1.9. Summary. We conclude this chapter by giving a summary of the most important results that we have seen so far. The first theorem lists ail the equivaient conditions that we now have for a set G = {gl, ... , gt} to be a Gr6bner basis.
THEOREM 1.9.1. The following statements are equivalent for a set of nonzero
">+ o.
1.9. SUMMARY
51
(iv) ForallfE k[XI' ... ,Xn ], iff5'....,+ Tl, f 5'....,+ r2, andr"r2 arereduced
with respect ta G, then
Tl = T2.
E k[XI, ... ,xn] such that f = h,g, + ... + htgt and lpU) = max'<v<t(lp(hv) lp(gv)). (vii) For aUi #j (1 <:: i,j <:: t), we have 8(gi,gj) = hij,g , + .. +hijtgt such that lp(8(gi, gj)) = max',;v:<;t(lp(hijv) lp(gv)).
(v) For aU i # j, 8(gi,gj) 5'....,+ o. (vi) For all f E l, there exists h" ... , ht
The proofs that ail of these conditions are equivalent are contained in Theorems 1.6.2, 1.6.7, and 1.7.4, and Corollary 1.7.6. 1.9.2. Fix a term order on k[XI' ... , x n ]. Then every ideal l has a reduced GTobner basis with respect to this term order. This GTobner basis is effectively computable once l has been given as generated by a finite set of polynomials. Moreover this reduced Grobner basis for l (with respect to the given term arder) is unique.
THEOREM
This chapter is devoted to giving a number of applications of the theory developed in Chapter 1 to computations in polynomial rings. We also give sorne applications to computations which use polynomial rings. In Section 2.1 we give methods for doing basic computations in k[x!, ... ,xn] and k[x!, ... ,xn]/I, e.g. determining if one polynomial is a member of an explicitly given ideal. In Section 2.2 we introduce the Hilbert Nullstellensatz and use it to conHect Grbner bases ta sorne elementary questions in alge braie geometry. In the next section we give a method for eliminating variables in systems of polynomial equations and use it, for example, ta compute generators for the intersection of ideals. In Section 2.4 we study homomorphisms between polynomial rings. In particular we determine generators for the kernel of such a homomorphism and we give a method to determine whether it is onto. We then generalize these results to the case of polynomial rings modulo an ideal (affine algebras). In the next section we give more applications to algebraic geometry, e.g. we show how to find the ideal corresponding ta the projection of a variety, and ta a parametrically given variety. The last three sections present applications of Grbner bases to problems in computational mathematics: deterrnining minimal polynomials of elements in field extensions, determining whether graphs can be colored by three colors, and finding solutions to integer programming problems. 2.1. Elementary Applications of Grobner Bases. Let I = (h, ,l,) be an ideal of k[x!, ... ,xn]. In this section we want to show how to perform effectively! the following tasks: (i) Given 1 E k[x!, ... ,Xn], determine whether 1 is in l (this is the ideal membership problem), and if so, find V!, ... ,vs E k[x!, ... ,Xn] such that 1 = vd! + ... + vsI,; (ii) Determine whether two ideals I, J of k[x!, ... ,xn ] are equal; (iii) Find cos~t representatives for every element of k[x!, . .. ,xnl/1; (iv) Find a basis of the kvector space k[x!, ... ,xn]/ I;
1We Temind the readeT that by "perform effectively" or by "determine" we mean that one can give an algorithm than can he programmed on a computer.
53
54
(v) Determine the operations in k[XI, . .. , xn]/I; (vi) Find inverses in k[XI' ... , x n ]/ l when they exist. We begin with Task (i). Let F = {h, ... , J,} and let G = {g" ... ,gt} be a Grobner basis for l = (h, ... , J,) with respect to a fixed term ordering. We have already seen in Theorem 1.9.1 that
J El<==? J >+ O.
80 the ideal membership question is answered. Moreover, applying the Division Algorithm to J E l yields Ul , . . . , Ut such that
(2.1.1)
J=
U,g,
+ ... + Utgt
AIso, Buchberger's Algorithm can be implemented so as to keep track of the !inear combinations of the Ji'S that give rise to the gj 's. This can be seen as follows: during Buchberger's Algorithm (Algorithm 1.7.1) for the computation of a Grobner basis, a new polynomial 9 is added to the basis if it is the nonzero remainder ofthe division of an Spolynomial by the current basis, say {h",,, , h,}. Thatis,
9 = S(hv, h~) 
, L Wihi,
i=l
for sorne v, '" E {1, 2, ... , f} and sorne polynomials Wi which are exp!icitly computed in the Division Algorithm. This procedure is illustrated in Exarnple 2.1.1 below. So we can obtain as an output of Buchberger's Algorithm not only the Gr6bner basis {g" ... , g,} but also a t x s matrix M with polynomial entries such that
(2.1.2)
Thus Equation (2.1.1) can be transformed to give the polynomial combination of the original polynomials h, ... , J,:
J as
a !inear
55
Second pass through the WHILE loop := {{h, fa}} S(f" fa) = yj, + x 2fa = x 3 y + x 4 ~x4_y2+2xy_x2
y2
+ xy
~ x 4 +xy2x 2
(reduced with respect to G) Let 14 := x 4 + xy  2x2 Note that 14 = (yj, + x 2fa)  xj,  fa = (x 2y  x)j, + (_x 3 + x)h := {{h, h}, {f" 14}, {h, M, {h 14}}
:=
{{f"
M, {h, M, {h M}
S(h,fa)
+ (_x 2 + 1)12
{{f" M, {f2, M, {h M, {fd5}, {h, 15}, {h 15}, {f4, fs}} G:= {f,,!2, h 14, 15}
:=
The reader can verify that ail the remaining Spolynomials reduce to zero, and hence G = {f" 12, fa, 14, 15} is a Grbner basis for J. It is also easy to see that {f"h/s} is a Grbner basis for J, sinee It(h) is divisible by It(fa) and !t(f4) is divisible by It(f5)' In fact {f" h Id is the reduced Grbner basis for J with respect to the deglex term ordering with x < y. Moreover, in the above computation we kept track of the !inear combinations of j, and 12 giving rise to fa and 15 and this gives us the following:
(2.l.3)
56
We show2 that
1 E 1:
:;c2,fl
>
_2x2,15
2x 5 + 2x2y2 _ 2x3y _ 2x4 _ 2 y 3 + 4 xy 2  2x2y + x 3  y + 2x 2x2y2 _ 2x 3 y _ 2x 4  2y 3 + 4 xy 2  3x 3  y + 2x 2x 3y  2x 4  2y 3 + 4 xy 2  3x3 + 2y2  2xy  y _2x 4 _ 2y 3 + 4 xy 2  3x 3 + 4y2  6xy  y + 2x _2 y 3 +4xy2 3x 3 +4y2 4xy4x 2 y+2x 2xy2  2x2y  3x 3 + 4y2  4xy  4x2  y + 2x _x3 + 4y2  4xy  4x 2  y + 2x 4y2 _ 4xy  4x 2
>
2y,h
> >
+ 2x
2y,fs
2X,f5 >
~
2X'/3
>
1,]5
>
4,13
>
O.
So we see that 1 x 2J,  2x 2/5 + 2yJ,  2yl5  2xl5 + 2yh  2xh  15  413 (x 2 + 2y)J, + (2y  2x  4)13 + (2x 2  2y  2x  1)fs.
(x 2 + 2y)J, + (2y  2x  4)(yJ,  xh) +(_2x 2  2y  2x 1)((xy 1)J, + (_x 2 + 1)12) (_2x 3y  2xy2  2x2y + 2y2  3xy + 3x 2 + 2x + 1)J, +(2x4 + 2x2y + 2x 3  2xy + x 2  2y + 2x  1)/2.
EXAMPLE 2.1.2. We give another illustration ofthis for k = 1':5' We go back to Example 1.8.9. R.ecall that the reduced Grbner basis for l = (f" 12) c:: Z5[X, y], where J, = x 2 + y2 + 1 and 12 = x 2 y + 2xy + x, with respect to the lex ordering with x > y, is {g"g2,g3}, where g, = Il> g2 = 213 = xy + 3x + 2y 3 + 2y, and g3 = 4/4 = y5 + 2y 4 + 4y2 + 4y + 2. It is easy to keep track of how g2 and g3 are generated during the algorithm, and we get g2 g3
+ 312 4(y + 3)g, + 2(3x + 4y2 + 3y)g2 (2xy + y3 + 2y2 + 4y + 2)J, + (3x + 4y2 + 3y)/2,
2yJ,
2It is convenient, when we are trying to keep track of the linear cornbinations in the reduction process, to include in the notation the terrn by which we multiply the polynomial we are using for reduction. That is, if J, g, h E k[Xl) . .. , XnJ, and X is a term, then f ~ h means that h = f  Xg.
57
g,] = [ ~ g3
[1
The second task, determining whether two ideals 1, J are equal, is a consequence of Theorem 1.8.7. That is, I = J if and only if I and J have the same reduced Gr6bner basis. In particular, we note that for a given ideal I, we have that I = k[x" ... ,xnl if and only if the reduced Gr6bner basis for I is {1}. Altematively, I = (f" ... , J,) J if and only if ft, ... , J, E J, and we know how ta determine whether this is tIue; 80, to determine if l = J, we may simply check whether I J and J I. We now consider Task (iii)) that is, finding caset representatives for every element of k[x" ... ,xnl/I. We keep the notation from the beginning of the section: I = (G), where G = {g" ... , g,} is a Gr6bner basis for I. We know that for all J E k[x" ... , xnJ there exists a unique element r E k[x" ... , X n ], reduced
with respect to G, such that
J S+
r (Theorem 1.6.7).
DEFINITION 2.1.3. The clement r above is called the normal form oJ J with respect ta G, and is denoted Ne(f). PROPOSITION 2.1.4. Let J, 9 E k[x" ... , xnl. Then
== 9
ThereJore {Ne(f) 1 J E k[x" ... ,xn ]} is a set oJ coset representatives Jor k[x" ... ,xnl/I. Moreover, the map Ne: k[x" ... ,xnl ; k[x" ... ,xnJ is klinear.
PROOF. From the Division Algorithm, there exists q E I such that J = q + Ne(f), so that J  Ne(f) E I. Thus J + I = Ne(f) + I in k[x" ... ,xnJ/I. Allio, for any C"C2 E k, and for any ft,h E k[x" ... ,xnl, cd, + c2h(c,Ne(ft) + c2Nc(h)) E I and c,Ne(ft) + c2Ne(h) is reduced with respect to G. Therefore Nc(cd, + c2h) = c,Ne(ft) + c2Ne(h) (see Exercise 1.6.15) and so the map Ne: k[x" ... , xnl ; k[x" ... , xnl is klinear. Now J == 9 (mod I) if and only if there exists q E I such that J = q + g. Thus Ne(f) = Ne(q) + Ne(g). But Ne(q) = 0, since q E I, so Ne(f) = Ne(g). Conversely, if Ne(f) = Ne(g), then J  9 = (f  Ne(f))  (g  Nc(g)) E I and hence J == 9 (mod I). 0 EXAMPLE 2.1.5. We go back to Example 2.1.1. We note that
x 3 ~ y+2x.
Since y + 2x is reduced, we have Ne(x 3 ) = y + 2x. Also,
x Y + Y ; 2y  x.
j,
58
Sinee 2yx is reduced, we have Ne(x'y+y) = 2yx. Moreover, since Ne (x 3) # Nc(x'y + y), we see that x 3 ot x'y + y (mod I). The next task we want to consider is Task (iv), that is, we wish to find a basis of the kvector space k[x" ... ,xn!/I. We keep the same notation as above. PROPOSITION 2.1.6. A basis for the kvector space k[x" .. . ,xnl/ I consists of the cosets of aU the power products X E 1rn such that Ip(9i) does not divide X for aU i = 1, 2, ... , t. PROOF. We have seen that for any f E k[x" ... , Xn], f + I = Ne(J) + I in k[x" ... , x n!/ I. Since Nc(J) is reduced with respect to G, it is, by the definition of reduced, a klinear combination of power products X E 1r n such that lp(gi) does not divide X for all i = 1,2, . .. , t. Finally, the cosets of such power products are linearly independent by the uniqueness of the normal form. 0 EXAMPLE 2.1.7. Again, we go back to Example 2.1.1. A Grbner basis for I with respect to deglex with x < y is G = {x'y  y + X, _y' + xy + x 2 , x 3 + Y  2x}. So a basis for lQJ[x,yl/I consists of the CQsets of I,x,y,x',xy and so diIllQ(IQJ[x, yl/ I) = 5. We are now able to complete Task (v), that is we can now give a multiplication table for k[x" ... , xnl/ I. The representative of the coset of f times the coset of 9 will be the normal form of f 9 EXAMPLE 2.1.8. We go back to Example 2.1. 7 and give a multiplication table for IQJ [x, y! / I. The representative of the coset y + I times the coset xy + I is the normal form of xy2. Since xy2 ~+ x, and x is reduced with respect to C, we have Nc(xy') = x and so (y + I)(xy + I) = x + I. The other products are computed in a similar fashion and we obtain the following multiplication table for the representatives 1,x,y,x 2,xy of the Qbasis {l+I,x+I,y+I,x'+I,xy+I} for lQJ[x, yl/ I.
x 1 x y x' xy
1 1
X
y x' xy
x x x2 xy y+2x yx
Y Y
xy xy+x' yx x
xy xy yx x xy  x' x2
So, for example, (2x' +y)(3xy  5) = 6x 3y lOx 2 + 3xy:  5y 0= 6(xy  x 2 )_ lOx'+3x5y = 6xy16x 2 5y+3x (mod I) andso (2x'+y+I)(3xy5+I) = 6xy  16x 2  5y + 3x + I. EXAMPLE 2.1.9. We go back to Example 1.8.9. Recall that the reduced Grbner basis for I = (fI,j,) c:: Zs[x,y], where fI = x' + y' + 1, and j, = x 2y + 2xy + x, with respect to the lex ordering with x > y, is {g,,92, 93}, where 9' = fI, 9' = xy + 3x +2y 3 +2y, and 93 = yS +2y4 +4y2 +4y+ 2. So a basis for Zs[x, yl/ I consists of the cosets of l, x, y, y', y3, y4, and 50 dimz, (Zs[x, yl/ I) = 6.
59
Ta conclude this section, we consider Task (vi), that is, we want ta determine whether an element J + I of k[XI, ... ,xnJ/ I has an inverse and, in the case when f + l has an inverse, we want ta compute that inverse. Of course, given a kbasis and the multiplication table, this problem translates into an exercise in linear algebra provided the kbasis is finite (see Theorem 2.2.7). We illustrate this in the fol!owing example. EXAMPLE 2.1.10. Using Example 2.1.1 again, we would !ike to determine whether y + x + 1 + l is invertible, and, if so, determine its inverse. So we need to find a, b, c, d, e E Q sueh that
(axy + bx'
Now,
+ cy + dx + e)(y + x + 1) '" 1
(mod I).
(axy + bx'
+ cy + dx + e)(y + x + 1)
+ bx 2 + cy' + cxy 2 +cy + dxy + dx + dx + ey + ex + e ax + a(y  x) + axy + b(y  x) + b( y + 2x) + bx' +c(xy + x') + cxy + cy + dxy + dx' + dx + ey + ex + e (mod I) (a + 2c + d)xy + (b + c + d)x' + (a + c + e)y + (b + d + e)x + e. 80 (axy + bx' + cy + dx + e)(y + x + 1) '" 1 (mod I) if and oruy if
a+
a
+2c+d + c + d + c b + d b
+ +
e e e
o o o o
1,
sinee the cosets of 1, x, y, x', xy form a basis of the Qveetor space Q[x, yJ/ I. These equations are easily solved to yield a = 2,b = l,e = 1,d = 0, and e = 1. Hence (2xy  x' + y + 1) + I is an inverse of y +x + 1 +I in Q[x, yJ/I. Of course if we had started with an element of Q[x, yJ/ I that did not have an inverse, these equations would have had no solution. An alternative approach to the method used in Example 2.1.10, which does not suffer from the defect that k[XI'" . ,xnJ/I must have a finite kbasis, is to recognize that J + I has an inverse in k[XI"" ,xn ]/ I if and only if the ideal (I, f) is, in fact, al! of k[XI'''' ,xn ], since Jg  1 E I if and only if 1 E (I, f). Thus, given an ideaJ I = (J" ... ,J,) and a polynomial J E k[XI, ... ,xn ], to determine if J + I has an inverse in k[XI" .. , xnJ/ I and to compute that inverse, we first find a reduced Grbner basis H for the ideal (J" ... ,J,'!). If H oJ {1}, then J+I does not have an inverse in k[XI"" ,xnJ/I. If H = {1}, then, as in the solution to Task (i), we ean express 1 as a !inear combination of h, ,J" J,
1=
60
The polynomial 9 is then the inverse of 1 modulo J. EXAMPLE 2.1.11. We go back to Example 2.1.10, We fust compute a Grbner basis for the ideal (f" 13, 15, y+x+ 1) with respect to the deglex order with x < y, keeping track of the multipliers as we did in Example 2,1.1. Letting 16 = y+x+ 1 we compute that S(f,,f6) >+ x 2 x = 17, S(h, 16) >+ 2xl = fs. The Spolynomials S(f5, 16), S(f" 17), S(f5' 17), S(f6, 17), S(f" 18), and S(h, 18) ail At this point we stop, sinee all other reduee to zero, Finally, S(f5' 18) >+ Spolynomials must reduce to zero using the polynomial Working backwards we compute
1,
1.
4fs  4/6  217 + (2x 2  5)/8 (2cC + 3)f, + (2x 2  5)13 + (2x 2 + 7)/5 +(2x 4 + 2x2y  4x 3  5x 2  5y + lOx + I)Js,
giving us the inverse (2x 4 + 2x2y  4x 3  5x 2  5y + lOx + 1) + 1. Using the multiplication table of Example 2,1.8 we readily see that this is the same answer we obtained in Example 2,1.10,
Exercises 2,1.1. You should do this exercise without the aid of a Computer Algebra System, Let 1 = xy4 + 2x 3y 2  xy2 + 2x2y  x 3  y, In Example 2,1.1 show that 1 E J and write 1 as a linear combination of fI, 13, 15 and also as a linear combination of f" h, 2,1.2, Compute the multiplication table for Example 2,1.9, 2,1.3, Consider Example 2,1.8, Let 1 = 1 +x2 +xy, Show that for ail 9 E k[x, y] such that g(O) = we have Ig E l, [Hint: Note that it suffices to show that xl, yi El,] 2,1.4, Show that diffiQ(Q[x, y, z]/ (y4 + 3y2 Z + z2, x 2 + Z, xy + y2 + z)) = 00, 2,1.5, In Q[x, y, z], let I = (x 2 + Z, xy + y2 + Z, xz  y3  2yz, y4 + 3y2 Z + z2) and J = (x 2 + z, xy + y2 + Z, x 3  yz), Determine which of the following (if any) are true: le J, Je l, or I = J, 2,1.6, In Example 2,1.9 determine which of the cosets, y2 + J, x+I, 2+X+y2 +I has an inverse. For those that do have an inverse find it. 1 M ,;;;C' [Hint: Consider the ideal 2,1.7, Rationalize the denominator of x+v 3 +?25 I = (yr  3, y~  5) Q(x )[Yl' Y2]' Note that {yr  3, y~  5} is a Grbner basis for l, Follow the technique used in Example 2,1.10, keeping in mind that the field is Q(x),] 2,1.8, Show that in Q[x,y]/I, where I = (X 2 +y,y 2 +x), the coset xy+y+a+I, for a E Q, has an inverse if and only if a of 0, 2,1.9, Let I k[Xl"" ,xn ] be an ideal. a. Devise a method similar to that used in the first solution of Task (vi) for determining whether for 1 E k[Xl' ' , , ,xn ], 1 + J is a zero divisor in
61
kIXI, ... ,Xnl/J. (Recall that in a commutative ring A, a E A is called a zero divis or provided that a oF 0 and there is a (J oF 0 in A such that a(J = O.) b. Show in Example 2.1.8 that xy + J is a zero divisor. c. Show in Example 2.1.8 that if J = {g + J E klxl, ... ,xnl/l (g + 1)(X2 + 1) = O}, then J is the set of all multiples of 1 + X2 + xy + l by elements of k. 2.1.10. In QIX, y, z], let 1= (x+y2,x 2y+z). Showthat l isaprime ideal (that is, Qlx,y,zl/I contains no zero divisors). IHint: Note that for lex and z > x > y, the generators for l form a Grbner basis.l
1
2.2. Hilbert Nullstellensatz. In Section 1.1, we saw that there was a correspondence between subsets of klxl, ... ,xnl and subsets of kn . The purpose of this section is ta analyze this correspondence further. We need to expand somewhat the notions given there. Let K be an extension field of k, that is, K is a field such that k K Given a subset S klxl, ... ,xnl, we define the variety, VK(S), in' Kn by
We emphasize that the variety is in Kn and the ideal is in klxl,.'. ,xnl. (It makes sense to evaluate f E k[xI, ... Xn] at a point (al)'" ,an) E K n sinee k K) Also, given a subset V Kn we define the ideal, J(V), in klxl, ... ,xnl by
l
+ +
S
{ Subsets of Kn} V
+
>>
The reason for introducing this extended notion of a variety is that the set of solutions of a system of equations depends on the field K That is, the field K will affect the properties of the maps above. This is illustrated in the following two examples. EXAMPLE 2.2.1. For K = Rwe have V,,(x 2 +y2) = V,,(x,y) = {(O,O)} JR2 On the other hand for K = <C we have that Vc( X2 + y2) is the union of the two lines y = ix, where i = while Vc(x, y) is still {(O,O)}.
n,
62
EXAMPLE 2.2.2. Consider the polynomial f = x 2 + y2 + 1. Then for K = IR we see that Vil< (f) = 0, whereas Vc (f) has an infinite number of points. The situation is sirnilar for f = x 4 + y4 + 1. In fact there are infinitely many ideals of IR[x, y] whose corresponding variety in IR2 is empty. Examples 2.2.1 and 2.2.2 show that a system of equations may have "too few" solutions in kn to give us insight into the algebraic and geometric properties of land VK(I). In Example 2.2.1, the ideals (x 2 + y2) and (x, y) give rise to the same variety over lR, but are "essentially different". The same situation occurs in Example 2.2.2. By enlarging the field IR to <C, "essentially different" ideals will give rise to different varieties. This will be clarified later and the key result for this is the Hilbert Nullstellensatz 3 given below. In order to state the N nllstellensatz, we consider the algebraic dosure of the field k, denoted k. Recall that a field K is algebraicaUy closed if for every polynomial f E K[x] in one variable, the equation f = 0 has a solution in K. Every field k is contained in a field k which is algebraically closed and such that every element of li is the root of a nonzero polynomial in one variable with coefficients in k. This field is unique up to isomorphism and is called the algebraic closure of k (see [Hun, Lan]). For example, the algebraic closure of 1ft is <C. For the remainder ofthis section we will consider the correspondences (2.2.1) and (2.2.2) with K = k. The Hilbert Nullstellensatz has many forms and we will present two of them below in Theorems 2.2.3 and 2.2.5. We will not include the proofs of these theorems. The interested reader can find thern in [AtMD, Hun]. THEOREM 2.2.3 (WEAK HILBERT NULLSTELLENSATZ). Let I be an ideal containedink[x" ... ,xn ]. Then V..(I) =0 if and only if I= k[x" ... ,xn]. Note that the result is clear for one variable sinee the field li is algebraically closed. Before we go to the next forrn of the Nullstellensatz, we need a definition. DEFINITION 2.2.4. For an ideal I of k[x" ... , x n ] we define the radical of l, denoted .Ji, by
.Ji = {f
It is easily checked that .Ji is an ideal in k[x" ... , x n ]. Moreover, we have that I and .Ji give rise to the same variety; that is, for ail fields K ::2 k,
VK(I)
VK(.Ji).
THEOREM 2.2.5 (STRONG HILBERT NULLSTELLENSATZ). I(V ..(I)) = .Ji for aU ideals I of k[x" ... ,xn ].
3The ward "Nullstellensatz" is a German word for "zero point theorem". The theorem is given this name because, as we see in Theorem 2.2.3, it gives information about the zero set, i.e. the variety, of an ideal.
63
Theorem 2.2.5 implies that two ideals J and J correspond to the same variety, i.e. Vk(I) = V:;;:(J), if and only if their radicals are equal, i.e. ..fi = ..(J. This allows us to make more precise what we meant earlier by "essentially different" ideals. Two ideals are "essentially different" if and only if they have different radicals. In Example 2.2.1, note that ..((X:Y) = (x, y) and (X2 + y2) = (x2 +
y2) and
80
te 2.
We now consider some applications of the above results. Let J = (f"", , f,) be an ideal of k[XI,'" ,xn], and let G = {g" ... ,g,} be the reduced Grbner basis for l with respect to a term ordering. THEOREM 2.2.6. V:;;:(I) = 0 if and only if 1 E G. (i.e., given polynomials ft, ... , f" then there are no solutions to the system ft = 0,12 = 0, ... , f, = 0 in lin if and only ifG = {l}.) PROOF. By Theorem 2.2.3, V:;;:(I) = 0 if and only if 1 E J. But the last condition is equivalent to G = {l}, since G is the reduced Grbner basis. 0 THEOREM 2.2.7. The following statements are equivalent. (i) The variety V:;;:(I) is finite. (ii) For each i = l, ... , n, there exists j E {l, ... , t} such that Ip(gj) for some vEN. (iii) The dimension of the kvector space k[xJ, ... , xnl/J is finite.
xi
PROOF. (i) =? (ii). Let V:;;:(J) be finite. If V:;;:(I) is empty, then, by Theorem 2.2.3, J = k[xJ, ... , x n ] and hence G = {1} and (ii) is trivially satisfied. So we may assume that V:;;:(I) is not empty. Fix i E {l, ... ,n}. Let aij,j = l, ... ,f be the distinct ith coordinates of the points in V:;;:(I). For each j, 1 ::; j ::; R, let 0"" 1; E k[x;] be such that 1;(aij) = 0 (this can be done by the definition of Ii). Let f = fthf, E k[Xi] k[xJ, ... ,xn ]. Then we see that f E J(V:;;:(J)), and hence, by Theorem 2.2.5, there exists e such that E J. Since Ip(fe) = for
x;=
sorne natural number m, and sinee the leading power product of every element
alone. This is
(ii) =?(iii). We saw in Section 2.1 that a kbasis of k[xJ, ... , xnl/ J is the
set of cosets of power products reduced with respect ta G. Since for every i E {1, ... ,n} a power of Xi is a leading power product of sorne 9j' there are only
fiilitely many power products which are reduced with respect to G, and hence dimk k[xJ, ... , xnl/ J is finite. (iii)=?(i). We will show that for any i = l, ... , n, there are only finitely many distinct values for the ith coordinate of points in Vk(I). Fix i E {l, ... , n}. Since, byassumption, k[Xl'" . ,xnl/ lis a finite dimensional kvector spac, the powers 1, Xi, of Xi are linearly dependent modulo J. Therefore there is an integer
xr, ...
64
m and constants
:Lcjxi E J.
j=O
Since the above polynomial can only have finitely many roots in k, there are only finitely many values for the ith coordinates of the points of V.(I). D An ideal loi k[x" ... ,xnl that satisfies any one of the equivalent conditions in Theorem 2.2.7 is called zerodimensional. This terminology is adopted because V.( I) consists of only finitely many points. EXAMPLE 2.2.8. In Example 2.1.1 we saw that a Grbner basis for the ideal l = (x 2 y  y + X, xy2  x) in <Qi[x, yi with respect to the deglex terrn ordering with x < y is G = {x2y  y + x, _y2 + xy + x 2,X 3 + y  2x}. We see that x 3 and y2 appear as a leading power product of elements of G, and hence V.(I) is finite. In fact it is easy to solve the equations to get Vij"(I) = {(O, 0), (a, 1), (a, 1), (a', 1), (a', 1)}, where a and a' are the roots of the equatjon z2  Z  1 = O. We note that a Grbner basis for l with respect to the lex term ordering with x < y is G' = {x5  3x 3 + x, y + x 3  2x}, and again we have that sorne power of x and sorne power of y appear as leading power products of elements of G'. These equations may easily be solved to yield the same answer as above. EXAMPLE 2.2.9. We go back to Example 2.1.9. Recal! that the reduced Grbner basis for l = (f"h) Z5[X, y], where j, = x 2 + y2 + 1 and 12 = x 2y + 2xy + x, with respect to the lex ordering with x > y, is {9"g2, 93}, where 9' = j" 92 = xy + 3x + 2y 3 + 2y, and 93 = y5 + 2y 4 + 4y2 + 4y + 2. We see that x 2 and y5 appear as leading power products and hence Vz, (I) is finite. We note that not aU of the solutions are in Z5; sorne are in the algebraic closure 25 of Z5. EXAMPLE 2.2.10. As a third example we again let k = Ql and consider the intersection of the circle j, = (x  1)2 + y2  1 = 0 and the ellipse 12 = 4(x 1)2 + y2 + xy  2 = O. Using the lex term ordering with x > y we see that the Grbner basis for the ideal (f" 12) is {9"g2}, where g, = 5y4 _3 y 3 6y2+2y+2 and 92 = X  5y 3 + 3y2 + 3y  2. Since Ip(9') = y4 and Ip(92) = x, we see that Theorem 2.2.7 implies that the number of points in the intersection is finite. Also, clearly 9' = 0 has at most four solutions and for each solution of g, = 0 we get precisely one solution of 92 = O. Thus we see in this case the geometrically obvious fact that the intersection of a circle and an ellipse can consist of at most four points. We note that in the last example the form of the Grbner basis was particularly convenient for determining the points in the variety. That is, the first polynomial contained only the y variable, and the leading power product of the second polynomial was a power of x. We will nQW show that, in the case of zerodimensional ideals, this type of structure in the Gr6bner basis is always present when the lex term ordering is used.
65
COROLLARY 2.2.11. Let l be a zerodimensional ideal and G be the reduced Grobner basis for l with respect ta the lex term arder with Xl < X2 < ... < xn Then we can arder 91, ... ,gt such that 91 contains only the variable Xl, 92 contains only the variables Xl and X2 and Ip(g2) is a power of X2, g3 eontains only the variables X" X2 and X3 and Ip(g3) is a power of X3, and sa forth until gnPROOF. This follows immediately from Part (ii) in Theorem 2.2.7. That is, we may reorder the gj sueh that lp(gj) is a power of Xj. It then follows, because of the lex ordering, that the only variables that may appear in gj are Xl,X2, ,Xj. 0
We see that the Grobner basis for a zerodimensional ideal l is in "triangular" form (this is similar ta the row echelon form in the linear case). Thus, in order ta solve the system of equations determined by a zerodimensional ideal l, it suffices ta have an algorithm ta find the roots of polynomials in one variable. That is, we first solve the equation in one variable 91 = O. For each solution a of g, = 0, we solve the equation g2(0<, X2) = o. We continue in this manner all the way until gn = O. The solutions obtained in this way are the only possible solutions. We still have to test them in the equations 9n+l = 0, ... ,9t = 0 (in the case when t > il) in arder ta obtain the set of solutions of the full system of equations. The techniques for finding the roots of polynomials in one vaxiable are not part of the theory of Grbner bases. The interested reader should consult [Cohl. These ideas will be illustrated in the following example. EXAMPLE 2.2.12. Consider the ideal l = (Z2Y+Z2, x 3y+x+y+ 1, z+X 2 +y3) in lQi[x, y, z].We comput the reduced Grbner basis G for l with respect ta the lex ordering with X > Y > z. We get G = {z4  z3, y" + 3y 8 Z  2y 7 4y4z +y3 + y2 + 2y+ z3 _ z2 + z + 1,x 2 +y3 + z,yz2 +z2,xy +x +y7 + 2y4z _ y3 _ Z2 _ z,XZ+y'O _ y9 +y8 + 3y 7z _ y7 _ 2y 6z _ y6 +2 y 5z +y5_ 2y4z  y4 _ 2y 3z +y3 + y2z _ yz +y  z3 + 5z2 + z + 1}. Sa using the notation
of Corollary 2.2.11, we have g, = Z4  z3 is a polynomial in z alone. Also, g2 = y" +3 y 8 z  2y7 _4y4z + y 3 +y2 +2y+z3 _Z2 +z+ 1 is a polynomial in y and z alone whose leading power p~oduct is Ip(g2) = yll Finally g3 = x 2+y3+ z is a polynomial in x, y, z whose leading power product is Ip(g3) = X2. SO ta find the solutions of the original set of equations, we first note that z = 0 or z = l. Then in order to find the correspondng y values, we would have ta solve the llth degree equations g2(y, 0) = 0 and g2(y, 1) = o. We continue this way as described above.
4For the remainder ofthis chapter and following chapters, Grobner basis computations will, most often, not be done explicitly in the text and will often require the use of a Computer Algebra System. The reader who wants to verify the computations stated in the text should avail themselves of such a system. The authors usually used CoCoA, but other systems could have been used for sorne of the computations. This is discussed in the Appendix.
66
We have seen in Theorem 2.2.5 the importance of computing VI. For zerodimensional ideals we will show how to do this in Exercises 2.3.23 and 2.3.24. But this is a difficult task, in general, which is beyond the scope of this book. The interested reader should consult [EHV, GTZ]. However we can now give an easy criterion for membership in 0.
THEOREM 2.2.13. Let J = (J" ... , f,) be an ideal in k[x" .. . , x n ]. Then f E
PROOF. By Theorem 2.2.5, VI = J(V.(I)), and hence f E VI if and only if f(a" ... ,an) = 0 for aU (a" ... ,an) E V.(I). Let f E VI. If (a" ... ,an,b) E V.( (J" ... ,f" 1  w f) ), then
,8
But then (a" ... , an) E V.(I), and hence f(a" ... , an) = 0, which is a contradiction. Therefore V.( (J" ... , f" 1  w f)) = 0, and by Theorem 2.2.3, we have 1 E (J" ... ,f"lwf). Conversely, let 1 E (J" ... ,f"lwf). Then 1=
for sorne hi,h E k[x" ... ,xn,w]. Then for every (a" ... ,an) E V.(I), we have
VI.
Sa the radical membership question can be answered by deciding whether 1 is in an ideal. Thus, as we showed in Section 2.1, to decide whether f is in VI, we first compute a reduced Grbner basis G for the ideal (fI, ... , f" 1 wf). If 1 E G, then f E VI, otherwise, f 'le VI. EXAMPLE 2.2.14. Let J = (xy2 + 2y2, x 4  2X2 + 1) be an ideal of lQI[x, y]. We would like ta determine whether f = y  x 2 + 1 is in VI. SO let us consider the ideal (xy2 +2y2,x 4 _2X2 + 1, 1w(yx2 +1)) in the ring lQI[x, y,w]. A Grbner basis for this ideal with respect to the deglex term ordering with x < y < w can be computed to be {1}, sa that f is indeed in VI. Since f E VI, we know that E J for sorne e, and we may want to determine the smallest such e. To do this we first compute a Grbner basis for J. For example, with respect to the deglex term ordering with x < y, wc have G = {y2,x 4  2x2 + 1}. We use this Grbner basis to compute the normal form of J' for i = 1,2, ... until the first time that normal form is zero. For example, we can compute that Nc(J) = f # 0, Nc(F) = 2yx 2 + 2y # 0, but NC(J3) = 0, so that f3 E J.
67
Theorem 2.2.13 gives a method for determining whether two ideals I and J have the same radical and therefore correspond ta the same variety in li n. Let I = (h, ... , J,) and J = (91, ... ,9') Using Theorem 2.2.13 we can decide whether each Ji is in ,fj. If so, then I ,fj and hence .,fi ,fj. The reverse inclusion is checked similarly. EXAMPLE 2.2.15. LetI = (x2z2+x3,xz4+2x2Z2+x3,y2z_2yz2+z3,x 2y+y3) and J = (XZ 2 +X 2 , yz2 _Z3, x 2 y  x 2 z, y4 _x 3 , X 4 Z_X 3 Z, z6+ x 4, X 5 _X 4 ) be ideals in Q[x, y, zr. The reader can easily verify by the method above that .,fi = ,fj. Exercises 2.2.1. Consider the system of equations over <C
X'Q 
x 'Q {
X'2 _
18y 18z

18x 2
O.
2.2.2.
2.2.3.
2.2.4.
2.2."5. 2.2.6.
2.2.7.
Obtain an explicit solution involving ( and (2 where 1, (, and (2 are the three cube roots of unity. [Hint: Use lex with x > y > z. There are 11 solutions.] Use Lagrange Multipliers to maximize the function J = x 2 + y2 + xy subject to the constraint x 2 + 2y 2 = 1. (At least find explicitly the 4 points where the maximum could accur.) Show (using a Computer Algebra System) that the function J(x, y, z) = (x 2 + y2)(X 2 + y2  l)z + z3 + X + Y has no real critical points (i.e. places where the three partial derivatives vanish simultaneously). In Q[x,y,z], let I = (X 4 y2 + Z2  4xy3z  2y5 z ,x2 + 2xy2 + y4). Let J = yz  x 3 First show that J E .,fi. Then find the least power of f which lies in I. Verify the assertions made in Exarnple 2.2.15. Show that the following are equivalent for an ideal I k[Xl, . .. , Xn]. a. l is zerodimensional. b. For ail i, 1 ::; i ::; n, there is a polynomial f E I such that J contains only the variable Xi' Let I be a zerodimensional ideal of k[Xl' ... ,Xn]. Corollary 2.2.11 gives one way ta compute the monie generator of 1 n k[Xi]' In this exercise we present a more efficient way ta compute this polynomial, for i = 1, ... 1 n. We will assume that we have a Grobner basis G for I with respect ta sorne term arder (any order will do). This method will not require any new Gr6bner basis computation, instead it will use simple techniques of linear algebra applied ta the vector space k[xj, ... , xnl/ I. a. Let m be least such that {l + I, Xi + I, . .. , Xi" + I} is a set of linearly dependent vectors in k[xj, ... , xnl/ I. Let L;;'~o av xi '" 0 (mod I). Prove that f = a~n (L;;'~o av xi) is the manie generator of I n k[x,j.
68
In view of this, we need a method for determining whether {1+ J, Xi + + I} is linearly dependent in k[XI, ... , xn ]/ J and: if so, for finding a linear combination 2:::=0 avxi in 1. Consider m + 1 new variables Yo, YI, , Y= and the polynomial 9 = "L,':~o YvNc(x'[) E k[Xl1'" 'X n1 Yo, ,Yrn]. We view 9 as a polynomial in k[Xl1'" ,xn ] with coefficients in k[yo, ... , y=] (which we note are alilinear), and we let J be the ideal in k[yo, ... , y=] generated by the coefficients of g. b. Prove that {l + J, Xi + J, ... , xi + J} is a linearly dependent subset of k[XI, ... , xnl/J if and only if Vk(J) "" {O}. c. Prove that if (ao, ... , a=) E V.(J), then f = "L,':~o av xi E J. d. Use the above to give an algorithm that inputs a Griibnerbasis G for J and outputs the monic generator of J n k[Xi]' e. Use the algorithm above to find Jnk[x] and Ink[y] in Examples 2.2.8, 2.2.9, and 2.2.lO. Verify your answers by computing the appropriate Griibner bases. 2.2.8. (Faugre, Gianni, Lazard, Mora [FGLM]) Let l be a zerodimensional ideal of k[XI, ... , x n ]. Let G I be a Griibner basis for l with respect to a term order <1> and let <2 be another term order. The technique presented in Exercise 2.2.7 can be used to compute a Grobner basis, G2 , for l with respect ta <2 using only linear algebra. a. LetXI , ... ,Xr bepowerproductsink[xl, ... ,xn]. Use the technique of Exercise 2.2.7 to give a method for determining whether {XI + 1, . .. , Xc + I} is linearly dependent or not. b. Assume that all the the power products in k[XI, .. ' , x n ] are ordered using <2 as follows
J, ... , xi
Modify a to give a method for deciding whether there exists a polynomial f in l whose leading term with respect to <2 is Xc. c. Use the above to find an algorithm that inputs a Grbner basis, G I , for l with respect to <1 and outputs a Griibner basis, G 2 , for l with respect to <2 . (Note that any power product X E k[XI,'" , x n ] is either reduced with respect to G 21 a leading power product of sorne polynomial in G2 , or a multiple of the leading power product of sorne polynomial in G 2 Moreover, eventually in the algorithm, every power product not yet examined will be a multiple of a leading power product already generated.) d. Why does the method of this exercise not work for ideals which are not zerodimensional? [Hint: Think about the stopping condition in
c.]
e. Use this algorithm to compute a Griibner basis for l in Example 2.2.8 with respect to degrevlex with x < y.
2.3. ELIMINATION
2.2.9. Let l be a zerodimensional ideal in k[Xl1'" ,xn ]. For i be the degree of the monie generator of 1 n k[Xi]. a. Prove that Vk(I) bas at IDost 1'11'2 .. l'n elements. b. Provethat dimk(k[xI, ... ,xnl/I)::; 1'11'2l'n.
69
2.3. Elimination. In the previous section we saw the advantage of computing Grbner bases with respect to the lex term order. In this section we present a far reaching generalization of this idea. Consider two sets of variables {Xl, ... ,xn } and {YI, ... ,Ym}. Assume that the power products in the X variables and the power products in the Y variables are ordered by term orders <Xl <y respectively. We define a term order < on the power products in the x, Y variables as follows. DEFINITION 2.3.l. For X" X 2 power productB in the power products in the y variables, we define
X
X,Y, < X 2 Y2
This term arder is called an elimination order with the the Y variables.
Elimination orders have the following fundamental property whose proof we leave to the exercises (Exercise 2.3.2). LEMMA 2.3.2. The elimination arder defined in Definition 2.3.1 is a term arder. Moreover, if Y is a power product in the y variables and Z is a power product in the X, y variables such that one of the Xi appears ta a positive power in Z, then Y < Z. EXAMPLE 2.3.3. If the orders <x and <y are lex term orderings, then the elimination order defined in Definition 2.3.1 is the lex term ordering on all the variables with the Y variables smaller than the X variables (Exercise 2.3.3). The elimination order is "like" a lexicographie term ordering between the x and y variables. The advantage of this order is that when one is interested in properties that the lexicographie term ordering between the two sets of variables is advantageous for, the order within the two sets is unimportant. It is a fact that computations using the lexicographie term ordering are slow (see, for example, [Bu83, GMNRT]) and it is better to have as "little lexicographie ordering as possible". There is a great advantage to the elimination order as the following result shows. THEOREM 2.3.4. Let 1 be a nonzero ideal of k[YI, ... ,Ym, X" ... ,xn ], and let < be an elimination arder with the x variables larger than the Y variables. Let G = {g" ... ,g,} be a Grobner basis for this ideal. Then G n k[YI, ... ,Ym] is a Grobner basis for the ideal 1 n k[YI, ... ,Ym].
70
The ideal In k[Yl, ... , Ym] is called an elimination ideal, since the x variables have been "eliminated". Clearly G n k[Yl"" ,Ym] is contained in In k[Yl, ... ,Ym]. Now let j(Yl,'" ,Ym) E Ink[Yl, ... ,Ym]. Since G is a Grbner basis for I, there exists i such that lp(gi) divides lp(f). Moreover, since j has only y variables, we see that lp(gi) involves only the y variables and so, frOID Lemma 2.3.2, every term in 9i involves only y variables, i.e. Yi E G n k[Yl' ... ,Ym]' Thus, for every jE Ink[Yl, ... ,Ym],thereexistsgi E Gnk[Yl,'" ,Ym] such thatlp(gi) divides lp(f), and hence G n k[Yl, ... , Ym] is a Grbner basis for I n k[Yl' ... , Ym]' D
PROOF.
0#
As a first application of Theorem 2.3.4 we now present a method for finding generators for the intersection of two ideals.
PROPOSITION 2.3.5. Let I, J be ideals in k[Xl' ... , xn], and let w be a new variable. Consider the ideal (wI, (1  w)J) in k[Xl"" , Xn' W]. Then
n k[Xl'''' , Xn].
REMARK: If I = (fI,'" ,j,), and J = (f;, ... ,j;), then a set ofgenerators for the ideal (wI, (1 w)J) is {wh, ... , wj" (1 w)jL ... ,(1 w)j;}.
PROOF.
Let j E I n J. Since
j = wj + (1 w)j,
we have jE (wI, (lw)J)nk[Xl, ... ,xn ]. Conversely, suppose that j E (wI, (1w)J) nk[Xl,'" , Xn]. Then, sinee j E (wI, (1 w)J) k[Xl, ... , Xn, w], we have
f(xl, ... ,xn ) =
L wfi(xl, .. . ,x
i=l
p
)hi (Xl
Xn,
w)
+ ~)lW)j;(Xl,'"
j=1
,xn)hj(xl,'" ,Xn,W).
Since w does not appear in j(Xl, ... , Xn), we can let w = 1 and get j E I, and thenletw=OandgetjEJ. D
As a consequence of the above result we obtain a method for computing generators for the ideal In J. First we compute a Grbner basis G for the ideal (wI, (1 w)J) k[Xl"" ,xn,w[ using an elimination order with Xl,'" ,X n smaller than w. We then obtain a Grbner basis for In J by computing G n k[Xl l ,X n ], which s done simply by inspection. A similar technique can be used to compute the intersection of more than two ideals (see Exercise 2.3.8).
71
QI[x, y]:
1= (x 2 + y3  l, x  yx
+ 3)
and J = (x 2y  1).
QI[x, y, w]
using the deglex term ordering on the variables x and y with x > y and an elimination order with w greater than x, y. We get
G = {x3 y 2 _ x 3y _ 3x 2y _ xy + x
12853w + 118x4y
+ 3, x 2y4 + x 4y _
x2y _ y3  x2
+ l, + 357x
+ 9X2 y3 
357x 3y  972x2y2
+ 2152x2y 
118x2
9y2
+972y  2152, x 5 y
+ 3x 2y3 + 3x 2y2 
x 3 + 3x 2y  3y2  3y  3}.
nJ
is
x5y
+ 3x 2y3 + 3x 2y2 _
Fix a term order on k[Xl, ... ,xn]. For J,g E k[Xl,'" ,Xn], both nonzero, we define the greatest common divisor of J and g, denoted gcd(f,g), to be the polynomial d such that (i) d divides both J and g; (ii) if h divides both J and 9 then h divides d; (iii) lc(d) = 1. Dually, we define the least common multiple of J and g, denoted by lcm(f, g), to be the polynomial f such that (i) J and 9 both divide f; (ii) if J and 9 both divide a polynomial h, then f divides h; (iii) lc(f) = lc(f)lc(g). It may be shown that lcm(f,g) and gcd(f,g) exist 5 and that
Jg = lcm(f,g)gcd(f,g).
We now show that Proposition 2.3.5 can be used to compute least common multiples and greatest common divisors of polynomials in k[Xl"" ,xn ].
LEMMA 2.3.7.
(f)
n (g) =
(lcm(f, g)).
PROOF. Let f = lcm(f, g). Then f E (f) n (g), by the definition of f. Conversely, if hE (J) n (g), then h = aJ = bg for sorne a, b E k[Xl,'" ,xn]. Hence J divides h and 9 divides h, and thus f divides h by the definition of lcm(f, g), so that hE (f). 0
5The reader should recognize that this is due ta the fact that k[Xl, . . ,XnJ is a unique
72
Therefore to compute the lem and then the gcd of two nonzero polynomials J and 9 in k[XI' ... , Xn], we first compute the reduced Grbner bMis G for the ideal (wJ, (1 w)g) with respect to an elimination order with Xl,'" , Xn smaller than w. Then lem(f, g) is the polynomial in G in which w does not appear. To obtain
lem ,g To compute the lem and gcd of more than 2 polynomials, we use the above method repeatedly and the fact that
~~)
lem(ft,h, 13) = lem(f"lem(h, 13)), and gCd(f"h, 13) = gcd(f"gcd(h,h)) (Alternatively we could note that (ft) n (hl n (hl = (lem(ft, 12, 13)) and apply Exercise 2.3.8). EXAMPLE 2.3.8. Let J = x2y2  y2 + x 2  1 and 9 = xy2  y2  X + 1 be polynomials in lQI[x, y]. To compute lem(f, g), we first compute the reduced Grbner basis G for the ideal (wJ, (1  w)g) = (W(X 2y2  y2 + x 2  1), (1 W)(xy2  y2  X + 1)) lQI[x, y, w] using the lex term ordering with w > x > Y to get ci = {x 2y4_x2_y4+1,_wxy2+wx+wy2 w+xy2xy2+1,2wx 2 2w+ x 2y2_x 2 _y2+1}. Thereforelem(f,g) = l_x 2 _y4+x 2y4. To compute gcd(f,g), we use the Division Algorithm to divide J9 by lem(f, g) to get a quotient equal to x  1, and this is gcd(f, g). Proposition 2.3.5 has another application: the computation of ideal quotients. We will discuss the geometric significance of these ideals after Proposition 2.5.1. DEFINITION 2.3.9. Let l and J be ideals in k[XI' ... , xn]. The ideal quotient J: l is defined to be
J: l = {g E k[XI, ... , x n ] 1 gl
J}.
LEMMA 2.3.10. Letl= (f" ... ,J,) and J be ideals in k[x1, ... ,xn]. Then
J:l=n J :(J;)
i=l
PROOF. If 9 E J: 1, then gl J, 80 in particular gJi E J for i = 1, ... , s, and hence 9 E n:~l J: (fi). Conversely, if 9 E n:~l J: (fi), then g(fi) J for i = l, ... , s, and hence gl J, so that 9 E J: 1. 0
We have seen a method for computing intersections of ideals, 80, in view of the aliove lemma, WB only need to concentrate on computing J: (f) for a single polynomial f.
LEMMA 2.3.11. Let J be an ideal and J # 0 be a polynomial in k[XI,'" , Xn]. Then 1 J (f) = y(J n (f))
2.3. ELIMINATION
73
PROOF. If 9 E
~f). Conversely, If
y(Jn (1)). 0
EXAMPLE 2.3.12. Let YI = x(x + y)', Y2 = y, h = x 2, and 12 = x + y in lQl[x,y[. Consider the ideals J = (11,12) and J = (gl,y,). We wish ta compute J: J. By Lemma 2.3.10 we have
n (h)
sa that h (J n (h)) = (x, y). Second we compute J n (12) by computing a Grbner basis G 2 for the ideal (WYl, WY2, (1 w)f order as above, and we obtain
G,
= {wx  x  y,wy,x 3
+ y3,xy+y2},
1 . sa that 12 (J n (12)) = (x 2  xy + y2, y). Fmally we compute (x, y) n (x 2  xy + y2, y) by computing a Grbner basis G for the ideal (wx, wy, (1 w)(x 2  xy + y'), (1  w)y) lQl[x, y, w] with respect ta the lex ordering with w > x > y, ta obtain
Therefore J: J = (x 2 ,y).
Exercises 2.3.1. Assume that we have the lex ordering on x, y with x> y and the degrevlex ordering on u, v, w with u > v > w. Use the elimination order with the variables X, y larger than the variables u, v, w to write the polynomial f = xu2vw+3y3u2vw6xuvw100x2yuv2+2xu3wx2yu2w+9xuw2 E k[x, y, u, v, wl in orcler of descending terrns. 2.3.2. Prove Lemma 2.3.2. 2.3.3. Verify the assertion in Example 2.3.3.
74
2.3.4. In this exercise we generalize the concept of elimnation orders. Let S and T be subsets of {Xl"" ,Xn } such that SuT = {Xl,'" ,Xn } (S and T may overlap). For a power product X = X~l . ' x~n E k[Xl1'" l xnl we deline X s (resp. X T ) to be fIx,ES Xf' (resp. fIX,ET xf') Let <s and <T be term orders on the variables in S and T respectively. We deline a new order < as follows: for power products X and Y in k[X1, ... ,xn ],
X <y
Xs <s Ys or (Xs
Ys and X T <T YT ).
a. Prove that < is a term order. b. Let n = 3 and the variables be x,y,z. Let S = {x,y} and T = {x,y,z}. Let <s be deglex with x < y, and let <T be lex with X > Y > z. Order the following power products according to <:
2.3.5. Let <:,p be a relation on 1I'n satisfying for ail X, Y E 1I'n, X <:'p Y or Y <:'p X; ~p is reflexive and transitive; 1 <:'p X for ail X E 1I'n; X <:'p Y implies X Z <:'p y Z, for ail X, Y, Z, E 1I'n.
a. Prove that there is a term order < which extends ~p . That is, if X < Y, then X <:'p Y [Hint: Use the idea of an elimination order to combine <:'p with any term ordeL] b. Ler u = (Ul l . . ,un) E ]Rn be a vector with nonnegative coordinates. 1 Define ~p on 'JI'n as follows. For X = . . . X~n 1 and Y = X~l ... X~n E 1I'n, X <:,p Y if and only if 2:::7~1 Ui"i <:, 2:::7~1 Ui{3i. Show that <:'p extends to a term order on 1['n. c. Construct the deglex ordering using b.
xr
2.3.6. Without the use of a Computer Algebra System, compute (x, y) n (x 1, y) c:: Q[x, y]. 2.3.7. Compute the intersection, In J, where l = (x 2y  Z  1, xy + y + 1) and J = (x  y, Z2  x) c:: Q[x, y, z]. 2.3.8. In this exercise, we extend Proposition 2.3.5. Let I" h,. ,lm be ideaJs of k[Xl1'" ) x n ]. For each i = 1, ... m, consider a new variable Wi. Let J = (1 (W1 + W2 + ... + w m ), w,h, ,wmlm ) c:: k[X1,". ,xn , W" ... ,wm ]. a. Prove that h n 12 n n lm = J n k[X1"" ,X n ]. b. Use a to give a method for computing generators of 1, n 12 n ... n lm c. Use b to compute generators for the ideaJ (x, y) n (x 1, y) n (x  2, y1) c:: Q[x, y]. 2.3.9. Verify the assertions in Example 2.3.8. 2.3.10. In Q[x, y] compute gcd(x3x2y3x2+xyy23y,x3y+xy2+2x2+2y). [Answer: x 2 + y.]
1
2.3. ELIMINATION
75
2.3.11. In Q[x, y], compute generators for 1: (1  x 2  xy), where 1 is the ideal defined in Example 2.1.8. (See Exercise 2.1.3.) 2.3.12. In Q[x, y, z] compute generators for 1: J and J: 1 where 1 = (x 2y  Y + x,xy2x) and J = (x 2 +y2,x 3 +y). [Answer: 1: J = (y2l,x 2 +xyl).] 2.3.13. Let 91XnJ'" ,9vXn,9v+l,'" ,9t be homogeneous polynomials (that is, every power product occurring in each gi has the sarne total degree) where X n does not divide any of 9",+1, ... ,9t. Consider degrevlex with Xl > X2 > ... > Xn Prove that if 91Xn, ,9vxnl 91/+1, .. 19t is a Griibner basis for the ideal l, then g" ... ,gt is a Griibner basis for the ideal 1: (x n ). [Hint: See Exercise 1.4.9.] 2.3.14. Let 1 be an ideal of k[x" ... ,xn], and let 1 E k[x" ... ,xn ]. We define 1:
r = U1: (Ji).
i=l
00
(The ideal 1: 100 can be thought of as the ideal defining the points in V(I) which do not lie on the hypersurface defined by 1 = 0; see the discussion following Proposition 2.5.1.) a. Show that 1 = 1: (1) 1: (J) 1: (J2) .... Conclude Ihat 1: 100 is an ideal of klx" ... ,xn ]. b. Prove that 1: 100 = 1: (Jm) for sorne m. c. Let w be a new variable, and let J = (1,1  wf) k[x" . .. ,xn , w]. Provethatl: 100 = Jnk[x" ... ,xn ]. (Compare withTheorem 2.2.13.) d. Let {J" ... ,l,} be a generating set for 1 and {g" ... , gt} be a generating set for Jnk[x" ... ,xn ]. Now write gi = (lwf)hi + L;~, uijlj for i = l, ... ,t. Define m = rnaxij(degw(uij))' Prove thal 1:/00 = 1: (r). e. Compute generators for 1: f=, where land f are as in Exercise 2.2.4. 2.3.15. Let 1 be an ideal of klx" ... ,xn ]. Prove that if {x~'g" ... ,x~'gt} is a Griibner basis for 1 with respect to the degrevlex ordering with x, > X2 > ... > X n with 9b ... ,9t homogeneous and with no 9i divisible by X n1 then {g" ... ,gt} is a Griibner basis for 1: x;:O. [Hint: Recall Exercise 1.4.9.] 2.3.16. In tbis exercise we show how to compute the generator for the radical of a principal ideal. a. For a polynomial 1 E k[x" ... ,xn ] wrile 1 = P~'p~"" p~m where the polynomials Pl, P2, ... Pm are irreducible. Set f* = PIP2 ... Pm, called the square free part of f. Show Ihat = (J'). b. Let k be a field of characteristic zero. Show that in k[x" ... ,xn ]
1
,;m
1
l'
8f
8f'
+ x 3y2 + 2x 4y2 
76
2.3.17. In this exercis, we compute the solutions ta a system of congruence equations. More precisely, let 111'" 1 lm be distinct ideals in k[Xl 1 ' " ) xnL and let ft,. ,f= E k[X1,'" ,xn ]. We wish to compute the set of solutions f E k[xl, ... ,xn ] of the system (2.3.1)
As in Exercise 2.3.8, let W" ... ,W= be new variables, J = (1  (W1 + ... +w=), W1I" ... ,w=I=), and G be a Grbner basis for J with respect to an elimination order with the w variables larger than the x variables. Wij;. Finally, let 9 =
2::::,
a. Prove that System (2.3.1) has a solution if and only if 9 h, where hE k[X1"" ,xn ]. b. Prove that if h = Nc(g) and hE k[X1, ... , Xn ], then the set of solutions of System (2.3.1) is given by h + h In particular, prove that u E k[X1"" ,xn ] is a solution of System (2.3.1) if and only if h = N Cnk[x, ,... ,xnl (u). c. Show that the following system of congruence equations has a solution and compute the set of solutions.
">+
n::,
f f f
x 1 (mod (x,y))
x (mod (x l,y))
Prove that if we replace (x,y) by (x 2 ,y), then the system above has no solution. 2.3.18. In this exercise we use the Chinese Remainder Theorem (see [Hun]) which states that if ail the ideals Ii are maximal then System (2.3.1) always has a solution. Let al, ... l am E k n be distinct, and let al, ... ,am E k be given. a. Prove that there exists f E k[X1,". ,xn ] such that f(ai) = ai for i = 1, ... ,m. [Hint: Use Exercise 2.3.17.] b. Give a method for computing such an f. c. Find a polynomial f in Q>[x, y] which satisfies f(O, 0) = l, f(l, 0) = l, and f(2, 1) = 1. 2.3.19. Let f E k[X1"" ,xn ] be a homogeneous polynomial. Consider the ideal 1 k[X1, ... ,xn ] generated by all power products X which appear in f and such that IpU) = X with respect to some term order. Prove that f E ft. [Hint: First show that if X and Y have the same total degree, and if X divides Y, then X = Y Then show that if xi appears as a term in f, then any term in f with Xi is in ft. Sa we may assume that no power of any single variable Xi appears in J. Use the same argument for terms in f of the form XiXj. Use Exercise 2.3.4.]
2.3. ELIMINATION
77
2.3.20. (Lakshman [Lak]) Let Qi be a zerodimensional ideal of k[XI, ... , xnJ (1 <: i <: r) and let < be a term order on k[XI, ... ,XnJ. Let Ci be a Gr6bner basis for Qi, i = 1, ... , r. Let l = QI n Q2 n ... n Qr. We will compute a Grobner basis for I with respect to < using linear algebra techniques only. a. As in Exercise 2.2.8, write all the power products in k[XI, ... , xnJ ordered by <: 1 < XI < X 2 < ... . Modify the method of Exercise 2.2.8 to give a method for deciding whether there exists a polynomial f in l whose leading term with respect to < is Xr. [Hint: {1 + 1, XI + 1, ... , X r + I} is linearly dependent if and only if {1 + Qi, XI + Qi, ... , X r + Q;} is linearly dependent for each i.J b. Use a to give an algorithm that inputs a Gr6bner basis Ci for each Qi with respect to < and outputs a Gr6bner basis for l with respect to
<.
c. Use b to compute generators for the intersection QI n Q2 in the following cases: (i) QI = (x, y), Q2 = (x  1, y) lQI[x, yJ. (ii) QI = (xy + 1, x2  1), Q2 = (x 2 + y, Y + x) lQI[x, yJ. [Answer: For lex with x > y, (y3  y, X + y).J 2.3.21. (Lakshman [Lak]) Let l be a zerodimensional ideal of k[XI, .. . , xnJ, and let C be a Gr6bner basis for l with respect to sorne term order < . Let J = (hl,'" h,) be an ideal of k[XI"" ,xnJ. We wish to compute a Grobner basis for 1: J using linear algebra techniques only. a. As in Exercise 2.2.8, write aH the power products in k[xl, . .. ,xnJ ordered by <: 1 < XI < X 2 < ... . Modify the method of Exercise 2.2.8 to give a method for deciding whether there exists a polynomial f in 1: J whose leading term with respect to < is Xr. [Hint: {1 + (1: J), XI + (1: J), ... ,Xr + (1: J)} is linearly dependent if and only if {hi + J, Xlh i + J, ... , Xrh i + I} is linearly dependent for each
i.J
b. Use a to give an algorithm that inputs a Grobner basis G for l with respect to < and a generating set for J and outputs a Gr6bner basis for 1: J with respect to < . c. Use b on the following example: J = (2xy  2x _ y2 + y, y3  3y2 + 2y, x 3  2x2 .1:  y2 + 3y), J = (y  X2, x 2  y2) lQI[x, yJ. [Answer: for lex x > y, 1: J = (x +y  3,y2  3y + 2).J 2.3.22. (Lakshman [Lak]) Let
10:
where
aij
>
!)o
k[YI, .. ,YnJ
'L.7=1 aijYj,
k[XI, ... ,Xn], note that 10(1) is an ideal of k[YI, ... ,YnJ. We will consider a zerodimensional ideal J. Let G. be a Gr6bner basis for 10(1). We wish
78
ta compute a Grobner basis for l with respect to sorne term order < using !inear algebra techniques only. a. As in Exercise 2.2.8, write all the power products in k[Xl'.'. ,xn ] ordered by <: 1 < X, < X 2 < .' .. Modify the method of Exercise 2.2.8 to give a method for deciding whether there exists a polynomial f in 1 whose leading term with respect to < is Xr. [Hint: {l+I,X , +1, ... ,Xr+I} is !inearly dependent if and on1y if {1>(1) + 1>(1), 1>(X, ) + 1>(1), ... , 1>(Xr ) + 1>(I)} is !inearly dependent.] b. Use a to give an algorithm that inputs a Gr6bner basis G for 1>(1) and outputs a Gr6bner basis for 1 with respect to < . c. Use b on the following example: Consider the map
1>:
Q[x,y]
X
4
f...t
and let 1 = (X3 + 3x2y + 3xy2 + y3 + x2 + 3xy + 2y2, x 2 + 4xy + 4y2 + 2x + 3y). Use deglex with x > y. 2.3.23. (*)(Seidenberg [Se]) Let char(k) = 0 and let 1 be a zerodimensional ideal of k[Xl1'" ,In]. Assume that for each i = l, ... ln, l cantains a squarefree polynomial gi E k[Xi]. a. Prove that 1 = ..fi. [Sketch of the proof: Use induction on n. For n > 1, let g, = Pl ... Pro with Pj E k[Xl] irreducible and pairwise nonassociate. Prove that 1 = n;:~l (I,pj), and so it suffices to show that ,j(I,pj) = (I,pj) for j = 1, ... ,r. Consider the map
Use Exercise 2.3.16 to observe that a polynomial f is squarefree if and only if gcd(f, 1') = 1 and the fact tbat gcd's are invariant under field extension ta conclude that the images of gi, i = 2, ... ) n are squarefree in (k[xd/(Pj))[X2' ... ,xn]. By induction hypothesis, ,j1>j((I,pj)) = 1>j((I,pj)). Conclude that ,j(I,pj) = (I,pj).] b. Conclude that a zerodimensional ideal 1 of k[Xl' ... ,xn ] satisfies..fi = 1 if and on1y if it contains a univariate squarefree polynomial in each of the variables. c. Use this to give an algorithm which inputs a zerodimensional ideal 1 and outputs TRUE if ..fi = 1 and FALSE otherwise. d. Give an example that shows that part a is not neeessarily true if ehar(k) # O. e. Use the above ta determine whether 1 = ..fi where 1 = (X2y  X y, xy + x + z  yz, Z2  y) : Q[x, y, z]. 2.3.24. Let ehar(k) = 0 and let 1 be a zerodimensional ideal of k[Xl' ... ,xn ]. For i = 1, ... , n, let gi be the monie generator of 1 n k[Xi], and let gi be its squarefree part.
79
a. Use Exercise 2.3.23 to prove that v'I = (1, gi, g;, ... , g;'). b. Use a to give an algorithm for computing generators for v'I, where 1 is a zerodimensional ideal. c. Compute generators for the radical of 1 = (x2y  X  y, xy + x + z xy, z4  2yz' + yz + y2  xy + z  x) lQI[x, y, zJ. 2.3.25. Let char(k) = 0 and let 1 be a zerodimensional ideal of k[XI"" , xnJ. Assume that v'I = 1. Also, let K be an extension field of k. Let J be the ideal of K[XI,'" ,xnJ generated by 1. Prove that .,fJ = J. Give an example that shows that this is not necessarily the case if char( k) "1 O. [Hint: Use Exercises 2.3.16 and 2.3.23.J 2.3.26. (*) Let char(k) = 0 and let 1 be a zerodimensional ideal of k[XI"" , xnJ. a. Prove that the number of points in V.(I) is less than or equal to dimk(k[XI,." , xnJ! I). [Sketch of the proof: Let G be a Griibner basis for 1 and let J be the ideal of k[xI,'" ,xnJ generated by G. Use Exercise l.6.14 to prove that J is zerodimensional and that dimdk[XI'''' ,xnJ/I) =dim.(k[xI'''' ,xnJ/J). For each point a = (a" .. , ,an) E V.(I) , consider the ideal Ja (Xl  a" ... ,Xn  an) k[xI,'" ,XnJ. Prove that f + Ja = f(a) + Ja for al! f E k[XI'''' ,xnJ. Consider the map
<jJ: k[xI'''' , xnJ
f
Using Exercise 2.3.18 show that <jJ is surjective. show that <jJ induces a map
II k[xI,'" ,xnJjJa.
aEVk"
Since k[xI"" ,xnJ! Ja 9! k, we see that 1/1 is a kvector space homomorphism.J b. Prove that if v'I = 1 and char( k) = 0, then equality holds in a. [Hint: If v'I = 1, then .,fJ = J by Exercise 2.3.25. Prave that J = naEV,(J) J a , and condude that 1/1 above is a bijection.J c. Compute the dimension of lQI[x, yJ! 1 and the number of points in Vc(I) where 1 = (x 2y  X  y, xy + x). [Answer: dim = 3 and there are 3 points.J d. Compute the dimension of lQI[x, yJ! 1 and the number of points in Vc(I) where 1 = (x'y  x  y, x2 +xy + 2x 2 +y+y2). [Answer: dim = 6 and there are 3 points. J 2.4. Polynomial Maps. In this section we are interested in kalgebra homomorphisms between the polynomial rings k[YI, ... , y=J and k[XI, ... , xnJ. We recal! that such a kalgebra homomorphism is a ring homomorphism
80
which is also a kvector space linear transformation. Such a map is uniquely determined by (2.4.1) where fi E k[XI, ... , xnl, 1 ::; i ::; m. That is, if we let h E k[YI, ... , Ym], say h = 2:vcvy~l ... y~rn, where Cv E k, v = (Vl,"" v rn ) E Nm , and only finitely many Cv '8 are nonzero, then we have (2.4.2)
v
Also, conversely, given any such assignment (2.4.1), we get a kalgebra homomorphism from formula (2.4.2). . Recall that the kernel of 1> is the ideal ker(1)) = {h E k[YI,'" , Ymll1>(h) = D}, and the image of 1> is the ksubalgebra of k[XI, ... , Xn ], im(1))
= {J
E k[XI""
,xnll
= 1>(h)}.
This subalgebra is denoted by k[fI, ... , fml. We know from the theory of abelian groups that as abelian groups under the map
defined by
g
This map is, in fact, a kalgebra homomorphism, as is easily seen, and thus is a kalgebra isomorphism. This is called the First Isomorphism Theorem for kalgebras. Another way to think of ker( 1 is that h E ker( 1 if and only if hU" ... , fm) = D and so ker(1)) is often called the ideal of relations among the polynomials fI, , fm We will use the theory of elimination presented in Section 2.3 to determine the following: (i) The kemel of 1> or more precisely, a Gr6bner basis for the kemel of 1>; (ii) The image of 1> or more precisely, an algorithm to decide whether a polynomial f is in the image of 1> and an algorithm to decide whether 1> is anto. Before we give a characterization of the kernel of the map 1>, we need a technical lemma.
LEMMA 2.4.1. Letal,a21'" ,an ,b1 ,b21 ... ,bn be elements oia commutative ring R. Then the element a, a2 ... an ~ b, b2 ... bn is in the ideal (a, ~ b a2 ~ " b2 , . ,anbn )
81
D
THEOREM 2.4.2. Let K = (YI  ft, .. , Y=  f=) Thenker{1 =Knk[YI, ... ,Ym]'
PROOF.
, Ym,
Xl, .. ,
x n ].
Let 9 E K
n k[YI,'"
m
i=l
, y=]. Then
where hi E k[Yl1'" 1 YmJ Xl,. 1 Xn]. Therefore 9 is zero when evaluated at (YI,'" ,Y=)={ft,, ,Jm) and hence 9 Eker{1. Conversely, let 9 E ker{ 1. We can write
where Cv E k, v = (VIl'" ,Vm ) E Nm, and only finitely many cv's are nonzero. Therefore, since g{ft, ... , fm) = 0, we have
(f l,,, f m ) " (V' "'Ym Vm  fV' 999 LCVYl 1
v
...
fV mm).
By Lemma 2.4.1, each term in the smn above is in the ideal K, and hence gEKnk[YI, .. ,Ym]' D We now have an algorithm for computing a Grbner basis for the kernel of 1>. We first compute a Grbner basis G for the ideal K = (YI  ft,. , Ym  fm) in k[Yll'" ,Ym,Xl" .. ,xn ] with respect to an elimination order in which the x variables are larger than the Y variables. The polynomials in G without any X variables fOTIn a Grbner basis for the kernel of 1>. EXAMPLE 2.4.3. Let 1>: lQI[r, u, v, w] > lQI[x, y] be the map defined by
r
U
V W
X4 X3 y xy3 y"
c:: lQI[r,u,v,w,x,y]
with respect to the deglex term ordering on the x, Y variables with Y > X and the degrevlex term ordering on the T, u, V, w variables with r > u > v > w, with an elimnatiop. order between them with the x, y variables larger than the T, u, V, w variables. We get G = {x 4  r,x3 y  u, xy3  v,y4  w,yv  xW,yr  xu,y 2u
82
yuw  xv 2 1u 3  r 2 v , yu 2
xrv}
We now tUTn our attention to the second question posed at the beginning of the section, namely, the question of finding an algorithm to determine whether an element f E k[Xl"" ,xn ] is in the image of the map <1> and an algorithm to determine whether <1> is onto. This material has been adapted from D. Shannon and M. Sweedler [ShSw]. THEOREM 2.4.4. Let K = (Yl  ft,. ,y=  f=) k[Yl,'" ,y=,X" ... ,xn ] be the ideal considered in Theorem 2.4.2, and let G be the reduced Grobner basis for K with respect ta an elimination arder with the x variables larger than the y variables. Then f E k[Xl, ... ,xn ] is in the image of <1> if and only if there exists
hE k[Yl'''' ,Ym] such that f
S+
PROOF. Let f E k[Xl, .. ' ,xn ] bein im(<I. Then f=g(J"", ,f=) forsome g E k'[Yl' ... ,Ym]. Consider the polynomial
f(Xl, ... ,Xn)  g(Yl,'" ,Y=) E k[Yl"" ,Ym,Xl, ,Xn].
Note that f(Xl, ... ,xn )  g(Yl,'" ,Ym) = g(J" ... ,fm)  g(Yl"" ,y=), and henee, using Lemma 2.4.1, we see that f(Xl,'" ,xn )  g(Yl,'" ,Y=) is in K. Therefore, by Proposition 2.1.4, 9 S+ h, and f S+ h, where h = Nc(g) = Nc(f). But, sinee 9 E k[Yl'''' ,Y=], 9 can only be redueed by polynomials in G which have leading terms in the y variables alone. Sinee the x variables are larger than the y variables in our elimination order the polynornials used to reduce 9 are in k[Yl,'" ,Ym]' Therefore h E k[Yl,'" ,y=]. c Conversely, let f >+ h, where h E k[Yl, .. ' ,y=]. Then f  h E K, so
1
f(Xl,'"
,xn )
h(Yl,'" ,Ym)
=
Lgi(Yl"" ,y=,X" ... ,Xn)(Yi  J;(Xl,'"
i=l
,Xn)).
If we substitute J; for Yi, we see that f = h(f" ... ,fm) = <I>(h), and f is in the image of <1>. 0
The following Corollary shows that the result of the preceding theorem gives an algorithmie method for determining whether f is in the image of <1>. COROLLARY 2.4.5. With the notation of Theorem 2.4.4, f E k[Xl' ... ,xn ] is in the image of <1> if and only if Nc(f) E k[Yl'''' ,y=]. PROOF. If Nc(J) E k[Yl,'" ,Y=], then, sinee f S+ Nc (f) , we have f E im( <1 by the Theorem. Conversely, if f E im( <1, then by the Theorem f S + h
83
with h E k[YI, ... ,Ym]' By Proposition 2.1.4, Ne(f) = Ne(h) and as in the proofaboveweseethat hE k[YI, ... ,Ym] implies Ne(h) E k[YI, ... ,Ym]. D EXAMPLE 2.4.6. Let 1;: <Ql[u, v]
+
u v
We would like to determine if x 5 is in the image of 1;. We first compute a Grbner basis G for the ideal
K = (u  x 4
X, V 
x 3 ) : <Ql[u, v, x]
with respect to the lex term ordering with x > u > v to get
G = {u 3
v4
3v 3  3v 2
 V,
xv +x 
U,
xu 2 _v 3
2v 2
 V,
x 2 u ~ v 2 v, x 3 v}.
x 2
+ XU,
and _x 2 +xu is reduced with respect to G. Since N e (x 5 ) = _x 2 +xu rt lQI[u, v], we have, by Corollary 2.4.5, that x 5 is not in the image of 1;. Now that we have an algorithm to determine whether a polynomial 1 is in the image of 1;, we can determine whether 1; is onto. We simply check whether x" ... ,xn E im( 1;). In the next result we see that we can do this simply by inspecting the Grbner basis. THEOREM 2.4.7. Let K = (YI  h, ,Ym  lm) : k[YI, ... ,Ym, Xl,'" ,X n] be the ideal considered in Theorem 2.4.2, and let G be the reduced Grobner basis for K with respect ta an elimination arder with the x variables larger than the y variables. Then 1; is onto if and only if for each i = 1, ... ,n, there exists 9i E G Buck that 9i = Xi  h il where hi E k[Yl1' .. Ym]. Moreover, in this case, Xi= hi (f, , ... ,fm).
1
PROOF. Let us first assume that 1; is onto. Also, without loss of generality, let us assume that the order is sueh that Xl < ... < Xn. Then by Theorem 2.4.4, since Xl is in the image of <p, there exists h~ E k[Yll ... ,Ym] such that Xl ~+ h~. Therefore Xl  h\ E K, and henee there exists gl E G sueh that lp(g,) divides lp(XI  h\) = x,. Therefore, sinee the only terms strickly smaller than Xl are terms in the Y variables alone, gl = X, hl for sorne h, E k[YI, ... ,Ym]' Similarly, since X2 is in the image of 4>, there exists h; E k[Yll'" ,Ym] such that X2S+ h~, and henee there exists g2 E G sueh that lp(g2) divides lp(x2  h~) = X2. Sinee the only terms strieUy smaller than X2 are terms involving Xl and the y variables only, and since G is the reduced Gr6bner basis and any term involving Xl could be reduced using 91 = Xl  hl, we must have 92 = X2  h 2 for sorne h 2 E k[y!, ... ,Yml We proceed in a similar fashion for the remaining Xi'S.
84
CHAPTER 2. APPLICATIONS OF GROBNER BASES For the converse we first note that 4> is onto if and only if
Xi
E im( 4 for
1 ::; i ::; n. Since Xi  hi E C, we have Xi S+ hi_ Since hi is a polynomial in the y variables alone, we have that Xi is in the image of 4> by Theorem 2.4.4, and hence 4> is onto. Again by Theorem 2.4.4, we see that Xi = hi(f"", , fm). D The above result gives an algorithm for determining whether the map 4> is onto or not. We first compute the reduced Gr6bner basis G for the ideal K, and, by inspection, we check whether there exists Yi = Xi  hi E G for each i = 1, ... ,n, with hi E k[Yl,'" ,Yml. EXAMPLE 2.4.8. We have seen in Example 2.4.6 that the map 4> was not onto, since x5 was not in the image of 4>. AlBo, the Gr6bner basis G did not have a polynomial of the form X ~ h(u, v). Now consider
4>' :
Q[u, v, wl
u v w
>
Q[xl
x 4 +x
We Wf.mt to determine whether <jJ* is anto. We first compute a Gr6bner basis G* for the ideal
K*
(u  x 4
X, V 
x3 )W
x5 )
Q[u, v, w, x],
~U2V
+ v 2 w + 2vw + w, u 3 ~ v 4 ~ 3v 3 ~ 3v 2 ~ v}
Since we have x  uv 2 + uv  u + w 2 E G*, the map 1>* is anto. In fact we have X = 4>'(uv 2 ~ uv + u ~ w 2 ) = (X4 + X)(X3)2 ~ (x4 + x)x3 + x4 + X ~ (x5)2 We now extend the preceding resnIts to quotient rings of polynomial rings.
DEFINITION 2.4.9. An kalgebra is called an affine kalgebra if it is isomorphic as a kalgebra to k[Xl, ... , xnl/ l for sorne ideal l of k[Xl, ... , xnl. Clearly the polynomial ring k[Xl,'" , xnl is an affine kalgebra. Moreover, if fI, ... , fm E k[Xl, ... , Xn ], then, as we saw at the beginning of this section, the image, k[fI, ... , fm], of the map
85
Let us assume that </J: Yi+Jr>fi+ J We note that the rnap </J is welldefined if and only if the following condition is satisfied: if J
9i(fI, ,fm) E J.
This condition can he checked easily using a Gr6bner basis for J and Theorem 1.6.2. Generalizing Theorem 2.4.2 we have
THEOREM 2.4.10. LetK be the ideal ofk[YI, ... ,Ym,XI,. ,xnl whose generators are those of J together with the polynomials Yi  fi, 1 SiS m, that is, K = (J, YI  fI, ... ,Ym  fm). Then ker(</J) = K n k[YI, ... ,Yml (mod J). That is, if Knk[YI, ... ,Yml = (f{, ... ,f;), thenker(</J) = (f{ +J, ... ,f;+J)
where
W(YIJ. ,Ym,Xl,'" ,Xn) = l:::Uv {YIJ ... ,Ym,Xl,'"
v
... ,Xn ) =
L
v
Uv(!I, ...
,fm, XI,
... ,Xn}Vv(Xll'"
,Xn )
El,
snce each Vj.I El. Conversely, let f' E k[YI, ... ,Ym] with </J(f'+J) = o. Thenf'(fI, ,fm) E J. Let f'(Yb." ,Ym) = L:vcvYrl ... y~""', where v = (VIl'" ,Vm ) E N m , Cv E k, and only finitely many Cv are nonzero. Then
f'(YI, ... ,Ym) = (f'(YI, ... ,Ym)  f'(fI, ,fm)) + f'(fI, ... ,fm) =
L
v
Cv (Yr'
... y:;,= 
,fm).
By Lemrna 2.4.1,
v
f m) and hence
86
since J'(ft, ... ,!m) El. Therefore J'(Y" ... ,Ym) E Knk[y" ... ,Ym]. We now prove the analog of Theorem 2.4.4.
THEOREM 2.4.11. Let K = (1, y, ft, ... ,Ym fm) be the ideal as in Theorem 2.4.10, and let G be a Griibner basis for K with respect ta an elimination arder with the x variables larger than the y variables. Then f +1 E k[x" ... ,xnl/1 is
in the image of q, if and only if there exists h E k[y" ... , Ym] such that f In this case f + 1 = q,(h+ J) = h(f" ... ,fm) + I.
S + h.
PROOF. Let f +1 be in the image of q,. Then there exists g E k[y" ... ,Ym] sueh that f  g(f" ... ,fm) El. We consider the polynomial f(x" ... ,xn )g(y" ... , Ym) E k[y, , ... ,Ym, x" ... ,xn ]. Since f(x" ... ,xn )  g(y" .. . ,Ym) = g(f" ... ,fm)  g(y" ... ,Ym) + (f(x" ... ,xn )  g(f" ... ,fm)), we have, using Lemma 2.4.1, that f(x" ... ,xn ) g(y" ... ,Ym) is in K. The argnment proceeds as in the proof of Theorem 2.4.4 (Exercise 2.4.8). Conversely, let f E k[x" ... ,x n ] be such that Then.]  h E K, and hence
f S + h with h
...
+ W(Yll'"
where
W(Yll'" ,Ym,Xl, ,Xn) = LUV(Yll'" ,Ym,Xl, ,Xn)Vv (Xl,'"
v
,Xn)
with V v Eland where 9i, Uv E k[Yll'" ,Ym, Xl, ... ,xn ]. If we substitute fi for Yi, we see that f  h(f" ... ,fm) E l, and henee f + 1 = q,(h + J). D
As before we have COROLLARY 2.4.12. Continuing the notation of Theorem 2.4.11, we have that
+I
k[x" . .. , xnl/ 1 is in the image of q, if and only if Nc(f) E k[y" ... ,Ym].
We finally determine whether the map q, is onto, again in a fashion similar to Theorem 2.4.7. THEOREM 2.4.13. Let K be the ideal as in Theorem 2.4.10, and let G be the reduced Grobner basis for K with respect ta an elimination arder with the x variables larger than the Y variables. Then q, is onto if and only if for each i = 1, ... ,n there exists a polynomial 9i = Xi  hi E G , where hi E k[Yl,' .. ,Ym]. PROOF. The proof is similar to the one of Theorem 2.4.7 and is left to the reader (Exercise 2.4.9). D
87
1>:
<QI[x,y]/I x+y+I
x~y+I
2xy+I,
where J
w, u 2 ~ v 2 ~ w 2 ~ 2w) <QI[u, v, w], and I = (x 2 ~ 2xy, y2) <QI[x, y]. We fust note that the map 1> is welldefined, since
= (uv
(x+y)(x~y) ~2xy+I
x 2 ~ y2 ~ 2xy + I
and
= 0,
1>(u 2 ~ v 2 ~ w 2 ~ 2w + J)
<QI[x,y,u,v,w].
We compute the reduced Grobner basis G for K with respect to the lex order with x > y > u > v > w to get
G=
{u 2
2w v
"
2Y 
2} .
2w, v 2 , VW, UW, w 2 , uv  W , u 2  v 2  w 2  2w) (recall that uv ~ w E J). Also, by Theorem 2.4.13, we see that the map 1> is onto, sinee x  ~u  ~v and y + ~v are in G. In fact we have
where L = (u 2
!u
1
+I =
88
Exercises 2.4.1. Without using a Computer Algebra System, use the method of Example 2.4.3 to find ker(1)), where 1>: lQI[u, v] > lQI[x] is defined by 1>: u r+ x 2 and 1>: v > x"' 2.4.2. Compute generators for ker(1)), where 1>: lQI[u,v,w] > lQI[x,y] is defined by 1>: u r+ x 2 + y, 1>: v r+ X + Y and 1>: w r+ X  y2 Is 1> onto? 2.4.3. Determine whether the map 1> is onto, where 1>: lQI[r, u, v, w] > lQI[x, y] is defined by 1>: r r+ X2 + y, 1>: u r+ X + y, 1>: v r+ X  y2, and 1>: w r+ x2 + y2 2.4.4. (Shannon and Sweedler [ShSw]) This exercise assumes that the ,eade, is familiar with the definition of the minimal polynomial of an algebraic element over a field. Let f, ft, ... ,fm E k[XI,'" , Xn]. Consider the ideal K = (y  f, YI  ft, , Ym  fm) in k[y, YI,. , Ym,Xl, ,xn ]. Let G be the reduced Gr6bner basis for K with respect to the lex ordering with Xl > ... > Xn > Y > YI > ... > Ym' Let Go be the set of all polynomials in G involving only the variables y, YI, ... ,Ym and in which Y actually appears. a. Show that f is algebraic over k(fl, ... , f m) if and only if Go # 0. [Hint: In the case where we assume that fis algebraic over k(fl, ... , fm), we can find h= Lvhv(Yl"" ,Ym)Yv such that h(f,ft, ... ,fm) =0 and
ho (fI, ... ,fm) # O. We have h S+ O. Analyze this reduction.] b. In the case that Go # 0 let go E Go be such that lp(go) is least. Show that go (y, fI,' .. ,!m) is a minimal polynomial for f over k(fl, . .. ,fm). 2.4.5. A polynomial f E k[Xl, ... , x n ] is called symmetric if
for all permutations (Y of {l, ... , fi}. In Exercise 1.4.18 we saw that the set of symmetric functions is a kalgebra generated by the following n functions:
0"1 0"2
Use Theorem 2.4.4 to give a method for deciding whether a given function E k[.Tl, ... ,xn ] is a symmetric function. Use this method to check your answer in Exercise 1.4.18, part d. 2.4.6. (Shannon and Sweedler [ShSw]) In this exercise we extend the results of this section tomaps fromsubrings of k(Yl,'" ,Ym) to k(Xl, ... ,Xn), where k(Yl, ... , Ym) and k(xl,' .. ,xn ) are the fields of fractions of k[Yl, ... ,Ym] and k[Xl, . .. , x n ] respectively.
89
q,:
k[YI,' .. , Ym]
Yi
>
r+
HI
2.4.7.
90
2.4.11. For those who have the appropriate algebra skills, generalize ExerciEe 2.4.6 to the case of
</J:
> >
where we assume that J, lare ideals in the appropriate rings and I is a prime ideal.
2.5. Sorne Applications to Algebraic Geometry. In this section we will apply the results of the previous sections to study maps between varieties. Throughout tills section, for 1 an ideal in k[xl, ... ,X n ], we will consider the variety V,,( I) c::: k n as we did in Section 2.2. We will abbreviate this variety more simply by V(I). We begin by considering projection maps
km+n
(2.5.1)
(al l
...
,am,bll
,bn )
If we apply this map to a variety V, we may not obtain a variety. For example, the variety V(xy 1) projects onto the xaxis minus the origin, and this is not a variety. We are interested in finding the smallest variety containing 7f(V). Before we do this we give the following general proposition.
PROPOSITION 2.5.1. If Sc
ing S. That iB, ifW iB any variety containing S, then V(I(S)) called the Zariski closure of S.
PROOF. Let
c:: W
This set iB
W = V(J) c:: k n be a variety containing S, where J is an ideal in k[xj, ... ,Xn]. Then I(W) c I(S) and V(I(S)) C V(I(W)). But V(I(W)) = V( v0) = V(J) = W, by Theorem 2.2.5. Therefore V(I(S)) c:: W 0
As a simple example of the above proposition, consider tWQ varieties V and W contained in k n. Then V ~ W need not be a variety, and its Zariski closure is V(I(V  W)). We note that I(V  W) = I(V): I(W) (Exercise 2.5.2). Recall that we showed how to compute the ideal quotient in Lemmas 2.3.10 and 2.3.11. EXAMPLE 2.5.2. Consider the varieties V = V(x(y  z),y(x  z)) and W = V(yz) in IC"' Then V consists of the four lines y = z = 0, x = z = 0, x = y = 0, and x = y = z. Moreover W is the plane y = z which contains just two of these lines, namely y = z = and x = y = z. Thus V  W consists of the union of the two lines x = z = and x = y = excluding the origin. We use the above method to compute the smallest variety containing V  W, namely V(I(V  W)) (although it is geometrically obvious that this variety is the union of the two lines including the origin). By the above we have I(V  W) = I(V): I(W). AIso, it is easy to see that I(V) = (x(y  z), y(x  z)) and I(W) = (y  z),
2.5. 80ME APPLICATIONS TO ALGEBRAIC GEOMETRY sinee y'(x(y  z),y(x  z)) = (x(y  z),y(x  z)) and y'(y  z) compute I(V): I(W) using Lemma 2.3.11 to get
91
= (y  z). We
(x, yz).
Therefore the smallest variety containing V  W is, as we observed above, the union of the two lines x = z = and x = y = O. We now return to the projection map (2.5.1).
THEOREM 2.5.3. Let I be an ideal in k[YI, ... ,V=,X" ... ,xn ]. The Zariski closure o/7r(V(I)) is V(I n k[YI, ... ,Y=]). PROOF. Let V = V(I) and Iy = Ink[YI, ... ,Ym]. Let us first prove that 7r(V) c:: V(Iy). Let (a" ... , am, b ... ,bn ) E V, so that (a" ... ,am) E 7r(V). If " ) = 0, since 1 E I, and thus I(a" ... ,am) = 1 E Iy, then I(a" ... ,a=, b ... ,b n 0, sinee 1 contains only y" variables. Therefore 7r(V) c:: V(Iy). In view of Proposition 2.5.1, to complete the proof of the theorem we need to show that c:: V(I(7r(V))). Wc first show that I(7r(V)) c:: ..jI;. Let 1 E I(7r(V)), so that I(a" ... ,am) = for ail (a" ... ,a=) E 7r(V). If we view f as an element of k[Yll'" ,Yrn,Xl, ... ,xnL then f(al, ... ,am,bl,". ,bn ) = 0 for all (a" ... ,am, bl , ... ,bn ) E V. By Theorem 2.2.5, there exists an e such that E I. But, sinee f involves only YI, ,y=, E Iy, and hence 1 E ..jI;. Now we have V(Iy) = V(..jI;) c:: V(I(7r(V))). This complete the proof of the theorem. D
V(Iy)
We now turn our attention to an application of Theorems 2.3.4 and 2.5.3. We consider a map r.p: lin + k'l7\ given by <P(XI, ... ,X n ) = (f,(X" ... ,xn ), ... ,J=(XI, ... ,Xn )), where the Ns are in k[XI, ... ,xn ]. One can think of this as a subset of k= parametrized by
h, ,lm:
YI = h(xI, ...
,X n )
Y2 = h(XI, ... ,X n )
Ym
I=(XI, ...
1
,X n ).
k m+n namely
92
Tim+n
Then we can see that rr(V) is the image of 'P, and so we apply Theorem 2.5.3. That is we let l = (Yl 
,X
n].
Then the Zariski closure of rr(V) is V(I n k[Yl, ... ,Ym]). Note from Theorem 2.4.2 that the Zariski closure of the image of 'P is defined precisely by the ideal of relations of the polynornials ft, ,Jm. Therefore, ta find a set of defining equations for that variety, one computes a Grbner basis G for l with respect ta an elimination order with the X variables larger than the y variables. The polynomials in G which are in the y variables only are the desired polynomials. EXAMPLE 2.5.4. Consider the map 'P:
80
1[;2
1[;4
(x, y)
that the parametrization is given by:
(2.5.2)
v
W
x4 x3 y xy3 y"
The Grbner basis for the ideal l = (r  x4, u  x 3 y, V  xy" w  y4) with respect to the lex term ordering with x > y > r > u > v > w is G = {uw 2  v 3 ,rwuv, rv 2 + u 2 w, r 2 v + u 3 , _y4 + w, xw + yv, xv 2 + yuw, xu + yr, XTV yu 2 , _ xy 3 + V, x 2 v + y 2 u, _x 2 y 2 r + u 2 , _x3 y + 1t, _x4 + r}. The polynomials that do not involve x or y arethose that determine the smallest variety containing the solutions of the parametric equations (2.5.2):
More generally, we consider maps between two varieties V given by polynomials; Le.)
a:
k n and W km
v
(a" ... ,an)
>
>>
where ft, ... ,fm E k[Xl' ... ,Xn]. Sueh a map Q' gives rise to a kalgebra homomorphism cr'" between the affine kalgebras k[YL.. ,Yml/I(W) and k[Xl, ... ,xnl/ I(V) as follows: a':
>
e>
93
gU,,
To see that a' is welldefined, we need to show that for ail 9 E I(W), we have ,f=) E I(V). But for ail (a"", ,an) E V, wehave a(a"", ,an) E W, and hence
as desired. We have then that a' is a kalgebra homomorphism. Note also that if the map a is the identity map of the variety V onto itself, then the corresponding map ' is the identity of the affine algebra k[XI,'" ,xn ]/ I(V) onto itself (this follows since the field k is infinite). Thus the study of the map a between varieties might be done by studying the corresponding map ' between the corresponding affine kalgebras. We will give two examples illustrating this idea: deterrnining the image of a variety and determining whether a given map is a variety isomorphism. Suppose that we have a variety V in k n and a map a into k = given by polynomials h, ... ,f= E k[XI,'" ,xn ]:
Ct: :
+
li rn
(h(a" ... ,an), ... ,f=(a" ... ,an)).
>+
We would like to deterrnine the Zariski closure of the image of the map . In the case when V = k n we did this at the begining of this section. We can find I(im()) by considering the corresponding map
':
+
>+
PROPOSITION 2.5.5.
only if 9 E ker(a'). I(im(a)). Then for any (a"", ,an) E V, g(a(a"" . , an)) = 0, and hence g(a(xI'''' ,Xn)) E I(V), so that a'(g) = 0 and 9 E ker(a'). The
PROOF. Let 9 E
This proposition together with Theorem 2.4.10 gives us an algorithm for computing the ideal I(im()), and hence for determining the smallest variety containing im(). EXAMPLE 2.5.6. Let V be the variety in C 2 defined by X2 + y2 1 (a circle in the x, Y plane). Consider the map given by the polynomials h = X2, h = y2, and h = xy; i.e.
:
(x, y)
94
is
>
Ta find I(im(a)), y2, W  XV) and find a Gr6bner basis G for K with respect ta the lex term ordering with x> y > u > v > w ta get G = {X2 + V  1,xy  W,xv  Yw,xw + yv _ y,y2_ v, U + vl, v 2  V + w 2}. Therefore I(im(a)) = ker(a*) = K n
qx, y]/ (x 2 + y2  1) > x 2 + (x 2 + y2  1) y2 + (x2 + y2 _ 1) > > xy + (x 2 + y2  1). we consider the ideal K = (x 2 + y2 1, u  x 2, V qu,v,w] u v w
qu, v, w] =
(u + vl, v 2 
+ w2 ).
Geometrically, the equation u + v  1 = 0 is the equation of a plane parallel ta the w axis. The equation v 2  v + w 2 = 0 is the equation of a cylinder whose axis is parallel to the u axis. The intersection of these two surfaces is an ellipse. The second example illustrates how a* can be used for determining whether two varieties are isomorphic.
DEFINITION 2.5.7. Two varieties V Tin and W Tim are said to be isomorphic over k if there are maps a: V > W and {J: W > V given by polynomials with coefficients in k such that a 0 {J = idw and (J 0 a = idv , where idv and idw are the identity maps of V and W respectively.
THEOREM 2.5.8. The varieties V Ti n and W Ti mare isomorphic over k if and only if there exists a kalgebra isomorphism of the affine kalgebras
PROOF.
a:
> >
where
> >
where g" ... ,gn E k[y" ... ,Ym]' Note that the map ({J Xi >+ gi(J" ... , fm) while the map a* 0 {J* is defined by
a)* is defined by
and sa, ({Joa)* =a*o{J*. Now, since {Joa =idv , ((Joa)* =idk[x" ... ,xnlII(V) and hence a* 0 (J* is also the identity of k[x" . .. , xnl/ I(V) onto itself. Similarly, we have that (J* 0 a* is the identity of k[y" ... ,Ym]/ I(W) onto itself. Therefore 0:* i8 a kalgebra isomorphism
95
We will see that e = a* for a map a between the varieties V and W which is given by polynomials and such that a l exists and is also given by polynomials. Let e(Yi + I(W)) = li + I(V), where fi E k[Xl"" ,xn ] for i = l, ... ,m, and let el(xj+I(V)) =gj+I(W), wheregj E k[Yl,'" ,Ym] for j = l, ... ,no Consider the maps a: and
> V W t+ (b ... ,bm ) (g,(b ... ,bm ), ... ,gn(b ... ,bm )). " " " It is readily seen that a maps V into W, 13 maps W into V; and that a and are inverse maps. D
V
(ail'"
>
,an)
t+
13:
13
Therefore, to determine variety isomorphism, we need ta check whether a* is a kalgebra isomorphism. We have seen in Theorem 2.4.10 how to compute the kernel of Q* and in Theorem 2.4.13 how ta determine whether a* is anto. EXAMPLE 2.5.9. Consider the vitriety V : IC 2 defined by the equation x' yx + 1 in the x, y plane. Also, consider the variety W : IC' defined by the equation u 4 + u 3 + 2u 2 v + v 2 + uv + 1 in the u, v plane. Finally consider the map
a:
V (x,y)
>
t+
W (y,_y2 x).
We will show that this gives an isomorphism of the varieties V and W. First we show that a maps V into W. So let (x, y) E V Then if we replace u and v by y and _y'  x respectively in the equation defining W we get
y4
+ y3 + 2y' (y'
_ x)
+ (y'
_ x)'
+ y( _y' 
x)
+ 1 = x' 
xy + 1 = 0,
a':
qu, v]/ J f +J
>
t+
+ l,
where J = (u 4 +u 3+2u 2v+v'+uv+ 1) and l = (x' yx+l) (see Exercise 2.3.16 part a to see why 1= I(V) and J = J(W)). Let K = (x' yx+ l, uy, V+y2+X) be the ideal in qu, v, x, y] as in Theorem 2.4.10. We compute a Grbner basis for K with respect to the lex term ordering with x > y > u > v to get
+ uv +v' + l}.
n k[u, v] =
(u 4 + u 3
80
+ 2u'v + uv + v' + 1) = J, and hence ker(a') = 0 a* is one ta one. Also, since x + u 2 + v and y  u
96
are in G, the map a* is onto by Theorem 2.4.13. Therefore a* is a ICalgebra isomorphism and, 80 by Theorem 2.5.8, Q gives an isomorphism of the varieties V and W. Note that the inverse map is given by a 1 (u,v) = (_u 2  v,u), for (u,v) E W If the reader is interested in studying further the ideas presented in this section we strongly recommend the book of Cox, Little, and 'Shea [CLOS].
Exercises 2.5.1. Show that in IC 3, if the plane defined by x = 1 is removed frorn the variety V = V(xy2+XZ 2 _xy_y2 _z2 +y,x 2 +xy2xy+1),the Zariski closure of what remains is an ellipse. Conclude that V is the union of this ellipse and the given plane. 2.5.2. Let V and W be varieties in k n. Prove that I(V  W) = I(V): I(W). 2.5.3. a. Find the equation in IC 2 for the curve parametrized by x = t 3 , y = t 2 + 1. b. Find the equation in IC 2 for the curve parametrized by x = t 3 + l, Y =
t2
c. Find the ideal for the intersection of these two varieties and then determine aU points on this intersection. d. Do part c by solving the equations directly. Show by the rnethod of this section that the variety io IC 3 parametrized by x = u + uv + w, y = u + v 2 + w 2, Z = u 2 + V is all of IC"' [Hint: If you try to compute this example using lex, your computer may llot be able to complete the computation. However, if you use deglex on the u, v, w variables and also on the X, y, z variables with an elimination order between thern, you should encounter no difliculties.] Consider the variety V parametrized by x = t 3 , y = t 4 , z = t 5 in IC 3. a. ShowthatI(V) = (y5_z4,_y2+xz,xy3_z3,x2y_z2,x3_yZ). [Hiot: Use lex with x > y > z.] b. Verify that also I(V) = (xz  y2,x 3  yz,x2y  Z2). c. Show that the tangent variety of V is parametrized by x = t 3 +3t2 u, y = t 4 + 4t3 u, Z = t 5 + 5t4 u. [Hint: The tangent variety is defined to be the union of ail the tangent lines of V. Sa this exercise is done using elementary multivariable calculus.] d. Compute generators for the ideal of the tangent variety of V. [Answer: (15x 4y2  48y5  16x 5z + 80xy3z  30x 2yz2  Z4).] Let V be the variety in IC 3 defined by x 2 + y2  z2 = 0 and x 3 + y = O. Define a: V + IC 4 by (a, b, c) f' (a 2 ,a+b,c2 +a,c). Find the ideal of the image of a. In qx,y,z] let J = (_2y_y2+2z+Z2, 2xyz Z2) and in qu,v] let l = (uv+v).Definethemapa: V(I) + V(J) by (a,b) f' (a 2 +b,a+b,ab). Prove that a defines an isomorphism between V(I) and V(J) (you rnay
2.5.4.
2.5.5.
2.5.6.
2.5.7.
97
assume that l (V (J)) = J). 2.6. Minimal Polynomials of Elements in Field Extensions. In this section we will use the results of Section 2.4 to find the minimal polynomial of an element algebraic over a field k. We will assume that the reader is familiar with the most elementary facts about field extensions [Go, He]. The results of this section will not be used in the remainder of the book and may be skipped. Let k K be a field extension. Recall that if a E K is algebraic over k, then the minimal polynomial of " over k is defined ta be the monic polynomial p in one variable, with coefficients in k, of smallest degree such p( a) = O. Altematively, considering the kalgebra homomorphism </J: k[x] > k(a) defined by x r4 a, we have that ker(</J) = !;P). Moreover, the map </J is onto, since a is algebraic, and 80 (2.6.1)
k[x]/(p) ~ k(a),
under the map defined by x + (p) r4 a. We first consider the case where K = k(,,), with a algebraic over k, and onr goal is to compute the minimal polynomial of any (3 E K. We note that in arder to compute in k(a) it suffices, by Equation (2.6.1), to compute in the affine kalgebra k[xl/!;P). We assume that we know the minimal polynomial p of .
THEOREM 2.6.1. Let k K be a field extension, and let a E K be algebraie over k. Let p E k[x] be the minimal polynomial of over k. Let 0 i' (3 E k(a), say ao + alQ + ... + ana n (3= , bo+b,a++bma m where ai, bj E k,O <: i <: n,O <: j <: m. Let f(x) = aD + a,x + ... + anx n and g(x) = bo+b,x++bmxm be the eorresponding polynomials in k[x]. Consider the ideal J = !;p,gy  f) of k[x, y]. Then the minimal polynomial of (3 over k is the monie polynomial that generates the ideal J n k[y].
Note that J n k[y] is generated by a single polynomial, sinee this is true for every ideal in k[y] (i.e. k[y] is a principal ideal domain).
PROOF. Note that sinee k[x]/!;P) is a field, and g(a) i' 0 (it is the denominator of (3), there is a polynomial i E k[x] such that gi '" 1 (mod !;P)), that is gf  1 E (p). Let h = jf. Note that h(a) = (3. Now consider </J, the composition of the affine algebra homomorphisms
</J:
k[y] y
>
>>
~
>>
k(a) (3.
Note that q is in the kernel of </J if and only if q((3) = O. Therefore to find the minimal polynomial of (3, we find the generator of the kernel of </J. By Theorem 2.4.10, the kernel of the map </J is !;p, y  h) nk[y]. Therefore it suffiees to show that !;p,y  h) = !;p,gy  1). First note that y  h = y  ff '" f(gy  1) (mod !;Pl),
98
and hence y  h E (p,gy  J) so that (p,y  h) (p,gy  J). Conversely, gy  f == g(y  fR) = g(y  h) (mod (p)). Therefore gy  f E (p, Y  hl, and (p,gyJ) (p,yh). 0 The above result gives an algorithm for finding the minimal polynomial of an element (3 in k( a): given a and (3 as in the theorem, we compute the reduced Grbner basis G for the ideal (p, gy  J) of k[x, y] with respect to the lex term ordering with x > y. The polynomial in G which is in y alone is the minimal polynomial of (3. EXAMPLE 2.6.2. Consider the extension field .]I(a) of .]l, where a is a root of 3 the irreducible polynomial x 5  x  2. Now consider the element f3 = 1_0:,::20: E .]I(a). We wish to find the minimal polynomial of (3. We consider the ideal J = (x 5  X  2, xy + 2x 3 + x 1) in .]I[x, y]. We compute the reduced Grbner basis G for J with respect to the lex term ordering with x > y to obtain
y5
11 y4 + 4 y 3 +2
5y2
+ 95y + 259 } .
Therefore the minimal polynomial of (3 is y5 + y4 + 4 y 3  5y2 + 95y + 259. This technique can be extended to a more general setting of field extensions of the form K = k(a" ... ,an). For this we need the following notation which we use for the remainder of this section. For i = 2, ... ,n and p E k( a" ... ,ai Il [Xi], we let P be any polynomial in k[Xl' ... ,Xi] such that p(Ql, ... ,QiIl Xi) = p. We note that p is not uniquely defined, but every ap~ plication we will make of P will not depend on the particular choice we have made. We now determine the minimal polynomial of any element (3 of k(O!l' ... ,an) using the following result, which is similar to Theorem 2.6.1. THEOREM 2.6.3. Let K = k(O!l, . .. ,O!n) be an algebraic extension of k. For i = l, ... ln, let Pi E k(al1'" ,Ltid[xil be the minimal polynomial oiai over k(O!I' ... ,O!iI). Let (3 E k(O!l' ... ,O!n), say
(3  f(O!I' ... ,O!n)  g(CXl1'" ,an)'
where f,g E k[Xl' ... ,Xn]. Consider the ideal J = (PI' ,Pn,gy J) contained in k[Xl, . .. ,X n , y]. Then the minimal polynomial of (3 over k is the monie polynomial that generates the ideal J n k[y].
'i
99
We note that 4>n is anto, since l, ... ,n are algebraic over k. It remains to show that ker(<Pn) = (Pl"" ,Pn)' For this we use induction on n. The case n = 1 is Equation (2.6.1). The fact that P"", ,Pn E ker(<Pn) is immediate. Now let 1 E k[Xl"" , x n] be such that I(l,'" , n) = O. Let
h(xn)
and note that h(n) = O. Therefore Pn divides h, by definition of Pn. Say h = PnCn, forsomeC n E k(a"." , n,)[xn]. Consider IPnRn E k[Xl"" ,xn] and write
fThen, since
pnfn
:L:gv(Xl1'" ,xn_dX~.
v
and hence
by induction. Thus 1  PnRn E (Pl"" ,Pnl)' and 1 E (Pl"" ,Pn)' Thus ker( <Pn) = (Pl"'" Pn) as desired. The proof now proceeds as in Theorem 2.6.1. D
EXAMPLE 2.6.4. Consider the field extension Q c:::: Q( v'2, ,y5). The minimal polynomial of v'2 over Q is Pl = xi  2 E Q[Xl] and the minimal polynomial of ,y5 over Q( v'2) is P2 = x~  5 E Q( v'2)[X2]. We wish to find the minimal polynomial of v'2 + ,y5. We compute the reduced Gr6bner basis G for the ideal
Xl
>
X2
> Y ta obtain
+ 48y 5 + 45y4 
Therefore the minimal polynomial of v'2 + ,y5 over Q is y6  6y4  lO y3 + 12y2 60y+17. We also see that v'2 + ,y5 has degree 6 over Q and hence Q( v'2 + ,y5) = Q( v'2, ,y5).
100
EXAMPLE 2.6.5. The minimal polynomial of ij2 over Q iSPI = Xf2 E Q[x,J. AU the roots of this polynomial generate the extension Q( ij2, il, where i the i complex number such that i 2 =  L We consider the element f3 = 1 + ij2. We
wish ta find the minimal polynomial of f3 over Q. First, the minimal polynomial of i over Q( ij2) is P2 = x + L Then P, = Pl, and P2 = P2. We consider the ideal J = (Xf  2, x + l, X,y  (Xl + X2)) of Q[XI' X2, y]. The reduced Grbner basis for J with respect ta the lex term ordering with Xl > X2 > Y is computed ta be
Therefore the minimal polynomial of f3 is y4  4y 3 + 6y2  4y + ~. Alternatively, Q( ij2, i) = Q( ij2, iij2). The minimal polynomial of iij2 over Q( ij2) is P2 = x + v'2. Thus P2 = x + xi. We again want to compute the i minimum polynomial of f3 = 1 + ij2' We consider the ideal J = (xi  2, x +
xi,xiy  (xi + X2)). The reduced Grbner basis for J with respect ta the lex term ordering with Xl > X2 > Y is computed ta be
G = { xi
+ 2y2 
4y
+ 2, X2 + 2y 3 
6y2
+ 6y 
2, y4  4 y3 + 6y2  4y
+~} .
Sa we obtain the same result as before. Since the degree of f3 over Q is 4, and since the degree of Q( ij2, i) over Q is 8, we see that Q(f3) is a subfield of Q( ij2, i), but is not equal ta it. In the preceding two examples, we used a degree argument for deciding whether k(f3) is equal ta k(al, ... ,an)' We will give another method for determining this which has the added advantage of expressing the a;'s in terms of f3. This algorithm is a consequence of the foUowing theorem.
THEOREM 2.6.6. Let al, ... 1 an and 1511'" ,Pn be as in Theorem 2.6.3. Let f(e", ... ,n). [ ] f3 E k ( n ) , say f3 = ( ) , w,th f, g E k X" ... ,X n . Let J be as
9 Ql, . . . ,Qn in Theorem 2.6.3, and let G be the reduced Grobner basis for J with respect ta an elimination arder with the X variables larger than y. Then k(a"", , n) = k(f3) if and only if, for each i = l, ... , n, there is a polynomial gi E G such that gi = Xi  hi, for some hi E k[y]. Moreover, in"this case, i = hi(f3).
PROOF. Let 1 = (Pl"" ,Pn ), and leU E k[XI, ... ,xn ] besuch that gRl E 1. Set h = ff, and note that h(I"" ,n) = f3. Consider
e", ... ,
k[y]
y
k(I,'" ,n)
f3.
Then k(a"", , an) = k(f3) if and only if 1> is onto. We conclude by using Theorem 2.4.13 and the fact that J = (1, y  hl. 0
101
EXAMPLE 2.6.7. In Example 2.6.4, the Gr6bner basis G contained the following polynomials
1187x,  48y 5

1187x2 + 48y 5 + 45 y 4
This gives another proof that Q( 0 + ?'5) = Q( 0, ?'5). Moreover, we have (2.6.2)
0= 11~7
V5)4 
320( 0 + ?'5)3
?'5 =
11~7 ( 48( 0
('aaa' )
1438
where ,6 =
laa? a .
2183
10599
8465
101499
Exercses
2.6.1. Compute the minimal polynomial of the following over Q. a. ij2+ "4+5. b 0+7 . ij2+1' 2 +a h 3  0  1 =0 c. aa+3,werea . 2.6.2. Compute the minimal polynomial of the following over Q. a. 0 + {12 + 5. b. {12 + {15 + 5. c. 0 + v'3 + y'5. 2.6.3. Show that Q(a!,a2) = Q(,6) and express a, and a2 in terms of,6, where a,  a,  1 = 0, a 2 = 5 and ,6 =
3
I0!"2+1
01 +02
2.6.4. In Theorem 2.6.3 we required that Pi+' E k(a" ... , "'i)[xH,] be the minimal polynomial of "'H' over k(a" ... ,Qi). The minimal polynomial of QH' over k would not do as the following example shows. Let K =
102
VIz + i VIz. We wish to find the minimal polynomial of (J. a. Use Theorem 2.6.3 ta compute the minimal polynomial of (J over k. b. Instead of the minimal polynomial of i VIz over IQI( VIz), use the minimal polynomial of i VIz over IQI in the method described in Theorem 2.6.3, and see that, nQW, the method does not give the correct minimal polynomial of (J over IQI. 2.6.5. Find, explicitly, the quadratic subfield of IQI(() where ( is a primitive 7th root of unity. [Hint: ,Using the method of the text, note that the minimal polynomial of ( is ~..::,' and that this quadratic subfield is the fixed field of the automorphism defined by ( >> (2.] 2.6.6. Complete the proof of Theorem 2.6.3.
2.7. The 3Color Problem. In this section we want to illustrate how one can apply the technique of Grbner bases to solve a wellknown problem in graph theory: determining whether a given graph can be 3colored. (The same technique would work for any coloring.) This material is based on a portion of D. B"yer's thesis [Ba]. The material in this section will not be used elsewhere in the text and may be skipped. Let us first state the problem precisely. We are given a graph g with n vertices with at most one edge between any two vertices. We want ta color the vertices in Bueh a way that only 3 colors are used, and no two vertices connected by an edge are colored the same way. If g can be colored in this fashian, then g is called 3colorable. This can be seen to be the same as the 3color problem for a map: the vertices represent the regions ta he colored, and two vertices are connected by an edge if the two corresponding regions are adjacent. First, we let = e';' E C be a cube root of unit y (i.e. = 1). We represent the 3colors by 1, , 2, the 3 distinct cube foots of unity. Now, we let Xl,' .. ,X n be variables representing the distinct vertices of the graph j. Each vertex is to be assigned one of the 3 colors 1, , ". This can be represented by the following n equations
(2.7.1) AIso, if the vertices Xi and Xj are connected by an edge, they need to have a different color. Since = x;, we have (Xi  Xj)(xy + XiXj + xJ) = o. Therefore Xi and Xj will have different colors if and only if
xy
(2.7.2) Let l be the ideal of QXl,'" ,xn ] generated by the polynomials in Equation (2.7.1) and for each pair of vertices Xi, Xj which are connected by an edge by the polynomials in Equation (2.7.2). We will consider the variety V(I) contained in The following theorem is now immediate.
THEOREM
en.
103
We have seen in Section 2.2 that we can use Gr6bner bases ta determine if V(J) = 0. We first compute a reduced Griibner basis for J. If 1 E G, then V(J) = 0 and otherwise V(I) of 0 (see Theorem 2.2.6). EXAMPLE 2.7.2. Consider the graph of Figure 2.1.
Xs
~X~3~________________~~X2
'"" ______~X5
are:
=
1, ... ,8
xf and
1, for i
Xr + XiXj + x;,
for the pairs (i,j) E {(l, 2), (l, 5), (l, 6), (2,3), (2,4),
(2,8),(3,4),(3,8),(4,5),(4, 7), (5,6), (5,7), (6,7), (7,8)}. We compute a Griibner basis G for the ideal J corresponding to the above polynomials. Keeping in mind Corollary 2.2.11, we use the lex term ordering with Xl > X2 > ... > xs. We obtain
X6 
Xs,
x~
+ X7XS + x, x~ 
1}.
Since 1 't G, we have that V(I) of 0, and hence, by Theorem 2.7.1, is 3colorable. We can use the Gr6bner basis G to give an explicit coloring, sinee the system of equations represented by G turns out to be easy to solve. Let us assume that the 3 colors we are using are bIue, red, and green. We must first choose a color for xs, say red, since the only polynomial in one variable in G is x~  1. We then must choose a different color for X7, say bIue, because of the polynomial x~ + X7X8 + x~ E G. Then we have that Xl and X3 must be blue because of the polynomials Xl  X7, x3  X7 E G, and X4, X6 must be red because
104
of the polynomials X4  Xg, X6  Tg E G. Finally X2 and X5 have the same coloT, which is a different coloT from the colors assigned ta T7 and TS 1 80 X2 and Xs are green; this is because the polynomials X2 + T7 + xs, and X5 + T7 + Tg are in G. We note that it is evident from the Gri:ibner basis in Example 2.7.2 that there is only one way to color the graph g, up to permuting the colors, and 80 it should not be too surprising that solving the equations determined by the Gri:ibner basis is easy. However 1 if there is more than one possible coloring, the Gr6bner basis may look more complicated. This is illustrated in the following example. EXAMPLE 2.7.3. Consider the graph g' in Figure 2.2.
Xs
Xg
g'
g'
. ~
are:
= 1, ' .. ,9
1, for
and
x; +
XiX;
+ xJ,
for the pairs (i,j) E {(1, 2), (1,4), (1,5), (1, 6), (2,3), (2, 5),
(2,7), (3,4), (3, 6), (3,9), (5,6), (6,8), (7, 8), (8, 9)}. We compute a Gri:ibner basis G' for the ideal l' corresponding to the above polynomials using the Lex term ordering with Xl > X2 > ... > T8 > Tg ta obtain
Q' = {x~
x9){X7 + Xs + Tg),
+ X4XS + X7XS + X4X9 + T7X9 + XSX9), (X4  X5)(X4 + T7 + TS), X3X7 + X3xs  X7XS + X3X9 + X~, 2 X3X4 + X4X[j  X4X7 + X[jX7  X4X8 + X[jX8  X3XU  x g, X~ + X3X9 + X~, X2 + X7 + X8l Xl + X[j  X7  X8}.
(X5 X9)(X4X7
105
Since 1 cf' G', we have that V(I') of 0, and hence, by Theorem 2.7.1, Q' is 3colorable. This Gr6bner basis looks much more complicated than the one in Example 2.7.2. This reflects the fact that there are many possible colorings of this graph. In fact, it is easy to 3color the graph Q' by trial and error.
Exercses We note that we have tried to keep these problems small, without making thern too trivial looking, but your Computer Aigebra System may still have trouble doing the computations.
2.7.1. Show that if we add an edge between X2 and Xs in the graph Q of Figure 2.1, the graph is no longer 3colorable. (This can be done either by computing a Gr6bner basis for the new ideal, or by observing what was done in Example 2.7.2.) 2.7.2. Show that if we add one edge between vertices Xl and X3 in the graph Q' of Figure 2.2, then Q' is still 3colorable. Show that now the 3coloring is unique except for the permutation of the coloTs. 2.7.3. Generalize the method given in this section to the case of determining whether graphs are 4colorable. 2.7.4. Use the method of Exercise 2.7.3 to show that in the trivial example where there are 4 vertices, each pair of which is connected by an edge, the graph is 4colorable and show that the equations imply that all 4 vertices must be colored a different color. 2.7.5. Show that in principle (by this we mean that the computations would probably be too lengthy to make the scheme practical) the method in this section could be generalized ta giving a method ta determine whether a graph is rncolorable for any positive integer m.
2.8. Integer Prograrnming. The material in this section is taken from P. Conti and C. Traverso [CoTr]. No use of this section will be made elsewhere in the book. The integer programming problem has the following form: let aij E Z, bi E Z, and Cj E R, i = 1, ... ,n, j = 1, ... ,mi we wish to find a solution (0"11 l72, . .. ,am) in l'lm of the system
(2.8.1)
{"'""'
a210"1
+ + +
a120"2 a220"2
+ + +
+ + +
almeTm
a2m m
bl b2 bn ,
anlO"l
an 20'"2
anm(J"m
(2.8.2)
L
j=1
Cjaj_
106
This problem occurs often in scientific and engineering applications. There are many books on the subject which the reader may consult, see, for example, [Schri]. Our purpose here is to apply the results of Section 2.4 to indicate a solution method to this problem. Our strategy is to: (i) Translate the integer progranuning problem into a problem about polynomials; (ii) Use the Grbner bases techniques developed so far to solve the polynomial problem; (iii) Translate the solution of the polynomial problem back into a solution of the integer programming problem. In order to motivate the general technique presented below, we will first start with the special case when ail aij's and bi's are nonnegative integers. We will alsa concentrate first on solving System (2.8.1) without taking into account the cost function condition (Equation (2.8.2)). We introduce a variable for each linear equation in (2.8.1), say Xl, X2,.. 'X n1 and a variable for each unknown (Jj, say YI, Y2, ... ,Ym' We then represent the equations in (2.8.1) as
or equivalently,
(2.8.3) We note that the lefthand side power product in Equation (2.8.3) can be viewed a..c;; the image of the power product Y2 2 . . . y~m under the polynomial map
Yrl
k[Yl,""Y=] Yj
We have presented in Section 2.4 an algorithmic method for determining whether an element of k[Xl, ... , x n ] is in the image of a polynomial map such as 1> (see Theorem 2.4.4). However the above lemma requires that the power product X~l X~2 .. x~n be the image of a power product, not a polynomiaL But,
107
'" 1
because the map <p sends the variables Yj to power products in k[Xl l have
Xn], we
LEMMA 2.8.2. We use the notation above, and we assume that aU aij '8 and bi '8 are nonnegative. If X~l xg 2 x~n is in the image of <P, then it is the image of a power product Yrly~2 ... y~tn E k[Yll'" ,Ym]'
PROOF. LetK = (Yj_X~ljx~2j ... x~nj 1 j = 1, ... ,m} be theideal considered in Theorem 2.4.4. Let G be a Griibner basis for K with respect to an elimination order with the x variables larger than the y variables. Then, by Theorem 2.4.4
b, X2 b, ... X bn xl n
("') E lm 'f'
G h ++
k[Yll'"
th h E k[ YI, Wl
Ym ] .
S+
h with h E
...
x~n =
<jJ(h).
We first note that the polynomials that generate K are all differences of two power products. Therefore, during Buchberger's Algorithm to compute G (see Algorithm (1.7.1)), only polynomials which are differences oftwo power products will be generated. lndeed, the Spolynomial of two polynomials which are both differences of two power products is itself a difference of two power products, and the one step reduction of a polynomial which is a difference of two power products by another polynomial of the same fOrIll produces a polynomial which is itself a difference of two power products. Therefore the polynomials in G are all differences of two power products. Now if 1 2 . x~n is in the image of cjJ, then it reduces to a polynomial h E k[Yl, ... ,Ym]. But the one step reduction of a power product by a polynomial which is a difference of two power products produces a power product. Therefore h is a power product and we are done. 0
xt xt
The proof of Lemma 2.8.2 gives us a method for determining whether System (2.8.1) has a solution, and for finding a solution: (i) Compute a Griibner basis G for K = (Yj  x~,j x~,j ... x~nj 1 j = 1, ... ,m) with respect to an elimination order with the x variables larger than the y variables; (ii) Find the remainder h of the division of the power product x' x~' ... x~n by G; (iii) If h rt k[Yl, ... ,Ym], then System (2.8.1) does not have nonnegative integer solutions. If h = Yrly~2 ... y~rn, then ((Ji, (J2, ... ,(Jm) is a solution of System (2.8.1). To illustrate the ideas presented so far, we consider a simple example. EXAMPLE 2.8.3. Consider the system (2.8.4)
+ +
(J3 (J3
10 5.
We have two x variables, Xl, X2, one for each equation. We also have four y variables, Yi, Y2, Y3, Y4, one for each unknoWIl. The corresponding polynomial
108
'"
XI X2
XI X 2
Xl,
80 K = (YI  XrX~, Y2  XIX21 Y3  XIX2, Y4  Xl) Ql[yl, Y2, Y3, Y4, Xl, X2]' The Grbner basis for K with respect to the lex order with XI > X2 > YI > Y2 > Y3 > Y4 is G = {JI, 12, h, 14, h}' where JI = Xl  Y4, 12 = X2Y4  Y3, h = X2Y~  YI, 14 = Y2  Y3Y4, 15 = YIY4  yj. Then
and
and h = Yh~ is reduced with respect to G. Using the exponent, of h we get that (0,0,5,5) is a solution of System (2.8.4). Now we tUTn our attention to the more general case where the aij's and bi's in (2.8.1) are any integers, not necessarily nonnegative. We still focus our attention on determining whether System (2.8.1) has solutions and on finding solutions, that is, we still ignore the cost function condition (Equation (2.8.2)). We will proceed as before, except that we now have negative exponents on the x variables. Of course, this cannot be done in the polynomial ring k[XI,'" ,xn ]. Instead, we introduce a new variable w and we work in the affine ring k[Xl1'" ,xn,wl/I, where l = (XIX2" 'XnW l). We may choose non~negative integers a~j and (Xj, for each j = 1, ... ,m and i = 1, ... n sueh that for each j = 1, ... ,m we have
1
(alj,a2j,'"
For example, (3,2,5) = (2,7,0)+5(1,1,1). Then in the a1fine ring k[xl, ... ,X n , wlj l we can give meaning to the coset x~lj x~2j . . x~nj + l by defining
Similarly, (b l , b2 , . ,bn ) = (b~, b;, ... ,b~) + tJ( 1, 1, ... , 1), where b; and are nonnegative integers for i = 1, ... ,n, and define
tJ
(2.8.5)
We therefore proceed as before, and we note that the lefthand side of Equation (2.8.5) can be viewed as the image of the power product yf'y;' ... y':,;" under
109
As before we have
LEMMA
(01,02,'"
2.8.4. We use the notation set above. Then there exists a solution ,Om) E Hm of System (2.8.1) if and only ifx:;x~; ... x~~w(3+I is the
b' b' b'
image underq, of a power product in k[Yl,'" ,Ym]' Moreover ifx ,'x 2' . Xnnw~+ 1 = q,(Yr'Y~' ... y~=), then (01,02, ... ,Om) is a solution of System (2.8.1).
We have presented in Section 2.4 an algorithmic method for determining whether an element of k[Xl"" ,xn,wl/I is in the image of an affine algebra homomorphism sueh as q, (see Theorem 2.4.13). As in the first case we considered, the above lemma requires that X l l x2 2 ... Xnnwf3 + l be the image of a power product, not a polynomial. As before we have
b' b' b'
2.8.5. Wc use the notation set above. Ifx ,'x2'" xnnw~+I is in the image of q" then it is the image of a power product Yr' y~' ... y~= E k[Yl, ... ,Ym]'
LEMMA
b'
b'
b'
...
,Xn.
w] be the
1 .
J = 1, ... ,m } .
Let G be a Grbner basis for K with respect to an elimination order with the x and w variables larger than the y variables. Then, by Theorem 2.4.13,
As in Lemma 2.8.2, the polynomials that generate K are ail differences of two power products, therefore, the argument used in the praof of Lemma 2.8.2 ean again be applied. That is, the polynomials in G are aU differences of two power products, and the reduction by G of a power product produces a power product. D
EXAMPLE
(2.8.6)
We have two x variables, Xl, X2, one for each equation. We also have four y variables, YI, Y2, Y3, Y4, one for each unknown. We consider the ideal l = (XIX2W 1)
110
of Q[XI' X2, w] and the algebra homomorphism Q[YI, Y2, Y3, Y4] YI Y2 Y3 Y4
>
>> >> >>
"
>>
xi
Thus K = (YI  xixi, Y2  x~w2, Y3  xiw, Y4  X2W, XIX2W  1). The Gr6bner basis for K with respect to the lex order with XI > X2 > w > YI > Y2 > Y3 > Y4 is G = {fI, h, ho J4, J5, J6,!7,!8,!9}, where fI = XI YIYtyl, h = X2 YIYh~, 13 = w  Y3Y'l, J4 = YIytyI  l, J5 = YIYh~  Y2, J6 = YIY~Y';jh = YIY3yl  y~, Js YIyl l  yi, fg Y2Y3  Y4 We now reduce the power product x~w by G (note that xllx~ + l = x~w + I)
yi,
x~w
{j,Jsl
>
4 4 4 4
YhPY~s
Vfy5 y
J, J, J, J,
ll
o
ytyly~4
yfyJyF
YYhl
YIY2Y~,
and YIY2yl is reduced with respect to G. Observing the exponents of the different power products obtained during the reduction, we have the following solutions of System (2.8.6) (6,0,19,38), (5,0,15,31), (4,0,11,24), (3,0,7,17), (2,0,3,10), (l, l, 0, 2). We return to the original problem. That is, we want to find solutions of System (2.8.1) that minimize the cast function C(O"I' 0"2, ,0"=) = 2:;1'=1 CjO"j (Equation (2.8.2)). As we mentioned before, the only requirement on the term order in the method for obtaining solutions of System (2.8.1) described above, is that we have an elimination order between the x, w and the y variables with the x and w variables larger. Our strategy for minimizing the cost function is to use the cj's to define such a term order.
DEFINITION 2.8.7. A term order <c on the Y variables is said to be compatible with the cost function c and the map <f; iJ
cr'
0'
al
and
C(oll'"
1
O"m) <
C(l, ...
,(Tm)
111
Term orders on the y variables which are compatible with c and 10 are exactly those orders which will give rise to solutions of System (2.8.1) with minimum cast as the next proposition shows. PROPOSITION 2.8.8. We use the notation set above. Let G be a Grobner basis for K with respect ta an elimination arder with the x and w variables larger than the y variables, and an arder <c on the y variables which is compatible with b' b' b' G the cost function c and the map cp. If XII X2 2 X nn Wf3 + y~l ... y~'Tn, where l Yr:n"" is reduced with respect ta G, then (0"1) .. 1 (Tm) is a solution of System (2.8.1) whieh minimizes the cast junetion c.
yr
.............j
U' b~b~ b~j3G (Tl 0" 'th YI U X 2 .. X n W 1+ YI .. ymm., Wl ... YntrY> Te d lice d'th Wl P ROOF. L et Xl respect to G. Then (0"1,'" , O"m) is a solution of System (2.8.1) by Lemma 2.8.4. Now assume to the contrary that there exists a solution (~, ... ,a:n) of System (2.8.1) such that I:?~1 ejO"j < I:?~1 CjO"j. Consider the correspond
ing power product y~; ... y:;,.'rr.. Note that 1o(y~' ... y:;"=) ~ 1o(y~; ... y:;,.'rr.) =
V b' b ' XI1X22 .. ' Xnn w f3 J. Therefore l
yr
l
l
..
'y~rn
yr It{yfl ... y':n=  y~~ ... y':n'.n) yr y~Tn. But yr y~m. is reduced with respect to C, and therefore yr y~rn  y~~ ... y~'.n cannot reduce to 0 by G. 0
=
. l .
l ...
K, so that y~'" ,y:;"=  Y, ''' 'Ym~ E K. Hence y~'" .y;?,,= y~l ... y':nm S+ O. Since l . . y~m >c y~l ... y~m by assumption, we have
2.~.1O, k~r(1o)
We note that a different minimal solution may be obtained if we use a different order, as long as we have an elimination order with the x and w variables larger than the y variables, and as long as we use an order on the y variables compatible with the cost function e and the map 10. For sorne cases, the term order <c is easy to obtain, however the general case is more involved. We refer the reader to the original paper [CoTrI. One particular simple case is when the cost function only involves positive coefficients, that is Cj 2: 0 for j = 1, ... ,m. Then the following order is a term order compatible with the cost function and the map 10: first order power products using the cost function, and break ties by any other order (see Exercise 2.3.5). The following illustrates this idea. EXAMPLE 2.8.9. We go back to Example 2.8.6 but we now consider the cost function
We use the lex order on w and the x variables with Xl > X2 > w. The power products in y are first ordered using the cast fUI1ctia~ a~d ~ies are broken by lex with YI > Y2 > Y3 > Y4. That is Yrly~2y~3y~4 < y~ly~2y~3y:4 if and only if 10000"1 +0"2+0"3+1000"4 < 10000"; +0"2+0"~+1000"~ or, 1O?00",1 +?"2+0"3 +1000"4 = lOOOO"~ + O"~ + 0"3 + lOOO"~ and Yrly~2y~3y~4 <lex y~ly~2y~3y:4. Finally we use
1
112
an elimination order with w and the x variables larger than the y variables. The reduced Grbner basis for K is
2 3 G = {w  Y2Y4J Y4  Y2Y3,
Xl 
We have x~w S+ Y1Y~Y which gives the solution (l, 3, 2, 0). This solution is of minimal cast,
Exercises 2.8.1. Use the method of Lenuna 2.8.1 to solve the following system of equations for nonnegative integers.
+ +
0"3 0"3
10
12.
2.8.2. Use the method of Lemma 2.8.1 to solve the following system of equations for nonnegative integers.
+ +
0"3 0"3
10
4.
2.8.3. Use the method of Lemma 2.8.1 to solve the following system of equations for nonnegative integers.
{ 30"1 40"1 20"1
+ + +
+ + +
+ +
20"4
10
0"4
12 25.
2.8.4. Use the method of Lemma 2.8.1 to solve the following system of equations for nonnegative integers.
{ 30"1 40"1 20"1
+ + +
+ + +
+ +
20"4
0"4
10 11 10.
2.8.5. Prove Lemma 2.8.4. 2.8.6. Use the method of Lemma 2.8.4 to solve the following system of equations for nonnegative integers. 4 3. 2.8.7. In Example 2.8.9 replace the cost fnnction by
C(O"I, 0"2, 0"3, 0"4)
= 10000"1
= 0"1
Let k be a field. In this chapter we consider submodules of k[Xl' ... ,xnJ= and their quotient modules. In Section 3.1 we briefly review the concepts from the theory of modules that we require (see [Hun]). Then in Section 3.2 we define the module of solutions of a homogeneous linear equation with polynomial coefficients (called the syzygy module) and use it to give yet another equivalenl condition for a set to be a Grbner basis for an ideal. In Section 3.3 we follow Buchberger [Bu79J and show how to use this new condition to significantly improve the computations of Grbner bases. In Section 3.4 we show how 10 compute an explicit generating set for the syzygy module of a vector of polynomials. We then generalize the definition of Grbner bases and the results of the previous two chapters to modules (Section 3.5) and show that the same type of applications we had for ideals are possible in the more general context of submodules of free modules (Section 3.6). In Section 3.7 we generalize the results of Section 3.4 to systems of linear equations of polynomials. In Section 3.8 we show how this theory can be applied to give more efficient methods for the computations of Chapter 2 that required elimination. In the next to last section we explicitly compute Hom. That is, we compute a presentation of Hom(M, N) given Iwo explicitly presented modcles M and N. Finally, in the last section we apply the previous material to give results on free resolutions and outline the computation of Ext(M,N). 3.1. Modules. In this section we let A be any commutative ring. The ring that will be of interest to us in later sections is A = k[Xl'''' ,XnJ. We will consider the cartesian product
That is, Am consists of all column vectors with coordinates in A of length m. Although we will always consider the elements of A= as column vectors (which we will enclose in square brac.kets), in the interest of saving space in the book
113
114
we will usually write the elements of Am. as In other words, we will often use
am' ] a
The use of column vectors is necessitated by the desire ta have function composition match the lisuai notation used in matrix multiplication. The set Am is called airee Amodule. A set Mis called an Amodule provided that M is an additive abelian group with a multiplication by elements of A (scalar multiplication) satisfying: (i) for ail a E A and for ail m E M, am E M; (ii) for ail a E A and for al! m,m' E M, a(m + m') = am + am'; (iii) for al! a, a' E A and for ail m E M, (a + a')m = am + a'm; (iv) for al! a, a' E A and for ail m E M, a(a'm) = (aa')m; (v) for al! m E M, lm = m. Scalar multiplication in Am. is done componentwis; that is,
or using our space saving notation, a(al 1 ' " ,am) = (aal)." ,aam ), for a E A and (aIl'" ,am) E Am, The module Am. is called fTee because it has a basis, that is a generating set of linearly independent vectors. For example,
e, = (l,a, ...
,0),e2
is a basis which we will calI the standard basis for Am. In other words, every element a = (aIl'" 1am) of Am can be written in a unique fashion
a =
L aiei, where ai E A.
i=l
Note that an ideal of A is an Amodule, and in fact a submodule of the Amodule A = Al A submodule of an Amodule M is a subset of M which is an Amodule in its own right. For example, if al, ... ,as are vectors in Am, then
M = {b , al
+ ... + bsa s 1 bi
A, i = l, ... ,s} : Am
is a submodule of Am. We denote this submodule by (a" ... ,as) : Am, and we calI {a" . .. , a,} a generating set of M. The concept of an Amodule is similar to the one of a vector space, except that the set of scalars in the module case is the ring A which is not necessarily a field. Submodules of Am are used for linear algebra in Am in the same way subspaces of km are used for linear algebrain km. Forexample, let M= (al, ... ,as! Am.
3.1. MODULES
115
If we think of the vectors ai '8 as the colurrms of an m x s matrix S, then M is the "column space" of the matrix S, that is,
So, given a E Am, the system of m linear equations (with unknown the coordinates of b E A') determined by the matrix equation
(3.1.1)
Sb=a
can be translated into the question of whether the vector a is in M or not. In the case where m = 1, that is, M is an ideal of A, and System (3.1.1) has only one equation, then this problem is the ideal membership problem diseussed in Section 2.1. Other linear algebra problems in Am can also be translated this way into a module theoretic question. In this chapter we will develop algorithmic tools ta answer these questions in the case where A = k[Xl1'" ,Xn]. We first go back to the general theory of modules. Since we are mainly interested in the ring klxl,." , x n ] which is Noetherian by the Hilbert Basis Theorem (Theorem 1.1.1), we will assume that the ring Awe are eonsidering is Noetherian. We have the following
THEOREM
PROOF. Let M be a submodule of Am. We use induction on m. If m = 1, then M is an ideal of A, and the result follows from the Hilbert Basis Theorem (Theorem 1.1.1). For m > 1, let
Note that M' is a submodule of Am.l and so, by induction, is finitely generated, say by n~ l ' _. ,n~ E MI Aml. For i = 1, ... 1 C, let ni be the element of Am with 0 in the first coordinate and the coordinates of n~ in the remaining m ~ 1 coordinates. Note that ni E M. To conclude, we show that
116
Let m E M. Then the first coordinate m, of m can be written as m, = L:~=1 diai Now consider m' = m  2:!=1 ~mi. Then m' E M and its first coordinate is zero. Therefore m' = 2:;=1 ct,ni. So,
t ,
i=l
t
i=l
m = m'
+ 2:diffii =
i=l
LCini + Ldiffiil
as desired.
DEFINITION 3.1.2. An Amodule M is called Noetherian if and only if every submodule of M is finitely generated. Thus Theorem 3.1.1 states that if A is a Noetherian ring then Am is a Noetherian module for all m ?: 1 and, in fact, any submodule of Am is a Noetherian module. Definition 3.1.2 is equivalent to saying that if
is an ascending chain of submodules of M, then there exists no such that Mn = Mno for ail n 2:: no. That these tWQ statements are equivalent is proved in exactly the same way as Theorem 1.1.2 was proved. Now for N any submodule of the Amodule M, we define
MIN = {m+N
1= E M}.
MINis the quotient abelian group with the usual addition of cosets. We make MIN into an Amodule by defining a(m+N) = am + N, for aU a E A,m E M.
It is an easy exercise to see that this multiplication is weUdefined and gives
For M and M' two Amodules, we caU a function q,: M > M' an Amodule homomorphism provided that it is an abelian group homomorphism, that is,
MIN"" q,(M)
3.1. MODULES
117
>
q,(M) q,(m).
This rnap is, in fact, an Amodule homomorphism as is easily seen and thus is au Amodule isomorphism. This fact is referred to as the First Isomorphism Theorem for modules. As in the theory of abeliau groups, the submodules of MIN are ail of the form LIN, where L is a submodule of M containing N. Now, let M be an Amodule, and let 'Inl, ... ,ms E M. Consider the map q,: AS > M defined as follows:
L: aimi'
i=l
It is easy to prove that q, is au Amodule homomorphism. Moreover, the image of q; is the submodule of M generated by ml) . . ' ,ms' Hence if ml, ... ,ms generate M, then q, is onto. Letting el, . . . ,es denote the standard basis elements in AS 1 we note that cp is uniquely defined by specifying the image of each ei E AS, namely by specifying q,(ei) = mi. We will often define homomorphisms q, from AS by simply specifying q,(ei), for i = 1, ... ,s. Now given generators ml, ... ,ms of the Amodule M, we define cp as above. Since 'Ins generates M we see that q, is onto. Let N be the kernel of q,. Then, by the First Isomorphism Theorem for modules, we have
m" ... ,
M~AsIN.
So we conclude
LEMMA 3.1.3. Every finitely generated Amodule M is isomorphic to AS IN for sorne positive integer s and sorne submodule N of AS.
Our purpose in this chapter is ta do explicit computations in finitely generated modules Qver A. 80 the first question we have to answer is what do we mean when we say that we have an explicitly given finitely generated Amodule M? The first way is to be given N = (aIl'" ,am) for explict ab ... ,aTn E AS sueh that M ~ AS IN for sorne explicit isomorphism. Lemma 3.1.3 ensures the existence of such an sand N.
DEFINITION
3.1.4. If M
The second way ta have an explicitly given module M, provided that M is a submodule of AS, is ta have explicit ml, ... ,fit E AS such that M = ('lnl,." ,m,). Or, more generally, if we have an explicitly given submodule N of AS, the submodule M = ('lnl + N, ... ,m, + N) of AS IN is explicitly given.
118
It is also useful sometimes to have a presentation of M in the last we will show how we can obtan this in Section 3.8.
COROLLARY PROOF.
cases, and
By Lemma 3.1.3, M ~ AS IN, for sorne s and sorne submodule N of AS. The submodules of AS IN are of the form LIN, where L is a submodule of AS containing N. Since AS is Noetherian (Theorem 3.1.1), we have that every submodule of A' is finitely generated, and hence every submodule of A' IN is finitely generated. Therefore A' IN and hence M is Noetherian. 0 3.2. Grobner Bases and Syzygies. In this section we let A be the Noetherian ring k[XI"" ,xn ]. Let l = (fI, ... ,J,) be an ideal of A. We consider the Amodule homomorphism 10 defined in Section 3.1,
10: A'
given by
>
l
S
hdi'
AS1ker(lo), as Amodules.
3.2.1. The kernel oJ the map 10 is called the syzygy module oJ the 1 x s matrix [ fI Js J. It is denoted SYZ(f" ... ,Js). An clement (h" ... ,hs) oJ SYZ(f" ... ,!s) is called a syzygy oJ [ fI Js J and satisfies
hIf,
+ ... + hsJ, =
O.
Another way to say this is that Syz(fI, ... ,Js) is the set of aU solutions of the single linear equation with polynomial coefficients (the Ns) (3.2.2)
fIXI
+ ... + JsXs
= 0,
where the solutions Xi are also ta be polynomials in A. We note that the map 10 can also be viewed as matrix multiplication:
s
= Lhdi'
i=l
Js
J, and h
~:
E AS, then
lo(h ... ,hs) = Fh and SYZ(f" ... , Js) is the set of all solutions h of the linear " equation Fh = O.
119
1= (x 2 yw,xywz,y2 xz).
The map given by
q,
is
q,: A 3
.
(h" h 2, h 3) >> h (X 2  yw) + h 2(xy  wz) + h3(y2  xz). ' Then (y, x, w) and (z, y, x) are both syzygies of
[ x2
since

yw
xy 
WZ
y2 
xz ] ,
+ W(y2 
xz) = 0
Because of the isomorphlsm given in Equation (3.2.1), the ideal l can be described as a quotient of a free Amodule and SYZ(f" ... ,j,). Mareover, we can view SYZ(f" ... ,j,) as the set of alilinear relations among fI, ... ,j,. Also, homogeneous systems sueh as Equation (3.2.2) or, mare generally, such systems in Am play a central role in the theory of rings and modules, similar to the role they play in the usuallinear algebra over fields. Finally SYZ(f" ... ,j,) will play a critical role in the theory of Grobner bases; in particular, its use will lead to improvements of Buchberger's Algorithm (see Section 3.3). For these reasons and others, Syz(fI, ... ,j,) is a very important abject in commutative algebra. We note that SYZ(f" ... , j,) is finitely generated, since it is a submodule of A' (Theorem 3.1.1). One of our goals is to compute generators for SYZ(f" ... ,j,). The next lernma shows how to compute these generators in a special case (the general case is presented in Section 3.4).
PROPOSITION 3.2.3. LetcI, ... ,c, E k{O} and letX X 2, ... ,X, bepower " products in A. For i # jE {l, ... ,s}, we define X ij = Icm(Xi,X j ). Then the module Syz(c,X ... ,c,X,) is generated by " ij Xij X   e j E A' Il <. _ ~ < J. < _ S} , { ei CiXi CjXj
where el, ... ,es form the standard basis for AS.
120
j we have X ei CjXi
ij
CjXj
ij
ej is a syzygy of
C,X,
Xij Xij ... ,0,,0, ... ,0) = 1(0, ... ,0,,0, CjX CjX
i
O.
ith coord
jth
coord
Therefore
SYZ(C,X ... , csX,). " To prove the converse, let (h" ... ,h,) be a syzygy of [ C,X, that is, h,c,X , + ... + h,c,X, = O.
Let X be any power product in 1l'n. Then the coefficient of X in h,c,X, + ... + hscsXs must be zero. Thus it suffices to consider the case for which = i = 1.1 " , ,s, and where c~ = 0 or XiX~ = X for a fixed power product X. Let <1' ... ,C~t' with il < i 2 < ... < i t , be the nonzero cj '8. Then we have ci Cl C2C2 + ... + C~Cs = C~l Cil + ... + C~t Cit = O. Therefore, using the same technique as in Lemma 1.7.5, we have
Il:; i < j :;
s)
hi <X:,
+
't
~O
1 Recall
instead of the lisuai "dot product" because it will be consistent with the notation of computing syzygies of column vectors of matrices later.
121
as desired.
We observe that if C1 X 11 ... ,csXs are the leading terms of the polynomiais f" ... ,f" and if (h" ... ,h,) E Syz(e,X ... ,e,X,), then I::~lhdi has a " leading term strictly smaller than
x J X't
Cj
j
ej of [
C1 X 1
CsXs
J gives rise to
[fI
ls ] (0, ...
,0,
ith
Xi}
Xij CiXi'
0, ... ,0, 
~ jth
coord
0, ... 10)
coord
X fi  X fJ = S(j"fJ)
Cii
Cjj
Xij
This last observation and Proposition 3.2.3 seem to indicate that the syzygy module of [ It(f,) ItU,) 1 might be relevant to the computation of a Grbner basis for (J" ... ,f,). In order to implement this idea we need the following definition.
DEFINITION 3.2.4. Let X l, ... ,Xs be power products and CI, ...
1
Cs
be in
k  {O}. Then, for a power produet X, we caU a syzygy h = (h" ... ,h,) E Syz(e,X ... ,e,X,) homogeneous of degree X provided that eaeh hi is a term (that is, "It(hi ) = hi for aU i) and Xi Ip(hi ) = X for aU i sueh that hi i' O. We say that h E Syz(e,X ... ,e,X,) is homogeneous if it is homogeneous of degree " X for some power product x.
Note that the generating set given in Proposition 3.2.3 consists of a finite set of homogeneous syzygies. The next theorem presents another equivalent condition for a set ta be a Gr6bner basis.
THEOREM 3.2.5. Let G = {g" ... ,g,} be a set of nonzero polynomials in A. Let B be a homogeneous generating set of SYZ(lt(g,), ... ,It(g,)). Then G is a Grobner basis for the ideal (g" ... ,9,) if and only if for aU (h" ... ,h,) E B, we
have
h,g ,
+ ... + h,9'
G > +
O.
122
h,g ,
+ ... + htgt
7+ 0
for all h" ... ,ht. Conversely, let 9 E (g" ... , gt), say (3.2.3)
9 = u,g,
+ ... +Utgt.
= max (lp(ui)lp(gi))
l::;i::;t
least. Sinee, by Theorem 1.6.2, we need to show that 9 ean be written as in Equation (3.2.3) with X = lp(g), we may assume that lp(g) < X and show that then we ean obtain an expression sueh as (3.2.3) for 9 with a smaller value for X. Let S= {i E {l, ... ,t} IIp(ui)lp(g,) =X}. Then
Llt(ui) lt(gi) =
iES
o.
Let h = LiES lt(ui)ei (where e" ... ,et is the standard basis for At). Then hE Syz(lt(g,), ... ,lt(gt)) and h is homogeneous. Now let B = {h" ... ,he}, where for each j = 1, ... 1 P, hj = (hlj) ... l htj ). 80 h = L~=l ajhj, where, since h is a homogeneous syzygy, we may asssume that the aj '8 are terms Bueh that lp(a]) lp(hij ) lp(gi) = X for all i,j sueh that ajhij # O. By hypothesis, for eaeh j, L:~l hijgi ..2..,+ O. Thus by Theorem 1.5.9 we have for eaeh j = l, ... ,f
t t
L
i=l
h ij9i =
L
i=l
V ij9il
sueh that
t
l<i<t

L i=l
o.
U,g,
iES
LLa h
j
j=li=l
ij 9i
+ +
L L aj v
j=l i=l
ij9i
123
x.
We have obtained a representation of 9 as a linear combination of the gi '8 such that the maximum leading power product of any summand is less than X. Thus the theorem is proved. 0 In Exercise 3.2.1 we will give an example which shows that the hypothesis that the generating set of syzygies be homogeneous is necessary. We observe that the above proof uses an argument similar to the one used in the proof of Theorem 1.7.4. In fact, as a corollary to the above result, we can recover Theorem 1. 7.4. COROLLARY 3.2.6. Let G = {g" ... ,gt} be a set of nonzero polynomials in
A. Then G is a Grobner basis if and only iffor aU i,j = 1, ... ,t, 8(gi, gj) ~+ O.
PROOF. Let G be a Grobner basis. Then, since 8(gi, gj) is an element of the ideal (g" ... ,gt), we have 8(gi,gj) ~+ O. For the converse, we first use Proposition 3.2.3 ta see that the set Xij Xi, .. . . B= { lt(gi)eilt(gj)ejl'<J,t,J=I, ...
,t
is a homogeneous generating set of the syzygy module of [ lt(g,) lt(gt) As we have noted after Proposition 3.2.3, each element of B gives rise to an Spolynomial, which reduces to zero by hypothesis. Therefore, by Theorem 3.2.5, G is a Grobner basis. 0
1.
Exercises 3.2.1. In Theorem 3.2.5 the generating set B of SYZ(lt(g,), ... ,lt(gt)) was required to be homogeneous. In thls exercise we show that this hypothesis is necessary. Consider the set G = {g" g2}, where g, = x + y, g2 = X + 1 E <Q[x, yi We will use lex with x > y. a. Prove that G is not a Grobner basis for the ideal it generates. b. Prove that the set {(x + 1, x  1), (x, xl) is a generating set for Syz(lt(g,), lt(g2))'
c. Prove that (x + l)g, + (x  l)g2 ++ 0 and that xg,  Xg2 ++ O. 3.2.2. Give another example that shows that the hypothesis that B be homogeneous in Theorem 3.2.5 is necessary. 3.2.3. Let G = {g" ... ,gt} be a set of nonzero polynomials in A. Let B be a homogeneous generating set of Syz(lt(g,), ... ,lt(gt)). Prove that G is a Grobner basis for the ideal (g" ... , gt) if and only if for all (h"", ,h,) E B, we have h,g, + ... + htgt = V,g, + ... + v,g"
G G
124
where
lp(h,g ,
+ ... + h,g,) =
[Hint: See the proof of Theorem 3.2.5.] 3.2.4. At this point we do not know yet how to compute generators for the syzygy module of [ fI J, We will see in Section 3.4 how to do this. However, in certain instances we can easily find sorne elements of SYZ(f" ... , J,). Let l be the ideal of k[x, y] generated by fI, h h the 2 x 2 minors of the 2 x 3 matrix S, where
1.
S=[x 1
xl.
y
a. Give a method for fimling elements of Syz(fI, h hl. [Hint: Think of 3 x 3 matrices whose determinant must be zero, and obtain 2 syzygies this way.] b. Generalize this idea to the case of m x (m + 1) matrices with entries in k[Xl"" , Xn]. 3.3. Improvernents on Buchberger's Algorithm. So far we have not discussed the computational aspects of Buchberger's Algorithm presented in Section 1.7 (Algorithm 1.7.1). A carefullook at this issue is outside the scope of this book (see, for example, [BaSt88, Bu83, GMNRT, Huy, MaMe, Laz91]). However the computational complexity of Buchberger's Algorithm often makes it difficult to actually compute a Grbner basis for even small problems and .this limits, in practice, the scope of the applications of the theory. So we will now discuss improvements in the algorithm for computing Grobner bases. We note that the results of this section are rather technical and will only be used
occasionally in sorne of the exercises and examples in the remainder of the book. Sorne algebraic results, such as the results presented below, can be used in COlljunction with sorne simple heuristic observations ta improve significantly Buchberger's Algorithm (see [Bu'T9]). It can also be shown (but we shall not do it here) that certain algebraic (respectively geometric) properties of the ideal l
(respectively of the variety V (I)) have a direct influence on the difficulty of the computation of a Grbner basis for l (see the references above). Recall that the algorithm has two steps: the computation of Spolynomials and their reduction. A problem that arises is the potentially very large number of Spolynomials that have ta be computed. Indeed, as the computation progresses,
the number of polynomials in the basis gets larger, and therefore, each time a new
polynomial is added to the basis, the number of Spolynomials to compute also increases. Since the algorithm does terminate, the proportion of Spolynomials which reduce ta zero eventually increases as we get far in the algorithm. A huge amount of computation IDight be performed for very little gain, since few new polynomials are added to the basis. In fact, at some point before the algorithm terminates, the desired Grobner basis is obtained but we do not "know" it.
125
At that point, the computation of Spolynomials and their reductions are ail together useless except for the fact that they verify that we do have a Grbner basis. One way to improve this situation is to ((predict" that sorne Spolynomials reduce to zero without actually computing these Spolynomials or reducing them. The following results are the basis for two criteria for a priori zero reduction of Spolynomials.
LEMMA 3.3.1. Let f,g E A =
gcd(j,g). The following statements are equivalent: (i) lp(~) andlp(~) are relatively prime;
(ii) S(j, g) ~ + O. In parlicular, {J, g} is a Grobner basis if and only iflp( ~) and lp(
prime.
a) are relatively
PROOF. (i) =? (ii). Assume first that d = gcd(j, g) = 1. We write f = aX + 1', 9 = bY + g', where lt(j) = aX, lt(g) = bY, a, b E k, and X, Y are power . products. Then X = ~(j  J'l, and Y = l;(g  9'). CASE 1. l' = g' = O. Then f and 9 are both terms and S(j,g) = O. CASE 2. l' = 0 and g' # O. Then, since gcd(lp(j),lp(g)) = l, we have S(j,g) = ~Yf l;Xg = ';'b(g  g')i" ';'bfg =  ';'bg'j. We see that (Exercise
9' = O. 9' # O.
b
S(j,g) =
ab
ab
ab
If lp(j'g) = lp(g'J), then lp(j')lp(g) = lp(j'g) = lp(g'J) = lp(g')lp(j), and since gcd(lp(j),lp(g)) = l, we have lp(j) divides lp(j') and lp(g) divides lp(g'). This is a contradiction, since lp(j') < lp(j) and lp(g') < lp(g). Therefore lp(j' g) # lp(g' J), and the leading term of ';'b (j' 9  9' f) appears in l'9 or g' f and hence is a multiple oflp(j) or lp(g). If lp(j' g) > lp(g' J), then
S(j, g)
If lp(j' g) < lp(g' J), then
S(j,g) ~+ O.
126
Now assume that d = gcd(J,g) of 1. Then ged(~,:1) = 1. By assumption We have gcd(lp(~),lp(~)) = 1, and hence, by the case above, H,~} is a Griibner basis. Thus {d~, d~} is also a Grobner basis (Exercise 1.6.13). By Theorem 1.7.4, S ( 1,g ) >+ O. (ii) =? (i). Let us first assume that gcd(J, g) = 1. We need to show that lp(J) and lp(g) are relatively prime. Let lp(J) = DX and lp(g) = DY, where D, X, and Y are power products in A, ged(X, Y) = 1. Then
{J,g}
Y
By assumption we have S(J, g) such that (3.3.1)
u1 + vg,
where lp(uf) S; lp(S(J,g)) and lp(vg) S; lp(S(J,g)). From Equation (3.3.1), we obtain. . (lc%) Therefore 1 divides (let) relatively prime. Also,
+v)
9 = Ceyf)
u) f.
1
and 9 are
+ v),
lp(u)DX
= lp(uf)
S; lp(S(J,g))
Thus, lp(u) < Y, and hence lp(lerf)  u) = Y. But 9 divides Cerf)  u), so lp(g) = DY divides lp( lerf)  u) = Y, and hence D = 1. Therefore Ip(J) and lp(g) are relatively prime. Now assume that d = gcd(J,g) of 1. Then gcd(~,;I) = 1. It is easy to prove that if S(J,g) ~+ 0, then 2S(J,9) Ill} + 0 (see Exercise 3.3.3). It is also easy to prove that S(J, g) = S(~, ;1), since d is monic (see Exercise 3.3.3). Therefore, by the above, we have lp(~) and Ip(;I) are relatively prime as desired. The last statement of the lemma is an immediate consequence of Theorem 1.7.4. 0
Lemma 3.3.1 gives a criterion for a priori zero reduction: during Buchberger's Algorithm, whenever 1 and 9 are such that lp(~) and lp(:'l) are relatively prime, then it is not necessary to compute S(J, g), since S(J, g) will reduee to zero using 1 and 9 alone, and hence S(J,g) will not create a new polynomial in the basis. We note that if Ip(J) and lp(g) are relatively prime, then d = 1 and so
S(J,g) ~+ O. This is the form in which we will use the criterion below (see critl). Now we tUTn OUT attention to another criterion that turns out to be remarkably effective in improving the performance of Buehberger's Algorithm.
127
LEMMA 3.3.2. Let X X 2 , ... ,X, be power products in A = k[Xl,'" ,xn ] and let Cl, ... ,Cs E k  " {O}. For i,j = l, ... ,s, define X ij = lcm(Xi,Xj ), and let ij X ij Xs Tij = ei  e j E Syz (C1Xl, ... ,cs X s ) A,
CiXi
1
CjXj
where el, ... es is the standard basisfor AS. For eachi,j,f = 1, ... ,8 letXijR = lcm(Xi , Xj, Xi). Then we have
Ti)
Xi)1! Xij
O.
Tjf
Xii
PROOF. We have
Xijl!
Tij
Xij
Xii
XCi
p Xe,)
CeXi
Xli) ei
CiXi
ei    e j
qXi CjXj
Xiji
Xiji
  e , +   e ,  ei =
ClXi CR.XR. CiXi
Xiii!
Xiji
+ TjR +  T b
Xji Xii
AS
Xij
Xij
= O.
Tjf
Hence
Tij
is in the submodule of
generated by
and
TRi'
COROLLARY 3.3.3. We continue ta use the notation oJ Lemma 3.3.2. Let B {Tij 1 1::; i < j ::; s} be a generating set Jar SYZ(C,X ... ,csX,), Sup, " E B, and such pose we have three distinct indices i,j, f such that 'Til, 'Tjl, Tij that X, divides X ij = lcm(Xi , X j ). Then B  {Tij} is also a generating set for SYZ(C,X ... , c,Xs ). " We will use Corollary 3.3.3 to improve Buchberger's Algorithm in the following way. Let {f" ... ,Js} be a set ofgenerators for an ideal l in k[Xl, ... ,xn]. Let CiXi = lt(fi) and use the notation above. We begin by letting B = {Tij 1 1 ::; i < j ::; s}. Of course, B generates Syz(lt(h), ... ,lt(f,)). We apply Corollary 3.3.3 to eliminate as many of the Tij E B as possible obtaining a possibly smaller set of generators for Syz(lt(h), ... , lt(fs))' We then compute the Spolynomial, S(Ii, Ii), corresponding to one of the Tij remaining in Band reduce it as far as possible; we add the reduction to the set {h, ... , Js} if it does not reduce to zero, calling it Js+l. We enlarge B by the set {Ti,s+1 Il ::; i ::; s} to obtain a new set B which now generates Syz(lt(h), ... , lt(fs), lt(fs+l)). We again apply Corollary 3.3.3 ta eliminate as many of the Tij E B as possible obtaining a possibly smaller set of generators for Syz(lt(h), ... , lt(f,), It(fs+1))' We again compute an Spolynomial corresponding to a Tij remaining in B. We continue this process until
128
all of the Spolynomials eorresponding to elements in B have been computed and redueed to zero, always maintaining B as a basis of the current syzygy module. In order ta keep track, in the algorithm, of those Tij E B whose corresponding Spolynomial has been computed and reduced we break up the basis B into two parts. We also use just the indices. So we will use N C for the set of ail indices {i, j} of Tij EBat any given time for which the Spolynomial has not been computed and use C for the set of all indices {i, j} of Tij EBat any given time for which the Spolynomial has been computed. We note that at any time in the algorithm after N Chas been initialized, {Tij 1 {i, j} E N C u C} is a generating set of the syzygy module of the current set of leading tenns (see the proof of Proposition 3.3.4). So we continue the algorithm until NC = 0. We now give an improved version of Buchberger's Aigorithm as Aigorithm 3.3.1. We note that the purpose of the first WHILE loop is to initialize NC. The commands used in the algorithm are defined as follows. The command, critI (i, j), returns "TRUE" if and only if IpU;) and IpUj) are relatively prime. If critI(i,j) = TRUE, then, by Lemma 3.3.1, we know without eomputing it, that SUi, Jj) reduces to zero. Nevertheless Tij must be added to
C.
The command crit2(NC,C, s) is given as Aigorithm 3.3.2. Aigorithm 3.3.2 is an implementation of the ideas in Corollary 3.3.3 and the ensuing discussion. We nQW make a few technical points about this algorithm. The basic idea is to find triples of indices ",p"p sueh that {v,p,},{",p},{p"p} are in NC U C and Xv divides lcm(X~, X p ). Because of the way we cali this procedure in the main algorithm (Algorithm 3.3.1), we need only consider the cases where one of v, JL, p is s. This is because the cases of aH triples with v, M, p ail less than s were checked before. Sinee p" p are interchangeable, it is enough to consider the cases p = sand " = s. These two cases are the two main WHILE loops in Aigorithm 3.3.2. Mareover, we note that a pair of the form {i, s} cannot lie in C (this explains why checking mernbership in NC U C was often just done by checking membership in N C). Finally, we only check, in the second main WHILE loop, whether {i, j} is in N C sinee we are only interested in eliminating it fromNC.
PROPOSITION 3.3.4. Given a set of nonzero polynomials F = {fI, ... ,J,}, the Improved Buchberger's Algarithm (Algarithm 3.3.1) will produce a Grbner basis Jar the ideal l = (F). PROOF. Let G = {f" ... ,Jt} (t 2': s) be the output of Aigorithm 3.3.1. We first note that the Spolynamials carresponding to every pair in C reduce to zero. It then suffices ta show that {Tij I{ i, j} E C} is a generating set for Syz(lt(f,), ... ,lt(f,)), and for this it suffices ta show that at any stage of the algorithm {Tij 1{i, j} E N C U C} is a generating set for the syzygy module of cuuent leading terms. We see this as follows. At each stage of the algorithm there is one of two possibilities. Either the Spolynomial reduces ta zero, and
129
fi T' 0 (1
~ i ~ s)
WHILE i < s DO
Ne :=Neu{{j,i+ 1}
Il ~j ~ i}
Ne := crit2(Ne, C, i + 1) i:= i
+1
0 DO
WHILE Ne T'
Choose {i,j} E Ne
Ne:=Ne~{{i,j}}
C :=CU{{i,j}}
S(fi, 1;)
IF hT' 0 THEN
Is+1
G:= Gu {fs+i}
s:= s + 1
Ne:=Neu{{i,s}11~i~s~1}
Ne:= crit2(Ne,C, s)
ALGORITHM 3.3.1. Improved Buchberger's Algorithm
Neuc does not change, or a polynomial is added to G, and the relevant pairs are added to Ne u C and so the set of Tij'S corresponding to this updated Ne u C is
a generating set for the syzygy module of the new set of leading terms. Then we apply crit2 to the new Ne which does not alter this last statement by Corollary 3.3.3. The algorithm stops for the same reason Algorithm 1.7.1 stopped. D We note that in Algorithm 3.3.1 we do not give a rule for choosing the pair
130
INPUT: NC,C,s from Algorithm 3.3.1 OUTPUT: NC with pairs delete" using Corollary 3.3.3 INITIALIZATION: f WHILE f < s DO IF {f,s} E NC THEN
:=
i:= 1
WHILEi < s DO IF {i,e} ENCuC AND {i,s} ENC THEN IF X, divides lcm(Xi , X,) THEN
NC:=NC{{i,s}} i:= i + 1
f:= f
+1
i:= 1
WHILE i< s DO IF {i,s} E NC THEN
j := i
+1
WHILEj <s DO IF {j,s} ENC AND {i,j} ENC THEN IF X, divides lcm(Xi,X j ) THEN
NC:=NC{{i,j}}
j := j
+1
i:= i
+1
ALGORITHM 3.3.2.
crit2(NC,C, s)
{i,j} E NC far which we compute the corresponding Spolynomial. Sorne studies have shawn that this choiee is of vital importance. Often the Spolynamials are computed in such a way that S(fi, fJ) is computed first if lcm(lp(fi)' lp(fj)) is least (with respect ta the current term order) among the lcm(lp(fv),lp(f~)). This procedure is called the normal selection strategy. Experimental results show that this warks very well for degree compatible term orders. It is not sa
131
good for the lex term ordering. This can be explained as follows: if at sorne point the basis contains polynomials fI, ... ,Je in which the largest variable (say x n ) does not appear, then the normal selection strategy will first consider only fI) ... ft disregarding the Orres in which x n appears; in effect, a Grobner basis for (fI, ... , Je) will be computed. Experimental and theoretical results show that this Grbner basis subcomputation can be worse than the original Grbner basis computation. There are techniques to get around this problem but they are beyond the scope of this book. There is another technique that is used ta improve the performance of Buchberger's Algorithm. Namely, the palynomials Ns are interreduced at the beginning, and the basis is kept interreduced as the algorithm progresses. Even though this may require a lot of computation, it helps to avoid an unmanageable growth in the number of polynomials in the basis, and in the number of divisions necessary throughout the computation. This method is discussed in Buchberger IBu85J. We conclude by noting that the use of critI and crit2 help to reduce the number of Spolynomials that have to be computed. In fact, empirical evidence shows that if N is the number of Spolynomials that would be computed without these criteria, the use of these two criteria reduces that number to about VJii (see, for example, lez]). Ta illustrate Algorithm 3.3.1 we consider the following example. Since the polynomials generated by the algorithm are scattered throughout the text of the example, we have put boxes around these polynomials for easier reference.
1 1
12
= xy2 Z
xyz, 1
and = xyz3  xz21 in Qlx, y, zJ. We use the deglex term order with x < y < z. We follow Algorithm 3.3.1. However, we will not trace the algorithm crit2 except for one significant example at the end. Wc start with G = {J" h, h}, C = 0, and Ne = {{l, 2}, {l, 3}, {2, 3}}. We see that we do Ilot have to consider {l, 3}, that is, we have Ne =crit2(Ne,C,3) = {{l, 2}, {2, 3}}. We choose the pair {1,2}, changing Ne ta {{2,3}} and C to {{l, 2}}, and compute SU" 12) = x'yz  z3 which is reduced with respect ta G. Thus we add 1 J4 = x2yz  z31 ta G. We update Ne to include the pairs with 4 in them and then we use crit2 to compute the new Ne = {{2,3},{1,4},{3,4}}. We now choose the pair {1,4}, changing Ne ta Ne = {{2, 3}, {3, 4}} and C to C = {{l, 2}, {l, 4}}, and compute SU" J4) = yz3  z3 which is reduced with respect to G. Thus we add J5 = yz3  z3 ta G. After applying crit2 again we obtain Ne = {{2, 3}, {3, 4}, 3,5 . We choose the pair {3, 5}, sa that now Ne = {{2, 3}, {3, 4}} and C = {{l, 2}, {l, 4}, {3, 5}}, and wc compute S(h, J5) =
xz 2 ta G. Applying crit2 again we get Ne = {{2, 3}, {3, 4}, {3, 6}}. Next we choose the pair {3,6}, update Ne and C = {{l, 2}, {l, 4}, {3, 5}, {3, 6}}, and we compute S(h, JG) = xyz2  xz 2 which is reduced with respect ta G. Thus we add
xz;{  xz 2 which is reduced with respect to G. Now we add
113
116 = xz 3 
132
h =
XYZ2  XZ21 to G. Applying crit2 again we get NC = {{2, 7},{3, 7},{4, 7}}.
_Z4
+ X2 z2
which is
reduced with respect to G. Thus we add J8 = _Z4 + X2z2 to G. After applying crit2 we have NC = {{2, 7}, {3,7}, 2,8, 4,8, 5, 8},{6, 8}}. Now we choose the pair {2,7} and observe that S(12, h) = O. We choose next the pair {3,7} and see that S(h, h) S+ O. Then we choose the pair {6, 8}, we update NC = {{2, 8}, {4, 8},{5, 8}} and C = {{l, 2}, {1,4}, {3,5}, {3,6}, {4, 7}, {2,7}, {3,7}, {6, 8}}, and compute S(f6, J8) = x3 Z2  xz 3 which is reduced with re= X 3 z 2  xz 3 to G. After applying crit2 we have NC={{2,8},{4,8},{5,8, 4,9, 6,9 .TheSpolynomialscorrespondingto the remaining pairs in NC aU reduce to zero. Thus G = {ft, 12 ,h, J4, Js, Jo, h, J8, Jg} is a Grbner basis for 1= (J" h, hl We nQw give one example of crit2. We consider the situation right after adding J6 to G. There we started with NC = {{2, 3}, {3, 4}, {l, 6}, {2, 6}, {3, 6}, {4,6}, {5,6}} andC= {{1,2},{1,4},{3,5}}. For 1 we first note that {1,6} is in NC and we must consider the pairs {2,6} and {4, 6} (we do not consider the pair {3,6} because the pair {1,3} rte NC u C, and we do not consider the pair {5,6} because {l, 5} rte NC U Cl. For {2,6} we see that Ip(ft) = x 2 y2 does not divide lcm(lp(12),lp(f6)) = xy2 z3, and for {5,6} we see that Ip(ft) = x 2y2 does not divide lcm(lp(fs), Ip(f6)) = xyz" So we eliminate no pairs from NC. For e = 2 we note that {2,6} E NC and we only consider {1,6} and {3,6}. For {1,6} we note that Ip(12) = xy2z divides lcrn(lp(ft),lp(f6)) = x 2y2 z 3 and so we eliminate the pair {1,6} from NC. We may not eliminate {3,6}. Now NC = {{2,3},{3,4},{2,6},{3,6},{4,6},{5,6}}. For e = 3 we consider {2,6}, {4,6} and {5,6} and all three of thern are eliminated giving us NC = {{2, 3}, {3,4}, {3,6}}. We do not need to consider e = 4,5, since {4,6},{5,6} rte NC. We do not need to consider e = 6, since there is only one pair with 6 in it left in NC. So we finaUy arrive at NC = {{2, 3}, {3,4}, {3,6}}. Although it might appear in this example that no real saving in computation time has been gained in using crit2, we recall that, in practice, the most time consuming part of Buchberger's Algorithm is the reduction of Spolynomials and we have avoided most of these reductions by using the CUITent algorithm. Indeed, we computed a total of 13 Spolynomials, 6 of which generated elements of the Grbner basis. Had we not used crit2 we would have had to compute and reduce 9 8 = 36 Spolynomials. Note that the computations in crit2 are always trivial. 2 To conclude this section, we mention two other difficulties that arise during the computation of Grbner bases, namely, the possible rapid growth of the degrees and coefficients of the Spolynomials. Even though the degree and/or size of the coefficients of the original polynomials and the Grbner basis may be of modest size, the intermediary polynomials generated by the Spolynornial computations and reductions can become quite large. This can dramatically slow down the computation. Doing computations with large coefficients can be very spect to G. Thus we add
Jo
e=
133
costly because of the large amount of arithmetic that becomes necessary. As an example of this situation, the reduced Grbner basis for the ideal (4x'y2 + 3x, y3 + 2xy, 7x 3 + 6y) with respect to the lex order with x > y is {x, y}, while the coefficients during the computation grow as large as 10 8 . This can be seen by expressing x as a linear combination of the three original polynomials fI = 4x'y2 + 3x, 12 = y3 + 2xy, and Jo = 7x 3 + 6y: 401408 10 1835008 9 9604 8 43904 7 7 2 5 x = ( 54 x y  56428623 Y  56428623 Y  18809541 Y  18809541 Y 200704 6 18809541 Y 38416
+ 3 fI + 175616
1)
(7 3 6 27 x y
2 6
+ 56428623 x
401408
7
1605632
2 9
+ 56428623 x
917504
7340032
2 8
y
8
2 7
+ 18809541 x
+ 18809541 x
4802
+ 18809541 xy
21952
100352
3xy + 18809541 Y
1
3)
12
134
c. Can you give a reason for the difference between the bases in a and b? d. Use c to give a method for generating polynomials h, ... ,J, in n variables whose total degree is small, but such that the reduced Grbner basis for (h, ... ,J,) with respect to a certain lex order has polynomiaIs of very high degree. [Hint: In the given example, note that there are 2 solutions for z, and for each such solution, there are 5 solutions for y, etc.] e. Give examples of polynomials which satisfy d. f. Experiment by changing the degree of the x, y, z terms in the polynomials above, but keeping lex with z > y > x. How does it affect the computing time? g. Experiment by changing the term order and the order on the variables for the examples in this exercise. How does it affect the computation and the computing time? 3.3.3. Let J, g, d E k[XI, ... ,xn ] such that d divides both J and g. a. Show that S(~,~) = ,"S(f,g).
1.01+ 0, then
,"S(f,g)
{U,l + O.
3.4. Computation of the Syzygy Module. In this section we show how ta compute SYZ(f" ... ,J,) for h, ,J, E A = k[XI, ... ,xn ] This is done in two steps. We first compute a Grbner basis G = {g" ... ,g,} for (h, ,J,) and compute SYZ(gl, ... ,Yt). For convenience, we will assume that 91, ... ,9t are monic. We then show how to obtain SYZ(f" ... ,J,) from SYZ(g" ... ,g,). We will assume that we have a fixed term order on A. Let {YI, ... ,9t} be a Gr6bner basis, where we assume that the Yi '8 are monie. For i E {l, ... ,t}, we let Ip(gi) = Xi and for i of j E {l, ... ,t}, we let X ij = Icm(Xi , X,). Then the Spolynomial of gi and gj is given by
,
S(gi,gj) = "L,hijvgv ,
v=l
(The polynomials h ijv are obtained using the Division Algorithm.) We now define for i, j = l, ... ,t, i i j,
135
Sij
8(gi,9j) 
Lhi;v9v
v=l
O.
With the notation above, the collection {Si; Il S i < j S t} is a generatin9 set for SYZ(g1,'" ,9')
THEOREM 3.4.1.
PROOF. Suppose to the contrary that there exists (U1,'" ,u,) such that
(U1,'" ,Ut)
Il Si < j st).
Then we can choose such a (U1,' .. ,Ut) with X = max1';i,;,(lp( U,) Ip(9i)) least. Let 8
u; as follows:
, {U
Ui
Ui
Also, for i E 8, let It( Ui) = CiX:' where Ci E k and X; is a power product. Since (U1,'" ,Ut) E SYZ(91, ... ,9t), we see that
LC;X;Xi
iES
= 0,
and
80
L ciX;ei
iES
Syz(Xi 1 i
8).
for sorne ai; E A. Since each eoordinate of the vector in the lefthand side of the equation above is homogeneous, and sinee X:Xi = X, we cau choose aij to be a
136
LCiX:ei+(U~) ...
iES
,uD
J
i,jES
L
i<j
aijSij
L
i<j
aij(hij11
,hijt).
i,jES
i,jES
We deline (V1,'"
'<j
(V1, ... , v,) E SYZ(91, ... ,9,)  (Sij 1 1 :<; i < j :<; t), since (U1, ... , u,), Sij E SYZ(91, ... ,9,) and (U1, ... ,Ut) fic (Sij Il:<; i < j:<; t). We will obtain the desired contradiction by proving that max'<:v",(lP(vv) Ip(9v))< X. For each v E {l, ... , t} we have Ip(vv)lp(9v)
i,jES
lp(u~
L
i<j
aijhijv)Xv
i,jES
<
But, by definition of
u~,
i,jES
we have
Ip(u~)Xv
< X.
Therefore lp(vv) Ip(9v) < X for each v E {l, ... , t} violating the condition that = max1<:v<:,(lp(uv)lp(9v)) is least. 0
EXAMPLE 3.4.2. We return to Example 3.2.2. Let 91 = x 2 wy, 92 = xywz, and 93 = y2  XZ. These form a reduced Grbner basis with respect ta the degrevlex ordering with x > y > z > w. Using the notation of the abave result, we have:
= _wy2 + xwz =
X X
W93, sa hm
h '22
0 and h '23
w.
137
AIso, S(g" g3) = x 3z  y3w = xzg,  ywg3, so that h l3l = xz, h '32 = 0 and h 133 = yw. Therefore S13
X '3 X '3 e3  (h = e,  X ,3" h ,32 , h ,33 ) =
X,
). (y 2  xz, 0, x 2 + yw
Z,
h 232
= 0 and
h233
= O.
X 23 X 23 S23 = X e2  X e3  (h23l,h232,h233) = (z,y, x). 2 3 By Theorern 3.4.1, SYZ(g"g2, g3) = ((y, x, w), (y2  xz, 0, _x 2 + yw), (z, y, x)). We note that
S13
= yS12
+ XS231
80
SYZ(g"g2,g3) = ((y,x,w),(z,y,x)). We now tUTn our attention to computing SYZ(f" ... , J,), for a collection
{J" ... ,J,} of nonzero polynomials in A which may not form a Grbner basis.
We first compute a Grbner basis {g"." , g,} for (f" ... , Js)' We again assume that g" ... ,g, are monie. Set F = [ ft Js land 0 = [ g, g, l As we saw in Section 2.1, there is a t x s matrix S and an s x t matrix T with entries in A such that F = OS and 0 = FT. (Recall that S is obtained using the Division Aigorithm, and T is obtained by keei>ing track of the reductions during Buehberger's Algorithrn.) Now using Theorem 3.4.1, we can compute a generating set {SI, ... , Sr} for Syz(O) (the Si'S are column vectors in A'). Therefore for each i = 1, ... 1 r
0= OSi
= (FT)Si = F(Ts i ),
and hence
... ,TSr,Tl, ... ,T s ) AS. " PROOF. Let 8 = (a), ... , as) E SYZ(f"", , J,). Then 0 = Fs = OSs, and hence Ss E SYZ(g"", , g,). By the definition of S), ... , Sr, we have S8 = L~~) hi8i for sorne hi E A. Thus we have TS8 = L~~) h i (T8,). Finally,
Syz(ft, ,Js) = (Ts
8
S 
138
EXAMPLE 3.4.4. Let h x 2y2  x 3y, 12 xy3  x 2y2, and h y4  x 3. Let F = [h 12 We first compute a Gr6bner basis G with respect to the lex term ordering with x < y for (h, 12, hl We find 2 G = [91 92 93 94 95 where gl = y4 ~ X3 , 92 = xy3  x 3y, 93 = x 2y2  x 3y, g4 = x 4y  x 4 J and 5 4 g5 = x  x . Moreover we have
hl
l,
[ 91
92
93
94
95 1 1
l=
1
[h 12 hl
[~
0 0 0
(x + y) y x
v
s
To compute generators for SYZ(91,92,93,94,95) we need to reduce ail 8(9i,9j)'S for 1 <:: i < j <:: 5 using 91,92,93,94,95 (Theorem 3.4.1). In view of Coroilary 3.3.3 and Exercise 3.4.4, it is enough to reduce 8(91,92),8(92,93),8(93,94), and 8(94,95) which give the following respective syzygies:
81 = (X,
82 =
(0, X, x  y, 0, 0),
S3
Then
2We will often use the same letter for a finite set and a row vector corresponding to it, when the context is cIear.
139
T [
y
~2
Y We note that (_x 2 +y2, _xy+y3, x 2y_xy2) is in the submodule of A3 generated by (y,x,O) and (x 2,_y3,_x2y+xy'). Finally, it is easy to verify that
Therefore Syz(fI, h, h) = (( y,x, 0), (x 2 , _y3, _x 2y + xy2)). Using the notation of Theorem 3.4.3, we note that in Example 3.4.4 the rows of !,  TS did not give any syzygies that were not already in the submodule (TB" ... , Ts,) of A'. This is not always the case (see Exercise 3.4.2). However it is easy to see (Exercise 3.4.3) that if the polynomials fI, ... ,t, appear in the list g" . .. ,g" then Syz(f" ... ,t,) = (TB" ... ,TB,). If the Gr6bner basis for (fI, ... ,t,) is computed using Buchberger's Algorithm (Algorithm 1.7.1) or by the improved Buchberger's Algorithm (Algorithm 3.3.1), then the polynomials h, ... ,18 do appear in the list gb'" ,9t However, if a reduced Grobner basis is computed, as is done in all Computer Algebra Systems, then the polynomials ft, ... ,18 may not appear in the list gb ... ,gt
Exercses 3.4.1. Compute generators for Syz(fI, ... ,t,) in the following examples: a. fI = x 2 y + z, h = xz + Y E Ql[x, y, z]. b. fI = x 2 y  Y + x, h = xy2  xE Ql[x, y]. c. fI =x2y+z, h =xz+y, h =y2z+1 EQl[x,y,z]. 3.4.2. In Theorem 3.4.3 we had to include the columns of the matrix l,  TS in the set of generators for Syz(f" ... ,t,). In this exercise, we show that these vectors are necessary. Consider the polynomials fI = xy + 1, h = xz + 1, and h = yz + 1 E Ql[x, y, z]. a. Verify that the reduced Gr6bner basis for! = (fI'!2, h) with respect to lex with x> y > z is G = {g"g2,g3}, where g, = y  Z, g2 = X  z, and g3 = Z2 + 1. Also, show that
[g,
g2
g3]=[fI
z 0 x
v
i
z2
140
3.4.3.
3.4.4.
3.4.5. 3.4.6.
b. Compute the matrix S such that [il 12 h = [g, g, g3 S. c. Compute the 3 generators, say 81, 82, 83, for Syz(gl, 92, g3). d. Compute I3  TB. This matrix has 2 nonzero colurons, say Tl, T2. e. Verify that (Ts Ts"Ts 3) '" (Ts Ts 2,Ts3,r"r2)' " ,J,} {g" ... " Assume that {f" ... ,g,} and {g" ... ,g,} is a Grbner basis for l = (f" ... ,J,). Prave that, with the notation of Theorem 3.4.3, Syz(f" ... ,J,) = (Ts ... ,Tsr ), that is, the columns of the matrix l, TB are not necessary. " Genera!ize Theorem 3.4.1 as follows: Let {g" ... ,gt} be a Grbner basis and let Ti, be as in Section 3.3. Let B {Tij 1 1 <:: i < j <:: t} be a generating set for Syz(lt(g,), ... ,It(g,)). Prave that {Si' 1 Tij E B} is a generating set for SYZ(g" ... ,g,). Apply Exercise 3.4.4 and Corallary 3.3.3 to the computations in Exercise 3.4.l. Let il, ... ,J" 9 E klxl" .. ,xnJ and consider the !inea!" equation
hd,
= g,
with unknowns hl, ... ,hs E k[Xl' ... ) xn]. Let S be the set of solutions; I.e. S = {(h" ... ,h,) E A' 1 hd, + h 212 + ... + h,J, = g}. a. Praye that S is not empty if and only if 9 E (fr, ... ,J,). b. Praye that if S '" 0 then S = h + SYZ(f" ... ,J,) = {h + sis E Syz(f" ... ,J,)}, where h is a particular solution. Give a method for computing h. c. Use the above ta find the solution set for the equation
+ h3(y4 _
x3) = y7 _ y6
3.5. Grbner Bases for Modules. As before, let A = k[Xl' ... ,xnJ for a field k. We have seen in the previous sections of this chapter that certain submodules of Am are important. In this section, we continue to study such submodules, but now from the point of view adopted for ideals in the earlier parts of this book. Namely, we will genera!ize the theory of Grbner bases to submodules of Am. As a result we will be able ta compute with submodules of Amin a way similar to the way we computed with ideals previously. The idea is to mimic the constructions we used in Chapter 1 as much as possible. Let us recall the ingredients for the methods wc used before for ideals. First 1 in Section 1.4 we defined t,he concept of a power product and then defilled a term order on these power prodncts, that iS a total order with special properties with respect to divisibility (wc willneed ta define a concept of divisibility). Using these ideas, in Section 1.5 wc defined the concept of reduction whieh in turn led to the Division Aigorithm. Theil in Section 1.6 we dcfined the concept of a Grobuer basis, givillg the cquivalent conditions for Ct Gr6bller basis in Theorem 1.6.2 (and further in Theorcm 1.9.1). The llext issu<" discuss('d in Section 1.7,
1
141
was how to compute Grbner bases, and for that we developed Spolynomials and Buchberger's Algorithm. We will follow this development very closely. Indeed many of the proofs in this and the next two sections are very similar to the corresponding ones for ideals and will be left to the exercises. We again need the standard basis
el
= {l,0, ... ,0),e2 = (0,1,0, ... ,0), ... ,em = (0,0, ... ,0,1)
of Am. Then by a monomial 3 in Am we mean a vector of the type X ei (1 SiS m), where X is a power product in A. That is, a monomial is a column vector with ail coordinates equal ta zero except for one which is a power product of A. Monomials in Am will replace the notion of power products in the ring A. Sa, for example, (0,XX3, 0) and (0,0,X2) are monomials in A3, but (O,XI +X2,0) and (0,X2,XI) are not. If X = Xei and Y = Yej are monomials in Am, we say that X divides Y provided that i = j and X divides Y Thus in A 3 we see that (0, XX3, 0) divides (0, xix~, 0), but does not divide (0, XIX3, 0) or (xx~, 0, 0). We note that in case X divides Y there is a power product Z in the ring A such that Y = Z X. In this case we define<
Y=Y=Z X X .
So, for example
(0, xix~, 0) xx~ 2 =  2  =X3 (0,X I X3,0) Xl x3 Similarly, bya term, we mean a vector of the type eX, where e E k{O} and X is a monomial. Thus (0, 5xIx1, 0, 0) = 5X, where X = (0, xIx1, 0, 0) = xix1e2' is a term of A 4 but not a monomial. Also, if X = eX ei and Y = dYej are terms of Am, we say that X divides Y provided that i = j and X divides Y We
write
y
X (0, 5xlx~, 0) (0, 2xIx3, 0)
dY cX
= 2xi x 3 = :lx 3.
5xx~
3.5.1. By a term order on the monomials of Am we mean a total arder, <, on these monomials satisfying the following two conditions: (i) X < ZX, for every monomial X of Am and power produet Z of 1 of A;
DEFINITION
3In the case that m = 1 we have now called a monomial what we referred to before as a power product. From now on in the book we will use monomial and power product interchangeably for such elements in the ring A. 4Be careful about what we are doing here. We are "dividing" two vectors in Am to obtain an element in A; but we are only doing this in the very special case where each of the vectors has only one nonzero coordinate in the same spot which is a power product and one power product divides the other. The "quotient" is defined to be the quotient of those two power products.
142
Am and every
Looking at Definition 1.4.1 we see that Conditions (i) and (ii) there correspond to Conditions (i) and (ii) in Definition 3.5.1. Condition (i), specialized to the CaBe of m = l, simply says that Z > l, since the monomial X can be cancelled. This is Condition (i) of Definition 1.4.1. The corresponding second conditions are exactly parallel. If we are given a term order on A there are two natural ways of obtaining a term order on Am. These are given in the following two definitions.
DEFINITION
that
that
X<Y={
~;j
i = j and X
< Y.
We call this arder POT for' "position over term", since it places more importance on the position in the veetoT than on the term arder on A.
80 in this case we have, again for the case of two variables and m deglex on the power products of A with x < y,
=
2, using
143
PROOF. The proof of this lemma is exactly the same as the proof of Theorem 1.4.6 except that the Hilbert Basis Theorem (Theorem 1.1.1) used there must be replaced by Theorem 3.1.1 (Exercise 3.5.2). 0
We now adopt sorne notation. We first fix a term order < on the monomials of A=. Then for ail f E A=, with f '" 0, we may write
a,X, +a2X2
+ ... + arXc,
where, for 1 :::; i :S r , 0 # ai E k and Xi is a monomial in ATn satisfying X, > X, > ... > Xr. We define ImU) = X" the leading monomial of f; leU) = a" the leading coefficient of f; ItU) =a,X" the leading termof f. We define It(O) 0, Im(O) = 0, and le(O) = O. Note that, consistent with using monomials in Am instead of the power prod~ ucts in A, we now use leading "monomials" instead of leading "power products" , and use the symbol "lm" instead of "lp" . EXAMPLE 3.5.5. Let f = (2x 3y _ y3 +5x,3xy2 +4x+y') E A 2, with the lex ordering on A = lQI{x, yi with x < y. Then in the TOP ordering with e, < e2 of Definition 3.5.2 above, we have
= _y3 e ,
and so ImU) = y3 e" le(!) = 1, and ItU) = _y3 e ,. On the other hand, in the POT ordering with e, < e, of Definition 3.5.3 above, we have
= 3xy2e2
+ y'e, + 4xe2 
y3 e ,
+ 2x 3ye, + 5xe"
and sa ImU) = xy 2e2' leU) = 3 and ItU) = 3xy 2e2 . We note that lm, le and It are multiplicative, in the following sense: ImUg) = lp(f) lm(g), leUg) = le(f) le(g) , and lt(fg) = lt(f) It(g), for ail f E A and 9 E A= (Exercise 3.5.6). We now maye on ta the second ingredient in our construction of Grobner bases for modules, namely, reduction and the Division Algorithm. It should be emphasized that now that we have defined monomials (in place of power products), divisibility and quotients of monomials, and term orders, the definitions can he lifted word for word from Section 1.5. The basic idea behind the algorithm is the same as for polynomials: when dividing f hy fi"" ,f8' we want to cancel monomials of f using the leading terms of the fi'S, and continue this process until it cannot he done anymore. DEFINITION 3.5.6. Given f,g,h in A=, 9 '" 0, we say that f reduces ta h modulo g in one step, wntten f "+ h,
144
I,(;,)g
We can think of h in the definition as the remainder of a one step division of by 9 similar to the one seen in Section 1.5. Observe that the terms introduced by subtracting I,(;,)g from f are smaller than the term X subtracted out of f. We can continue this process and subtract off ail possible terms in f divisible by lt(g). EXAMPLE 3.5.7. Let f = (y3+2x 3 y,3xy2+y2+4x) andg = (x+l,y2+x) be in A 2 We use the lex ordering on A = Q[x, y], with x < y, and TOP with e, < e2 in A 2 Then, lt(g) = (0, y2) = y 2e2' and
~ ~
Let f, h, and f" ... ,f, be veetors in Am, with f" ... , f, nonzero and let F = {fl> ,fs}. We say that f reduces to h modulo F, denoted
DEFINITION 3.5.8.
>+ h,
if and only if there exisls a sequence of indices i" i2, ... , it E {l, ... , s} and vectors hl,'" ) h t  1 E Am such that
EXAMPLE 3.5.9. Let f, = (xy  y,X 2),f2 = (X,y2  x) E A 2 We use the lex ordering on A = Q[x, y], with x < y, and TOP with e, < e2 in A 2 Let F = {J"h} and f = (y2 + 2x2y,y2). Then
(y2
+ 2xy _
X, 2x3
Notice that thls last be reduced further by f, or f2' This is because lm(f,) = (xy,O) and no power product in the first coordinate of h is divisible by xy and lm(f 2) = (0, y2) and no power product in the second coordinate of h is divisible by y2.
DEFINITION 3.5.10. A veetor r in Am is ealled reduced with respect ta a set F = {fl>'" , fs} of nonzero veetors in Am if T = 0 or no monomial that appears in T is divisible by any one of the lm(fi)' i = 1, ... , s. If f ~+ rand r is redueed with respect ta F, then we call r a rernainder for f with respect to F.
+ x) J.2., (y2 + 2y  x, _2x3  2X2 + x). vector h = (y2 + 2y  x, 2x 3  2X2 + x) cannot
'45
The reduction process allows us ta give a Division Algorithm that mimies the Division Algorithm for polynomials. Given J, J" ... , J, E Am, with fI' ... ,fs oF 0, this algorithm returns quotients al) .  . ,as E A = k[Xl1 ... ,xnl, and a remainder r E A"t, which is reduced with respect to P, such that
J=ad, ++asJ,+r.
This algorithm is given as Algorithm 3.5.1. INPUT: J,I" ... ,l, E Am with Ji
of 0 (1 <:: i <:: s)
max(lp(a,) lm(f ,), ... , !p(a s ) hn(f ,), lm(r)) = lm(f) INITIALIZATION: a, := 0, a2 := 0, ... , as := 0, r := 0, 9 := WHILE 9
of 0 DO
IF there exists i sueh that lm(fi) divides lm(g) THEN Choose i least sueh that lm(fi) divides lm(g)
ai 9
ELSE
:= :=
ai
+ lt(fi)
lt(g)
lt(g)
9  lt(fi) Ji
r
:=
+ lt(g)
g:=glt(g)
ALGORlTHM 3.5.1. Division Aigorithm in Am Note that the step r:= r+lt(g) in the ELSE part of the algorithm is used to put in the remainder the terms that are not divisible by any lt(fi) and the step 9 := 9 lt(g) is used to continue in the algorithm to attempt to divide into the next lower term of g. EXAMPLE 3.5.11. We will redo Example 3.5.9 going step by step through Algorithm 3.5.1. INITIALIZATION: a, := 0, a2 := 0, r := 0, 9 := (y2 + 2x2y, y2) First pass through the WHILE loop: (xy,O) = lm(f ,) does not divides lm(g) = (0, y2) (0,y2) = hn(f2) divides lm(g) = (0,y2)
146
a a 2. 2
+ It(f2)It(g)  1
+ 2x2y
y2) _
l
(O,y')
(O,y2)
(x y2  x)
1
= (y2+2x2yx,X) Second pass through the WHILE loop: Neithr Im(f,) nor Im(f2) divides Im(g) = (y2,0) r := r + It(g) = (y2, 0) g := g It(g) = (2x2y  X, x) Third pass through the WHILE loop: (xy,O) = Im(fl) divides Im(g) = (x 2y, 0) a . a + It(g)  2x
11 It(fl)
g := (2x2y  x, x)  (~~::o~) (xy  y, x 2) = (2xy  x, 2x 3 + x) Fourth pass through the WHILE loop: (xy,O) = Im(fl) divides Im(g) = (xy,O) al := al + I~~~:) = 2x + 2 g := (2xy  X, 2x 3 + x)  ?::,~) (xy  y, x 2 ) = (2y  x, 2x 3  2x2 + x) Fifth pass through the WHILE loop: Neither Im(fl) nor Im(f2) divide Im(g) = (y,O) r := r + It(g) = (y2 + 2y, 0) g := g It(g) = (x, 2x 3  2x2 + x). The remaining four passes through the WHILE loop, one for each of the four remaining terms in g, will be similar ta the last one, since neither Im(!l) nor Im(f2) divides any of the remaining terms of g. Sa we finally get, as we did in Example 3.5.9, that
f~+(y +2yx,2x' 2x 2 +:z:)=r
F
'3
and, mQreovcr
f=(2x+2)fl +f 2 +r.
THEO REM 3.5.12. Given a set F = {fl, ... ,fJ of nonzero vectors and 3.5.1) will pradnce polynomials al, ... ,a,5,E A and a vectorr E Am Buch that
147
PROOF. The proof is exactly the same as the proof of Theorem 1.5.9 except that we use Lemma 3.5.4 instead of Theorem 1.4.6. 0 We now have what we need to define Grbner bases in modules. So let M be a submodule of Am.
DEFINITION 3.5.13. A set of nonzero vectors G = {g" ... ,gt} contained in the submodule M is called a Grbner basis for M if and only if for all f E M, there exists i E {l, ... ,t} such that lm(gi) divides lm(j). We say that the set G is a Grbner basis provided G is a Grobner basis for the submodule, (G), it generates.
We nQW give the characterizations of a Grobner basis analogous to those in Theorems 1.6.2 and Theorem 1.6.7. The proof is basically the same as the one for the ideal case and is left to the exercises (Exercise 3.5.9). We first define, for a subset W of Am, the leading term module of W to be the submodule of Am,
Lt(W) = (lt(w)
W E
W)
Am.
THEOREM 3.5.14. The following statements are equivalent for a submodule M Am and G = {g" ... ,gt} M with gi oJ 0 (1 :' i:' t). (i) For all f E M, there exists i such that lm(gi) divides Im(j) (that is, G is a Grobner basis for M).
(ii) f E M if and only if f S+ o. (iii) For aU f E M, there exists h" ... ,ht E A such that f = h,g, + .. +htg t and Im(j) = max'<;i<;t(lp(htllm(gi)). (iv) Lt(G) = Lt(M). (v) For aU f E Am, if f S+ Tl, f S+ T2, and Tl, r2 are reduced with
respect to G, then
Tl = T2.
For completeness sake, we note the Corollaries of this result which correspond to the Corollaries of Theorem 1.6.2 (Exercises 3.5.10 and 3.5.11).
COROLLARY 3.5.15. If G = {g" ... ,gt} is a Grobner basis for the submodule M of Am, then M = (g" ... ,gt). COROLLARY 3.5.16. Every nonzero submodule M of Am has a Grobner basis.
We will now introduce the analogue of Spolynomials. We continue to emphasize that we need only copy what was done in the polynomial case, except that it is not yet clear what the least common multiple of two monomials should be. 80 let X = X ei and Y = Yej be two monomials in Am. Then by the least common multiple of X and Y (denoted lcm( X, Y)), we mean .0,ifioJj; Lei where L = lcm(X, Y), if i = j. For example, lcm((x 2 yz, 0), (xy3, 0)) = (x 2 y3 z , 0) and lcm((x 2 y, 0), (0, xy3)) = (0,0).
148
io 1,g
=
L S(f,g)
is caUed the Spolynomials of 1 and g.
lt(f/  lt(g)g
The motivation for tills definition is the same as the one used for the definition of Spolynomials in Definition 1.7.l. Namely, we are interested in linear combinations of 1 and 9 in which the leading monomials cancel out. This cannot happen if lm(f) and lm(g) have their respective nonzero entries in different coordinates and 80, in this case, we define their least cornmon mult~ple ta be the zero vector making their Spolynomial the zero vector. On the other hand, if lm(f) and lm(g) have their respective nonzero entries in the same coordinate, then S(f,g) is set up to cancel out these leading monomials in the most efficient
way.
< y and A2 with the TOP ordering with e, < e2. Then,
S((x 2
(0 x 3y 3) (0 x3y3) 2 , (x +1,5xy3+ x ) ' 3 (x 2 y,3x 3 y+y) = (0,5 xy3) (0,3x y) x2 2 3 y2 2 3 1 4 1 2 5(x +1,5xy +x)3(x y ,3x Y + Y)=(5 X +5 X
3 XY
2 3
1 3 '5 x
3 Y
3)
Note that the leading monomial of each of the summands is (0, x 3 y 3) wlllle the leading monomial of the Spolynomial is (x 2 y 3, 0) < (0, x 3 y 3). THEOREM 3.5.19. Let G = {g"", ,g,} be a set of nonzero vectors in Am. Then G is a Griibner basis for the submodule M = (g"", ,g,) of Am if and only if for aU i io j,
We willleave the proof of tills Theorem to the exercises (Exercise 3.5.13); it follows the proof of Theorem 1.7.4 exactly. This last Theorem allows us to give the analog of Buchberger's Algorithm, Algorithm 1.7.1, for computing Gr6bner bases. It is given as Algorithm 3.5.2. Although this algorithm is exactly the same as Algorithm 1.7.1, we will restate it here for the convenience of the reader. The proof of the correctness of the algorithm is left to the exercises (Exercise 3.5.14).
5We use the term "Spolynomial" even though the result is clearly a vector with polynomial
coordinates.
149
; Am with!i,fO (1 Si S s)
OUTPUT: G= {g" ... ,gt}, a Grbnerbasis for (f" ... ,fs) INITIALIZATION: G := F, WHILEg,f0DO Choose any {J,g} E g
g := {{Ji' !j} 1 !i ,f !j
E G}
g:= g  {{J,g}}
S(f,g)
S+ h,
IFh,fOTHEN
g := g U {{ u, h}
G:=GU{h}
for ail u E G}
ALGORITHM EXAMPLE
!,
= (O,y,x),
= (O,x,xyx), h
= (X,y2,0), !4 = (y,O,x).
We use the deglex term order on <Ql[x, yi with x > y and the TOP order on (<Ql[x, y])3 with e, > e2 > e3. We compute a Grbner basis for M = (f"!2'!3'!4) using Algorithm 3.5.2. Let G = {J"!2,h'!4}. The only Spolynomials with non~zero L in Definition 3.5.17 are the Olles corresponding to g = {{lI, !2}' {J,,!4}, {J2, !4}} We compute
S(lI, !2)
y!,  J,
(0,y2  x,x)
This vector is reduced with respect to G, so we set !s = (x, x  y, 0), and we add it to G. Next, S(f,'!4) =!, !4 = (y,y,O). Again, this vector is reduced with respect to G, so we set!6 = (y,y,O), and we add it to G. One readily sees that S(f2'!4) S+ o. The new vectors!5 and ! 6 generate only one Spolynomial that needs to be considered,
S+
This vector is reduced with respect to G, so we set! 7 = (0, 2xy  x  y, 0), and we add it to G. This new vector generates only one Spolynomial that needs to be considered,
150
We set fs = (0, _2X2 + ~x + ~y, 0) and add it to G. This new vector generates two S polynomials we need to consider, 1 1 2 fs = (3 S(f3,!S ) = 2x 2 f3 +y 2x '2 xy2 + 2 Y3)G ,0 >+ 0 and S(f7,f s )
2
>+ O.
Therefore G = {f1,!2, f 3, f4' J5,!S,!7,!8} is a Grbner basis for M. Finally, we conclude this section by noting that the results in Chapter 1 concerning reduced Gr6bner bases hold in this context as weil. We will not prove the results here as, again, they exactly parallel the ones in Chapter 1, but we will state the main Definition and Theorem here for completeness. The proof will be left for the exercises (Exercise 3.5.17). DEFINITION 3.5.21. A Grobner basis G = {gl' ... ,gi} :; Am is a reduced Grobner basis if, for ail i, gi is reduced with respect ta G  {gJ and lc(g,) = 1 for aU i = 1, ... ,t. Thus for all i, no nonzero term in Yi is divisible by any lm(gj) for any j '" i. THEOREM 3.5.22. Fix a term arder. Then every nonzero submodule M of Am has a unique reduced Grobner basis with respect ta this term arder. This Grobner basis is effectively computable once M has been given as generated by a finite set of veetors in Am. EXAMPLE 3.5.23. We go back to Example 3.5.20. In that example we had that G = {fI' f2' h, f 4 , f5' fs, f 7 , fs} is a Grbner basis for M. We first observe that since lm(fl) divides lm(f2) and lm(f4) we may eliminate f2 and f4 from G and still have a Grbner basis. Moreover, f3 >+ (0,y2  X y,O). Therefore the reduced Grbner basis for M is
2. 211) { (0, y, x), (0, y  x  y, 0), (0, x  4x  4Y' 0 ,
151
3.5.5. Write the following vectors as the sum of terms in decreasing order according to the indicated term orders: a. f = (X 2y_xy2, x 3+1, y3_1), with the deglex term order on A = lQl[x, y] with x > y, and the TOP ordering on A3 with e, > e2 > e3. Then change the order to deglex with y > x and the POT ordering with e, < e2 < e3. Finally, change the order to lex with y > x and the TOP ordering with e, < e2 < e3. b. f = (x 2 + xy, y2 + yz, z2 + xz), with the degrevlex term order on A = lQl[x, y, z] with x > y > z, and the TOP ordering on A3 with e, < e2 < e3. Then change the order to degrevlex with z > y > x and the POT ordering with e, > e2 > e3. Finally, change the order to lex with z > y > x and the TOP ordering with e, < e2 < e3. 3.5.6. Prove that lt, lm, and le are multiplicative. Namely, prove that for ail f E A and 9 E A= we have lt(fg) = lt(f) lt(g), lm(fg) = lp(f) lm(g), and !c(fg) = !c(f) !c(g). 3.5.7. Complete the proof of Theorem 3.5.12. 3.5.8. As in Example 3.5.11, follow Algorithm 3.5.1 to find the quotients and remainders of the following divisions: a. Divide f = (x 2y+y,xy+y2,xy2+x 2 ), by F = {t,,!2,h, f4}' where f, = (x 2,xy,y2), f2 = (y,O,x), h = (O,x,y), and f4 = (y, 1,0). Use lex with x > y on A = lQl[x, y] with the TOP ordering on A3 with el> e2 > e3 b. Divide f = (x 2y+y,xy+y2,xy2+X 2 ), by F = {t,,!2,h.f4}' where f, = (xy,O,x), f2 = (y,x,O), f3 = (x+y,O,O), and f4 = (x,y,O). Use deglex with x > y on A = lQl[x, y] with the POT ordering on A 3
with
el
>
>
3.
Prove Theorem 3.5.14. Prove Corollary 3.5.15. Prove Corollary 3.5.16. Prove the analog of Exercise 1.6.13: Let {g"", ,g,} be nonzero vectors in A= and 0 of h E A. Prove that {g"", ,g,} is a Grbner ba3is if and only if {hg ... , hg,} is a Grbner ba3is. " 3.5.13. Prove Theorem 3.5.19. 3.5.14. Prove that Algorithm 3.5.2 produces a Grbner basis for (f"", '!sl. 3.5.15. Compute the Grbner bases for the following modules with respect to the indicated term orders. You should do the computations without a Computer Algebra System. a. M = (f,,!2,f3,!4) A3, where f, = (x 2 ,xy,y2), f 2 = (y,O,x), f3 = (O,x,y), and f4 = (y, 1,0). Use lex on A = lQl[x,y] with x> y and the TOP ordering on A3 with e, > e2 > e3. b. M = (f , ,!2,!3,f4 ) A3, where f, = (xy,x,x), f 2 = (yx,y,y), f3 = (y, x, x), and f4 = (y, x, 0). Use deglex on A = lQl[x, y] with y> x and the TOP ordering on A3 with e, > e2 > e3.
152
3.5.16. Give an example that shows that the analog of Lemma 3.3.1 is false in the modnle case; that is, critl of Section 3.3 cannot be used in Algorithm 3.5.2. 3.5.17. Prove Theorem 3.5.22. 3.5.18. Find the reduced Grbner bases for the examples in Exercise 3.5.15. 3.5.19. In this exercise, we will take a different view of the module Am which allows us to implement Grbner basis theory in Computer Algebra Systems that don't have a builtin module facility. Let el, e2, ... ,em be new variables and consider the polynomial ring k[Xl 1 ' " ,Xn , el, ,e'TrJ We identify Am with the Asubmodule of k[XI"" ,Xn,el, ... ,e m ] generated by el, e2, , e m simply by sending (fI, , J,) to fIel + ... + Jmem E k[Xl, ... 1 Xn' el, . '. ,em ]. Fix a term order on k[Xl' ... ) In]. Consider any order on the variables eb e2, .. 1 em sueh that el < e2 < ... < em . Prave the following: a. Consider an elimination order between the x and e variables. Then, in the above correspondence, if the ;1; variables are larger than the e variables we have the TOP ordering in Amand if the e variables are larger than the x variables we have the POT ordering in Am. b. Note that division and quotient of monomials in Am just mean the lisuai division and quotient in k[Xl1'" ,X n ,el" .. lem]' Then note that Definitions 3.5.6, 3.5.8, and 3.5.10 become the usual ones in k[xj, .. , X n , el, ... , e m ]. Show that the Division Algorithm for modules (Algorithm 3.5.1) corresponds directly to the polynomial Division Algorithm (Algorithm 1.5.1). c. Show that the usual Buchberger's Algorithm (Algorithm 1.7.1) performed in k[Xl1'" 1 In) el, ... 1 e m ] can be used to compute Grobner bases in Am with the following modification: In the definition of the least common multiple, we must set lcm(X ei, Yej) = 0 for power products X and Y in the x variables when i # j. d. Redo the computations in Exercise 3.5.15 using the above method. 3.6. Elementary Applications of Grobner Bases for Modules. Let M = (f 1'" . , f ,) be a submodule of Am. As in the case of ideals in A (see Section 2.1), we show in the present section how to perform effectively the following tasks: (i) Given f E Am, determine whether f is in M (this is the module membership problem), and if so, find hl, ... , h, E A such that f =
hd 1 ++h,f,;
(ii) Given M', another submodule of Am, determine whether M' is contained in M, and if M' M, whether M' = M; (iii) Find coset representatives for the elements of Am lM; (iv) Find a basis for the kvector space Am lM. Moreover, we show how the theory of elimination we introduced in Section 2.3 is carried over ta the module setting.
3.6. ELEMENTARY APPLICATIONS OF GROBNER BASES FOR MODULES 153 Let F = {J" ... ,J,} be a set of nonzero vectors in Am and let M = (f" ... ,!,). Let G = {9" ... ,9,} be a Grbner basis for M with respect to sorne term order. We start with Task (i). Let 3.5.14 that
JE M
=J
>+ O.
So we can determine algorithmically whether J E Mor not. Moreover, if J E M, we apply the Division Algorithm for modules presented in Section 3.5 (Algorithm 3.5.1) to get
(3.6.1)
As in the ideal case, we can find an s x t matrix T with polynomial entres such that, if we view F and G as matrices whose columns are the f /8 and the 9/S respectively, we have G = FT. (T is obtained, as in the ideal case, by keeping track of the reductions during Buchberger's Algorithm for modules.) Therefore Equation (3.6.1) can be transformed to express the vector J as a linear combination of the vectors fI' ... 1 f 8' EXAMPLE 3.6.1. Let A = <Qllx, yi. We consider the submodule M of A3 generated by F = {f"J2,!3,J 4}, where
J,
(xy,y,x), J2 J3
= (y,x,y),
We use the lex term ordering on A with x < y and TOP with e, > e2 A 3 . To indicate the leading term of a vector we will underline it; e.g.
> e3
on
(x',x,)t).
9,
= (x 3 + x,x 2 93
X,
x), 92
= ()t+x',O,O), 94 = (x 2,x,)t),

95 = (x 2, x 3, _x 3), 96 = (x 2
x4
3x 3 + x 2 + 2x).
Consider the vector J = ( 2x, x  1, xy + x). To determine whether J is in M, we perform the Division Algorithm presented in Section 3.5 (Algorithm 3.5.1)6:
Since xe" and e2 cannot be divided by any Im(9i), the vector (x,l,O) is reduced with respect to G, and hence J is not in M.
6We remind the reader that when we write
f ~ h we mean that h = f  X g.
154
x~ (yx _ x
~3 (_x7 _
, ,
+ X, Y  x 6 + x 5 + 2x2 x5 + x3 + X, Y _ x 6 + x 5 + 2x2 7 _
X,
+ x 5) X, xy + x 5 )
xy
~(_x7_X5+X,y_x6+x5+x2_x)x5)
(_x 7 _
x5 ,
_x 6 +x 5 ,x 5 )
x 4 ,g1
>
(0,0,0).
We nQW want ta express 9 as a linear combination of the original consider the matrix T that transforms G into F. We have (3.6.2)
0 1 0 1 0 0 1 1 0 0 0 1
f /8.
Sa we
h,
h2 h3 h4
= [
J, J,
J3
J4
["
1
x xl
where
(3.6.3)
h, h2 h3 h4
=
=
=
=
Therefore we have
9
x4g, + (x 4 + 1)g2 + (x 5  x)g3 + xg 4 4 4 X (J, + J2  xfs + (x 1)J4) + (x + 1)(f2  J 4 ) +(x 5  x)(J3 + J 4) +XJ4 4 X J, +J2+ X J3J 4
Now we turn our attention to Task (ii). Let M' be another submodule of Am, say M' = (f;, .. . ,J;). Then M' c:: M if and only if J; E M for i = l, ... ,R. This can be verified algorithmically using the method described above. Moreover, if M' c:: M, then M' = M if and only if M c:: M', and this, again, can be verified algorithmically using the above method. Alternatively, we can compute reduced
3.6. ELEMENTARY APPLICATIONS OF GROBNER BASES FOR MODULES 155 Grbner bases for M and M'and use the fact that reduced Grbner baBes for subrnodules of Am are unique (Theorem 3.5.22) to determine whether M = M'. EXAMPLE 3.6.2. We go back to Example 3.6.1. Let M' be the submodule of A3 generated by {f 2,f3,f4,g}. M' is a submodule of M, since we showed in Example 3.6.1 that g E M. However, using the same order we did in Example 3.6.1, the reduced Grobner basis for M' is given by {g~,g2,g~,g~,g~,g~}, where
g'3
= (x 6 " x 7 _x 7 ) g'4 = (x 7 + x 5 , x 6 _
1
S S X , _X ) ,
_
g; = (x',x,y), g~ = (x 6
2x S , _x 6
+ 2x S ,x9 _
x8
3x 7
+ x 6 + 2x S ).
Since the reduced Grbner basis for M' is not equal to the one for M, the modules M and M'are not equal. Now ifwe consider the submodule Mn of A3 generated by {I 1,12' 13,g}, then again MI! is a submodule of M. Moreover, we can compute that the reduced Grobner basis for Mil is the same as the reduced Grbner basis for M, and therefore Mn = M. We next turn our attention to Task (Hi), that is, we find coset representatives for the quotient module Am / M. Let G be a Grbner basis for M and let 1 E Am. We know from Theorems 3.5.12 and 3.5.14 that there exists a unique vector r E A ~, reduced with respect to G, such that
e f >+ r.
As in the ideal case, we call this vector r the normal form of G, and we denote it by N e (!). PROPOSITION 3.6.3. Let 1 and g be vectors in Am. Then
1 with
respect to
1+M
g + M in Am /M
<==?
Nc(!) = Ne(g).
Therefore {Ne(f) IlE Am} is a set of coset representatives for the quotient module Am/M. Moreover the map Ne:
Am
>
>+
1
is klinear.
Am N c(!)
The proof of this result is similar to the one for the ideal case (PropoSition 2.1.4) and is left to the reader as an exercise (Exercise 3.6.4). As in the ideal case (Proposition 2.1.6), we have the following Proposition whose proof we also leave to the exercises (Exercise 3.6.5). It solves Task (iv). PROPOSITION 3.6.4. A ba.sis for the kvector space Am /M consists of aU the cosets of monomials X E Am such that no lm(g,) divides X.
156
EXAMPLE 3.6.5. We again go back to Example 3.6.1. The leading terms of the reduced Grobner basis are:
To conclude this section, we consider the theory of elimination presented in Section 2.3, but now in the module setting. Again the proofs are very similar to the ones for the ideal case and, except for the proof of Theorem 3.6.6, are left to the reader. Let YI, ... ) YR. be new variables, and consider a nonzero module
,X n ,
As in the ideal case (Section 2.3), we wish to "eliminate" sorne of the variables. For example, we wish to compute generators (and a Grbner basis) for the module MnATn, that is, we wish to eliminate the variables YI,'" ,YR. First, we choose an elimination order on the power products of A[YI, ... ,y,] with the Y variables larger than the x variables (see Section 2.3). The next result is the analog of Theorem 2.3.4 in the module context (in fact Theorem 2.3.4 is the special case m = 1 in Theorem 3.6.6).
THEOREM 3.6.6. With the notation as above, let G be a Grobner basis for M with respect ta the TOP monomial ordering on (A[YI, ... ,y,])m. Then G n Am is a Grobner basis for M n Am. PROOF. Clearly (GnAm) : MnAm. So let 0 of f E MnAm. Then there is agE G such that Im(g) divides Im(f). Since the coordinates of f involve only the x variables, we see that Im(g) can only involve the x variables as weil. Then sinee we are using an elimination order with the y variables larger than the x variables we see that the polynomial in the coordinate of 9 giving rise to Im(g) cau contain only x variables. Finally, since the order is TOP on Am we see that the polynomials in ail of the coordinates of 9 must contain only x variables. D
We will give an example in the exercises where the above result is false if the TOP ordering is replaced by the POT ordering on Am (see Exercise 3.6.8). EXAMPLE 3.6.7. In Example 3.6.1 we saw that the reduced Grbner basis for M has three vectors in x alone, namely gl,g51 and g6' Therefore by Theorem 3.6.6, Mn (Ql[x])3 is generated by {g"g5,go}. We can use this result to compute intersection of submodules of A= and ideal quotients of two submodules of Am. First, as in the ideal case (Proposition 2.3.5) we have
3.6. ELEMENTARY APPLICATIONS OF CROBNER BASES FOR MODULES 157 PROPOSITION 3.6.8. Let M = (J" ... ,J,) and N = (91' ,9,) be submod ules of A= and let w be a new variable. Consider the module
ThenMnN=LnA=.
We note that in Proposition 3.6.8, neither {f" ... ,f,} nor {9l' ,9t} need be a Grbner basis. As a consequence of this result we obtain a method for computing generators for the module Mn N Am: we first compute a Grbner basis G for L with respect to the TOP ordering on monomials of (A[w])m, using an elimination order on the power products in A[w] with w larger than the x variables; a Grbner basis for Mn N is then given by G n A=. EXAMPLE 3.6.9. Let M be the submodule of A3 of Example 3.6.1, and let N be the submodule of A3 generated by the vector 91 = (y, x, xy). The reduced Grbner basis for (Wf" wJz, wh, wJ 4' (1  w)9,) (A[W])3 with respect to the TOP term ordering with e, > e2 > e3 using the lex ordering in A[w] with w > y > x has 8 vectors, two of which are in A3 :
h,
h2
+ 2yx 5 + 25yx4 + 7yx 3  9yx 2  9yx, 9yx _7x 7 + 2x 6 + 25x 5 + 7x 4  9x 3  9x 2, 9y 2x  7yx 7 + 2yx 6 + 25yx S + 7yx 4  9yx 3  9yx 2) (yx 7  yx 6  3yx 5 + yx 4 + 2yx3 ,x8  x 7  3x6 + x 5 + 2x4 , yx S _ yx 7 _ 3yx 6 + yx S + 2yx4 ).
(9y2  7yx 6
Therefore Mn N = (h" h 2 )
A"
DEFINITION 3.6.10. Let M and N be two submodules of Am. The ideal quotient N: M is defined to be
N: M = {f E A
1
f M N} A.
Note that N: M is an ideal in A. As in the ideal case (Lemmas 2.3.10 and 2.3.11) we have LEMMA 3.6.11. Let M = (f" ... ule of Am. Then
,Js )
N: M =
n
i=l
N : (f,).
Since we have a method for computing intersection of ideals (Proposition 2.3.5 or equivalently Proposition 3.6.8 with m = 1), we only need to show how to compute N: (f) for a single vector f E Am.
158
LEMMA 3.6.12. Let N be a submodule of Am and let f be a vector in Am. Then N: (f) = {a E A 1 y = af E N n (f)}.
Thus we may compute N: (f) by first computing a set of generators for N n (f) and dividing these generators by f using the Division Algorithm. The quotients obtained are then a set of generators for N: (f).
EXAMPLE 3.6.13. In Exarnple 3.6.9 we saw that
h,
h2
Therfore, by Lemma 3.6.12, M: (YI) = (9y7x6+2x5+25x4+7x3_9x29x,X7 x 6 3x 5 +x4 +2x 3) A. Now let Y2 = (y + x 2, y, x 2) E Ao. We wish ta compute M: (Y" Y2). By Lemma 3.6.11, we first need ta compute M: (Y2). We proceed as in Example 3.6.9 using the same term arder, and we find
where
h3 h4
Ta compute this intersection, we find the Grbner basis for the ideal (w(9y  7x 6 + 2x 5 + 25x 4 + 7x 3  9x2  9x), w(x 7  x 6 _ 3x 5 + x 4 + 2x3), (1w)(x 7 _x6 _3x 5 +x4 +2x 3), (1w)(9y+2x 6 7x 5 2x 4 + 16x3 +9x 2 9x)) of A[w] with respect ta the lex term ordering with w > y > x. The Grbner basis has five polynomials , three of which do not contain the variable w,
Ul
x7
x6
U2 U3
9yx 3y2 
+ x 4 + 2x 3 5x 6 + 4x 5 + 14x4  5x 3  9x 2 x 6 + 2X5 + x 4  2x 3  3x 2.

3x 5
Sorne of the computations we have performed in ths section can also be done more efliciently using the syzygy module of the matrix [ J, J, J ' where fi E Am. In the next section, we introduce these syzygies, and then, in Section 3.8, we give these applications. Exercses 3.6.1. Consider the following 3 vectors in (<QJ[x, y])' :
J,
tem.
You should do the following without the use of a Computer Algebra Sysa. Let J = (_X,_x 3y2 + 2xy  y2 + y). Show that J E (J"J 2,J3). Moreover 1 express f as a linear combination of fI' f 2, and f 3' b. Let 9 = (x, x 3y2 + 2xy  y2 + y). Show that 9 ct (J" fz, J3)' c. Clearly we have (J 2' g) (J" J 2' g). Prove that this inclusion is strict. 3.6.2. Consider the following vectors in (<QJ[x, y]) 3 :
J,
You should do the following without the use of a Computer Algebra System. a. Compute a Grbner basis for M = (J" J2, J 3, J4) with respect to the TOP ordering on (<QJ[x, y]) 3 with e, > e2 > e3, using deglex on Q[x, y] with x > y. Use this to compute the matrix T which gives the Grbner basis vectors in tenus of the original vectors. b. Use a to show that the vector (X 2y_y2+xy2,xy2 _y2 +x 2+2xyxy, x 2 y + xy2  3xy + x) is in M and express it as a linear combination of J" J2, J 3'/4' 3.6.3. Consider the following two submodules of (Q[x, y, Z])3:
M = ((x 2  y, y, xz  y), (xz + x, yx + y, yz + z), (x, 0, x)) and M' = ((y,y,zx  x 2 _ y), (y2 +y, yx' _ y' +2xy _ y, yx 2 _x 3 +y2 +y),
+ yz + z)).
+x 
y, y2
yx  x, 0).
160
3.6.7. Find a Qbasis for the vector spoce A 3 lM for eoch module M in Exercise 3.5.15. 3.6.8. In Theorem 3.6.6 we required that the order be TOP. In this exercise we show that this is necessary. Consider the vectors fI = (y,xy), h = (0, x+1) E (Q[x, y])2. We use the POT ordering on (Q[x, yJ)" with el > e2 and lex on Q[x, yi with x > y. a. Prove that G = {fI' f 2} is a Gr6bner basis and note G n (Q[y])2 = 0. b. Prove that Mn (Q[yJ)" contains a nonzero vectar. 3.6.9. Consider the submodule M of (Q[x, y, z])3: M = ((x, xz, z2), (x, x 2, X
Compute generators for the following modules: a. Mn (Q[x, yI)". b. Mn (Q[y, z])3. c. Mn (Q[x, z])'3.6.10. Prove Proposition 3.6.8. 3.6.11. Compute generators for the intersection of the following two submodules of (Q[x, y])3 :
M = ((x,x 2, X + y), (y, 0, x)) and N = ((x 2, xv, y2), (x  y, x, x)).
3.6.12. State and prove the analog of Exercise 2.3.8 for the computation of the intersection of more than two submodules of Am. Use this to compute generatars for the intersection of the following three submodules of (Q[x, y])3 : MI = ((x,x,y), (x,y,x)), M 2 = ((x,y,y), (x,x,x)), M3 = ((y,y,y),
(y, x, x)).
3.6.13. Prove Lemma 3.6.1l. 3.6.14. Prove Lemma 3.6.12. 3.6.15. Compute generators for M: N, where M = ((0, y, x), (0, x, xVx), (y, x, 0), (y2,y,0)) andN= ((y,x,x), (x,y,y)) (Q[X,y])3. 3.6.16. Consider module homomorphisms q,: A' + A' and T Am > A', such that imb) im(q,). A theorem of Module Theory states that there exists a "lifting", that is, a homomorphism ,p: Am + AS such that q, o,p = 'Y; i.e. the following diagram commutes:
a. Show how to compute ,p. That is, show how to compute ,p(ei), i = 1, ... ,m. [Hint: Let {YI"" ,Yt} be a Grobner basis for im(q,) and
161
apply the method used to solve Task (i) at the beginning of the section.] b. Compute 'IjJ in the following example. Let A = lQ[x, y]. We define 'Y' A > A 3 bYi'(l) = (x2y2+x2,y3+xy+y2,xy2_1), and wedefine q,: A3 >A3 byq,(ed = (x 2 +xy,y2,xy_1), q,(e2) = (x 2 y_x,y2+ x, xy  x), and q,(e3) = (y2 + X + y, x 2 , X  y). You should first verify that im(!') im(q,). 3.7. Syzygies for Modules. We now turn our attention to computing the syzygy module of a matrix [ f, f, of column vectors in Am. This computation is very similar to the computation of the syzygy module of the 1 x s matrix [ fI fs of polynomials in A (see Section 3.4). Recall that in Section 3.1 we defined the map q,: AS > Am by q,(h" ... ,hs) = I::~, hifi As in the case where m = 1 (see Section 3.2), the kernel of this map is called the syzygy module of [ f, f s land is a submodule of AS. More formally we have
DEFINITION 3.7.1.
Let
f,
fs
J" ...
Lhifi=O.
i=l
The set of aU such syzygies is caUed the syzygy module of F and is denoted by Syz(f" ... ,f,) orbySyz(F).
In other words Syz(F) = Syz(f l' ... ,f,) can be viewed as the set of all polynomial solutions h E AS of the system of homogeneous linear equations Fh = 0 with polynomial coefficients. That is, if f, = (J11"" '!m'), ... , fs = (J,s>", ,fm,), then Syz(J, , ... ,f,) is the set of all simultaneous polynomial solutions Xl, ... ,Xs of the system
f11X' f21X,
o o o.
fm'X,
As in the case of the syzygy module of a 1 x s matrix [ fI fs of polynomials in A, the computation of Syz(f, , ... ,f,) is done in two steps. We first compute a Grobner basis {g" ... ,g,} for (f" ... ,f,) Am and compute Syz(g" ... ,g,) A'. We then obtain Syz(f" ... ,f,) AS from Syz(g,, ... ,g,). So let us first start with G = [ g, g, l. As we did in the polynomial case, we !'Ssume that !c(gi) = 1. We follow c10sely the construction we used for the ideal case (see Section 3.4). Let i of j E {l, ... ,t}. Let Im(gi) = Xi and
162
X ij = lcm(X i , Xj). Then the Spolynomial of gi and gj is given by Xij X ij ( ,gj ) = X gi  Xgj 8gi
, J
,
v=l
8(gi,gj) = Lhijvg v ,
for sorne hijv E A, such that
(3.7.1)
We easily see that Sij E Syz(g" ... ,g,). We first state the analog of Proposition 3.2.3. PROPOSITION 3.7.2. Syz(X Xij { Xi
i 
We now give the analog of Theorem 3.4.1. The proof is identical except that instead of Proposition 3.2.3 we use Proposition 3.7.2. We leave the proofs of both the Proposition and the Theorem as exercises (Exercises 3.7.4 and 3.7.5). THEOREM 3.7.3. With the notation above, the collection {Sij Il :' i < j :' t} is a generating set for Syz(G) = Syz(g" ... ,g,). EXAMPLE 3.7.4. We go back to Example 3.5.23. Recall that the set {g"g2, g3, g4, g5, g6} is a Gr6bner basis with respect to the deglex term order on lQJ[x, y] with x > y and the TOP order on (lQJ[x, yJ)" with e, > e2 > e3, where g,
(O,y,x), g2
(0,y2 xy,O), g4
g3
(x, X
+ y, 0),
1
1 g5 = (0, xy + 2x
+ 2Y' 0),
g6 = (0, X
To obtain the generators for Syz(g"g2,g3,g4,g5,g6)' we follow Theorem 3.7.3 and 80 we compute and reduce aH Spolynomials. The Spolynomials wc need to compute are 8(g2,g5)' 8(g2,g6)' 8(g5,g6) and 8(g3,g4). For example, sinee
163
S(93' 94) = Y93 X94 = 92 + 295' we have 834 = (0, 1, y, x, 2,0). The other syzygies are computed in a similar way (Exercise 3.7.2) to obtain
(0, x
+ 2,0,0, y + 2,1)
1 3 1 (0'4'0,0,x 4'Y 2)
Note that we have not included 826 because it is in (834,825,856) (See Exercise 3.7.7). EXAMPLE 3.7.5. We consider the submodule M of A3 = (<Q[x, yI)' of Example 3.6.1. We saw that {9,,92,93,94,95,96} forms a Grbner basis with respect to the TOP term ordering in A3 with e, > e2 > e3 and with lex in A with y > x, where 91
= (x 3 + x, x 2  x, x),
2
92
= (x, 1{ + x 2
2
x, 0),
2x , _x 2
+ 2x
1
x5
x4
3x 3
+ x 2 + 2x).
The syzygy module SYZ(91,92,93,94,95,96) can be computed using Theorem 3.7.3. For example
S(91,93) Y91  X 93
3
yx, yx)
x 3 , yx  x 4 + x 3 , yx)
2x 3 , yx  x 4 2x 3 x3
+ x 3 , yx)
X2,
+ x 2 , _x 4 + 2X 3 
yx)
(_X S 
X3 _x 3 ) (X2 ,,
(0,0,0).
813
= (y
+ x 2 , _x 2 + X, ~x3
 x,x, 1,0).
The other generators of the syzygy module are obtained similarly (Exercise 3.7.3):
825 ( _x
2
+ X + 2, _x3
x
3 4
_x 2 , x 3 , y
2 2 2
+ x2 X 
X 
2, 1)
846
(x
4x + 2x + 4, x
2
3 
2x, _x + 2x,
2, y
_x
+ x + 3x
2x, x
+ 2).
These are the only generators needed, since the remaining Spolynomials are aU zero.
164
We now consider the computation of SYZ(fl,'" ,fJ, for a nonzero matrix = [ f, f, of column vectors in Am. We first compute a Grbner basis {y" ... ,y,} for (F) and set G = [ y, y, As in the ideal case, there is a t x s matrix S and an s x t matrix T with entries in A sueh that F = GS and G = FT (S is obtained using the Division Algorithm and T is obtained by keeping track of the reductions during Buchberger's Algorithm for modules.) As in the ideal case we compute generators of Syz(y" ... ,y,), say SI)'" ,Sr) and we let Tl,,. ,T s be the columns of the matrix Is TB, where l, is the s x s identity matrix. The proof of the following result is simitar to the one for the ideal case (Theorem 3.4.3) and we leave it to the reader (Exercise 3.7.9).
1.
Syz(J, , ...
. ..
,r,) A'.
EXAMPLE 3.7.7. We go back to Example 3.7.5. Recall from Example 3.6.1 that _the original vectors are
f, = (xy,y,x), f2 = (x 2 +X,y+X 2,y),
fa
= (y,x,y), f4 = (x ,x,y).
The Grbner basis G for (J',!2,!3,!4) given in Example 3.7.5 consists of the six vectors gi' i = 1, ... ,6. Also, in that example we saw that a basis for SYZ(Y"Y2'Y3'Y4'Y5'Y6) is S13, S25, and S46 Recall also that the matrix T which gives G in tenns of F is given in Example 3.6.1 in Equations (3.6.2) and (3.6.3). Ta compute Syz(J" f2' fa,!4) we use Theorem 3.7.6 and compute
TS'3 TS 25 TS 46
(0,0,0,0) (0,0,0,0)
(y3
y3 x
+ 2y2x2 _
y2x
+ yx4 _
[ f,
f2
f3
1=
[ y,
Y2
Y3
Y4
ys
Y6
0 0 1 1 0 0
0 0 0 1 0 0
165
Then 14 TB =
[~
0 0 0 0
0 0 0 0
o 1. :
0
Therefore
In the last example, the rows of the matrix 1,  TB did not contribute to the syzygy module 8YZ(f,,12' J 3, J 4). It is not true in general that the TS i in Theorem 3.7.6 give a complete set of generators for 8yz(F) as the next example shows. EXAMPLE 3.7.8. Let A =Q[x,y] and let J, = (y+2x2+x,y), J 2 = (y+ x, y), and iJ = (x 2 + X, y) be vectors in A2 Then the reduced Grbner basis G for (J" J2, J 3) with respect to the TOP term ordering on A 2 with e, > e2 and the lex ordering on A with y > X is {9" 92}, where
91
92
(y+x 2,0)
(x 2 + x, y).
Since Im(9,) = ye, and lm(92) = ye2, we see that 8yz(91,92) = ((0,0)). Also, we have [91 92
1= [J, J2 J3 1[
~1 ~
T
'v'
and
[J, fz
We have
Jol
[91
92
1[~ ~1
s
Therefore
8yz(f" fz,
J3)
((l, l, 2)) A 3.
We conclude this section by showing that the generators for 8yz(9,, ,9,) computed in Theorem 3.7.3 (or in the polynomial case Theorem 3.4.1) form a Grbner basis for 8yz(9" ... , 9,) with respect to a certain order which we deline next (see 8chreyer [Schre]). This result is technical and will only be used in 8ection 3.10.
166
LEMMA 3.7.9. Let 911 ... ,Yt be nonzero vectors in Am and let < be a term arder in Am. We define an order < on the monomials of At as follows:
X e < Y e
, J
{::=?
PROOF OF LEMMA 3.7.9. We first show that < is a totaJ arder. Let X, Y be power products in A. First, if i of j E {l, ... ,t}, then either Im(Xg i ) = hn(Ygj) and one of i < j or j < i holds, or one of Im(Xg i ) < Im(Ygj) or Im(Yg j ) < Im(Xg i ) holds. In any case, one of Xei < Yej or Yej < Xei holds. If i = j E {l, ... ,t}, and X of Y, then one of hn(Xgi ) < Im(Ygi) or Im(Ygi) < Im(Xg i ) holds, for otherwise, if Im(Xg i ) = Im(Ygi)' then
X lm(gi)
Im(Xg i )
= Im(Ygi) = Y lm(gi)'
and hence X
Yei
= Y,
since Yi
i
<
Xei
We now verify that < is a term arder as defined in Definition 3.5.1. Let X, Z be power products in A such that Z of 1. Let i E {l, ... , t}. Then Im(Xg i ) < Zlm(Xg i ) = Im(ZXg i ), and hence Xei < ZXej. Finally, let X, Y, Z be power products in A, and let i,j E {l, ... ,t}. Assume that Xei < YeJ' If Im(Xg i ) < Im(Ygj)' then
Im(ZXg i ) = Zlm(Xg i )
<
Zlm(Yg j ) = Im(ZYg j ),
= Im(Yg j ) and j
<'i, then
Im(ZXg i )
Zlm(Yg j )
= Im(ZYg j )
and j < i, sa ZXei < ZYej. 0 EXAMPLE 3.7.11. We first consider the case where m = 1 and polynomials 91 = x 2y2 _x 3y, 92 = xy3 _x 2y2, and 93 = y4_X 3 . We use the lex term ordering in lQI[x, y] with x < y. In the notation of Lemma 3.7.9, we have
since
lp(xg,)
Note that < is neither TOP nor POT as defined in Section 3.5.
167
EXAMPLE 3.7.12. Let us use the six vectors gi' i = l, ... ,6 of Example 3.7.5. These vectors deterrnine a term ordering on A6 as described in Lemma 3.7.9. In order ta distinguish the basis vectors ei in A3 and A6, we will use e3i and e6i for the ith basis vector in A 3 and A 6 respectively. In A 3 we are using lex with y > x and TOP with e33 < e32 < e3' Using the order induced by [ g, g6 ] we have
xe66
<
e62
<
xe64
<
ye61,
since lm(xg6) = x6e33, lm(g2) = ye32, lm(xg4) = xye33, and lm(yg,) = yx3e3" and
THEOREM 3.7.13. Let G = {g" ... ,g,} be a Griibner basis. With the notation of Theorem 3.7.3, the collection {Sij Il Si < j S t} is a Griibner basis for Syz(g" ... ,gt) with respect ta the term arder < on monomials of At induced by X [ gl gt ]. Moreover, lm(sij) = ; : ei for each 1 Si < j S t. PROOF. We first prove that for 1 S i < j S t, we have 1m( Sij)
Note that we have lm
(X) = (X.) =
x~: gi
lm
x~ Yj
Xij.
Therefore
since i < j. Now let Xe, be a monomial that appears in (h ij " ... ,hij ,). Then
X gi ) ,
X':
X Xi We now show that {Sij Il Si < j S t} is a Grbner basis for Syz(g" ... ,g,) with respect ta < . Let S E Syz(g" ... ,gt). By Defintion 3.5.13 we need ta show that there exist i,j such that 1 S i < j Stand lm(sij) divides lm(s). First we write S = I::~, ale"~ where a, E A. Let Ye = lp(a,) and Cp = lc(a,). Note that we have lm(s) = Y,ei for sorne i E {l, ... ,t}. For this i define
<
.!.1..ei.
= {R E {l, ...
,t} Ilm(Yeg,)
= lm(Y,gi)}
We observe that if RES, then R :2: i, by the definition of < . Define a new vector
Since
is a syzygy of [ g,
gt ] ,we have
L c,Ye lt(g,)
'ES
o.
168
Therefore
is a syzygy of [ It(g,)
It(gt)
em Xt submodule of A t generated by B = {Xem ee  e m E Ale, mES, C < m } . Xe X m Thus we have , '\' Xem) , S = L atm (Xem Xei Xem
l,mES l m
e<m for sorne aem E A. Now Im(s') = Im(s) = liei and thus, since j > i for all j oF i E S, we see that
Ciliei
where the sum is over all j E S, j immediately that for sorne j E S, desired. 0
?:'
oF
li
We might hope that a result similar to Theorem 3.7.13 holds for finding a Grbner basis for Syz(f" ... ,J,), where the corresponding order on monomials of AS would be the one induced by [ J, J, 1 where {JI"" ,J,} is nat necessarily a Gr6bner basis. We saw in Theorem 3.7.6 how to compute generators for SYZ(f1l'" ,/s)' These generators do not farm, in general, a Grbner basis with respect ta the arder induced by [ JI J, (see Exercise 3.7.15). So, ta obtaln a Grbner basis for Syz(fl,'" , J,), we would use the algorithm presented in Section 3.5 (Algorithm 3.5.2) starting with the generators of Syz(f" ... , f,) given in Theorem 3.7.6.
Exercises 3.7.1. Let J,fI, ,Js E k[XI,'" ,xn]. Show that J E (fI, ... ,J,) if and only if in the Grbner basis, G, of Syz(f, fI, ... , J,) with respect to the POT ordering with the first coordinate largest, there is a vector (u, Ul, ... ,us) E G with u oF 0 and u E k. In this case we obtain J = ~ I:;~I Udi' 3.7.2. Complete the computations in Example 3.7.4. 3.7.3. Complete the computations in Example 3.7.5. 3.7.4. Prove Proposition 3.7.2. 3.7.5. Prove Theorem 3.7.3. 3.7.6. State and prove the analog of Theorem 3.2.5 in the module case; that is, give a definition of Gr6bner bases for modules in terms of the syzygy module of the leading terms. 3.7.7. State and prove the analog of Corollary 3.3.3, and use it to describe how crit2 can be implemented in Aigorithm 3.5.2. Note that we have already seen in Exercise 3.5.16 that critl cannot be used in the module case. 3.7.8. Use Exercise 3.7.7 to state and prove the analog of Exercise 3.4.4 in the module case (generalizing Theorem 3.7.3).
169
3.7.9. Prove Theorem 3.7.6. 3.7.10. Compute generators for Syz(f" f2, f3, f 4) in thefollowingexamples. You should do this without the use of a Computer Algebra System. a. f, = (xy+y,x), f2 = (y+x,y), f3 = (x,y+x), f4 = (x,y) E (Q[X,y])2 b. f, = (xy  x,y), f2 = (x 2  y,x), f3 = (x 3  x,y + x 2), f4 (_X+y2,y) E (Q[X,y])2 3.7.11. State and prove the analog of Exercise 3.4.3 in the module case. 3.7.12. Consider the following analog of Exercise 3.4.6. Let f"", ,1,,9 E Am. We consider the linear equation
hd, +h2!2
+ ... +h,f, =
9,
with unknowns h" ... , hs E A. Let S A' be the set of all solutions (h" . .. ,hs). a. Prove that Sis not empty if and only if 9 E (f"", , f,). b. Prove that if S # 0 then S = h+Syz(f"", ,f,) = {h+s 1 s E Syz(f"", ,fs)}, where h is a particular solution. Give a method for computing h. c. Use the above to find the solution set for the equation
h , (x+y, y, x) +h 2(x, y, x) +h3( x, x+y, x) +h4(X, X, y) = (y, 0, x 3 ).
3.7.13. Consider 9, = (x 2,y), 92 = (xy + y,y3), and 93 = (x 2 ,_x+y3) E (Qlx, y])2 We use the lex order on Q[x, y] with x > y and the POT ordering on (Q[X,y])2 with e, > e2. Consider the vector f = (xy2 + y3,x 2y + yx 2,y3 + x 2y) E (Q[x,y])3. Write f as the sum of terms in descending order according to the order on (Q[x, y])3 induced by [91 92 93 1 . Repeat the exercise using deglex with x > y on Q[x, y]. 3.7.14. Verify that the following vectors form a Grbner basis with respect to the indicated term arder, compute generators for Syz(gl' ... ,gt), and verify Theorem 3.7.13. a. 91 = (0,x 2), 92 = (y,x), 93 = (2x, x), 94 = (0,2y+x). Use the deglex order on Q[x, y] with y > x and the POT ordering on (Q[x, y])2 with
el
>
e2.
(y2  y, x), 93 = (0, xy), 94 = (x  y, x  y), 95 = (0, y2). Use the deglex order on Q[x, y] with x > y and the POT ordering on (Q[x, y])2 with e, > e2. 3.7.15. We mentioned at the end of the section that a result similar to Theorem 3.7.13 does not hold for the generators of Syz(f "" . ,1sl obtained in Theorem 3.7.6. Namely, the generators for SYZ(f"", ,l,) obtained in Theorem 3.7.6 do not, in general, form a Grbner basis for Syz(f " ... ,f,) with respect to the order induced by [ f"", ,f, Consider the vectors
b. 91 92
= (0, x 2),
1.
170
J4
= (X+y,y,X), J 5 = (X,X,X)
E (lQIlx,y])3.
a. Verify that the reduced Grbner basis for (fI' J 2, J3' J4' h) with respect ta the TOP ordering with e1 > e2 > e3 and lex on IQIlx, y] with y > x is given by the vectors 91
b. Verifythat SYZ(91,92' 93,94,95) = ((x,x,y,O,O),(O,O,O,x,y)). c. Verify that Theorem 3.7.6 gives Syz(fp J 2,!3, J4' h) = (( x, x, x, x, 2y+2x), (y,x, x, y, 0)).
d. Verify that the two vectors given in c do not form a Grbner basis with respect to the order induced by [ J 1 J 2 J 3 J 4 3.7.16. Let M = (f1"" ,J,) be a submodule of A=. Assume that we have a generating set for Syz(f1"" ,J,), say Syz(f1"" ,J,) = (S1,'" ,s,) AS. Now consider vectors gi = 2..:;=1 aijfjl for sorne aij E A, for i =
hl
"1, ... ,t. a. Use Theorem 3.5.22 to give a method to decide if M = (91"" ,9,). If so, give a method ta find bij E A such that Ji = L~~1 bij 9j' Use
the praof of Theorem 3.7.6 to find a generating set for 8YZ(91 , ... ,9,). (Note that the proof of Theorem 3.7.6 has nothing to do with the theory of Grbner bases.) b. Apply the methods given in a ta the following example. Consider J 1 = (xy,y,x), J 2 = (x,y+x,y), fa = (y,x,y), and J4 = (x,x,y) E (lQIlx, yJ)3. It is easy ta verify that 8yz(f 1, J 2,! 3' J 4) = ((y3 + y2x, _y3 _y2x+yx2 +x3, y3 x _ yx2, _y3 x + y3 _yx 2 _x 3)). Now consider the polynomials 91 = (0, y, 0) = J2  J 4,92 = (yx, 0, 0) = fa  J4' 93 = (x, x, y) = J 4, 94 = (_x 2, 0, x) = J1  J 2 + XJ3 + (x + I)J 4' 95 = (0, x 2, _x 2 +x) = (xy+ I)J 1 + (x+yl)J 2 + (:yx+x)fa + (yxyx+l)J 4, and 96 = (_x 2, _X 2,X3) = (x 2 _y2+y)J1 +(2x 2+ y2 _ y)J2 + (yx 2  xy2 +xy)fa + (_x 2y + xy2 + 2X2  y2  X +y)J4. You should first verify that
M= (f1,J2,!3,!4) = (9u92,93,94,95,96)'
3.7.17. (Mller IMa90]) In this exercise, we give a more efficient way ta solve the prablem raised in Exercise 3.7.16. We have the same hypotheses as in Exercise 3.7.16: we are given a generating set {J 1"" ,J'} for a submodule M of A= (not necessarily a Grbner basis), a generating set {S1'''' ,s,} A' for 8yz(f1'''' ,!,), and a collection of vectors {91"" ,9,} such that 9i = L;~1 aijJ j , for some aij E A, for i = 1, ... ,t. As in Exercise 3.7.16, we wish to determine whether M = (91"" ,9,) and if 80 to find generators for SYZ(gl' ... ,9t). Let esi, i = 1, ... ,S and
171
etj,j = 1, ... ,t be the standard basis for AS and At respectively. Finally, let ai = (ail, ... ,ais) E AS, for i = l, ... lt. a. Let W = {(u,v) E AS+' 1 u = (u" ... ,us) E A',v = (V" ... ,Vt) E At,~:~, ud i = ~;~, v,g). Prove that
Prove that M = (g" ... ,gt) if and only the reduced Grobner basis for W with respect ta < is the union of the two sets {( esi, bd 1 i = 1, ... ,s} and {(O,ti) 1 i = 1, ... ,C}. Prove that the set {(O,t.,) 1 i = 1, ... ,C} i8 a generating set for Syz(g" ... ,gt). d. Redo the computation in Exercise 3.7.16 b using this method. One can think of the vectors a, as the rows of a matrix A which defines a linear transformation T: M } M. This exercise answers the question of whether T is anto and whether there is a linear transformation T': M ). M defined by a matrix B sueh that (T' 0 T) (M) = M (B is an "inverse" of Ain the sense that BAls Syz(J" ... ,f,), where ls is the sxs identity matrix). The method presented here is a generalization of a linear algebra method ta compute the inverse of the matrix of a linear transformation. In !inear aigebra over fields, ta compute the inverse of an s x s matrix A, one reduces the matrix [ Ails J ta the row reduced echelon form [ Is 1 B ] , where ls is the s x s identity matrix. The matrix B is then the inverse of A. In the case of a module M, we use the Grobner Basis Aigorithm ta transform the matrix
[~ Syz(g,~ .. ,g.,) ] .
3.8. Applications of Syzygies. The purpose of this section is to reconsider and solve more efficiently various problems, such as computing the intersection of submodules of Am (where, again, A = k[x" ... ,xnJ for a field k). These problems were solved previously using elimination. As we have noted before,
172
the lex term ordering (or more generally, any elimination ordering) is very inefficient from a computational point of view. Indeed, mueh effort in the theory of Grobner bases has been expended in order ta avoid the use of elimination in computations involving Grobner bases. Here, we will show how the computation of intersections, ideal quotients and kernels of homomorphism.s can aIl be done using syzygies, where the latter may be computed using any term order whatsoever. Even in A (when m = 1) these computations using syzygies tUTU out to be more efficient than using eliroination orders in A. We begin by considering the simplest case, the intersection of two ideals in A. This case, nevertheless, cantains aIl of the essential ingredients of the rnost general situation. Let land J be ideals in A. Assume that I = (fI, ... , J,) and J = (YI, ... ,Yt) (we will not assume that either {J" ... , J,} or {YI, ... ,Yt} is a Grbner basis). Then a polynomial h is in I n J if and only if
h=
for sorne polynomials al, ... ,as, bl , ... ,bt E A. This is the same as the two conditions that (h, a" ... , a,) is a syzygy of the matrix [1 fI J, ] and (h, b ... , b,) is a syzygy of the matrix [1 91 Yt ]. It is then easy to put"these two conditions into a single condition for syzygies of vectors in A 2 Let
i
= [ ~ ] , f, = [ ~ ] , ... , f s = [
nJ
(381) is a syzygy of
[i f,
Thus we have essentially shown
gt ] = [
~ o
fI
J,
0 YI
Yt
o ].
In J
{h
there exist polynomials al, ... 1 as, bl , ... ,ht such that
fs
YI
gt ]}.
Moreover, ifh l1 ,hr is a generatingsetforSyz(i,I I , ... ,IS,g!1'" ,gt) and the first coordinate oJ hi is hi Jor 1 :0: i:O: r, then {h" ... , h r } is a generatiny set for I n J.
173
nJ
if and only if
h E In J, and this accounts for the difference between the statement of the
proposition and Expression (3.8.1). The second statement follows from the first statement, since if a vector is a linear combination of other vectors, then the first coordinate of the vector i8 a linear combination of the first coordinates of the other vectors. 0 EXAMPLE 3.8.2. We will consider the following ideals in <QI [x, yl:
n J.
12
f =[X2+l] 0
'
[y3~X]'
Then we can compute that the module of syzygies with respect to TOP and e, > e2 is generated by (x 2y + y, 0, y, 0,1, 0), (xy3 + xy2 + 3y3  x 2 + xy + y2 + X + 3y, 2xy 2 + y2 + 2y + l, _2 y 3 + 2y 2 + 1, 2xy 2  y2  3y  l, 2xy _ 2y 2 Y  3, 1), (x 3 + 2y3 + 2x2  2y2 +x + 2y, xy2  2xy+y2 +x 1, _y3 +3y2  x3yl,xy2 2xy+xy+2,xy_ y 2 2x+2y2, 1), and (4xy2 lOy3 4xlOy, x 2y2 _x 2y_5xy2 +3xy4 y 2  2x4y2, _ xy3 +2xy2 +6y3 xy8y2 +4y2, x 2y2 x 2y6xy2 +xy+2 y 2 +9yl, x 2y_xy2 _x 2 5xy+6y2+x+ 10, x+4). So the first coordinates of these vectors farm a generating set for In J, that i8,
4x  lOy).
These polynomials do not form a Griibner basis for InJ with respect to the given term order. Computing a Grobner basi8 for this ideal from the given generators, we get the much simpleT generating set
We note that in Proposition 3.8.1, as we just saw, we only obtained a generating set for In J. Of course, we could obtain a Griibner basis for In J by applying Buchberger's Aigorithm to this set of generators. Alternatively we have
THEOREM 3.8.3. We use the same notation as above. Assume we have a fixed term order < on A and consider the corresponding POT order on Al+s+t with el targest. Let {h" ... , he} be a Grobner basis for Syz( i, f"" . ,f" YI' ... ,y,). Assume that the first coordinate of hi is hi for 1 SiS r. Then {h" .. , ,he} is a Grobner basis for l n J with respect ta < .
174
PROOF. We need ta show that (lt(h , ), ... ,lt(hr )) = Lt(I n J). One containment is clear, sa let h E InJ, where we may assume that h '" o. From Proposition 3.8.1 we cau choose
Since hl, . .. ,hr is a Gr6bner basis for this module, we can find polynomials
C,, , Cr such that h = I:~~1 Cihi and Im(h) = max'<:i<:r(IP(Ci) lm(h i )). Then, since the arder is POT, h '" 0, and the fust coordinate is largest, we see that
(lt(h), 0, ... ,0) = It(h) = I:lt(G) lt(h i ), where the sum is over al! i such that Im(h) = Ip(ci) Im(h i ). It is then clear that we have lt(h) = I: It(G) lt(h i ) where i ranges ovef the same i's as before. This gives the desired result. D We note that in Theorem 3.8.3, as should be evident from the proof of the theorem, we made essential use of the POT ordering. In particular, the TOP ordering would not work, as an example in Exercise 3.8.3 shows. EXAMPLE 3.8.4. We redo the computation of the previous example. For simplicity we use the Grbner bases for the ideals I and J with respect ta deglex with x > y. We compute that I = (x + y, y2 + 1) and J = (y3 + y, X  y). Sa using
i = [
,1, =
[ x; y ]
,12 =
y2; 1 ],91 = [ y3
~y
] ,92 = [ X
~y
] ,
we compute a Grbner basis for SYZ(i,J,,/2,9,,92) with respect ta POT with e, > e2 > e3 > e4 > es, and obtain (0,0,0, xy, _y3_ y), (0, y2+1, xy, 0, 0), (y3 +y, 0, y, 1, 0), (xy2 +x, 0, x, 1, _yZ 1), (x 2 _y2, x+y, 0, 0, x  y). Reading off the first coordinates of these vectors, we obtain the same Grbner basis we did in the previous example. At this point it is convenient ta compactify the notation. Let H, be an SI x t , matrix and H 2 be an S2 x t 2 matrix. We define the (SI + 82) X (t, + t2) matrix H, H 2 (called the direct sum of H, and H 2 ) ta be the matrix whose upper lefthand corner matrix is the 81 x tl matrix Hl, whose lower right"':hand corner matrix is the 82 x t 2 matrix H2 and the Test of whose entries consist entirely of zeros. Thus, for example,
EIl
[fI h
... EIl
h]EIl[::] 14
93
[h h 14 h o
0 0 0 0 0
92 93
J.]
EIl
Similarly, let H" ... , Hr be Si x t i matrices for <:: i <:: T. We define Hl H 2 EIJ Hr ta be the (SI + ... + Sr) X (t , + ... + tr) matrix with the matrices H l1 ... ,Hr clown the diagonal and zeros elsewhere. FUrther, let Hl,'" 1 Hr be matrices where, this time, each Hi is an s x t i matrix for 1 <:: i <:: T. We define [ H,IH21 IHr J as the S x (t , + ... + q
175
matrix whose first t l columns are the columns of Hl, whose next t 2 columns are thecolumns of H2, etc. For example, using the notation above in the discussion of l n J, let F be the 1 x s matrix [ fI J, J and let G be the 1 x t matrix [ g, g, J. If we let
H = [ ilF EIl G
J=
[~ ~
Js
0 g,
then the set of first coordinates of Syz(H) is l n J. As a second illustration of this notation we consider the intersection of more than two ideals. So let h, h, ... ,Ir be ideals in A, Ij = (fj1 ,ij2, ... ,ij")' and define the 1 x t j matrix Fj = [fJ, fJ2 fJ" for 1 " j Let i be the r x 1 matrix (colunm vector) ail of whose entries are 1. Set H = [ ilF, EIl F 2 EIl ... EIl Fr J . Then, in exactly the same way as above, we see that the set of first coordinates of a generating set for Syz (H) is a generating set for ft n h n ... n Ir, and if the POT order is used on A l+tl +t2++tr ta compute a Grbner basis for Syz(H), then the set of first coordinates is, in fact, a Grbner basis for h n h n .. n Ir. EXAMPLE 3.8.5. Let A = <QJ[x, y, z] and consider the term order deglex with x> y > z. Leth = (xy,yz,ZX),I2 = (xl,y) andh = (y+l,x+l,zl). To compute h n h n h we set
J,
"r.
H=
1 'xy 1 0 [ 1 0
yz 0 0
zx 0 0
0 xl 0
0 0 y+l
0 0 x+l
zl
].
We then compute, using the TOP ordering on A 3 with el > e2 > 3, that Syz(H) = ((0,1,1,1,0,0,0,0,0), (xy  y2, 0, y, y, y, yl, y, y, 0), (x 2 y2 _ X + y, 0, y + z  1, x + z  1, X, Y  1, Y + z  3, x  z + 3, x  y), (y2 Z  yz2  y2 + yz, 0, yz + y, 0, 0, yz + z2 + Y  z, yz + y + 2z  2, 0, yzy2), (xz+y22yz+yz, 0, y+zl, z, z, y+2zl, y+z+l, z, y + 1), (0,0, x  z, y  z, y, xl, x  z + 2, y + z  2, x + y)), from which we read off that
h nh nh
We note that this is not a Grbner basis for h n h n h. We next consider the case of the intersection of tWQ submodules M, N of Am. Assume that M = (f" ... ,fs) and N = (91"" , 9,) Then a vector h E A= is in M n N if and only if
h = ad , + a2f 2 + ... + ad, and h = b 9, + b2 92 + ... + b,9" ' for sorne polynomials al, ... ,as, b1 , ... ,bt E A. This is the same as the two conditions that (h,a" ... ,as) is a syzygy of the matrix [ I=lf ... ,f, J and " (h,b 1 , ... ,b,)isasyzygyofthematrix [1=191'''' ,9, J (here,I=denotesthe m x m identity matrix, and (h, al, ... ,as) is the vector in Am+s whose first
176
m coordinates are those of hl. It is then easy to put these two conditions into a single condition for syzygies of vectors in Am.+s+t. Let
(sothat7 J= t [Imllm ]),andletFbethemxsrnatrixF= [J, J,l and G be the m x t matrix G = [ 91 9, 1 . Set H = [ JIF EIl G 1. Then, as in Proposition 3.8.1, we see that the set of vectors h which are the first m coordinates of vectors in Syz(H) is Mn N. Moreover, the set of vectors which consist of the first m coordinates of each of the vectors of a set of generators of Syz (H) is a generating set for M n N. EXAMPLE 3.8.6. We again let A = lQI[x, y, z] and consider the terrn order deglex with x> y > z. Let M = ((xy, z), (x, y)), and N = ((x+1, y), (xl, z)). 80 we set 0 1 0 xy x
H=
0 1 [ 1 0 o 1
z
0 0
0 0
0 x+1
y
Then, using the TOP ordering on A 4 with el > e2 > e3 > 4, we obtain Syz(H) = ((xy2x+y, y2_y_z, l, y+1, y+1, 1), (x 2z2x 2+xz+4x2y, xyz  xy  xz  y2 +yz + 2y+ 2z, x  2, xz +x+y  z  2, xz +x +y  2, x  y  2)), from which we read off that
+ xz + 4x 
2y, xyz  xy  xz  yZ
Mi
+ yz + 2y + 2z)).
= [ , [
Imllml IIm
r copies
where again lm denotes the m x m identity matrix, then the set of vectors h which are the first m coordinates of vectors in Syz(H) is the intersection of the Mi's. Moreover 1 as in the case of the intersection of two modules, the set of vectors which consists of the first m coordinates of each of the vectors of a set of generators for Syz( H) is a generating set for the intersection of the r modules MiWe now turn to the ideal quotient. This can be computed as a special case of the computation of intersection of ideals as we did in Section 2.3. On the other hand it is easy to recognize it directly as a syzygy computation. So let l = (f" ... ,f,) and J = (91, ... ,9,) be ideals in A. Recall that I: J = {h E
7For a matrix S, we denote its transpose by tS.
177
AI hJ ; I} = {h E A 1 hgi , i = 1, ... ,t, is a linear combination of h, ,J,}. Let 9 be the column vector 9 = (g"", ,g,) and let F be the row vector F = [h J, 1. In this case, we set
H = [ glF 8l F 8l ... 8l F
t
1.
copies
Then 1: J is the set of ail first coordinates of Syz(H). EXAMPLE 3.8.7. We let A = Ql[x, y] and consider the term order lex with x> y. Let l = (x(x + y)2, y) and J = (x 2, X + y). Now consider
= [x
x(x + y)2
x+y
0 X(X+y)2
1
.
Then using the TOP ordering on A2 with e, > e2, we compute Syz(H) = (( ~y, 0, x 2 , 0, x+y), (~xy~2y2, y, ~xy2, 0, x 2 +3xy+2y2), (X2+xy~y2, ~x+y, ~ xy2, ~ 1, xy + y2)), from which we read off that
Computing a Grbner basis for this ideal (or by simply looking at it), we obtain I: J = (y, x 2 ), in agreement with the computation of the same ideal in Example 2.3.12. We willleave the computation of the ideal quotient of two submodules of A= (Definition 3.6.10) to the exercises (Exercise 3.8.5).
We now consider modules which are given by a presentation as defined in Section 3.1. Let J"", ,J, be in Am, let N = (f"", ,J,) and consider M = A m IN. We wish to show how to compute the intersection of two (or more) submodules of M, find the ideal quotient of two submodules of M and find the annihilator of M. We begin with the latter as it is a special case of what we have already done. We define the annihilator of M to be the ideal
ann(M)
= {h
E A 1 hM
= {O}}.
Since M = Am IN we see that ann(M) = N: Am. Although we have relegated the computation of the ideal quotient of two modules to the exercises, in this special case it is easy to write clown the correct matrix whose syzygies allow us to computeann(M), and we will do so now. We simply observe that A= is generated by the usual standard basis e" ... ,em and so h E ann(M) if and only if hei EN for all i = 1, ... ,m. Thus letting F = [ J, J, (an m x s matrix), and H = [ , [ 'e,l" l'em llF EB F 8l ... 8l F
l,
m copies
178
we see that ann(M) is the set of ail fust coordinates of Syz(H). (We note that the matrix t [ tell" 1 te m ] is the m 2 x 1 matrix of the vectors ei stacked up on top of each other.) EXAMPLE 3.8.8. We consider N = ((x 2 + y, xz  y), (xy  yz, z  x)) C A 2 and let M = A2 IN. SO in this case 1
o
H=
0 1
x2+Y xz  y 0
xy  yz z x 0
o o
x 2 +y xzy
xy yz zx
J.
Then using TOP with el > e2 > e3 > e4 and degrevlex with x > y > Z, we see that Syz(H) = ((x 2yz  xyz2 + x 3  xy2  x 2z + y2z + xy  yz, x + z, xz + y, xv + yz, x 2 + y)), from which we conc1ude that
ann(M) = (x 2yz  xyz2 + x 3  xy2  x 2z + y2z + xy  yz). We now consider two submodules M M 2 of M = AmiN and we wish to " compute their intersection. There are submodules K tl K 2 of Am. sueh that Ml = K,fN and M 2 = K,fN. We note that, K, = {h E Am 1 h + N E Md, or alternatively if M, = (g, + N, . .. ,g, + N) then K,
We wish to compute M, n M2. Clearly M, n M 2 = (K, n K 2 )IN. Since we know how ta compute KI n K 2 we can compute Ml n M 2 . Alternatively, continuing to use the notation above, and setting M 2 = (h, + N, ... , h r + N), we see that a coset p+N E M, nM2 if and only ifthere are a" ... ,a, E A and b ... , br E A " such that
t
j=1
i=l
j=1
for sorne al, ... ,at)a~, ... ,a~,bl, ... ,br,b~, ... b~ E A. Thus, setting
F = [
f,
f, ] , G =
g,
g, ] ,H = [ h,
and lm the m x m identity matrix, we see that the set of aIl sueh p's is just the set of first m coordinates of Syz( 5), where
5 = [ ' [ Iml1m
]1 [ GIF ] El)
HIF ] ].
The same sort idea will allow one to construct M,: M 2 (Exercise 3.8.8). We now go on to consider the following Question. Let N C M be submodules of Am. We would like to determine a presentation of MIN (see Definition 3.1.4).
179
Sa assume that M = (f" ... ,J,) and N = (g" ... ,g,), where we do not assume that either generating set is a Grbner basis. We define anAmodule homomorphism
q,:
A'
i
.
>+
MIN
Ji + N
(for 1 ::; i ::; s). It is clear that q, maps A' onto MIN sinee M = (f" ... ,J,). Let K = ker(q,). Then the desired presentation is A'1 K ~ MIN. SA we need ta compute an explicit set of generators for K. We note that h = (h" ... ,h,) is in K if and on1y if hrf 1 + ... + h,J, is in N, which, in turn, is true if and only if there are polynomials al, ... ,at E A Buch that
Let
H = [
J,
J,
g,
g,
J.
We have proved
THEOREM 3.8.9. With the notation abave, let Plo ... ,PT E A,+t be a generating set for Syz(H), and let hi E klxl, ... ,xn ]' denote the vector whose coordinates are the first s coordinates of Pi' 1 :S i ::; r. Then
C A 2 and
(_x 3 ,y)
(0, y + x 2 )
we see that N
= =
+ x( y, x),
~
A3IK, we set
x2
X
_x 3
y
y:x 2
and compute
180
We close this section by generalizing this last result to the case of an affine algebra. In this case we let A = k[x" ... , xnlf1, for an ideal 1 = (d" ... , de) c A. We again consider Ne M ta be submodules of ATn, but now, of course, the coordinates of the elements of Am are cosets of 1. 80, for a vector b = (b" ... , bm ) E k[x" ... ,xn]m, we set b= (b, +1, ... ,bm+I) E Am. 80 we may assume that N = (y" ... ,y,) for 9,,. ,9t E k[x" ... ,xn ]'" and M = (1" ... ,lsl for !" ... ,!, E k[x" ... , xn]m. We deline an Amodule homomorphism
</>:
A'
.
>>
MIN
ei
li + N
(for 1 <; i <; s). It is clear that </> maps A' onto MIN sinee M = (1" ... ,t,). Let K = ker(</. Then the desired presentation is A' 1 K '" MIN. 80 we need ta compute an explicit set of generators of K. We note that li = (h, +1, ... , h,+1) is in K if and only if (h, + I)I, + ... + (h, + I)1, is in N, which is true if and only if there are polynomials a" ... , at E k[x" ... , x n ] such that
(h,
= (a,
This last statement is readily seen to be equivalent to the statement that every coordinate of
hrf,
+ ... + h,!, 
(a'9,
1'
l,
H = [
,Pr E k[ Xl,
,X n
]'+t+m'
be a generating set of 8yz(H), and let hi E k[x" ... , Xn]' denote the veetor whose coordinates are the first s coordinates of Pi (1 <; i <; r J. Then
We note that ail the computations that we have done in this section could be formulated using Theorem 3.8.11 (see Exercise 3.8.10). EXAMPLE 3.8.12. We will redo Example 3.8.10, exeept that we will now assumle that the ring is A = Q[x,ylf1 where 1 = (x 3 +y2,x 2 ). 80 now M = ((xy,y),(y,x), (x2 ,x)) C A 2 and N = ((_x3 ,y), (,y +X2)). We have that Ne M as before. 80 to determine K C A3 such that MIN", A 3 IK, we set
_y
X
x2
X
181
and compute Syz(H) to be generated by (0, 0, x, 1, 1, 0, 0, 0, 0), (1, x, 0, 0, 1,0,0,0,0), (0,0,0,1, 1,0, x, 0, 1), (x, 0, 0, 0, x, 0, y, 0, x), (0, y, 0, 1, x  1, 1,0,0, x + 1), (x, 0, y, 0, 0, 0, 0, 0, 0), and (0, 0, 0, 0, y  x 2, 0, 0, 1, x 2 +x) (tbis last computation using TOP with e, > e2 and lex with y> x). Thus K = ((0,0, x), (1, x, 0), (x, 0, 0), (0, y, 0), (x, 0, y, )).
Exercses 3.8.1. Redo the computation of the intersection of the ideaJs given in Example 2.3.6, Exercises 2.3.6 and 2.3.7 using the technique of syzygies presented in this section. 3.8.2. Redo the computation of the intersection of the modules given in Example 3.6.9, Exercises 3.6.11 and 3.6.12 using the technique of syzygies presented in this section. 3.8.3. In Theorem 3.8.3 we required that the order be POT. In tbis exercise, we show that the TOP ordering would not give rise to a Grbner basis for the intersection of two ideals. Consider the ideals l = (x 2, yx + x, xy2 +y) and J = (y2, X  xy, x 2  y) of Q[x, y]. Compute generators for In J by computing generators for the syzygy module of
H=[l
2 x xy+x 10
xy2+y
2 1 2 y xxyx y
using the TOP ordering on (Q[x, y])2 with e, > e2 and deglex on Q[x, y[ with y > x. Show that these generators do not form a Grbner basis for InJ with respect to deglex with y> x. One might think that the problem comes from the fact that the generators for l and J above did not form a Grbner basis with respect to deglex with y > x to start with. This is not the case as is easily seen by repeating the exercise with the ideals 1= (x + y, x 2 + 1) and J = (y2, x 2  y) using the same orders as above. 3.8.4. Redo the computation of the ideal quotient given in Example 2.3.12 and Exercise 2.3.11 using the technique of syzygies presented in this section. 3.8.5. Give the analog of the matrix H UBed to compute generators for 1: J, where land J are ideals, in the module case. That is, find H such that M: N can be obtained from Syz( H), where M and N are modules. Redo the computation of the ideal quotient of the modules given in Example 3.6.13 and Exercise 3.6.15 using this technique. 3.8.6. Consider the submodule N of (Q[x, y])3,
N = ((xy  Y,x,Y +x), (xy  x,x,xy +x), (x
+ y,y,xy + y)).
Compute generators for ann((Q[x, y]) 3 / N). 3.8.7. Consider the following two submodules of (Q[x, y])3,
K, = ((xy,x,y), (y,x,x), (x 2,x,y)) and
182
K 2 = ((0, y2+y, y2+y), (0, O,x 22xYX+y2+ y ), (0, xy, xy), (y, y, y)).
a. Prove that N = ((y2 +y,O,x 2  2xy+y2 x+y), (0,xY+X,y2 xy+ x 2 + y)) is a submodule of K, and K 2 . b. Compute generators for the module (K,jN) n (K 2 /N) (iQl[x, y]) 3 /N. Give the analog of the matrix H used to compute generators for (K,jN) n (Kz/N) which can be used to compute generators for (K,jN): (K2/N). Compute generators for the ideal quotient (K,jN): (K2/N), where K" K 2 and N are the modules of Exercise 3.8.7. Find the presentation of Kz/ N, where K 2 and N are as in Exercise 3.8.7. Follow the construction of Theorem 3.8.11 to generalize all the computations performed in this section to the case where A i8 an affine ring. Namely, for A = k[XI"" ,xn]/I, where l = (d" ... ,de), give the analog of the matrix H that i8 used ta compute generators for the intersection of two ideals in A, the intersection of two submodules of Am, the ideal quotient of two submodules of Am, the annihilator of M = Am/N, the intersection of submodules of Am/N, and the ideal quotient of two submodules of Am/N. Let l = (fI, , J,) k[XI,'" , xnl be an idea!. Show that J + l has an inverse in k[XI"" , x n ]/ J if and only if there is an element in the reduced Gr6bner basis for Syz(1, fI, ... , J" f), with respect to any POT order with the first coordinate largest, of the form (1, h"", , h" hl. Shaw that, in this case, h + J is the inverse of J + J. Reda the computations in Example 2.1.10 and Exercise 2.1.6 using this technique. Ali the computations done in this section can be done using only Theorem 3.8.9. That i8, all the computations done in this section can be viewed as the computations of kernels of certain Amodule homomorphisms, where A = k[Xl 1 '" ,x n ]. We illustrate this in the present exercise. Consider the following diagram of free modules,
3.8.8.
3.8.9. 3.8.10.
3.8.11.
3.8.12.
We define the pullback of this diagram to be the submodule PB of A'Am defincd as follows
PB = {(g,h)
183
3.9. Computation of Hom. As before we let A = k[x" ... , x n ]. Also, we consider two Amodules M and N. We are interested in the study of the set of ail Amodule homomorphisms between M and N. We deline Hom(M,N) = {</J: M
+
We deline the usual addition of two elements </J and ,p in Hom( M, N):
(</J + ,p)(m)
</J(rn)
E M.
a E A and </J E Hom(M, N), we deline a</J by (a</J)(m) = a(</J(m)) = </J(am) for all m E M.
Again, it is easily verilied that, with this multiplication, Hom(M, N) is an Amodule. Given two finitely generated Amodules M and N, we wish to "describe" Hom( M, N). As mentioned earlier, there are two ways one can "describe" an Amodule V (see the discussion following Lemma 3.1.3): by computing a presentation of V, or, if V is a submodule of sorne quotient Am lU, by giving generatars (elements of Am lU) for V. We will lirst give generators for Hom(M, N) as a submodule of sorne quotient Am lU. We will then obtain a presentation for Hom(M, N) using Theorem 3.8.9. Since we will need it later on, we first consider the easy case of computing Hom(A',At). Let i,i = 1, ... ,s be the standard basis for A'. An element </J of Hom(A', At) is uniquely determined by the images </J( i) E At, i = 1, ... , s.
184
Then, as in linear algebra, cp is given by matrix multiplication by the matrix whose columns are the cp(ei)'s. We will denote this matrix by cp also. Note that cp is a t x s matrix. We further identify the matrix cp in Hom(A', A') with the column vector cp' in A" formed by concatenating the columns of cp in order. This identification gives an explicit isomorphism Hom(AS, At) ~ ASt, sinee it is readily verified that it gives a one to one and onto Amodule homomorphism
Hom(M,N)
>
AM
matrix
[j: j: j: 1
Or, as an
given bycp(f"h) = ((2x+1)h x 2 j"xh +j,,(x 2 x)h). Then it is readily verified that cp is alQ[x]module homomorphism. Moreover, cp(l, 0) = (2x+1, x, 0) and cp(O, 1) = (_x 2 , 1,x2  x). Hence the matrix associated with cp is
and so the vector in lQ[x]6 associated with cp is (2x + 1, x, 0, _x 2 , 1, x 2  x). Now, in order to describe Hom(M, N) explicitly, we need to assume that we are given M and N explicitly. That is, we assume that we are given presentations of M and N, say
M"'A'IL
and
N"'A'IK.
Then the idea is to compute Hom(A' 1 L, At1K) by adapting the ideas in the computation of Hom(A', At) above. To do this, suppose that we have a presentation of the Amodule M, M "" A'1 L. Then we have a sequence of Amodule homomorphisms (3.9.1)
where the map i: L ~ AS is the inclusion map, and 7r: AS + M is the map which sends the standard basis of A' onto the generating set of M corresponding to the standard basis in the isomorphism M "" AS IL. Sequence (3.9.1) is called a short exact sequence. In general a sequence of Amodules and Amodule homomorphisms
185
is called exact if im(i+l) = ker(i) for each i. It is easy to check that Sequence (3.9.1) is exact, which, in this case, means that i is one to one, ker(1f) = im(i), and 1r is anto. Now we lind a presentation of L, say
L~AS,/L"
O.
where r = i a 1f1 (the exactness is easily checked). We will only be interested in the exact sequence ASl S AS ~ M 7 O. We use this last sequence, and a similar one for N to compute Hom(M, N). In order to do this we review the elementary homological properties of Hom. What we need is summarized in Lemma 3.9.2. We refer the reader to [Hun]. We assume we are given Amodules Ml, M2, and N and an Amodule homomorphism <p: M, > M 2 We deline two maps
Hom(M2 ,N)
,p
>>
Hom(N,M2 )
<P a p.
It is easy to verify that 0<P and <Po are Amodule homomorphisms. For example, if Ml = ASl) M 2 = A S 2, and N = At l and the maps are given by matrices, then
0<P and <Po are given by matrix multiplication, e.g. ,p c""'., ,p<p.
LEMMA 3.9.2. Assume that we have an exact sequence of Amodules and Amodule homomorphisms
(3.9.2)
and
(3.9.4)
>
(3.9.5)
and
(3.9.6)
Hom(P, M 3 )
186
account the isomorphisms between M (resp. N) and A'jL (resp. AtjK).) So, as noted above, we have the two exact sequences (3.9.7)
(3.9.8) As before, the map r (resp. Ll) is given by a matrix which we will also denote r (resp. Ll). The colmnns of r (resp. Ll) are easily seen to be the vectors which generate L (resp. K), since the image of r (resp. Ll) is L (resp. K). We have that r is an s x 81 matrix and D.. is a t x tl matrix. Now in Sequence (3.9.3) we let P = N and replace Sequence (3.9.2) with Sequence (3.9.7) to obtain the exact sequence (3.9.9) where 0..., Hom(M, N)
=01f
"+ Hom(A', N)
and '1
(3.9.10)
kerh).
Thus to get a presentation of Hom(M, N) it suffices ta obtain a presentation of kerh). For this we first compute presentations of Hom(A', N) and Hom(A", N), then compute the map ')'* corresponding ta 'Y between the two presentations, and then we can compute ker('f*) using Theorem 3.8.9. Now in Sequence (3.9.4) we let P = AS and P = A" respectively, replacing Sequence (3.9.2) with Sequence (3.9.8) to obtain the exact sequences (3.9.11)
for P
+
= AS
and
J.!' +
8'
Hom(A", N)
+
0,
= Llo and p.' = 1f~ for P = A". These give, using (3.9.6)
Hom(A',N) Hom(A",N)
~ ~
and
Since, Hom(AS, At) 3;' Ast, it now suffices to describe im(8) as a submodule of Ast in arder ta obtain a presentation of Hom(A',N). Of course, a similar
187
statement halds far Ham(A",N). The map 6: Ham(AS, At,) > Ham(AS,At) corresponds to a map 8* which is given by an st x sh matrix S. That is
>
e;
8'
Ast
8<//.
In arder ta facilitate the statements of the following results, we will adopt the notation for making new matrices out of old Olles presented fight after Example 3.8.2.
LEMMA 3.9.3.
PROOF. A basis for Hom(AS,At,) is the set oft, x s matrices ,pij whose entries are aU zero except for the ij entry which is equal to one. These matrices correspond to the colunm vectors 'l/Jij E Astt obtained, as before, by concatenating the columIlB of the matrix ,pij. The vectors ,plj form the standard basis of As t , ~ Hom(AS, At,). The columIlB of the matrix 8 are then the images of the vectors 1f;ij under 8*. That is, the columns of S are the vectors obtained from the matrices 8(,pij) E Hom(A', At) by concatenating the columns of 8( ,pij). We note that by concatenating the colurrllls the way we do, we have, in effect ordered the ,pI/s (or equivalently the ,pi;'S) as follows:
Now for each i and j, 8(,pij) = ~ 0 ,pij. Because of the identification of the homomorphisms .6. and Wij with the corresponding matrices ~ and tPij respectively, we have 8(,pi,) = ~,pij, where the righthand side expression is a matrix multiplication. Now the t x s matrix .6.'lj;ij is the matrix whose jth column is the ith calumn of ~ with all other entries equal to zero. Therefore, aiter concatenation of columns, the matrices f1Wu) f1W2b ... ) f1WtIl correspond to the ftrst t, columns of ~ EIl EIl ~. Similarly the matrices ~,p12, ~,p22, ... ,~,pt,2
'v'
scopies
correspond to calumns t,
+ 1 through 2t,
copies
of
scopies
Now the image of 8 is the column space of 8; that is, the submodule of Ast generated by the COIUIDIlB of 8 (in general, we denote the module generated by the COIUIDIlB of a matrix T by (T)). Thus we have
(3.9.14)
188
Similarly (3.9.15)
copies
Therefore we have a presentation of Hom(A', N) and ofHom(A", N), as desired. We now return ta the map
Hom(A',N) </;
1t corresponds ta a map '"'1*
~
f+
Hom(A",N) </; 0 r.
copies
LEMMA
'Y' (</;'
3.9.4. There is an S1 t x st matrix T which defines 'Y' in the sense that T</;' + (Do EIl . :. EIl Do). Moreover, T is the transpose of
SI
the tensor praduct r It. The matrix r 0 It is defined ta be the st x Slt matrix obtained by replacing each entry 'Yij of r by the square matrix 'YijI" where It is the t x t identity matrix.
PROOF. We lirst deline the map
copies
2..
f+
Using the isomorphisms A,t ~ Hom(A',At) and A"t ~ Hom(A",A t ), we see that '1 corresponds to a map 1": As t .. AStt. Let 'lj;ij and 7./Jij be defned as in Lemma 3.9.3. Then 7* is given by a matrix T whose columns are the vectors "j*('ljJij ) E AStt. These vectors are obtained by concatenating the columns of "I(I/Jij ). Now from Equation (3.9.13) we have Hom(A', N) ~ Hom(A', At)1 im(6) and Hom(A",N) ~ Hom(A", At)1 im(6'i. We next show that the map
T Hom(A',N) >Hom(A",N)
is induced by the map 7; that is, 'Y(</; + im(6)) = 7(</;) + im(6'). To do this, it suffices to show that "I(im(6)) im(6'). So let 1/; E Hom(A',A"); then
Hence is given by the matrix T. We now wish ta describe T. As mentioned above, the columns ofT are the vectors 7'(1/;7,) E A"t obtained from the matrices "I( 1/;ij) = 1/;ij 0 r by concatenating columns. Again, because of
,*
scopies
S1
copies
S1
copies
189
the identification of the maps ,pij and r with the matrices ,pij and r respectively, wehave 'Y(,pij) = ,pijr, where the right~hand side expression is a matrix multi~ plication. For each i and j, ,pijr is the t x SI matrix whose i~th row is the j~th row of r. 80 if we order the ,pi/S as before, the matrices ,p11r, ,p2Ir, ... ,,pt1r have their respective first, second, etc. row equal ta the first row of r. The corresponding vectors in ASlt obtained by concatenation of columns are then the columns of the transpose of the matrix
[ 1'l1IthI2Itl" 'l1'b l t
1'
where [1'11 1'12 1'15 1is the first row of rand It is the t x t identity matrix. Similarly, the matrices 't/J12r, '1,b22f, ... ,Wt2f correspond ta vectors which form the columns of
[ 1'2IIth22Itl" '11'2s I t
1'
where [')'21 122 l'2s ] is the second row of r. We can continue this analysis and we see that T is obtained as indicated in the statement of the lemma. 0
Recal! that Hom(M, N) is isomorphic to ker{')') and hence to ker{')"). 80 we now compute the kernel of 1'*. We first compute the kernel of the hOlilomorphism
AS' >A"t/(~E9':'E9~)
81
copies
given by
1>'
>>
Let U be the matrix whose colunms generate this kernel. Thns the columns of U are given by the first st coordinates of the generators of the syzygy module of the columns of T and those of ~ E9 ... E9 ~ (see Theorem 3.8.9). Therefore
(3.9.16)
A presentation of Hom(M, N) can then be computed again using the method given in Theorem 3.8.9. To summarize we now state
THEOREM 3.9.5. Let M and N be A~modules given by explicit presentations M"" A' / Land N "" At / K. We compute Hom(M, N) as follows. (i) Use the generators of Land K as columns to define the matrices rand ~ respectively; (ii) Let T = '(r@It); (iii) Compute the matrix U defined by the kernel of the composite map
A st ~
ASIt + ASl
copies
190
using Theorem 3.8.9. This gives Equation (3.9.16); (iv) Compute a presentation of Hom(M, N) using Theorem 3.8.9.
Ta illustrate the Theorem, we now give an example. EXAMPLE 3.9.6. We let A = <Ql[x, y, z] with the lex order with x > y > z, using TOP with el > e, > ... on al! the modules considered. Let M = (fI' f" fs, f 4 ) A3, where
= [
~~
], g, = [
~: ],
Z g3 = [ x / : yz' ] .
We first need to compute presentations of M and N. To do this we use Theorem 3.8.9 .. Let L = SYZ(fI' f" f3' f 4 ) and compute L to be
L= ((l,x+z,O,l),(z,z',l,xz)) A 4 .
We also let K = Syz(gl,g"g3) and compute K to be
M'l'!A 4 jL We let
and
N'l'!A 3 jK.
r=
[ ,
0 0 0 0 0
x;z
1
z' 1 xz
"1
0
and
Ll
z' ] .
1
0 0
x+z
0 0
1
x+z
0 0
0 0
1
0 0 z
x+z
0 0
0 0 0
z
0 0
z'
0 0
1
0 0
0 0 0 0
z
0
z'
0
1
0
0 0 0 0 0
1
0 0
1
0 0
0 0
1
0 0
xz
0 0
xz
0
z'
1
xz
To compute the kernel of the map Al' > AB j(Ll EIl Ll) given by T composed with the projection A6 > AB j (Ll EIl Ll), we compute the syzygy module of the
191
columns of T and of
~yx
yx +yz
~ z2
~y+z
o o o
o o o
yx
~yx+yz ~ z2
~y+z
The first 12 entries of the generators of that syzygy module are the columns of the matrix U, where
~1
0
~1
u=
0 0 0 0 0 x 0 0 1 0 0
0 0
~1
0 0 0 0 0 x 0 0 1 0
0 0 0 0 0
X
0 0 1
x 0 0 1 0 0 0 0 0 z 0 0
0 x 0 0 1 0 0 0 0 0 z 0
0 0 x 0 0 1 0 0 0 0 0 z
0
yz Z2
~y+z
~y
y
~y
Y 0 0 0 0
~yz
0 0 0 0 0
yz  z2
~y+z
~y
yz 0
y 0
Hom(M,N) '" Hom(A 4 /L,A 3 /K) '" (U)/(il. EIl il. EIl il. EIl il.).
Finally to compute a presentation of (U) / (il.EIlil.EIlil.EIlil.) we compute the syzygy module of the eight columns of U and the four columns of il. EIl il. EIl il. EIl il. =
yx
~yx
+ yz ~ Z2
0 0 0 0 0 0 0 0 0
~y+z
0 0 0 yx ~yx + yz ~
~y+z
z2
0 0 0 0 0 0
~yx
0 0 0 0 0 0 yx + yz 0 0 0
~ Z2
~y+z
0 0 0 0 0 0 0 0 0 yx
~yx+yz ~ z2
~y+z
192
There are 4 generators for this syzygy module and we need the first 8 coordinates of each of them, which give
0 0 0
y y
tl =
Y y
0 1 0
, t2 =
0 0 0 0 0 1
, t3 =
0 0 0 0
yz  z2
0
yz  z2
y+z
, t4 =
y+z
x
0
0 0 0 0
x
Therefore
Hom(M,N) "" Hom(A4/L,A3/K) "" A8/(tl,t2,t3,t4)' We now show how to generate Amodule homomorphisms from A 4/ L to A3 / K,
and hence from M to N. For a = (al,'" ,as) E AB, the product Ua is a vector in A 12 . Using this vector we construct a 3 x 4 matrix whose colmnns are the 4 cOIlBecutive 3tuples of the vector Ua. This matrix defines a homomorphism from A 4/ L to A3 / K. The fact that this homomorphism is welldefined follows from the construction of U. Let ei,i '" 1, ... ,8 be the standard basis of A8 Then Hom(A4/L,A3/K) is generated by the matrices obtained froID U ei, i = 1, ... ,8, that is, by the matrices obtained from the columns of U. Therefore Hom(A4 / L, A3 / K) is generated by the cosets of the eight matrices
<Pl =
~1
0 0 0
0 0
Xl] o ,
0
<P2 =
~1
~
0 0 0
o 0] xl,
o
0 0 0
<P3 =
<P4 =
[~
1 0 0 0 0 0
~ ],
o
1
<P5 = [
n,
~1
~
0 0
o
0 0
0 0
<P6 = [
0 0 1 0
<P7 = [ yz Z2 y+z
y] Y .
0
It can easily be verified that, for i = 1, ... ,8, we have <PiL C;; K. Thus any <P E Hom(A4/L,A3/L) can be expressed in terms of the <Pi'S
<P =
I: ai <Pi ,
i=l
where ai E A. We recall that we identify the homomorphism <P with the matrix that defines it.
193
M f , f2 f3 f4
A 4/L e, +L e2 +L e3 +L e4+ L
A3/K e~ +K
e~+K
>+ >+
c>
g,
g2 g3
e;+K
where the vectors el, e2, e3, and e4 are the standard basis vectors for A 4 , and the vectors el' 21 and e~ are the standard basis vectors for A 3 . Let tP be any homomorphism in Hom(A 4/ L, A3 / K), say 1> = I:~~l ai1>i. Then we deline a homomorphism 1>' in Hom(M, N) as follows. First, it is enough to determine 1>'(fi) for i = 1,2,3,4. But 1>'(fi) is just the image of 1>(ei + L) under the isomorphism A 3 / K '" N. In particular, 1>' (f 1) is the image under the isollorphism A 3 / K '" N of
1>(el + L)
i=l
a, [
~1
+ a2 + a6
~1
+ a3 + a7
~J + ~
a4 [ ]
+a5 [
~;+z;
+ as [
~y
+K
a2 + a3
:a:':(:~"+):~7  yas ]
+ xa6 + (y + z)a7
+K
+( a2 + xas + (yz  z2)a7  ya8)(e~ + K) +(a3 +Xa6 + (y + z)a7)(e~ + K).
That is
(a, + xa4 + yaS)g, + (a2 + xas + (yz +( a3 + xa6 + (y + z)a7)g3
z2)a7  yaS)g2
The images of f2' Is, and f4 can be computed in a similar way. In particular Hom(M, N) is generated by the homomorphisms 1>; correspond
194
1>'l '.
M f, f,
+
h
f4
1>',..
M f, f2 f3 f4 M f, f, f3 f4
+
1>'3 . .
M f, f,
+
h
f4
1>'4'.
M f, f, f3 f4
+
1>'5'.
+
1>'6'.
+
+
+ +
M f, f,
+
h
f4
+
1>'7'.
M f, f, f3 f4
+
+
+ +
+
1>'8'.
+
K = ((x+y,x', xy+yz, yz), (xy, xz, yz, xz 2), (xy, yz, xz, yz2)).
Compute generators for, and a presentation of Hom(M, N). 3.9.2. Consider the following modules
(3.10.1)
195
ta indicate that A" IMo is a presentation of M. The map io: Mo + A" is the inclusion map, and KO: A 050 7 M is the map which sends the standard basis of A" onto the generating set of M corresponding to the standard basis in the isomorphism M ~ A 'olMo. Now we find a presentation of Mo, say
Mo~AS'IM"
O 7 M 1
i, +
ASl
1f1 +
M.0
7
0.
O + M 1
i, +
7
!/Jo
7,
where <Po = "0, and <P, = io 0 "1 (the exactness is easily checked). We continue this process recursively: at the jth step, we find a presentation A'j IMj of M j  l . We then obtain a sequence of module homomorphisms as in Figure 3.3.
\/
M,
A"
/\
A"
ASQ
'M
, 0
\/ /\
M2
\/
Mo
0 0
/\
FIGURE
DEFINITION 3.10.1. The exact sequence obtained in (3.10.2) is called a free resolution of the module M.
196
In module theory, free modules are the analog of vector spaces. A free resolution of a module M is used ta "measure" how far away from a free module M is and ta give sorne useful numerical invariants for the module M and the ring A. If in Sequence (3.10.2) it turns out that there exists an Csuch that A'j = 0 for all j 2: C, wesay that the free resolution has finite length and that its length is <::: C. We will show below that finitely generated Amodules have free resolutions of finite length. In fact, for each Amodule M, there exists a finite resolution of length at most n, the number of variables in A. We say that A has global dimension less than or equal ta n. We will now nse the theory we have developed sa far ta prove this result (Theorem 3.10.4). First we have a technicallemma. Let {gl' ... ,gt} c;: Am be a Grbner basis for M = (JI' ,J,) with respect ta sorne term arder on the monomials of Am. Let {Sij Il <::: i < j <::: t} At be as in Theorem 3.7.3. Recall that it is a Grbner basis for Syz(gl' ,gt) with respect ta the term arder < on monomials of At induced by [ gl gt by Theorem 3.7.13. We note that we are using two different term orders: one in Am which is used ta compute the Grbner basis {gl' ... ,gt} for M, and the other is defined in At with respect ta whlch the set {Sij Il <::: i < j <::: t} is a Grbner basisfor SYZ(gl' ... ,gt). We will use the same notation for bath orders, that is, we will nse < and we will write lm(gi) and !m( Sij). The context should indicate which module we are working in and which order we are using. In fact, we need ta be careful which arder we put on At Notice that the arder on At changes if we reorder the vectors Y1' ... ,gt' AIso, Binee we will be using the standard bases for bath At and Am, we will denote by el, ... ,et the standard basis for At, and by e~, ... ,e~ the standard basis for Am. We will assume that they are ordered as follows: the gi'S are arranged in such a way that if v < Ji. and lm(gJ = Xvej, Im(g,J = X".ej for sorne power products Xv, X". E A and sorne j E {l, ... ,m} (that is, lm(gv) and lm(g".) have the same nonzero coordinate) then Xv > X". with respect ta the lex ordering with Xl > X2 > ... > Xn (regardless of the arder that was used ta compute the Grbner basis for M).
1'
LEMMA 3.10.2. Leti E {l, ... ,nl}. Ifthevariablesxl, ... ,Xi do notappear in lm(gv), for some v E {l, ... ,t}, then the variables Xl, ... ,Xi, Xi+l do not appear in lm(sv".), for every Ji. such that v < Ji. <::: t. Sa, if Xl, ... ,Xi do not appear in any Im(9v) for v = 1, ... ,t, then Xll'" ,Xi, Xi+l do not appear in any lm(sv".) for 1 <::: v < p <::: t. In particular, Xl does not appear in any lm(sj".), for 1 <::: j < Ji. <::: t. PROOF. Let v, Ji. E {l, ... ,t}, v < Ji.. If lm(gv) and lm(g".) do not involve the same coordinate, then X vp. = 0, and hence svj.t = 0, so no variables appear in sv". at all. Otherwise, let Xv = Im(gvJ = Xvej and X". = !m(g) = X".ej for sorne j E {l, ... ,m}. Then, by Theorem 3.7.13,
197
where XV{J i8, as usual, lcm(Xp,l Xv). First, let us assume that Xl, ... ,Xi do not appear in Xv. Since Xv > X~ with respect to the lex term ordering with Xl > X2 > ... > Xn, then Xl, ... ,Xi do not appear in Xp, and the power of xH1 in Xv i8 at least as large as the power of Xi+l in X w Therefore the power of Xi+l in XVIl i8 the same as the power of Xi+l in XV) and hence the variables
Xl, .. ,Xi, Xi+l
do nat appear in ..!::..!!:.. and 80 do not appear in Im(svjt). Thus Xv ifx1, ... ,Xi do nat appear in anylm(gv)' v= 1, ... ,t, thenxl, ... ,Xi,Xi+l do not appear in any lm(sv~), for 1 :S v < '" :S t. The last statement is proved in exactly the same way. 0
3.10.3. As in Example 3.7.5 we let M be the submodule of A 3 = (<Ql[x, y])3 of Example 3.6.1. We saw that the vectors y" Y2' Y3, Y4' Y5, Y6 form a
EXAMPLE
Grbner basis with respect to the TOP term ordering in A3 with e, and with lex in A and y > x, where y, = (x 3 + X, x 2  X, x), Y2 = (x, y
> e2 > e3
+ x2 
X, 0),
Y5
= (x 2, x 3, _x 3),
y,
Y6
= (x 2 
We reorder the y's as required in Lenmm 3.10.2 with y > x, and we get
= (y+x 2,0,0),
Y2
= (x 3 +x,x 2 x,x),
Y5
= (x 2,x,y),
Y6
+ 2x).
(x 3
2
+ X, y 2 X 
x2 , x2
3
X,
1, X, 0)
834
856
2,x , y  x 2 + X
Using the order induced by the y's we have Im(s'2) Im(s34) Im(s56)
THEO REM 3.10.4. Every finitely generated A module has a free resolution of length less than or equal ta n, where n is the number of variables in A.
198
PROOF. Let M be any finitely generated Amodule. Then M has a presentation M ~ AS, IMo, where Mo = (g" ... ,g,) <:: AS,. If Mo = {O}, then we are done; otherwise we may assume that G = {gI,'" ,gt} fOrIns a Gr6bner basis for Mo with respect to sorne term order in A 80. Assume also that the g/8 are arranged as in Lemma 3.10.2. Let Xl, ... ,Xi be the variables that do not appear in any of the lm(gv)'s (i = 0 is possible). We will prove that M has a free resolution of length less than or equal to n  i. CASE 1. n = i. Then none of the variables Xl, ... ,X n appear in any of the lm(gj)'s. We need ta show that M ~ AS, IMo is isomorphic to a free module. Since the leading monomials of the gi '8 are of the farm aej for sorne a E k, and j E {l, ... , so}, we see that the module Lt(g" ... ,g,) is the free submodule of AS, generated by the ej's that appear in sorne lm(gi). Let M' be the free submodule of AS, generated by the other ej's. We will show that M ~ M'. Consider the map
1f:
M' f
>
e;
AsoIMo~M
f+Mo
It is easy to see that 1f is an Amodule homomorphism. Also, if f E M'and f E Mo, then, by Theorem 3.5.14, lm(f) is divisible by some lm(gi) for some i E {l, ... , t}. But this is impossible unless f = 0, since M' is generated by those ej's which do not appear as leading monomials of any gi Therefore 7f is one ta one. Finally, by Proposition 3.6.3, we see that for ail f E AS" f + Mo = Nc(f) + Mo, where Nc(f) is the remainder of f under division by G. Moreover Nc(f) E M', sinee the monomials of Nc(f) are exactly those monomials which are not divisible by any e J which appear in some lm(gi). Therefore 1f is onto, and hence 'if iB an isomorphism. CASE 2. n  i > O. We construct a free resolution
recursively as follows. At the jth step, we choose a monomial order on the free module A'j and find a Grbner basis G for ker(1)j). We arrange the elements of G according to Lemma 3.10.2. We then choose A'H' to be a free module whose basis maps onto Gand we let 1>j+1 be the projection map. Note that ker( 1>0) = Mo = (g" ... ,g,) and ker(1),) = 8yz(g" ... ,g,). If X" ... ,Xi do not appear in the leading monomials of the g~,'S, then, by Lemma 3.10.2, Xll'" ) Xi) Xi+l do not appear in the leading monomials of the elements of the Grbner basis for ker(1),). If Xl appears in lm(gj) for some j, then, by Lemma 3.10.2, Xl does not appear in the leading monomials of the elements of the Grbner basis for ker(1),). 80 ifwe apply Lemma 3.10.2 recursively, we see that no variables appear in the leading monomials of the elements of the Grbner basis for ker(1)n_i). By the case n  i = O~ we see that
199
A'n~'
by
AS"~'/ker(4)n_i),
resolution.
EXAMPLE 3.10.5. We continue Exemple 3.10.3. Since the leading term of and 856 involve different basis vectors, we see that SYZ(S121 834, 856) = (0,0,0). Therefore A3 "" (S12, S34, S56) and so wc have the following free resolution for M = (91,92,93,94,9s,96) = (f"!2'!3'!4) ; A3:
812, 834,
where
4>,:
(C "
A3
C2 ,C3 )
>
A6
C,S12+f2S34+C3SS6'
>
As we saw above, the kernel of 4>, is (0,0,0). To conclude this section, we use the techniques developed 80 far ta outline the computation of Ext n (M, N). We will assume that the reader is familiar with this concept and we will only give an indication on how ta go about the computation. We begin with a free resolution for ao Amodule M
fi+2 .t
ASi+l
fi+l +
r + . . . +
2
ASl
fI +
AS'
Jo
M'
+
which wecompute as above. For the Amodule N we form the usual complex which at the ith position looks like
... >
> ....
As in Lemma 3.9.2 aod Lemma 3.9.3 we cao compute presentations of these Hom modules aod using Lemma 3.9.4 we cao compute the maps between thern yielding another complex which at the ith spot looks like
We can use Theorem 3.8.9 to compute ker(Ti ). Also, im(1i+1) is obtained using the columns of the matrix that determines T i + 1. Thus we can compute
In the previous three chapters we considered the theory of Grobner bases in the ring A = k[Xl,'" ,X n ], where k is a field. We are now going to generalize the theory to the case where A = R[Xl1'" ,xn ] for a Noetherian commutative ring R. Sometimes we will need to be more specifie and require R ta be an Integral domain, a unique factorization domain (UPD), or a principal ideal domain (PID). We will give many of the same type of applications we gave in the previous chapters in this more general context. Moreover, the theory of Grobner bases over rings will allow us ta use inductive techniques on the number of variables; for example, for a field k, k[x, y] can be viewed as a polynomial ring in one variable y over the ring k[x] (i.e. k[x, y] = (k[x])[y]). We give an example of this technique in Section 4.4 where it lS used ta test whether Ideals are prime. The theory of Grobner bases over rings has complications that did not appear in the theory over fields. Indeed, many of the results will not hold in this generality. Moreover, many of the basic techniques will become more complicated because we now have ta deal with Ideals of coefficients in the ring R. In Section 4.1 we give the basic definitions and lay the foundations for the theory of Gr6bner bases over rings. An algorithm for constructing Grobner bases will be presented in Section 4.2. We will have to assume certain computability conditions on R in order for this algorithm to be effective. We use a method presented by Moller [MoSS] to compute the appropriate syzygies needed for this algorithm. We then give examples of computing Grobner bases over the rings Z, Z20 and Z[ Al. In Section 4.3 we give the usual applications including elimination, computing syzygy modules, and a result of Zacharias [Za] which gives a method for computing a complete set of coset representatives of A modulo an ideal. We then go on, in Section 4.4, to discuss questions related to rings of quotients and use this material to give an algorithm to determine whether an ideal in A is a prime ideal. Next, in Section 4.5 we specialize the ring R to be a PID and show that in this case we may again use the notion of Spolynomials to compute Gr6bner bases. We conclude that section by giving a structure theorem of Lazard [LazS5] for Grobner bases in polynomial rings in one variable over a PID. In the last section, we use Lazard's result to compute the primary
201
202
decomposition of ideals in Bueh rings. 4.1. Basic Definitions. In this section we develop the theory of Grbner bases for polynomials with coefficients in a Noetherian Ting R. As we did for modules in Section 3.5, we will mimic the constructions of Chapter 1 as much as we cano We will assume that we have a term order < on the power products in the variables Xl) ... ,X n  With respect ta this term order, we have the lisuai concepts of leading power product, leading term, and leading coefficient of a polynomial in A = R[xl, ... ,xn ]. Next, w need the concept of reduction, see Section 1.5 and 3.5. In those sections we required the notion of divisibility of leading terms. Actually, there we were nat concerned about whether we were dividing leading terms or dividing leading power products since one was a nonzero element of the field k times the other and this had no effect on the divisibility. When the coefficients are not elements of a field, this becomes a very important issue. It turns out that in order to have a reasonable theory of reduction and Grobner bases using the same ideas of reduction as in the field case, we need R to be a PID. We will explore this in Section 4.5. Since we want to define reduction and Gr6bner bases in the context of rings more general than PID's, we must modify our previous concept of reduction. The correct way to do this is to work with syzygies in the ring R. After we define this new concept of reduction, we will be able to pattern our results again on what we did in Chapter 1. There is one major exception and that is in the definition of Grbner basis itself. In the case of ideals of polynomials with coefficients in a field, and also in the case of modules, the definition again involved the concept of dividing one leading term by another. So we need to change our very definition of Grbner basis. It turns out that many, but not al!, of the equivalent conditions for a Gr6bner basis over a field given in Theorem 1.9.1 will work for us in our new situation. So to reiterate the setup, we assume that we are given a Noetherian commutative ring R and we let A = Rlxl, ... ,xn ]. We then have from the Hilbert Basis Theorem 1.1.3, that A is also a Noetherian ring. We assume that we have a term order < on the power products, 1rn , in the variables Xl, .. ,Xn . Then frOID Theorem 1.4.6, we know that < is a wellordering on 1rn (the point here is that this is a property of the power products 1r n , not of the polynomial ring klxl, ... ,xn ], for a field k, even though the proof of Theorem 1.4.6 used the Hilbert Basis Theorem in klxl, ... ,xn ]). For J E A, Ji 0, we write J = alXI + ... + a,X" where al, ... ,as E R, ai # 0 and Xl, ... 1 X s are power products in Xl, ... ,Xn with Xl > X 2 > ... > X,. We define as before, IpU) = Xl' leU) = al and ItU) = alXI (called the leading power product, leading coefficient and leading term of J, respectively). We now turn our attention to the concept of reduction. Recall, that in the case where R = k is a field, given three polynomials J, g, h in k[XI' . '. ,X n ], with g i 0, we say that J ~ h, if and only if lp(g) divides a term X that appears
203
in 1 and h = 1  ltt) g. The case where R is not a field differs in two ways. The first difference is that in the case of rings, it is convenient ta ouly reduce the leading term of 1. It is readily seen that all the results on Grbner bases in Chapter 1, excluding the oues making explicit use of reduced polynomials, are valid with this restricted concept of reduction. In the case of rings, however) the results involving reduced polynomials are no longer valid and 80 reducing tenus that are not leading terms is unnecessary (see Exercise 4.1.6). With this in mind, we could fephrase our definition of reduction over a field k by saying that 1 ~ h, providedthat lp(g) divides lp(j) and h = 1  ::gjg (note that lt(j) = ltn:i;jg) and sa tbe leading term of 1 has been canceled). We see that this notion requires that we divide by lt(g) = lc(g) lp(g). The problem with this is that over a ring R we may not be able ta divide by the ring element lc(g). We could build this into our definition just as we must require that lp(g) divide lp(j), but this turns out ta be tao restrictive when we are attempting ta divide by more than one polynomial, as, of course, the theory requires. The key idea in resolving this diffieulty is to use a linear eombination of the the leading terms of the divisors, whose leading power products divide lp(j), ta eliminate lt(j). Sa we nQW assume that we are considering polynomials f and fI fs in A = R[XI, ... ,Xn ] with fJ, ... ,1, # 0, and we want ta divide 1 by fJ, ... ,j,. That is, we want to caueel the leading term of 1 using the leading terms of fJ, ... ,Is We should be allowed ta use any li which has the property that lp(j;) divides lp(j) aud sa what we desire is that lt(j) be a linear combination of these lt(j;). We thus arrive at
1 1
DEFINITION 4.1.1. Given two polynomials 1 and h and a set of nonzero polynomials F = {/J, ... , l,} in A, we say that 1 reduces ta h modulo F in one step, denoted
F 1 > h,
il and only il
h=
lor CI, ... , c, E R and power products XI, , X, where lp(f) = Xi lp(/t) lor aU i Buch that ct # 0 and lt(f) = CjXIlt(/J) + ... + esX, lt(f,).
EXAMPLE 4.1.2. Let R = Z and let 1 = xy 1, /J = 7x + 3, h = llx3 2y 2 + 1 and h = 3y  5. We will use the deglex ordering with x < y. Sa with F = {/J,hh}, we see that 1 ~ h, where h = 3y lOx  1 since h = 1  (y/J  2xh) and xy = lt(f) = Y lt(f,)  2x lt(h) (Here C2 = 0, as it must, sinee lp(f) = xy is not divisible by lp(h) = x8) So we have done what we said we wanted ta do, namely, we have cauceled out the leading term of 1 using the polynomials in the set F. Also, 1 could not have been reduced using only one of the polynomials /J, 12, h
204
We draw attention ta the condition Ip(f) = Xi Ip(fi) for aIl i such that Ci # O. Its purpose is to ensure that each CiXi It(fi) in the difference h = f  (clXdl + ... + c,X,f,) with Ci # 0 is actually used to help cancellt(f). Because of the possibility of zero divisoIs in the ring R, we must be careful about this. For example, if we only required Ip(f) = Ip(CiXdi) for all i such that Ci # 0, we could end up with a term c Ip(f) remaining in h. To see this consider the case where R = ZIO with deglex and x > y and let f = 3y, ft = 5x 2 + y, and 12 = y. Then It(f) = 2lt(fd + 3It(h) and Ip(f) = Ip(2ft) = Ip(3h) = y whereas h = f  (2ft + 312) = 2y. Having been careful with the definition we have the following cruciallemma whose easy proof we leave ta the exercises (Exercise 4.1.13). LEMMA 4.1.3. With the notation of Definition 4.1.1 we have Ip(h) < Ip(f). Let f E A and let F = {ft, ... ,f,} be a set of nonzero polynomials in A. We now examine how we would determine whether f is reducible modulo F. We first find the set J = {j IIp(!,) divides Ip(f),l <:: j <:: s}, which is readily done. We are rstricted to such J by the requirement that Ip(f) = Xi Ip(f;) in Definition 4.1.1.Then we must solve the equation (4.1.1)
Ie(f)
I), !c(!,)
JEJ
for b/s in R. This equation can be solved if and only if le(f) E (Ie(!,) 1 j E J) R, where for a subset C : R we denote by (C) R the ideal in the ring R generated by the elements of C. Once we have the b/s then we can reduce f:
EXAMPLE 4.1.4. We put Exanlple 4.1.2 in this context. We have Ip(f) = xy and so J = {l,3}. Thus we need ta solve !c(f) = 1 = bl 1e(fJ) + b3 Ie(h) = 7b l + 3b3 We choose the solution bl = 1, b3 = 2 and thus we reduce f as h = f  (blyft + b3x/3) = f  (yft  2xh) = 3y  lOx  1. It is thus clear that we must be able ta solve linear equations in the ring R in order ta be able ta reduce in A. This condition is one of two conditions R must satisfy in order ta compute the objects of interest ta us in this chapter. We Hst these two conditions in the following DEFINITION 4.1.5. We will say that linear equations are solvable in R provided that (i) Given a, al, . . . ,am E R, there is an algarithm ta determine whether a E (al, ... , a=) R and if it is, ta compute bl ,. , bm E R such that a = al bl + ... + ambm ;
205
(ii) Given
a" ... ,am E R, there is an algorithm that computes a set of generators for the Rmodule
Examples of such rings include Z, Zm, Qlxl, ... ,xn ], Zli] where i 2 = l, and
ZIR].
The first condition in Definition 4.1.5 is the one discussed above which we found necessary in order to make the reduction process computable. The second condition is needed to guarantee that the algorithm (Algorithm 4.2.1) to be presented in the next section for computing Grbner bases in A is actually implementable. We will always assume that !inear equations are solvable in R when an algorithm is presented. However, as has been the case throughout this book, we will otherwise be informaI about our assumptiolls on the ring. In particular, without the assumption that linear equatiolls are solvable in R, what we present in this chapter is valid, and should be viewed as mathematical existence statements. As in the case of ideals and modules where the coefficients lie in a field, we need to iterate our reduction process. DEFINITION 4.1.6. Let f, h, and JI, ... ,f, be polynomials in A, with JI, ... ,f, of 0, and let F = {JI, ... ,fs}. We say that f reduces ta h modulo F, denoted
f >+ h,
if and only if there exist polynomials h" ... ,htl
E
A such that
We note that if f ~+ h, then f  h E (f" ... ,J,). EXAMPLE 4.1.7. We continue Example 4.1.2, where R = Z and f = xyl,JI = 7x+3, h = llx3 _2 y 2 + 1,13 = 3y 5 and F = {f" fz, h}. We see that
f ~+ lOx  6, since f ~ 3y lOx  1 ~ lOx  6. The first reduction is the one noted in the previous example and the second is obtained by simply adding h to 3y  lOx  1. We note that this reduction could not have been done in one step.
DEFINITION 4.1.8. A polynomial r is caUed minimal l with respect to a set of nonzero polynomial;; F = {f" ... ,J,} if r cannat be reduced.
l In the case of ideals and modules where the coefficients were in a field we required that every term in r could not be reduced. Here we are only requiring that lt(r) cannot be reduced modulo F. In the literature this latter concept is sometimes refered to as "reduced", but we adopt the word "minimal" so that we are consistent with the similar concepts in the rest of this book.
206
Lt(W) = ({lt(w) 1 w
We have the following eaBy
W}).
0, is minimal with respect ta a set oJ nonzero polynomials F = {h, .. ,J,} A iJ and only iflt(r) 't Lt(F). PROOF. Ifr is not minimal, then r can be reduced and so from Definition 4.1.1 we have that lt(r) = c,X,lt(h) + .. +c,X, lt(j,) for Ci E R and power products Xi. It immediately follows that lt(r) E Lt(F). Conversely, if lt(r) E Lt(F), then lt(r) = h,lt(j,) + ... + h, lt(j,) for sorne polynomiaIs hi E A. If we expand this equation out into its individual terms, we see that the only power product that cau DCCUI with a nonzero coefficient is Ip(r); that is, we may assume that each hi is a term CiXi. It is then clear that r  (c,X,j, + ... + c,X,!,) is a reduction ofr. 0 We note that in Example 4.1. 7, the polynomial r = lOx  6 is minimal with respect ta F = {J" h, Jd since only h has the property that lp(ji) divides lp(r) = x and kIr) = 10 't (k(h))z = (7)z. We have THEOREM 4.1.10. Let J, h, ... ,J, E A with h, ... ,J,
h,j,
+ ... + h,!, + r
If linear equations are solvable in R, then hlJ ... ,hS1 rare computable. PROOF. Either J is minimal with respect to F or J ...!:... r,. Similarly, either rI is minimal with respect ta F or rI ~ T2' Continuing in this way we get
where we have, by Lemma 4.1.3, lp(j) > lp(r,) > Ip(r2) > .... This process must end since the order on the power products is a wellordering, and 80 we obtain the desired polynomial r. We now have
207
for sorne CIl, ,Cl s ER and sorne power products X I1 , ... ,X1S1 where It(f) = CllXlllt(fI) + ... + C"X It(f,) and Ip(f) = X,i Ip(!;), for ail i such that Cli # o. This gives a representation of the desired type for f  r,. Similarly, Tl  T2 = C21X21h + ... + C2sX2sfs for sorne C21, ... ,C2s E R and sorne power produets X 2l ,. , X 2" where It(r,) = C2lX2llt(fI) + ... + C2,X2s It(f,) and Ip(r,) = X 2i Ip(fi), for all i sueh that C2i # O. Since Ip(f) > Ip(r,) > Ip(rz), we get a representation of the desired type for f  r2, namely
,s
Continuing in this way we eventually obtain a representation for desired type. The last statement is clear. D
f  r
of the
The method for eomputing r is given as Aigorithm 4.1.1. We note that in obtaining It(r) = C,X, + ... + c,Xs in Aigorithm 4.1.1, we are assuming that Ci = 0 for ail i sueh that Ip(fi) does not divide Ip(r). Assuming that !inear equations are solvable in R we can determine whether the Ci '8 exist and compute them if they do. INPUT: f,fI, ... ,f, E A with!;
0 (1 SiS s)
WHILE there is an i sueh that Ip(fi) divides Ip(r) and there are
Cll ... ,Cs E
# 0 DO
+ ... + esXsf,)
FOR i = 1 to s DO
ALGORITHM 4.1.1. Division Algorithm over Rings EXAMPLE 4.1.11. We reconsider Examples 4.1.2 and 4.1.7 using Aigorithm 4.1.1. The first pass through the WHlLE loop was done in Example 4.1.2 and gaveusr= f(yfI + (2x)h) = 3ylOx1, h, =y, h 2 =0, andh3 = 2x. The second pass through the WHlLE was done in Example 4.1. 7 and gave us
208
r= (3ylOx1)(h) = lOx6, hl =y, h 2 =0, andh3 = 2x1. The WHILE loop stops, sinee only lp(ft) divides lp(r) but there is no Cl sueh that lOx = lt(r) = ellt(ft) = cl(7x). Thus, f = yft + (2x l)h + (lOx  6). We may nQW give the first characteristic properties of Grobner bases over A = R[Xl, ... , xnl, for a ring R. THEOREM 4.1.12. Let I be an ideal of A and let G = {91, ... ,9,} be a set of nonzero polynomials in I. Then the followin9 are equivalent. (i) Lt(G) = Lt(!). (ii) For any polynomial f E Awe have
I if and only if f
S+ O.
(iii) For all f E l, f = h l 91 + ... + ht9t for some polynomialB hl, ... , ht E A such that lp(f) = maxl<:i<:t(lp(hi) Ip(9i)). PROOF. (i)==? (ii). We know that if f S+ 0, then f E I. Converselyassume that f E I. Then we know from Theorem 4.1.10, that f S+ r with r minimal. If r oF 0 then, by Lemma 4.1.9, lt(r) cl Lt(G). But f Eland f  rEl imply that rEl and so lt(r) E Lt(!) = Lt(G), whieh is a contradiction. (ii)==? (iii). This is the special case of r = 0 of Theorem 4.1.10. (iii)==?(i). For f E I we need to show that lt(f) E Lt(G). We have that f = h l 91 + ... + ht9t such that lp(f) = maxl<i<t(lp(hi) Ip(9i))' It is then easily seen that lt(f) = l:lt(h i ) lt(fi) where the sum is over ail i satisfying lp(f) = lp(hi ) Ip(9i)' Thus lt(f) E Lt(G), as desired. 0
It is important ta notice the form of Statement (iii) in ,the Theorem. We use lp(f) = maxl <i<t(lp(h Ip(h i9i), since over i ) Ip(9i)) instead of lp(f) = maxl <i<t a ring R with zero divisors, we need not have lp(h i ) Ip(9i) = Ip(h i9,).
DEFINITION 4.1.13. A set G of nonzero polynomials contained in an ideal I i8 called a Grbner basis for I provided that G satisfies any one of the three equivalent conditions of Theorem 4.1.12. A set G of nonzero polynomials contained in A is called a Grbner basis provided that G is a Grobner basis for (G). EXAMPLE 4.1.14. Let R = Z and A = Z[x, yi with the aeglex ordering with x < y. Let ft = 4x+1, h = 6y+1 and I = (ft,h). Then 3yft 2xh = 3y2x E I while It(3y  2x) = 3y cl (lt(ft), lt(h)) = (4x,6y), and thus {ft, h} is not a Grobner basis for I. On the other hand, as another example, let 91 = 2x+ l, 92 = 3y+ 1 and set!' = (91,92). Then by simply looking at alllinear combinations of 91 and 92, it is easily seen that Lt(!') = (2x,3y,xy) = (2x,3y) = (lt(91),lt(92)), and sa {91, 92} is a Grbner basis for!'. COROLLARY 4.1.15. IfG is a Grobner basis for the ideal I in A, then I = (G).
209
We note that the remainder r obtained in Theorem 4.1.10 is not necessarily unique, even in the case where F is a Grobner basis (see Exercise 4.1.6). We have, however, in Theorem 4.1.12 that for G a Grbner basis and f E (G), the only possible remainder for f is 0 with respect ta G. That is, COROLLARY 4.1.16. IfG is a GTobner basis and f E (G) and f r is minimal, then r = O.
S+ T,
wheTe
PROOF. Since f E (G) we have that r E (G) and sa, since G is a Grbner basis, we see that if r cf 0 then T cannat be minimal by Lemma 4.1.9. 0 We further note that the Noetherian property of the ring R, and hence of the ring R[XI, ... ,X n ], yields the following Corollary, whose proof we leave ta the exercises (Exercise 4.1.5). COROLLARY 4.1.17. Let 1 finite Grobner basis.
We will develop a method for computing Grobner bases over rings in the next section. However, in the special case where R = k[y], for a field k and a single variable y, we see froID the next theorem that we can compute a Grobner basis over R using the theory presented in Chapter 1. This result will not be used until Section 4.5.
THEOREM 4.1.18. If G = {g" ... ,gt} is a Grobner basis in k[y, X" ... ,xn ] with respect ta an elimination arder with the x variables larger than y, then G is a Grobner basis in (k[yJ) [Xl, ... ,xn ]. PROOF. Let f E 1 = (g" ... ,gt). We will denote by Lt(l) , lt(f), lp(f), and le(f) the leading term ideal of l, the leading term, leading power product, and leading coefficient of f with respect ta the elimination arder <, and by Ltx(l), lt x (f),lpx (f) , and lcx(f) the leading term ideal of l, tbe leading term, leading power product, and leading coefficient of f in (k[yJ)[XI"" ,xn ] (i.e., here the arder is the one on the x variables alone which we will denote by <x). Note that lex(f) E k[y]. We will denote the leading term of a polynomial a E k[y] by
lty(a).
We need ta show that Ltx(l) = (ltx(g,), ... ,ltx(gt)). One inclusion is trivial. For the reverse inclusion, let f E J. We write gi = aiXi+ lower x terms, where Xi is a power product in the X variables alone and ai E k[y]; sa ltx(gi) = aiXi. Since Gis a Grbner basis in k[y, Xl,' .. ,Xn ] we can apply the Division Algorithm (see Theorem 1.5.9 and its proof) to write (4.1.2)
210
where T j is a power product in the x variables alone, smee Ip(a,yVjTjgij ) = yV'Tj Ipy(ai,)Xi" (4.1.3)
yV'T, lpy(ai,)Xi ,
E k, for 1 S j S N and,
Choose io least such that TjoXijo > Tjo+lXijo+l. Then T1Xi1 = TjXij for 1 ::; j S; jo, and T , X i , > X for al! other x power products, X, appearing in the right side of Equation (4.1.2). Thus
jo
(4.1.4)
provided that h = L;';", ajyVjaij oF O. But from Equation (4.1.3), looking at the first io terms and canceling TjXij = T1Xi1 we get
yV, lpy(ai,)
oF O.
as desired.
The converse of Theorem 4.1.18 is not true as the following example shows. EXAMPLE 4.1.19. Consider the ideal l = (y (y + l)x, y 2x) C;; Rix]' where R = klyJ. Then {y (y + l)x, y2X} is a Gr6bner basis in Rix]' since, in that ring, the polynomials y(y + l)x and y 2x are both terms. However, {y(y + l)x, y2X} is not a Gr6bner basis in klx, yJ with respect to the lex order with x > y (or any other order for that matter), since the polynomial yx is in l but its leading term (itself) is divisible by neither lt(y(y + l)x) = y 2x nor It(y 2x) = y 2x. Exercises 4.1.1. In 21x, y], let J, = 6x 2 + Y + 1, h = lOxy  y  x, h = 15y 2 + x, and F = {f" h h}. Consider deglex with x > y. a. Show that 2x 3y ~ _x 3  x 2y  2xy2  2xy. b. Show that x 3y2 ~ x 4 + x 3y + x 2y2 _ xy3 _ xy2. c. Show that x 3y2+5x 4 +X 3y ~+ _xy3_x2y_2xy2_y3_x2 _2xy_y2 In each case note that the remainder polynomial is minimal with respect to F. There are many ways one can reduce the above polynomials; the reductions above are just one possibility.
211
4.1.2. In Z[x, y, z], let h = x'yz+yz+1, 12 = 5yz'xy+z, h = 7yzz7y2, and F = {f" 12, h}. Consider deglex with x < y < z. a. Use the Division Algorithm (Algorithm 4.1.1) on f = 3xy + 2xy2 2yz + 2z2 + 3x 2y'z' ta write f = hd, + h 2h + h3 h + r where r is minimal with respect to F and
lp(f) = max(lp(h , ) lp(j,) , Ip(h 2 ) lp(h), Ip(h 3 ) lp(h), lp(r )). (There are two obvious ways to begin this exercise; try them both.) b. Show that the set F is not a Gr6bner basis. In ZlO[X, y], let h = 3x 2y+3x, 12 = 7xy' +y, and F = {f" h}. Consider lex with x > y. a. Use the Division Algorithm (Algorithm 4.1.1) on f = x 3 y 3 + 5x 2y2 + x 2 y + 1 to write f = h,h + h 2 h + r, where r is minimal with respect to F and lp(f) = max(lp(h , ) lp(j,) , Ip(h 2 ) Ip(f2), lp(r)). [One answer is r = x + 1.] b. Show that the set F is not a Gr6bner basis. Show that the subset F = {3x 2 y  x, 2Z2  x} Z[x, y, z] is a Gr6bner basis with respect ta deglex where x > y > z and is not a Gr6bner basis with respect ta lex where x > y > z. Prove Corollary 4.1.17. If you attempted ta mimic the definition of reduced Gr6bner basis of Chapter 1, what would be the significance of the equality of ideals in Z[x, y], (2x', 3y2 + x') = (2x 2 , 3y2 + 3x 2)? Alternatively think about this example for the idea of uniqueness of reduction. [Hint: Either set is a Gr6bner basis with respect ta deglex with y > x. Also, try reducing 6x'y2  x 4 ] Show that for any polynomials f,g E R[XI, ... ,xn], for any finite set of nonzero polynomials F in R[Xl1'" ) x n ], and for any power product X E R[Xl, ... ,xn ], we have
a. If f E F, then fg >+ O.
b. If f >+ g, then Xf >+ Xg. 4.1.8. Let {g" ... ,g,} R[XI, ... ,xn ] and 0 op h E R[XI, ... ,X n ], where R is an integral domain. Prove that {gl, ... ,g,} is a Gr6bner basis if and only if {hg ... , hgt} is a Gr6bner basis. 4.1.9. Let 1 " be a nonzero ideal in R[XI' .. . , x n ] and let G be a Gr6bner basis for 1. We say that G is a minimal Gr6bner basis provided that for ail 9 E G, 9 is minimal with respect to the set G  {g}. Prove that every Gr6bner basis for l contains a minimal Grbner basis for J. 4.1.10. Let 1 be a nonzero ideal in R[Xl,.'. ,xn ] and let G be a Gr6bner basis for 1. a. Prove that G n R generates 1 n R. b. Cali a generating set F for an ideal J R a minimal generating set provided that for ail r E F we have (F  {r}) op J. Show that if G
F F F
4.1.3.
4.1.4.
4.1.5. 4.1.6.
4.1.7.
212
4.1.11.
4.1.12.
4.1.13. 4.1.14.
is a minimal Grbner basis for I (see Exercise 4.1.9), then G n R is a minimal generating set for I n R. Let I be an ideal in R[XI,'" , xnJ and let 71" denote the quotient map R[XI, ... , xnJ   4 (R/(I n R)[XI, ... , x n ]. Let G c:: I be given. a. Show that if G is a Grbner basis for I then 71"( G) is a Grbner basis for 7I"(I). [Hint: For all f E l, f ct In R, write f = fo + ft where 71"(10) = 0 and 7I"(lc(j,)) # O.J b. Show that G is a minimal Grbner basis for I (see Exercise 4.1.9) if and only if GnR is a minimal generating set for InR (see Exercise 4.1.10), 7I"(GGnR) is a minimal Grbner basis for7l"(I), andlc(g) ct InR forallgEGGnR. Let G be a Grbner basis for a nonzero ideal I of R[XI"" , Xn ], where R is an integral domain. Let K be the quotient field of R. Let J be the ideal of K[XI"" , xnJ generated by I. Prove that Gis also a Grbner basis for J with respect to the same order. Prove Lemma 4.1.3. Use the ideas in this section and those of Section 3.5 to obtain a theory of Grbner bases for R[xl, ... , xnJsubmodules of R[XI, ... , xnJm. In particular state and prove the analog of Theorem 4.1.12 for R[XI,." ,xn]modules.
4.2. Computing Grbner Bases over Rings. In this section we will give another characterization of Grbner bases (Theorem4.2.3) which is similar to the Spolynomial criterion in Theorem 1. 7.4, and is the direct analogue of Theorem 3.2.5. Of course, now our syzygy modules are submodules of (R[XI, ... ,xnW. We will then give the analogue of Buchberger's Aigorithm (Algorithm 1.7.1) for the case of rings (Algorithm 4.2.1). We will conclude this section by giving an iterative algorithm for computing the syzygy module needed for this generalized Buchberger Algorithm (see Aigorithm 4.2.2). We note, by Theorem 1.1.3, that R Noetherian implies R[XI, ... , xnJ is Noetherian. Moreover, by Theorem 3.1.1, (R[XI, ... , xn])' is Noetherian, and hence any submodule of it is Noetherian and finitely generated.
Given power products Xl,'" ,Xs and nonzero elements Cl, . ,Cs in R set L = [ C 1 X 1 csXs ]. Then, for a power product X, we cali a syzygy h = (h" ... ,h,) E Syz(L) c:: (R[XI, ... ,xn ])' homogeneous of degree X provided that each hi is a term (i.e. lt(h i ) = hi for aIl i) and Xi Ip(h i ) = X for aIl i such that hi # O.
DEFINITION 4.2.1.
213
PROOF. As noted above Syz(L) is finitely generated. Thus it suffices to show that given any syzygy h = (h" ... ,hs) E Syz(L) we may write h as a SUll of homogeneous syzygies. Now we know that h,c,X, + ... + h,csX, = O. Then expanding the polynomials hi into their individual terms, we see that for any power product X we may collect together ail the terms in this last SUffi whose
power product is X and these must also add to zero, sinee aU the
CiXi
are terms.
We can now give the following theorem whose proof parallels exactly the proof of the similar Theorem 3.2.5 (Exercise 4.2.1). THEOREM 4.2.3. Let G = {g" ... , gt} be a set of nonzero polynomials in A. Let B be a homogeneous generating set for SYZ(lt(g,), ... ,lt(gt)). Then G is a Grobner basis for the ideal (g" ... , gt) if and only if for all (h" ... , ht) E B, we
have
h,g ,
+ ... + htgt
;+ O.
One can view the expression h,g , + ... + h,gt above as a generalized Spolynomial, since in that expression the leading terms cancel (this is the basic idea that was used in Section 3.3). Thns we see how we will go about generalizing Buchberger's Algorithm. We first must find a hornogeneous generating set for the syzygy module of the leading terms. We then fonn the generalized Spolynomials and reduce each one of thern using the reduction presented in the previous section, If o~e of these does not reduce to zero, we add the reduction to our set and repeat the procedure. The next question we must answer is how do we go about constructing a homogeneons generating set for SYZ(lt(g,), ... , lt(gt)). Or in general, given power
products Xl,'" ,XI'; and nonzero elements CI, ...
,Cs
ER how do we construct a
homogeneous generating set for SyZ(C,X ... , c,X,). In view of Equation (4.1.1) " the following and the surrounding discussion, we make
DEFINITION 4.2.4. For any subset J {J, ... , s}, set X J = lcm(Xj 1 j E J). We say that J is saturated with respect to X" ... , X s provided that for aU j E {l, ... , s}, if X j divides XJ, then j E J. For any subset J {l, ... ,s} we cali the saturation of J the set J' consisting of all j E J such that X j divides XJ. (Note that X J = XJ'.)
EXAMPLE 4.2.5. Let X, = xy,X2 = X 2 ,X3 = y, and X 4 = x" Then if J = {1,2} we see that XJ = x 2 y and J is not saturated since 3 ct J, while X 3 = y divides XJ = x 2 y. On the other hand, if J = {l, 2, 3} we see that XJ = x 2 y and J is saturated since 4 is the only element of {l, 2, 3, 4} not in J and X 4 = x 4 does not divide X J = x 2 y. Clearly {l, 2, 3} is the saturation of
{1,2}.
214
e, = (1,0, ... ,0), e2 = (0,1,0, ... ,0), ... , e, = (0,0, ... ,0,1)
for AS. Given the above notation we are now prepared to state
THEOREM 4.2.6. For each set J {1, ... , s}, which is saturated with respect ta X" ... , X" let BJ = {bu, . .. , bv } be a generating set for the Rmodule of syzygies SyzR(Cj 1 j E J). (Note that each of the vectors bvJ is in the Rmodule RIJI, where IJI denotes the cardinality of J). For each such bvJ , denote its jth coordinate, for jE J, by bjvJ . Set
(Note that each of the vectors SvJ is in AS.) Then the set of vectors SvJ, for J ranging over aU such saturated subsets of {l, ... ,s} and 1 :s: v :s: VJ, forms a homogeneous generating set for the syzygy module SyZ(C,X ... , csXs ). "
PROOF. It is first of all clear that each of the vectors SvJ is homogeneous of degree XJ. Moreover, SvJ is a syzygy of [ C1 X 1 csXs J, since
c,X, J I>jvJ ~J ej
jEJ
J
jEJ
by the definition of bvJ . Now, let h = (h" ... , hs) E SyZ(C,X, , , c,X,). Since, by Lemma 4.2.2, SYZ(C,X ... , c,X,) is generated by homogeneous syzygies, it " suffices to write h as a linear corobination of the svJ's in the case that h is a homogeneous syzygy, say of degree Y We write h = (d, Y" ... , d,Y,) for d" ... , d, E R and power products Yi, ... , Y,. Set J = {j 1 dj of O} and let J' be the saturation of J. We have that YjX j = Y for ail j E J, since h is homogeneous of degree Y Then, since h is a syzygy of [ C1 X 1 csXs ] , we have L,jEJdjYjCjXj = YL,jOdjcj = O. Thus (dj 1 jE J') is a syzygy of [ Cj 1 j E J' J and so by hypothesis
(dj
li E J') =
L rubuJ"
1/=1
vJ
dj =
L
1.'=1
vJ ,
TvbjvJIJ
215
for sorne rv E R. Now YjXj = y for all jE J implies that X J = XJ' clivides Y. It now follows that
VJI
L
jEJ'
djYjej
=L
j=l
djYjej
= h,
as desired.
We note that we have reduced the problem of computing a generating set for SyZ(CIX ... , c,X,) to computing the subsets of {l, ... , s} which are saturated " with respect to X" ... , X, (an easy task) and cornputing syzygies in R (see Definition 4.l.5). EXAMPLE 4.2.7. We consider R = Z and let C,X, = 2xyz, C2X2 = 5xy2, C3X3 = 85y2, and C4 X 4 = 6x 2z. We will assume that the reader can solve the elernentary linear diophantine equations that occur in this example (i.e. that the reader can "solve linear equations in R = Z"). One readily checks that the saturated subsets of {1,2,3,4} are {l}, {3}, {4}, {1,4}, {2,3}, {1,2,3}, and {l, 2, 3, 4}. Since R =Z is an integral domain, the singletons {l}, {3}, {4} do not give rise to any nonzero syzygy. For J = {1,4} we need to solve in R = Z the equation 2b , +6b4 = 0 and one finds a generating set for the solutions of this equation to be {(3,1)}. Since X J = x 2 yz, the corresponding syzygy is 3X;::e, +
{2,3}, we need to solve 5b2 + 85b3 = 0 , , which gives us {(17,1)} and the syzygy 17~e2 + 'f}re3 = (O,17,x,O). The set J = {l, 2, 3} gives the cliophantine equation 2b , + 5b2 + 85b3 = O. This may be solved to yield two generators for the solutions, namely, (40, l, 1) , and (5,2,0). Then, with XJ = xy2z, we obtain the syzygies 40"xYy:e, 
xx'": e4
= (5y,2z,O,O). Finally for J = {l, 2, 3, 4}, we get the generators (40, l, 1,0), (5,2,0,0) and (3,0,0,1). These will give syzygies that have already been obtained, as is readily checked, and so are not needed in our generating set. So we obtain that
Syz(2xyz, 5xy2, 85y2, 6x 2z) = (( 3x, 0, 0, y), (0, 17, x, 0), (40y,
2,
Now that we cau compute, by Theorem 4.2.6, a homogeneous generating set for Syz(lt(ft), ... ,lt(f,)), for any set of polynomials {ft, .. , J,}, we can give Algorithm 4.2.1, the algorithrn for computing Grbner bases for ideals in A = R[XI, ... , Xn].
4.2.8. IJ R is a Noetherian ring and linear equations are solvable in R then Algorithm 4.2.1 produces a Grobner basis Jor the ideal (f"", , J,).
THEOREM
216
INPUT: F
R[Xl' ...
,xnl
with ji
7' 0
(1 <:: i <:: s)
OUTPUT: G={g" ... ,gt}, aGrbnerbasisfor (J" ... ,j,) INITIALIZATION: G WHILE G'
G:=G'
Let the elements of G be g" . .. , gt
Compute B, a homogeneous generating set
:=
0, G' := F
7' G DO
IF r
7' 0 THEN
G':= G'U{r}
ALGORITHM 4.2.l. Grobner Basis Algorithm over Rings. PROOF. If the algorithm stops, it clearly, by Theorem 4.2.3, gives a Grbner basis for the ideal (J" ... , j,). As the algorithm progresses we add ta a set of polynomials G a polynomial or, minimal with respect ta C, ta obtain a new set G'. By Lemma 4.l.9, lt(r) rf Lt(G) and sa Lt(G) Lt(G'). Thus, since the ring A is Noetherian, the algorithm stops. D We will give examples of computing Grbner bases shortly, after we have giveu a more efficient method for computing the relevant syzygies. We will incorporate this method for computiug syzygies iuto our Grbner basis Algorithm and so we will actually use Algorithm 4.2.2 ta compute these examples (see Examples 4.2.11, 4.2.12, and 4.2.13) Mller [MoSS], has given a method for computing the syzygies that arise in Algorithm 4.2.l. In particular, this method gives an efficient way ta avoid duplication in the computation of syzygies (see Algorithm 4.2.2). At each stage of Algorithm 4.2.1 we add one or more polynomials ta the generating set for the ideal (!J, ... , j,). Sa we have ta compute a generating set for the syzygy module of this increased set of leading terms. The idea of Mller is ta use the computations of syzygies already done in arder ta compute the new syzygies.
217
Note that any syzygy of a set of leading terms is automatically a syzygy of a larger set of leading terms (using zeros for the extra leading terms). Again consider power products Xl) ... X s and nonzero elements Cl, ... ,Cs E R. Let Sa = SyZ(C,X ... 'caXa ) for 1 <: cr <: s. We will compute a homoge~ " Ss = SYZ(C1X11 1 csXs ) by inductively constructing neous generating set of generating sets for the Sa. We note that a homogeneous generating set of S, consists of a generating set of the ideal {r E R 1 rCl = O} of R (called the anni~ hilatorof Cl and denoted by ann(cl)) viewed as a subset of A. Also, ifwe take a homogeneous syzygy (b,Y ... ,baYa) in Sa, there are two possibilities. Either " a,) is a homogeneous syzygy in Sal; or ba # 0 ba = 0 and (b,Y ... , balY 2 " and ba E (Cl, ... ,Cal)R: (Ca)R. So we proceed as follows. We consider all subsets J of {l, ... , cr}, saturated with respect ta Xl)'" ,Xa1 sueh that (j E J. For each sueh J let b1J , ,bp,JJ denote a generating set for the ideal in R, (Cj 1 j E J, j # cr) R: (ca) R. N ow for each b~J there are bj E R such that
1
L
JE] j#o
bjcj
+ bp,Jca
0,
L bj
JE]
XJ x.
J
ej
+ bp,J"Xea'
a
XJ
j#<7
(The bj's may not be unique, but any choice will do.) We also consider a homogeneous generating set al, ... 1 am for 50'1, which we assume, by induction, has been computed. Define for 1 <: i <: m, (ai, 0) to be the homogeneous syzygy in Sa with the coordinates of ai in the first cr  1 coordinates and 0 in the last coordinate. We nQW can state
s~J
(al,O), ... , (a=,O) together with the syzygies for J c:: {l, . .. , (5} saturated with respect to X" ... , X a with cr E J, form a homogeneous generating set for the syzygy module Sa.
THEOREM 4.2.9. The syzygies
PROOF. Let d = (d,Yl , ... ,daY a ), for d" ... ,da ER and power products Y l , ... 1 Yu, be a homogeneous syzygy in Sa of degree Y. If da = 0 it is clear that d is a linear combination of (a" 0), . . . , (a=, 0). SA assume that da # o. Let J' be the set of all j such that dj # 0 and let J be the saturation of J' inside {l, ... ,cr}. NotethatXJ =XJ' dividesY. Thenda E (Cj Ij E J,j #cr)R: (Ca)R and so da = L;~, ribiJ. Then it is easily checked that
~J
Y
XJ
=
d LT/LSj.tJ
f.L=1
{r E
RlrJ I}.
218
CHAPTER
4.
is a homogeneous syzygy with a zero in its oth coordinate and combination of (a" 0), ... , (am, 0), giving the desired result. D
is a linear
EXAMPLE 4.2.10. We will redo Example 4.2.7 using this method. We start with S, = Syz(2xyz) = (0). We now consider S2 = Syz(2xyz,5xy 2). The only saturated subset of {1, 2} that need be considered is {1,2} itself (actually {2} is saturated and contains 2 but will only yield the 0 syzygy). We note that (2)z: (5)z = (2)" giving the syzygy (5,2) of [2 5]. Thus S2 = (( 5y, 2z)). We now tum to S3 and note that the saturated subsets of {1, 2, 3} containing 3 are {2,3} and {1,2,3}. Working with the first one, we note that (5),,: (85)z = (l)z giving the syzygy (17,1) of [5 85] and so the syzygy (0,17,x) in S3. For the second set, {1, 2, 3}, we note that (2,5),,: (85)" = (1)" and we may use the same syzygy as before. Therefore S3 = ((5y,2z,0),(0,17,x)). We finally tum our attention to S4 and note that the saturated subsets of {1, 2, 3, 4} containing 4 are {l,4} and {1,2,3,4}. For {1,4} we compute (2),,: (6)z = (l)z giving the syzygy (3,1) of [2 6] and so the syzygy (3x, 0, 0, y) in S4. Finally for {1, 2, 3, 4} we need to compute (2,5, 85)z: (6)" = (l)z and we may use the same syzygy as we did for {1,4}. So we obtain
S4
Syz(2xyz, 5xy2, 85y2, 6x 2z) = (( 5y, 2z, 0, 0), (0, 17, x, 0), (3x, 0, 0, y)).
We note that the syzygy (40y, z, xz, 0) is not in this list, but was included in Example 4.2.7. It is not needed, since (40y,z,xz,0) = z(0,17,x,0) + 8( 5y, 2z, 0, 0). We give the improvement of Algoritbm 4.2.1 which makes use of Theorem 4.2.9 as Algorithm 4.2.2. We leave the easy proof that it is correct to the exercises (Exercise 4.2.9). We close this section by giving sorne examples of Algorithm 4.2.2. Sinee the polynomials generated by the algoritbm are scattered throughout the text of the example, we have put boxes around them for easier reference. EXAMPLE 4.2.11. We continue with R = Z and use lex with x > y in Z[x, yi. Let l = (f" 12), where 1 j, = 3x 2y + 7y 1 and 12 = 4xy2  5x. The case CT = 1 in the algorithm does not generate new polynomials, sinee 0 z: (3)z = {O} (we note that, sinee R = Z is an integral domain, we never need ta consider singleton saturated sets). Now consider the case CT = 2. The only nonsingleton saturated subset containing 2 is {1,2}. We compute (3)z: (4)" = (3)z which gives the syzygy (4y,3x) in Syz(3x 2 y,4xy2). The corresponding Spolynomial, 4yj,  3xh = 15x2 + 28y 2, is minimal with respect to Gand so we add it to G as 1Jo = 15x 2 + 28y2.1 To compute new syzygies, we need only consider the saturated subsets J {1, 2, 3} containing 3 and they are {1,3} and {l, 2, 3}. For {1, 3}, we compute (3),,: (15)z = (l)z giving the syzygy (5,0, y) in Syz(3x 2y, 4xy2, 15x 2). The corresponding SpolynomiaI5j, yJo = 28y 3 +35y is mininlal with respect to G and so we add it to G as f4 = 28y 3 + 35y. We also compute the syzygies corresponding to {l, 2, 3} by computing 3,4 z: (15)" =
219
INPUT: F = {f" ... , J,} Rlxl, ... , xnl with Ji OUTPUT: Ga Gr6bner basisfor (f" ... , Js) INITIALIZATION: G WHILE
(J ::;
7' 0
(1 ::; i ::; s)
:= F, (J :=
1, m := s
m DO
Compute S = {subsets of {l, ... , (J}, saturated with respect to lp(j,), ... ,lp(fa), which contain
(J}
FOR each J E S DO
XJ:= lem(lp(fi)lj
J)
FOR i
1, ... , i'J DO
L
jEJ,j:f=a
bj le(fj)
+ biJ leUa) =
XJ
G
+ biJ~(f ) Ja ;+ r,
P
0'
IF
r7' 0 THEN
m:=m+l
(J
:=
(J + 1
Basis Algorithm in Rlxl, . .. , xnl using MOlier's Technique
(l)z and we may use the same syzygy (5,0, y) as before. The saturated subsets of {l, 2, 3, 4} containing 4 are {2,4} and {l, 2, 3, 4}. For the first we compute (4)z: (28)z = (l)z which gives the syzygy (0, 7y,0,x). The corresponding Spolynomial is 7Yh + XJ4 = 35xy + 35xy = O. As before the set {1,2,3,4} gives no new polynomial. We see now that {f" h, fa, J4} is a Gr6bner basis for (f" hl This is a minimal Gr6bner basis (see Exercise 4.1.9 for the definition of
220
minimal Grbner basis). EXAMPLE 4.2.12. We consider the ideal J in Z20[X, y] (where Z20 is the ring Z/20Z) generated by the polynomials 1 j, = 4xy + x, 1 and [ 12 = 3x 2 + y. [ We use the lex term order with x > y. We again follow Algorithm 4.2.2 to compute a Grbner basis for J. We first consider 0' = 1. The only saturated subset of {1} is {1} itself. We compute (0): (4) = (5) (throughout this example we will use (... ) for ( .. )z,,). This gives rise to the polynomial 5j, = 5x. This polynomial cannot be reduced so we let h = 5x, and we add it to G. We next compute the saturated subsets of {1, 2 which contain 2. These are {2}, and {1, 2}. Sinee 3 is a unit in Z20, {2} does not give rise ta a new polynomial, i.e. (0): (3) = (0). For the set {1,2} we compute (4): (3) = (4) which gives rise ta the polynomial 3xj, + 4yh = 3x 2 + 4y2 ~ 4y2 + y. This polynomial cannot be reduced so we let 14 = 4y2 + y, and we add it to G. We now compute the saturated subsets of 1,2,3 which contain 3. These are {3}, {1, 3}, {2, 3}, {l, 2, 3}. For the set {3} we compute (0): (5) = (4) which gives rise ta the polynomial 4h = O. For the set {1,3} we compute (4): (5) = (4) which gives rise ta the polynomial 5j, 4yh = 5x ~ O. For the set {2, 3} we compute (3): (5) = (1) which gives rise to the polynomial 1512  xh = 15y which cannot be redueed. Therefore we let 1 ~s )= I~Y) 1 and add it ta G. For the set {1, 2, 3} we see that (4,3): (5) = (3): 5 = 1 and this gives rise to the same polynomial as the set {2,3}. We next compute the saturated subsets of {1, 2, 3, 4} which contaln 4. These are {4},{1,3,4}, and {1,2,3,4}. For the set {4} we compute (0): (4) = (5) which gives rise to the polynomial 5/4 = 5y ~ O. For the set {l, 3, 4} we compute (4,5): (4) = (1) which gives rise to the polynomial yj,  Xl4 = O. The set {1, 2, 3, 4} does not generate a new polynomial, since (4,3,5): (4) = (4,5): (4). We compute the saturated subsets of {1, 2, 3, 4, 5} which contain 5. These are {5},{1,3,5}, {1,2,3,5}, {4,5}, {1,3,4,5} and {1,2,3,4,5}. For the set {5} we compute (0): (15) = (4) which gives rise ta the polynomial 4/5 = O. For the set {1, 3, 5} wc compute (4,5): (15) = (1) which gives rise ta the polynomial 3yh xfs = O. Note then that {l, 2, 3, 5}, {l, 3, 4, 5} and {l, 2, 3, 4, 5} do not give rise ta any new polynomials. Finally, for the set {4, 5} wc compute (4): (15) = (0): (15) = (4) which does not give rise ta a new polynomial. Thus the algorithm stops and a Grbner basis for J is {j" 12, h, 14, Is}. Note that we have also shawn that Syz(lt(j,), lt(h), It(h), !t(f4), It(fs)) = ((5,0,0,0, 0), (3x, 4y, 0, 0, 0), (0, 0, 4, 0, 0), (5,0, 4y, 0, 0), (0, 15, x, 0, 0),
221
Z[A] = {u + vAlu, vEZ}. It is wellknown (see, for example, [AdGo]) that Z[AI is not a UFD and so not a PID. Indeed it is not hard to show that 2,3,1 + A, and 1  A are not units and cannot be factored in Z[AI, but that 23 = (1 + A)(1  A). According to Theorem 4.2.3, in order to compute a Grabner basis in such a setting we will need to be able to compute a homogeneous generating set for the syzygies of the leading terms of polynomials. We will follow Algorithm 4.2.2. To do this we need to compute ideals of the form (Cl, ... ,cg): (c) for ct, ... , C" cE Z[A] (in this example, of course, (Cl, ... ,Cf) means (Cl, ... ,c,lz[v'=5]). One can do this either by using sorne elementary theory of quadratic fields (see [Ad Go]) to find generators for these ideals, or one may proceed as follows. We need to find all '" E z[AI such that 00 = CIal + ... + Cial for sorne al, ... ,,e E Z[.J=5]. Each of the c's and o's are of the farm u + vyC5 for integers u, v. Sa in the desired equatioll, one can simply equate the real and imaginary parts and obtain a pair of linear Diophantine Equations. These are discussed in elementary number theory courses (see Niven, Zuckerman, and Montgomery [NZM]). Many computer algebra systems have the facility to solve such equations. Of conrse, this method will give a generating set for (Cl, ... ,cg): (c) as a Zmodule. This generating set is then also a generating set for (Cl, ... ,Cf): (c) as an Z[A]module, but sorne of the generators might be redundant. In the computations below we will write down only the nonredundant generators but it is possible to verify that these generators are correct by the above procedure. We illustrate this more specifically for the case f = 1. 80 in this case we need ta solve CIal = co: for I and . We write Cl =U, +vlA andc=u+vA and "'1 =fJ, + ')'1 A and a = fJ+')'A, where Ul, VI, U, V, {311 /1, {3, 'Y are all integers. Then taking the real and imaginary parts of the equation Cl al  ca = 0, we need ta solve the pair of equations U,fJ,  5V1'1  ufJ + 5v')' = 0 and V,fJ, + U1'l  vfJ  u')' = 0 for the integers {31, 'YI, {3, 'Y. For an alternative method to do these computations, which is in the spirit of this book, see Exercise 4.3.l. Let us consider the ideal l in (Z[A])[x, y] generated by the two polynomials = (1 + A)x2  xy. We use the lex ordering with .2.2 to compute a rabner basis for I. Sinee Z[A] is an integral domain we do not need to eonsider saturated sets which are singletons. 80 the first saturated set we must consider is {1,2}. We compute (2): (1 + A ) = (1 A,2). Since 32  (1 A)(1 + A ) = 0, the first generator, 1 A , gives rise to the polynomial 3xfr  (1 A)Yh = (1  A)xy2 + 3Axy, and this cannot be reduced any further using fr, h
We let 1 h = (1  A)xy2 + 3Axy1 Also, the second generator,2, gives rise to the polynomiaJ
(l+A)xfr 2yh
We let
1
2xy2+A(l+A)xy ~ A(l+A)xyAy2
2
f4 =
A(1 + A)xy  A y 1
222
We now consider the saturated subsets of {1, 2, 3} which contain 3. They are
{1, 3} aud {1, 2, 3}. For the set {1, 3} we compute (2): (1 A) = (1 + A, 2). The first generator gives rise ta the syzygy (3y, 0, (1 + A)) and the second ta the syzygy ((1 A)y, 0, 2). These give rise ta the following polynomials 3yj, + (1 + A)h (1  A)yj,  2h 3A(1 + A)xy  3Ay2 J!.., 0, 6Axy + A ( l  A)y2 J'.., (5 + A)y2  15y.
We let 110 = (5 + R)y2 : 15y.1 For the saturated set {1, 2, 3} we compute
(2,1 + A): (1  A )
aud we let 16 = 3Rx2y + xy3 + Axy2. We now consider the saturated subsets of 1,2,3, 4} which contain .4. They are {1, 4},{1, 2,4}, {1, 3, 4} aud {1, 2, 3, 4}. For {1, 4} we compute (2): (5+A) = (1 + A, 2). These give rise ta the polynomials
= =
We let 1Ir = 2Ry2 + 5(1 + A)y.1 For the saturated set {1, 2, 4} we compute (2,1 + A): (5 + A ) = (1). This gives rise ta the polynomial
3xj,  yfz
+ Xl4
(1  A)xy2
+ 3Axy Jo.., O.
For the saturated set {1, 3, 4} we compute (2,1 A): (5+ A ) = (1). This gives rise ta the polynomial
2yj, + h + yl4
aud we let 118 = 3Rxy  R
3Axy  A
y3 + 2Ay2,
y3 + 2Ay2 1 We note that 18 cannat be reduced because 3 A rte (2, 5 + A). It is easy ta see that for the saturated set {1,2,3,4} we cau use the same syzygy as we did for {1,3,4}.
We now consider the saturated subsets of {1, 2, 3, 4, 5} which contain 5. They are {1,3,4,5} aud {1,2,3,4,5}. For {1,3,4,5} we compute (2,1 A,5+ A): (5 + A ) = (1). This gives rise ta the polynomial
3yj,  h  Xl5
It is easy ta see that for the saturated set {1, 2, 3, 4, 5} we cau use the same syzygy as we did for {1, 3, 4, 5}. We now consider the saturated subsets of {1, 2, 3, 4, 5, 6} which contain 6. They are {1, 2, 4, 6} and {1, 2, 3, 4,5, 6}. For {1, 2,4, 6} we compute (2,1 + A, 5 +
223
= (2,1 + A).
J.'., J'..,
3Ayh + (1
+ A)!6
y' ~fs
(5 + 2A)xy2
(5 + A)xy2 _ A
O.
y3
= (2, 1 + A): (3A) = (2, 1 + A) and so we can use the same syzygies as
in the previous case. We now consider the saturated subsets of {l, 2, 3, 4, 5, 6, 7} which contain 7. They are {5,7}, {l, 3, 4, 5, 7} and {l, 2, 3, 4, 5, 6, 7}. For {5,7} we compute (5 +
A): (2A) = A (  u A ) : A(2) = (uA): (2) = (3,1A). These generators give rise to the polynomials (1 + A)!5 +3h = 0 and 2!5 + (1 A)h = O. For {l, 3, 4, 5, 7} we compute (2,1 A, 5 + A, 5 + A): (2A) = (1). We obtain the polynomial AyiJ
+ xh
15~f,
o.
It is easy to see that for the saturated set {l, 2, 3, 4, 5, 6, 7} we can use the same syzygy as we did for {l, 3, 4, 5, 7}. We now consider the saturated subsets of {l, 2, 3, 4, 5, 6, 7, 8} which contain 8. They are {l, 4, 8}, {l, 3, 4, 5, 7, 8}, {l, 2, 4, 6, 8} and {l, 2, 3, 4, 5, 6, 7, 8}. For {l, 4, 8} we compute (2, 5 + A): (3A) = (2, 5 + A). We obtain the polynomials
5(1
Y!!!2jY/7
O.
For {l, 3, 4, 5, 7, 8} we compute (2, l  A , 5+A, 5+A, 2A) :(3A) = (2, 5 + A), and so we may use the same syzygy as in the previous case. For {l, 2, 4, 6, 8} we compute (2,1 + A, 5 + A, 3A): (3A) = (1)
224
16 + xls
(1  A )xy3
+ 3Axy2 A o.
It is easy to see that for the saturated set {1, 2, 3, 4, 5, 6, 7, 8} we can use the same syzygy as we did for {1, 3, 4, 5, 7, 8}. We now have that the polynomials h, 12, 13'/4'/5, 16, h, 18 form a Grbner basis for I. We note that the leading coefficients of h, 14 and fs form an ideal which is equal to (1) = 2[A], so we can add to the Grbner basis a polynomial whose leading power product is xy and whose leading coefficient is 1. Indeed, 82 + 3(5 + A ) + (1)3A = 1, and so tbis polynomil is 8h +
3/4 
18  xy + A y 3  5Ay2 + SAy = 19. It can then {h'/5, h, 19 is also a Grbner basis for l Exercise 4.2.10).
be shown that
Exercses 4.2.1. Prove Theorem 4.2.3. 4.2.2. Prove the following: Let G = {g" . .. ,g,} be a set of nonzero polynomials in A. Let B be a homogeneous generating set of Syz(lt(g,), ... ,It(g,)). Then G is a Grbner basis for the ideal (g" ... ,g,) if and only if for all (h" ... ,h,) E B, we have h,g, + ... + h,g, = v,g, + ... + v,g, where Ip( h,g, + ... + h,g,) = max(lp( v,) Ip(gd, ... ,Ip( v,) Ip(g,)). [Hint: See the proof of Theorem 3.2.5.J 4.2.3. Show that in Mller's method of computing syzygies of terms (i.e. in Theorem 4.2.9 and Algorithm 4.2.2), if J J' {1, ... ,o} with 0 E J, such that
and the set J has been used, then the set J' may be ignored. 4.2.4. Show that in Algorithm 4.2.2, if we consider the case where R = k is a field then we may improve the algorithm as follows: For each 0 in the main WHILE loop find the minimal number of distinct j" ... ,je, with 1 ~ jv < 0 such that for each J E S there is a jv E J. Then in the remainder of the WHILE loop we need only compute the reduetions of SUj" , lu) for 1 ~ v < r. Use this method to redo Example 3.3.5. Compare this result to the use of crit2 in Example 3.3.5. 4.2.5. Compute generators for the following syzygy modules. a. For R = 2 compute Syz(3x'y, 5x 2z, 9yz2, 7xy2z). [An answer: {( 5z, 3y, 0, 0), (3z 2, 0, x 2, 0), (4yz, y2, 0, x), (0,0, 7xy, 9z)}.J b. For R = 2'5 compute Syz(2x 2y, 5x 2 z, 9yz', 7xy2Z). [An answer: {(0,3, 0,0),(5z,y,0,0),(0,0,5,0),(3z 2,0,x2,0),(0, 0, 7xy, 9z), (yz, _y2, 0, x)}.J
225
4.2.6.
4.2.7.
4.2.8.
c. For R = Z[i] (where i 2 = 1) compute Syz(3ix 2y, (2 + i)x 2z,5yz2, 7xy2z). [An answer: {( (2 + i)z, 3iy, 0, 0), (0, (2  i)yz, x 2, 0), (4iyz, (2  i)y2, 0, x), (0, 0, 7xy, 5yz)).] For the ring R = Z compute a Grbner basis for the ideals generated by the given polynomials with respect to the given term order. a. fI = 2xy  x, fz = 3y  x 2 and lex with x < y. b. fI = 3x2y  3yz + y, fz = 5x 2Z  8z 2 and deglex with x > Y > z. c. fI = 6x 2 + y2, fz = lOx 2y + 2xy and lex with x > y. For the ring R = Z15 compute a Grbner basis for the ideal generated by the polynomials fI = 2x2y + 3z and fz = 5x 2Z + y with respect to deglex with x > y > z. For the ring R = Z[i] (where i 2 = 1) compute a Grbner basis for the ideal generated by the polY!1omials fI = 3ix 2y + (1 + i)z and fz = (2 + i)x 2 z + y with respect ta deglex with x > y > z. Praye that Algorithm 4.2.2 terminates and has the desired output. Show that {fz, 15, h, fg} forms a Grbner basis as asserted at the end of Example 4.2.13. Generalize the results in this section to the computation of Grbner bases for R[XI, ... , xn]~submodules of (R[XI, . .. , xn])m (see Exercise 4.1.14).
4.3. Applications of Grobner Bases over Rings. We are interested in applications similar to the aues in the previous tWQ chapters. We have basically seen in Section 4.1 how to solve the ideal membership problem and we will give an example of this. We will then show how to compute a complete set of coset representatives modulo an ideal. This requires more effort than it did in the case of fields because now one has to take into acconnt the ideals in the ring R. We will then explore the use of elimination in this context to compute ideal intersection, ideal quotients and ideals of relations. These applications are very mueh the same as before and do not require any sedous modifications in their statements or proofs. We will close this section by showing how ta compute a generating set for the syzygy module of an arbitrary set of polynomials. Sa let R be a Noetherian ring in which linear equations are solvable (see Definition 4.1.5) and let A = R[XI, ... , xn]. Let J be a non~zero ideal of A. Suppose that J = (fI, ... ,1,), set F = {f" ... , l,}, and let G = {gI, ... , g,} be a Grbner basis for J. Then by Theorem 4.1.12 we know that 1 E J if and only if 1 S+ O. Thus we can determine whether or not 1 E J (ideal membership problem). Moreover as we saw in Algorithm 4.1.1, if 1 E J, we can obtain 1 = h,g , + ... + h,g, explicitly. Also, using Algorithm 4.2.2, we can find a matrix T such that (g" ... ,g,) = TU"", ,j,). Wc can then substitute in for the g;'s to obtain 1 as a linear combination of the l/s, provided 1 E J. EXAMPLE 4.3.1. We go back to Example 4.2.11. Recall that a Grbner basis for the ideal generated by fI = 3x'y + 7y and h = 4xy'  5x in Z[x, y] with respect to the lex ordering with x > y is {fI, 12, h, 14} where fa = 15x2 + 28y2
226
and f4 = 28y 3 + 35y. We let f = 2x2y2  3x 2y + 5x 2  4xy 3 15x + 14y2  7y. First we verify that f E (ft, 12). We have
12xy 2
+ 5xy +
~
:2:1,'
+ 14y 2 
7y
+ 14y 2
:!c!,' 4xy3  12 xy2 + 5xy + 15x  56y4 + 70y2 :'0,' 12 xy2 + 15x  56y4 + 70y2 :!c!,' 56y4 + 70y2 ~ o.
Thus we have
+ y + 3)12 + (2 y2 
2)h + 2yf<.
j~ ] [~ 4y [h f4 _4y2 + 5
T
3x 3xy
~] [ l
ff 1
2
Thus f = (2y  1)ft + (x  y  3)h We nQW cOllsider the problem of determining a complete set of coset representatives for Aj I, where I is a nonzero ideal of A. We adapt the method given in Zacharias IZa]. In arder ta do this we must assume that given any ideal 'S of
R, we can determine a complete set C of coset representatives of RICZS and that we have a procedure ta find, for ail a E R, an element c E C such that a =' c (mod 'S). If this is the case we say that R has effective coset representatives. Such rings include the integers Z, the finite rings ZjnZ, the polynomial rings
over fields, ZIyC5I, and ZIA]. We consider a Grbner basis G = {gl, ... ,g,} for the ideal I. With respect to the set {lt(gl), ... ,lt(g,)} of leading tenns of G, we consider the saturated subsets J {1, ... ,t} as defined in Definition 4.2.4. However here we also consider J = 0 to be saturated. Then for each saturated subset J {1, ... ,t}, we let I J denote the ideal of R generated by {ic(gi) 1 i E J} (if J = 0, then IJ = {O}). Let C J denote a complete set of coset representatives for RjIJ. We assume that 0 E C J . Also, for each power product X, let J x = {i IIp(gi) divides X}. It is clear that J x is saturated for ail power products X (in the proof of Theorem 4.3.3 we will need CJx for aU power products X, and of course J x could be equal to 0 for sorne X and that is why we had to add 0 in our list of saturated subsets).
227
DEFINITION 4.3.2. We call a polynomial r E A totally reduced provided that for every power product X, if eX is the corresponding term of r (here, of course, c E R may very well be 0), then c E C Jx' For a given polynomial f E A, we call a polynomial r E A a normal form for f provided that f r (mod I) and r is totalZy reduced.
It should be emphasized that the definition of normal form depends not only on the set of polynomials G, but also on the choices of the sets of coset representatives CJ for the set of saturated subsets J. The complete set of coset representatives is given by the following THEOREM 4.3.3. Let G be a Grobner basis for the nonzero ideal l of A. Assume that for each saturated subset J c:: {l, ... ,t}, we have chosen, as above, a complete sets of coset representatives CJ for the idealIJ . Then every f E A has a unique normal form. The normal form can be computed effectively provided linear equations are solvable in Rand R has effective coset representatives. PROOF. We will first show the existence of a normal form for f. The proof will be constructive. (We note that this part of the proof does not depend on the fact that G is a Gr6bner basis for I.) The proof will be similar in nature to the reduction algorithm. We will use induction on Ip(f) to obtain a totally reduced polynomial r with f = r (mod I) satisfying Ip( r) S Ip(f). If f = 0 then the result is cleaL Thus we assume the result for ail polynomials whose leading power product is less than Ip(f), where we assume that f oF O. To simplify the notation we set J = J lpU )' Wc may choose c E CJ such that le(j) c (mod I J ). (Note that c = 0 if and only if f is reducible.) Then we may write !e(f)  c = I:iEJ Ci !e(gi) (this can be done effectively by our assumption that linear equations are solvable in R). We consider
fI
f 
LC;~P(f) gi
iEJ P(gi)
Write fI = clp(f) + ff Then we have that Ip(f{) < Ip(f). Thus, by induction, there is a polynomial ri which is totally reduced, satisfies Ip(r,) S Ip(j{) and has the pro perty that ff ri (mod I). We now have that
, f = fi  ri
P 9t
clp(f)
+ ri
(mod I).
Let r = clp(f) + ri. Noting that Ip(r,) S Ip(f{) < Ip(f), we sec that Ip(r) S Ip(f). Finally, Iph) < Ip(f) implies that r = clp(f) + ri is totally reduced and 80 r is a normal farm for i, and the induction is complete. We next show the uniqueness of normal forms. So suppose that Tl, T2 are totally reduced, f = ri (mod I) and f = r2 (mod I). Then we have ri  r2 E l
228
if r, i' r2, we have that r,  rz is reducible. Thus if X = lp(r,  rz) and c = lc(rl  r2) we have that c E h x . Let d" d 2 be, respectively, the coefficients of X in TIl T2. Then since Tl and r2 are totally reduced, dl, d2 E C Jx ' Thus sinee c = d,  dz i' 0 we have that d, and dz represent distinct cosets mod IJx and so their difference cannot represent the 0 cosetj Le. c f/ l J x' This s a contr.adiction. Thus c = 0 and r, = r2, as desired. D We note that in the case where R = k is a field, Theorem 4.3.3 asserts that a kbasis for k[XI, ... ,xn]/I consists of all power products X such that J x = 0. This is precisely the statement of Proposition 2.1.6. EXAMPLE 4.3.4. We go back to Example 4.2.12. Recal! that a Grabner basis for the ideal I = (4xy + X, 3x 2 + y) in 2 zo [x, y] with respect to the lex ordering with x > y was computed to be {fI, 12, h 14, 15}, where fI = 4xy + x, 12 = 3x 2 + y, h = 5x, 14 = 4y2 + y, 15 = 15y. We wish to describe a complete set of caset representatives for 2 zo[x, y]/ I. We fol!ow Theorem 4.3.3 and we use the notation given there. First note that if X is any power product not 1, x, or y, then I Jx = 2 zo . We also have h, = {O}, and I Jx = h y = (5). We now choose a complete set GJx of caset representatives for Z2o/IJx for each power product X. Clearly for those ideals I Jx equal to 2 zo , CJx = {O}. We choose C Jx = CJy = {O, 1,2,3, 4}, and C J, = 2 20 . Therefore a complete set of coset representatives for 2 20 [x, y]/ Iis the set {a+bx+cy 1 a E 2 20 , b, cE {O, 1,2,3, 4}}. Thus, for example if 1 = 3x 2y + 2xy + 13y  5, we have
~ 1(3xyh3xfI)=3x z +2xy+13y5
i:!.dJ! y2 + 14 + yl5 =
x 1 x
y
y. Thus we obtain
Y
1 x 1 x x 3y y x
y x y
So, for example, (2 + 4x + 2y)(3 + 4x + 4y) = 6 + 14y + 16x 2 + 8y z + 4xy == 6 + 14y + 8y + 8y + 4x == 6 + 4x + lOy == 6 + 4x (mod 1). EXAMPLE 4.3.5. We go back to Example 4.2.13. Recall that a Griibner basis for the ideal I = (2xy + Ay, (1 + A)x2  XV) in (2[yC5]) [x, y] with respect to the lex ordering with x > y was computed to be {J2, 15, h, fg}, where 12 = (1 + A)x2 xv, 15 = (5+A)y2 15y, h =  2 Ay2+(5+5A)y, and 19 = xy + A y3  5AyZ + 8Ay. We wish to describe a complete set of
229
coset representatives for (Z[Al)[x, yI!J. We follow Theorem 4.3.3 and we use the notation given there. Note tirst that for every power product X not equal to l,xv, or Y~, v,l'::> l, we have JJx = ZIA]. We also have JJ, = h, = JJ, = {D}, hv = (1 + A ) for v > l, and JJ,v = (5 + A , 2A) = (10,5+ A) for 1' > 1. We now choose a complete set C Jx of coset representatives for Z[Al/JJx' for all power products X. Clearly, for those hx's equal to Z[Al we have CJx = {D}. We choose C J ," = {D, 1,2,3,4, 5} for v ::> 2 (note that 6 E (1 + A ) and that aj + a2A ~ aj  a2 (mod 1 + A)). We choose CJ,v = {D,l, 2, 3, 4, 5, 6, 7, 8, 9} for 1' ::> 2 (as above we have aj + a2A ~ aj  5a2 (mod 5 + A ) , and 10 E JJ,v)' Therefore a complete set of coset representatives for (Z[ADJx,YI!J is
n
m
{a + bx + cy + Ldvx + L
1/=2 J1=2
e~y~
a,b,c E Z[H],
e~ E {D,l, 2, 3,4, 5, 6, 7, 8, 9} }.
We now turn to applications of the method of elimination (see Sections 2.3 and 3.6). The proofs are very similar to the ones in those two sections, 80 most of them will be omitted and left to the exercises. Let YI, ... ,Ym be new variables, and consider a nonzero ideal
230
EXAMPLE 4.3.7. We go back to Example 4.2.12. Recall that a Gr6bner basis for the ideal l = (4xy + X, 3x' + y) in Z20[X, y] with respect to the lex ordering with x> y was computed to be {4xy+x, 3x 2+y, 5x, 4y2+ y , 15y}. Using Theorem 4.3.6 and Exercise 4.1.10 a, we see that In Z20[y] = (4y2 + y, 15y), and that InZ20 = {O}. EXAMPLE 4.3.8. We go back to Example 4.2.13. Recall that a Gr6bner basis for the ideal l = (2xy+,/=5y, (1+,/=5)x 2 XV) in (Z[,/=5]) [x, y] with respect to the lex ordering with :r > y was computed to be
{2Xy
+ Ny, (1 + N)x 2 
xv, (1  N)xy2
+ 3Nxy, + Nxy2,
N ( l + N)xy  N
2Ny2
and In Z[N] = {O}. Our first application will be to compute the intersection of two ideals of A and the ideal quotient of two ideals of A. First, as in the ideal case over fields, Proposition 2.3.5, and as in the module case, Proposition 3.6.8, we have
PROPOSITION 4.3.9. Let l = (J" ... ,j,) and J and let w be a new variable. Consider the ideal
L = (wj" ... ,wj" (1 W)g" ... ,(1  w)g,)
be ideals oj A
A[w]
Then In J = L
n A.
As a consequence of this result we obtain a method for computing generators for the ideal l n J A: we first compute a Gr6bner basis G for the ideal L in Proposition 4.3.9 with respect ta an elimination order on the power products in A[w] with w larger than the x variables; a Gr6bner basis for In J is then given by GnA. EXAMPLE 4.3.10. In Z[x, y], we wish to compute (3x  2, 5y  3) n (xy  6). So following Proposition 4.3.9 and Theorem 4.3.6 we consider the polynomials j, = 3xw  2w, h = 5yw  3w and 13 = xyw  6w  xy + 6 and compute (J" h, 13) n Z[x, y]. We will outline the computation. We consider the deglex ordering with x > y on the variables x and y and an elimination order between w and x, y with w larger. We follow Algorithm 4.2.2 (observe that mueh use of Exercise 4.2.3 is made in this computation). The first saturated set to consider is {l, 2} which gives rise to 5yj,  3xh ~+ O. The only saturated set containing 3 is {l, 2, 3} and this gives rise to 13  2yj, + xh ~+ 4wy  8w  xy + 6 = j4. For the saturated sets containing 4 we need to consider {2,4} which gives rise to 5j4 +4h = 28w+5xy30 = j5 and {J, 2, 3, 4} which gives rise to Xj4 +413 = 8wx24w+x 2y4xy6x+24 = j6. For the saturated sets containing 5 we need
231
to consider {1, 5} which gives rise to 3xJs 28h ++ 15x 2ylOxy90x+60 = h, {2, 4, 5} which gives rise to yJs  7J4 ++ 5xy2  3xy  30y + 18 = Is, and {1, 2, 3, 4, 5} which gives the salhe result as the last set (Exercise 4.2.3). For the saturated sets containing 6 we need to consider {1, 5, 6} which gives rise to J6  12h + xJs = 6x 2 y  4xy  36x + 24 = J9 and {1, 2, 3, 4, 5, 6} which gives the same result as the previous set. For the saturated sets containing 7 we need only consider {1, 2, 3, 4, 5, 6, 7} which gives rise to wh  5xyh ++ O. The remaining cases (only 4 need to be computed) ail go to zero and we see that {f"h,h,J4,JS,J6,h,Js,fg} is a Grbner basis for (J"h, 13) Thus
(3x  2, 5y  3)
n (xy 
M oreover, if
In (g)
232
In Section 2.4 we used elimination to compute the kernel of an algebra homomorphism. Sometimes Rlxl, ... , x n ] is called an Ralgebra, in order to emphasize the special role played by the ring R. In a similar vein, a ring homomorphism between tWQ polynomial rings QVeT R
>
Rlxl, ... , x n ]
is called an Ralgebra homomorphism provided that q,(r) = r for aU r E R. It is then dear that q, is uniquely determined by
q,: Yi
f>
1;,
for h, ... , Jm E RIXI, ... , Xn]. That is, if we let h E RIYI,." , Ym], say h = Lv cvyr 1 y~tn, where Cv E R, v = (VI, ... , V m ) E Nm) and only finitely many cv's are nonzero, then we have
Another way to view Theorem 4.3.13 is that J n RIYI, ... , Ym] gives the ideal of relations among the polynomials h, ... , J,. EXAMPLE 4.3.14. Consider the Zalgebra homomorphism q,: Zlu, v, w] > Zlx,y] defined by q,: u f> 3x2, q,: v f> 5y3 and q,: w f> xy6. We wish to find the kernel of q,. Following Theorem 4.3.13 we let h = 3x  2  u, h = 5y  3  v, and 10 = xY  6  w and compute (h, h, 10) n Zlu, v, w]. We consider the term orders deglex with u > v > 'UJ on u, v, w and deglex with x > y on X, y and an elimination orcler between X, y and u, v, w with X, y larger. We follow Algorithm 4.2.2. The first saturated set to consider is {1,2} which gives rise to 5yh  3xh >+ O. The only saturated set containing 3 is {l, 2, 3} and this gives rise to 10 + 2yh  xh = vx + 3x  2uy  4y + w + 6 = J4. For the saturated sets containing 4 we need to consider {l,4} which gives rise to 3J4  vh >+ 6uy  I2y + uv + 3u + 2v + 3w + 24 = J5 and {l, 2, 3, 4} which gives rise to yJ4  vh >+ 2y 2u  4y2 + yu + yw + 8y + vw + 6v = J6' There are three saturated sets containing 5 but we need only consider (Exercise 4.2.3) {2,5} which gives rise to 5J5 + 6uh = uv  3u  2v + 15w + 84 = h and {l, 2, 3, 5} which gives rise to XJ5 + 6uh >+ O. Ali remaining polynomials arising from saturated sets containing 6 or 7 recluce to zero. Thus we see that ker(q,) = (uv + 3u + 2v 15w  84). We conclude this section by giving a method for computing a set of generators for the syzygy module, Syz(/J, ... , J,), for a set of nonzero polynomials {h, ... , J,} in A. Wedo this byfirst computing SYZ(YI,'" ,y,) fora Grobner basis {YI, ... ,g,} for the ideal (h, ... , J,). The theorem describing Syz(gj, ... ,y,)
233
is the analogue of Theorem 3.4.1. In our case, we will have to replace Theorem 1. 7.4 with Theorem 4.2.3. Let {g" ... , g,} be a Grbner basis in A. We let lt(gi) = CiXi for Ci ER and power products Xi. Let B = {h" ... , hg} be a homogeneous generating set of the syzygy module SYZ(lt(g,), ... ,lt(g,)) = SyZ(CIX ... , c,X,). Assume that " for dji E R and power for 1 S j S C we have that hj = (djlY,I, ... , Cj'Y,,) products Yji, where for each j we assume that hj is homogeneous of degree Zj; i.e. for all i,j such tbat dji of 0, we have XiY,i = Zj. (we assume that Y,i = 0 if dji = O.) Then by Theorem 4.2.3, for each j, 1 S j S C the generalized Spolynomial L:~l djiY,igi has the representation
Ldji0i 9i =
i=l
Lajvgl/l
1/=1
where
1 <v<t  
,
max lp(ajv) lp(gv) = lp('" dji}jigi) Lt i=l
With the notation above, the collection {Sj Il S j S C} is a generating set for SYZ(g" ... , g,).
THEOREM 4.3.15. PROOF.
Suppose to the contrary that there exists (UI, ... ,u,) such that (UI, ... ,u,) E SYZ(g" ... ,g,)  (Sj Il S j SC).
Then we can choose such a (UI, ... , u,) with X = max'<:i",,(lp(u;) lp(gi)) least. Let
u; as follows:
{UiifirjeS
Ui =
Ui  lt( Ui) if i E S.
Of course we have that for all i, lp( u;) lp(gi) < x. Now, for i E S, let lt( Ui) = C;X;. So for all i E S we have XiX; = X. Since (UI, ... ,u,) E SYZ(g" ... ,g,), we see that
L C~CiX:Xi
iES
= 0,
and
80
234
,
Lc~X:ei
iES
LVjhj)
j=l
for sorne
A. We note that, we may assume that either Vj = 0 or that Vj = bj ~ , bj E R. We can see this sinee, for each i E S, we have <XI = L~=l VjdjiYji
Vj
from which we obtain, aiter multiplying through by Xi, C;X = ~~~, vjdjiZj ; and thus the power products involved are independent of i. Then we have
L<X:ei+(u~"",U~)
iES
L bj :
j=l
J
,
,
hj
+ (u;, ...
X
J
Lbj ZBj
j=l
+ (u;, ...
'
We define
,
(w" ... ,w,) = (u;, ... ,u;) + Lbj :(aj" ... ,aj').
j=l
We note that (w" ... ,w,) is in SYZ(9', ... ,9,)  (Sj 1 1 :s; j (u" ... ,u,) and each Sj are in SYZ(9', ,9,) and (u" ... ,u,) j :s; i). We will obtain the desired contradiction by proving that
:s; i),
sinee
rt
(s,Il :s;
lp(u~
,
j=l
X
J
+ Lbj Zjv)Xv
l::;J~l
:s; max(lp(u~),
But, by definition of u~, we have
Ip(u~)Xv
< X. Also,
Therefore lp(w v ) lp(gv) < X for each v E {l, ... , t} violating the condition that X = max'<i<,(lp(Ui) Ip(9i)) is least. 0 We now turn our attention to computing Syz(f" ... ,J,), for a collection {J" ... , j,} of nonzero polynomials in A that do not necessarily form a Gr6bner basis. We first compute a Gr6bner basis {9', .. ,9,} for (f" ... , j,). Set F = [ J, j, and G = [ 9' 9, We can compute a t x s matrix S and an s x t matrix T with entries in A such that F = GSand G = FT. (Recall
1.
235
that S is obtained using Algorithm 4.1.1 and T is obtained by keeping track of the reductions in Algorithm 4.2.1 or Algorithm 4.2.2.) Now using Theorem 4.3.15, we can compute a generating set {SI, ... ,se} for Syz(G). Then exactly as we did in Theorem 3.4.3 we have (Exercise 4.3.12) THEOREM 4.3.16. With the notation above we have Syz(h, .. ,l,) = (Ts I where
Tl) ...
, ...
,Tsf, Tl,. T S.
,T s )
; A',
EXAMPLE 4.3.17. We go back ta Example 4.2.12. R.ecall that a Grbner basis for the ideal l = (h,h) in Z20[X, y], where h = 4xy + x and 12 = 3x 2 + y, with respect ta the lex ordering with x > y, was computed to be h, 12, 13 = 5x, 14 = 4y2 + y, is = 15y. We wish to compute a generating set for Syz(h, h h!4, Is) and Syz(h, 12). As in Theorem 4.3.15, we first compute a homogeneous generating set for Syz(lt(h), lt(h), lt(h), It(4), ItUs)) = Syz( 4xy, 3x 2, 5x, 4y2, 15y). In Example 4.2.12 we found that the syzygy module is generated by (5,0,0,0,0), (3x,4y,0,0,0), (0,0,4,0,0), (5,0,4y,0,0), (0, 15,x,0,0), (0,0,0,5,0), (y,O, 0, x, 0), (0,0,0,0,4), (0,0, 3y, 0, x). These syzygies give rise to the following polynomials
5h
+ Y = 14
5x=h
15y = Is 5y = 31s
1512 xh
514
yh X14 41s 3yh  xls
Therefore
O.
((5,0, 1, 0, 0), (3x,4y + 1,0, l, 0), (0, 0, 4, 0, 0), (5, 0, 4y 1, 0, 0), (0,15, x, 0, 1), (0,0,0,5, 3), (y, 0, 0, x, 0), (0,0,0,0,4), (0,0, 3y, 0, x)).
To compute Syz(h, 12), we first compute the matrices Sand T such that
[h 12 13 14
Is] =
[h 12] T,
and
[h h]=[h 12 13 h
is]S
236
We have
T(5, 0, 1, 0, 0) T( 3x, 4y + 1,0, 1, 0) T(O, 0, 4, 0, 0) T(5, 0, 4y  1,0,0) T(O, 15,x,0,1) T(O, 0, 0, 5, 3) T(y, 0, 0, x, 0) T(O, 0, 0, 0, 4) T(O, 0, 3y, 0, x)
Finally we have
J2

(0,0) (0,0) (0,0) (0,0) (0,0) (0,0) (y + 3x 2, 4xy  x) (0,0) (15y+5x 2,5x).
TS
[~ ~].
237
4.3.4. In Example 4.2.11 compute a complete set of coset representatives for Z[x, yI! J. Find the totally reduced form of 5x3 y 3, 3x 3 y 3 and 4x3 y 3. 4.3.5. Prove Proposition 4.3.9. 4.3.6. In Z[x,y] compute (3x2,xy6)n(5y3). [Answer: (15xy9xlOy+ 6,5xy2  48xy + 27x, 10y2  96y + 54).] 4.3.7. Prove Proposition 4.3.11. 4.3.8. In Z[x, y] compute (3x2, xy6): (5y3). [Hint: Look at Exercise 4.3.6.] 4.3.9. Prove Theorem 4.3.13. 4.3.10. Consider the Zalgebra homomorphism q,: Z[u, v] . Z[x, y] defined by q,: u c> 3x  2 and q,: v . xy  5. Compute generators for ker( q,). 4.3.11. Consider the Zalgebra homomorphism q,: Z[u, v, w] . Z[x, y] defined by q,: u . 3x  2, q,: v . 2y  5 and q,: w c> x  5y. Compute generators for ker( q,). 4.3.12. Prove Theorem 4.3.16. 4.3.13. Compute generators for the syzygy module of the Grbner bases constructed in Exercise 4.2.6. Use this to construct the syzygy module for the original polynomials (of course, by unique factorization, this latter problem is trivial). Repeat this exercise for Exercises 4.2.7 and 4.2.8. 4.3.14. Compute SYZ(h,J5, 17, J9) for the Grbner basis in Example 4.2.13 (although this problem is quite doable, it is a long, messy computation). 4.3.15. The following exercise depends on Exercises 4.1.14 and 4.2.11. Generalize the following to the case of R[x1' ... , xn]submodules of R[x1, ... , xn]m. a. Tasks (i) and (ii) at the beginning of Section 3.6. b. Task (iii) at the beginning of Section 3.6. c. Theorem 3.6.6. d. Theorems 3.7.3 and 3.7.6 (of course use the ideas in Theorems 4.3.15 and 4.3.16). e. As much of Section 3.8 as energy permits. 4.4. A Primality Test. In this section we will give an algorithm that will determine whether a given ideal l in A = R[Xl 1 l Xn ] is prime or not. Recall that an ideal P is called prime if and only if given any polynomials J, 9 E R[x1, ... , x n ] with J9 E P, we have J E P or 9 E P. This is easily seen to be equivalent to the statement that the ring R[x1, ... , x n ]/ Pis an integral domain. Prime ideals are basic building blocks like prime integers are building blocks in Z. Geometrically, prime ideals in k[Xl1 ... ,xnl, where k is a field, correspond ta irreducible varieties (varieties which are not the union of two proper subvarieties) (see [CLOS]). Algebraically, any radical ideal is the intersection of prime ideals. The test for primality that we present in this section is taken from the paper of P. Gianni, B. Trager and G. Zacharias [GTZ]. Before we give the primality test, we must consider rings of fractions of the ring A. Although this is not strictly necessary, we will assume when discussing rings of fractions that R is an integral domain, since that is an that is needed in
238
order to obtain the primality test (even in the case where R is not an integral domain). Then A is also an integral domain. We have the field of fractions
K =
{~
f, 9 E A, 9 '" 0 }
of A. We consider certain subrings of K. Let S c A be a multiplicative set; that is, 1 E S, 0 ri' S, and if f, 9 E S then f 9 E S. Examples of multiplicative sets are S = {g E A 1 9 '" O}, S = {g E A 1 9 ri' P}, where P is a prime ideal in A, and S = {g" 1 vEN} for a fixed 9 E A. Given a multiplicative set Sc A we define the subring Sl A of K by
Sl A =
It is easy to see that Sl A is a subring of K, whlch we call the ring of fractions of A with respect to S. In the three examples above, if S = {g E A 1 9 '" A}, then SlA = K; if S = {g E A 1 9 ri' P}, then SlA is called the local ring at P and is denoted by A p ; and finally if S = {g" 1 VEN} then Sl A = 1 f E A and VEN} is denoted by Ag. We note that A is a subring of Sl A, since for ail f E A, we have f = and 1 E S, by assumption. Our main concern is the saturation of a nonzero ideal l of A with respect to S, whlch is defined to be Sl J n A,
{/v
where Sl J = 1 f E J and 9 ES}. It is readily seen that Sl J is an ideal in Sl A and is, in fact, the ideal in Sl A generated by the set J. It is often also written as J(Sl A), since every element of Sl J is the product of an element of J and an element of Sl A. We show that for two multiplicative sets S we can easily compute generators for the saturation of an ideal l with respect to S, namely for the cases where S = {g"lv = 0,1, ... } (Proposition 4.4.1) and S = {r E Rlr '" O} (Proposition 4.4.4).
PROPOSITION 4.4.1. Let R be an integral domain. Let 9 E A, 9 '" O. Let w be
{f
f = w" g" f
as desired. Conversely, let
+ (1 m
239
where g~ Eland h~ E A[w] for all IL. Sinee the variable w does not appear in f = f(X1,'" ,xn ) we rnay substitute w = }, which shows that f E lAg. 0 Proposition 4.4.1 should be eompared with Theorem 2.2.13. Thus, in order to compute generators for the saturation of an ideal l A = R[X1, ... ,xn ] with respect to 8 = {g" Iv E N} we eonsider an elimination order on the variables Xl, ... 'X n1 W with w bigger than the x variables. We compute a Griibner basis, G, for the ideal (1, wg  1) in A[w] = R[X1"" ,X n , w]. Then G nAis a Griibner basis for this saturation (Theorem 4.3.6). We will give an example which illustrates Proposition 4.4.1 in Example 4.4.6. Now let 8 = R {a}, and let k denote the quotient field of R (i.e. k = 8 1 R). In order to compute generators for the saturation of l with respect to S, we need two preliminary results. For an integral domain R, let 8 be any multiplicative subset of R. We note that (8 1 R) [Xl, ... ,X n ] = 8 1 (R[X1, ... ,X n ]) (this is an easy exercise). In this situation we see that Griibner bases are wellbehaved. PROPOSITION 4.4.2. Let R be an integral domain. Let 8 c R be a multiplicative set and let 1 A be a nonzero ideal of A. Let G be a Griibner basis for 1 with respect ta some term order. Then G is a Griibner basis for the ideal 8 11 in 8 1 A.
c:
PROOF. This follows easily from the third eharacterization of Griibner basis in Theorem 4.l.12. Namely, let f E 8 1 1. Then there is a s E 8 c R such that s f E 1. Suppose that G = {g" ... ,gt}. Then s f = h , g , + ... + htg, such that Ip(sf) = max'';i,;t(lp(hi) Ip(gi))' Thus f = (~h,)g, + ... + (~h,)gt. Since Ris an integral domain, we have Ip(sf) = Ip(J) and Ip(~hi) = Ip(h i ) (1:; i:; t). Thus we have a representation of f in terms of 91, ... ,gt of the desired type showing that G = {g" ... ,g,} is a Gr6bner basis for 8 11. 0 We note that in the following lemma we do not need that R be an integral domain. LEMMA 4.4.3. Let J J=l.
c: 1 be ideals in A c:
c: Lt(J).
Then
PROOF. Of course, since J 1, we have that Lt(J) = Lt(l). We observe that the proof of Theorem 4.l.12 did not require that the set G be a finite set. Then we see that J is a (infinite) Gr6bner basis for 1, and hence by Corollary 4.l.15, J generates 1. But J is an ideal and so generates itself, that is, J = 1. 0 Reeall that for s E R we denote by R, = {:" 1 r E R, VEN}. We now give the result which, when combined with Proposition 4.4.1, allows us to compute generators for the saturation of an ideal 1 with respect to 8 = R  {a}.
240
PROPOSITION 4.4.4. Let R be an integral domain with kits quotient field. Let IcA = R[x], ... ,xn ] be a nonzero ideal and let G = {g" ... ,g,} be a Grobner basis for l with respect ta sorne term ordering. Set s = lc(g,) lc(g2)" lc(g,). Then
(4.4.1) Ik[x" ... ,xn]nR[x" ... ,Xn] =IR,[x" ... ,xn]nR[x" ... ,Xn].
PROOF. We will need leading term ideals in R[x" ... ,xn ], whieh we denote by Lt, and in Rs [x" ... ,x n ], whieh we denote by Lt s . We note that it suffiees ta show that
(4.4.2)
lndeed, if Equation (4.4.2) holds, we have from Lemma 4.4.3, applied ta the ring Rs[x" ... ,xn ], that Ik[x, , ... ,xn ] nR,[x" ... ,xn ] = IR,[x" ... ,xn ]. The desired result (4.4.1) follows by interseeting this last equation with R[x], ... ,xn ]. CLA]M: Lt(I)k[x" ... ,xn]nR[x" ... ,xn ] = Lt(I)Rs[x" ... ,xn]nR[x], ... , xn]. Assuming the Claim, we prove (4.4.2) as follows. We let f E Ik[x" ... ,xn ] n Rs [x" ... ,xn ]. We need ta show that It(f) is in Lt s (IR, [X" ... ,xn ]). Since, by Proposition 4.4.2, G is a Gr6bner basis for Ik[xl, ... 1 xnJ, we may write, by Theorem 4.1.12, f = h,g, + ... + h,g, where hi E k[x" ... ,xn ] and Ip(f) = max'99(lp(hi )lp(gi))' Let V = {i [ Ip(f) = Ip(hi)lp(gi)}' Then It(f) = I:iEV It(h;) It(gi)' Since f E R,[x" ... ,xn ] there is an nonnegative integer l' sueh that s~ f E R[x" ... ,xn ]. We see that
It(s~ f) = 2)t(s~hi) It(gi) E Lt(I)k[x], ... ,Xn]
iEV
It(s~f)
=" ~Xilt(gi),
~S!/i
i=l
for ai E R, nonnegative integers Vi, and power produets Xi, sueh that Ip(f) = Xi Ip(gi) for ail i such that ai # O. Henee It(f) =
ai L .+Xilt(9i) sv,
p,
i=l
since It(gi) E Lts(IR,[x" ... ,xn ]), as desired. It remains ta prove the Claim. We will show that bath sides are equal ta the ideal, (lp(gi) [1 ::; i ::; t) in R[x" ... ,xn ]. We first note that Rs k and sa we have immediatelythat Lt(I)R,[x" ... ,xn]nR[x" ... ,xn ] Lt(I)k[x" ... ,xn]n R[x" ... ,xn ]. We write It(gi) = CiXi for Ci E R and a power product Xi'
4.4.
A PRlMALITY
TEST
8,
241
Then, since s = aiCi for sorne ai E R, by the definition of Xi = ~(C;Xi) E Lt(I)Rs[x" ... ,xn ] and so we see that
we have that
(Xi
Il::; i
::; t)
It remains to show that Lt(I)k[x" .. . ,xn ] n R[x" ... ,xn ] (Xi 1 1 ::; i ::; t). Since Lt(I) = Lt(G) we can express each element J of Lt(I)k[x" ... ,Xn] n R[x" . .. ,Xn ] as a linear combination ofthe Xi with coefficients in k[x" . .. ,xn ]. Let eX be a term in J, where c E R and X is a power product. Then in order for c to be nonzero we must have an Xi dividing X and then we see that Lt(I)k[x" ... ,xn ] n R[x" ... ,xn ] as desired.
(Xi Il::; i
::; t),
We note that if R is a UFD, then the element s in Proposition 4.4.4 can be replaced by s = lcm(lc(gi)11 ::; i ::; t) (Exercise 4.4.1). COROLLARY 4.4.5. Let R be an integral domain in which linear equations are solvable and let k be its quotient field. Let IcA = R[x" ... ,xn ] be an ideal. Then we can compute. generators for the ideal Ik[x" ... ,xn ] n R[x" ... ,xn ]. PROOF. This follows from Proposition 4.4.4 and Proposition 4.4.1.
0
EXAMPLE 4.4.6. We consider Example 4.2.11 and compute the saturation of I = (3x 2 y + 7y,4xy2  5x) with respect to Q[x, y]. That is, we compute IQ[x, y] n Z[x, y]. In that example we computed a Gr6bner basis for I, with respect to lex with x> y, to be fI = 3x 2y+7y,h = 4xy2_5x, h = 15x 2 +28y2, and J4 = 28y3  35y. Then, following Proposition 4.4.4 and Exercise 4.4.1, we need to compute IZ 420 [X, y]nZ[x, y], since lcm(3, 4,15,28) = 420 (here, of course, we are adopting the notation of this section and 1,420 does not ruean the integers mod 420). Then, from Proposition 4.4.1, we need to compute (J" 12, 420w 1) n Z[x, y], which we do using Theorem 4.3.6. We, of course, begin with the polynomials fI, 12, h, J4 together with J5 = 420w  1 and observe that, sinee fI,h,J3,J4 is a Gr6bner basis, we may start with (J = 5 in Algorithm 4.2.2, provided we use the lex term ordering with w > j; > y. We will not go through the computations, but will note that {f"h, h,J4, J5,525wx  xy2, 784wy2 + x 2, 525wy_ y3, 980wx+x 3 , 980wy+x 2y, 4y3 5y, 3x3 +28xy2_28x} is a Gr6bner basis for (fI, ho 420w 1), and hence {f" 12, h,J4, 4y3  5y, 3x 3 + 28xy2  28x} is a Gr6bner basis for IQ[x, y] n Z[x, y]. Finally we are ready to discuss the issue of primality in rings. We are no longer assuming that R is an integral domain. We need two lemmas from commutative algebra which give criteria for when an ideal in R[Xl,'" ,xnl is prime.
242
LEMMA 4.4.7. Let 1 R[x!, ... ,Xn] be an ideal. Then 1 is a prime ideal if and only if the image of 1 in (R/I n R)[x!, ... ,xn ] is prime. Moreover, in this case 1 n R is prime.
For r E R we let r = r+lnR be the image of r in R/lnR. For f = I::~! aiXi E R[x!, ... ,Xn ], with ai E R and power products Xi, we write 7 = I:i~! aiXi, its image in (R/I n R)[x!, ... ,xn ]. We define a ring homomorphism
PROOF.
q,:
by
,
q,:
i=l
,
i=l
LaiXi>+ LaiXi+ I .
That the map is welldefined follows since if I:;~! aiXi = 0, then ai E 1 n R for all i and so clearly I:;~! aiXi E 1. It is then easy to see that q, is onto and ker( q,) is the image of 1 in (R/lnR)[x!, ... ,Xn]. It is now immediate that 1 is a prime ideal if and only if the image of 1 in (R/ 1 n R) [X!, ... ,xn ] is prime. Finally, it is trivially seen that if 1 is prime then so is 1 n R. D
LEM MA 4.4.8. Let R be an integral domain with quotient field k and let 1 R[x!, ... ,xn ] be an ideal such that 1 n R = {O}. Then 1 is prime if and only if Ik[x!, ... ,xn ] is prime in k[x!, ... ,xn ] and 1 = Ik[x!, ... ,xn ] n R[x!, ... ,xn ].
PROOF. We first assume that 1 is a prime ideal in R[x!, ... ,xn ]. Let f, g E k[x!, ... ,Xn] and assume that fg E Ik[x!, .. ,Xn]. Then fg = ~ sueh that h Eland r E R. Let d, e E R be sueh that df, eg E R[x!, ... ,xn ]. Then we have r(df)(eg) = deh Eland so r(df) E 1 or eg E l, since 1 is prime in R[x!, ... ,xn ]. We then have immediately that f E Ik[x!, ... ,xn ] or g E Ik[XI ,xn ], and 80 Ik[XI ,Xn] is prime, as desired. Moreover, let ~ E Ik[x!, ... ,xn ] n R[x!, ... ,xn ] with h Eland r E R, r of O. Then r( ~) Eland so rEl or ~ El (reeall that ~ E R[x!, ... ,xn ]). By the hypothesis, InR = {O}, r fi land 80 ~ E I. The reverse inclusion is trivial. We now assume that the ideal Ik[x!, ... ,Xn] is prime in k[x!, ... ,xn] and 1 = Ik[x!, ... ,Xn] nR[x!, ... ,Xn]. Let f,g E R[x!, ... ,xn] and assume that fg E 1. Then fg E Ik[x!, ... ,xn ] and so by hypothesis, f E Ik[x!, ... ,xn ] or g E !k[x!, ... ,Xn]. We assume that f E Ik[x!, ... ,Xn]. Then f E Ik[X!, ... ,Xn] n R[x!, . .. ,Xn ] = 1 and so wc see that 1 is a prime ideal. D
l '" 1 '"
COROLLARY 4.4.9.
(i) 1 n R is a prime ideal in Rand (ii) if we let R' = R/lnR, k' be the quotient field of R', and l' be the image of 1 in R'[x], then l' R'[x] is a prime ideal of R'[x], and l' = l'k'[x] nR'[x].
PROOF.
n R'
243
Sinee R[XI' ... ,Xn] = (R[XI,'" ,XnI])[Xn], Corollary 4.4.9 gives us an inductive technique of determining whether a given ideal in R[Xl) ... ,xn ] is prime. The idea is summarized in the next paragraph. For a single variable x and an ideal J R[x] we want to decide if J is a prime ideal. By Corollary 4.4.9, we first need to determine whether J n R is prime. We may compute a generating set for J n R from Theorem 4.3.6 and then, assuming we can determine whether ideals in R are prime, we can determine whether J n R is prime. In this case we will consider the integral domain R' = RjJ n R, its quotient field k' , and the ideal l', the image of Jin R' [x]. Again by Corollary 4.4.9, we then need to determine whether l'k'[x] is a prime ideal for one variable x. Since x is a single variable, k'[x] is a PID and, using the Euclidean Algorithm (Algorithm 1.3.2) on the known generators of l', we can determine a single generator f of l'k'[x]. Now, assuming that we can determine whether f is irreducible or not in k'[x], we can determine whether l'k'[x] is a prime ideal or not. Finally, by Corollary 4.4.5 we can determine whether or not
l'
l'k'[x]
n R[x].
Thus we see that in order to have an algorithm determining the primality of ideals in R[Xl1'" ,xn ], we must assume that we can do similar things in ~. Specifically, we must assume that we can determine when an ideal in R is prime. Moreover, we must assume that we can determine, given a prime ideal P of R[XI" .. ,X n], whether polynomials in one variable with coefficients in the quotient field of R[XI, ... ,xn]jPare irreducible or not. For example Z and Q have these properties. The algorithm for determining the primality of an ideal is given as Algorithm 4.4.1. EXAMPLE 4.4.10. We now give an example of Algorithm 4.4.1. Let J c Q[x, y, z] be the ideal generated by fI = xz  y2, h = X3  yz and h = x 2 y  Z2 As we saw in Exercise 2.5.5, this is the ideal of relations among the tillee polynomials t3,t4,t5 and hence must be a prime ideal (sinee then Q[x, y, z]j J is isomorphic to a subring of the integral domain Q[t]). In this example we will show that J is prime using Algorithm 4.4.1. We use the notation established in that algorithm. We first compute a Grbner basis G for J using the lex ordering with x > y > z and get G = {fI, h h f<, fs}, where f4 = xy3  Z3 and fs = y5  z4 We have n = 3, J4 = h = (0), h = (y5  z4), and J, = J. We first note that the case i = 4 in the algorithm is trivial. The next case to consider is i = 3. We have h = J n <Ql[y, z] = (y5  Z4). Thus, R' = R3j J 3 = <Ql[z], J' = J 2R' [y] = (yS _Z4)<Ql[y, z], and 3 k ' = Q(z). Then J'k'[y] = (y5_ Z4)Q(z)[y] and so f = y5_ z 4 Here f is viewed as a polynomial in y with coefficients in Q(z). We use "brute force" to see that f is irreducible over Q(z): It cannot have a root in Q(z), sinee there cannot be a rational function in <Ql(z) whose fifth power is the fourth power of the prime z E <Ql[z], because of
3Here Q(z) denotes the field of rational functions in z, that is, the quotient field of Q[z].
244
INPUT: J, an ideal of R[Xl"" ,xn ] OUTPUT: TRUE if J is a prime ideal, FALSE otherwise Set Ri := R[Xi'" . Compute Ji := J
Rn+1
:= R
n FI.; for i
+1
n+ 1
WHILE i
Ji1R'[Xil]
n R'[Xil]
RETURN result
ALGORITHM 4.4.1.
unique factorization in Q[z]. Moreover, it cannot be the product of a cubic and a quadratic in Q(z) [y]. One way to see this is as follows. If f = y5 _z4 were the product of a cubic and a quadratic in Q(z)[y], then we would have a system of 5 polynomial equations in 5 unknowns which would have to have a solution in Q(z).
245
If one computes a Grbner basis for tbese polynomials one finds that there would . have to be a rational function e(z) E lQI(z) satisfying eS = Z8 (use lex with e > z being the smallest variables where e is the constant term of the quadratic) and again this is impossible. It is then trivial to check that (y5_ Z4)IQI(Z) [y] nlQl[y, z] = (y5 _ z4)IQI[y, z] (if( y 5  Z4) ~~~o C>v(z)yv E (y5  z4)IQI[y, z] with C>v(z) E lQI(z), then a simple induction shows that C>v(z) E lQI[z]). Thus we have completed the WHILE loop for i = 3 with "result=TRUE". We now consider the case i = 2. In this case J, = J. Wehave R' = lQI[y,z]f(y5Z4), J' = J((IQI[y, zl/ (y5  z4) )Ix]) and k' = quotient field of R'. For polynomials f E lQI[x,y,z] we denote by 7 the polynomial in R'[x] = (lQI[y,z]f(y5  z4))[x] obtained by reducing the coefficients of the powers of x (these being polynomials in lQI[y, z]) modulo (y5  Z4); i.e. we have a homomorphism
lQI[x, y, z]
.
e>
f.
We also denote the image of an ideal K C lQI[x, y, z] in R'[x] by K. We first must find a generator for J'k'[x], where J' is the ideal generated by 7,,72,73,74 E R'[x]. It is, in fact, easy to see that 72,73 ,74 are multiples of 7, in k'[x]. For example, ignoring the "bar" notation for the moment, viewing the following equation as being in k'[x], and noting that z, z2, and z3 are nonzero in R', we see that x 3  yz = (zx  y2)( ~x2 + z'oy 2 x + z'oy4); that is, 72 is a multiple of 7,. Thus f = 11 and it is irreducible over k' , sinee it is of degree 1 in x. It remains to show that J'k'[x] n R'[x] = J'. We will apply Proposition 4.4.4 and Proposition 4.4.1. So we first need to compute a Grbner basis for the ideal J' = (f" 72' 73 , 74) C R'[x]. We will use Algorithm 4.2.2. We make the following general observation which is easily proved: if K is an ideal of lQI[x, y, z] containing y5  Z4 and g E lQI[x, y, z], then K: (g) = K: (g). We consider the saturated subset {1,2} for which we need to compute (z): \il = (z) and the corresponding syzygy is O. Now the saturated subsets of {l, 2, 3} containing 3 are {l, 3} and {l, 2, 3}. For {l, 3} we compute (z): (y) = (z, y5  Z4): (y) = (z, y5  Z4): (y) = (2, y4) (note that this latter is just a computation in lQI[y, z] and so can be done using Lemma 2.3.11). The two syzygies are (yx, z) and (Z3 x , y4). The first gives the Spolynomial yx7,  Z73 = _y3 x
z3 x
l.!..,
7,  y473 = (z4 and the saturated subsets of {l, 2, 3, 4} containing 4 can be handled in the same way. After this computation, we see that a Grbner basis for the ideal J' is just the original generating set {f" 72' 73 , 74}' Then, as in Proposition 4.4.4, we set s = lea,) le(2) le(3) le(74 ) = Zyy3 = y4z, and we need to show that J' R;[x]nR'[x] = J'. We do this using Proposition
y5)x 2 
+ Z3 L., O. The second gives the Spolynomial y2 z 3 x + y4z2 1>.., O. The saturated set {1,2,3}
246
247
. module, Syz(lt(j,), ... ,lt(j,)) (Theorem 4.2.3). When R is a field, we saw that a generating set B for Syz(lt(j,), ... ,lt(j,)) exists such that every element of B has exactly two nonzero coordinates (these syzygies correspond ta Spolynomials; see Proposition 3.2.3). DEFINITION 4.5.1. A generating set B oJ Syz( (lt (j,) , ... ,lt(j,)) is caUcd an Sbasis if every element of B is homogeneous and has exactly two nonzero coordinates.
In general) when the coefficient ring is not a field, there is no Sbasis for Syz((lt(j,), ... ,lt(j,)) (see Example 4.5.4). However, when R is a PID such a generating set exists as the next proposition shows. We assume that s > 1 in this entire section) because the case s = 1 is trivial, since any single polynomial is automatically a Grbner basis (note that this is not the case if R has zero divisors; e.g. {2x + 1} is not a Grbner basis in Z6[X]). We first prove the following identity4.
LEMMA 4.5.2. Let R be a PID and let a, a" ...
(a"
,a,
be in R  {O}. Then
PROOF. Since R is a PID, we have (see Proposition 1.3.8 for the case where
R = k[x])
(ai)R n (a)R
= l, ...
,R.
Moreover, it is easy ta show that in any UFD we have lcm(gcd(a" ... ,a,), a) = gcd(lcm(a,, a), ... ,lcm(a" a)). Thus
, = (lcm(a" a), ... ,lcm(a" a)) R = L.: (lcm(ai, a)) R = L.: (a,) Rn (a)R.
i=l
i=l
The result now follows easily as in Lemma 2.3.11 and Proposition 4.3.11.
PROPOSITION 4.5.3. Let R be a PID and let J" ... ,J, be nonzero polynomiais in R[x" ... ,xn ], with s > 1. Then Syz((lt(f,), ... ,lt(f,)) has an Sbasis.
4For ideals h, ... ,le in a ring R we define the ideal L:=1 Ii to be the ideal in R generated
2::=1 Ii =
=
/1 + ... + li
248
PROOF. For i = 1, ... ,s let lt(Ji) = CiXi, where Ci. E Rand lp(Ji) = Xi. For any subset J of {l, ... ,s} we deline, as before, XJ = lcm(Xj 1 j E J). We use the notation and technique presented in Theorem 4.2.9 to construct the desired generating set. Let Su = SYZ(CIXl, ... ,cuXa ) for 1 :": (J :": s. We will show by induction on (J that every Sa has an Sbasis. Our induction starts at (J = 2. Then it is easy to see that S2 is generated by the syzygy ( 'XX ,  ' XX ), CIl C22 where c = lem(cl,c2)' and X = lcm(Xl ,X2 ). Now let (J > 2 and assume by induction that we have computed an Sbasis 801 for Bd  l . \Ve now construct an Sbasis Bu for Sa. Recall from Theorem 4.2.9 that Bu consists of two groups of elements. First, to each element a of Bal corresponds the element (a,O) in Ba. Clearly (a,O) has only two nonzero coordinates by the choice of Bal. The other elements in Ba_l are obtained from the ideal (Cj 1 jE J,j op (J)R: (Ca)R, where J is a saturated subset of {l, ... ,(J} containing (J. From Lemma 4.5.2 we have
(Cj 1 jE J,j
op (J)R: (Cu)R
= L(Cj)R: (Ca)R.
JEJ jiu
Nowfor jE J, j
op CT,
= dje u X ju e _ d X Ja e
Cj
Xj
Xa
a,
since djc a E (Cj). Clearly the element sp has only two nonzero coordinates. By Theorem 4.2.9 the vectors SjJ, where jE J,j op (J, and J ranges over all saturated subsets of {l, ... ,(J} which contain (J, together with the vectors (a, 0), where a ranges over aIl elements of a generating set for 8 u l , forrus a generating set for Sa. Therefore Sa has an Sbasis. 0
We now give an example which shows that Sbases do not exist for rings which are fiot PID's. EXAMPLE 4.5.4. Consider the ring R = Z[zl. Ris not a PID, sinee, for exampIe, (2, z) is not principal. We note that Ris a UFD. Now consider the following polynomials in (Z[z]) [x, yi
fI
The homogeneous elements of Syz(lt(fI), lt(J2) , lt(h)) with exactly two nonzero coordinates are multiples of SI = (zx, 2y, 0), S2 = ((2 + z), 0, 2y), or S3 =
249
(0, (2 + z), ZX). However, the vector (x, y, xy) is in Syz(lt(ft),lt(h), It(J3)) , and sa, if SI, S2, S3 generated Syz(lt(ft), lt(h), lt(h)), we would have
h l (zx, 2y, 0)
for sorne hl, h 2, h3 E (Z[z]) [x, y]. Then xy = 2yh 2 + ZXh3' Note that h 2 = a2X and h3 = a3Y, for sorne a2, a3 E Z[x, y, z]. But then 1 = 2a2 + za3, and this is impossible. So Syz(lt(ft), lt(h), It(J3)) does not have an Sbasis. In fact, it can be shown that if R is a UFD and if Syz(lt(ft), ... ,lt(J,)) has an Sbasis for every ideall = (ft, ... ,/,) in R[Xl,'" ,Xn], then R is a PID (see Exercise 4.5.14). However, there are rings which are not UFD's for which Syz(lt(h), ... ,lt(J,)) has an Sbasis for every ideal l = (fI,'" ,/s) in R[Xl"" ,Xn] (see Exercise 4.5.15). We note that the syzygies obtained in Proposition 4.5.3 are the analog of the syzygies used to deline the Spolynomials in the case where the coefficients are in a field. Indeed, iflt(Ji) = ",Xi,lt(Ii) = CjXj , where Ci,Cj ER, then the syzygy with exactly two nonzero coordinates corresponding ta these two polynomials is
Proposition 4.5.3 can then be used to modify Algorithm 4.2.1 to obtain an algorithm for computing Grbner bases in R[Xl"" ,xn ], where R is a PID. This algorithm is presented as Algorithm 4.5.1. We note that Algorithm 4.5.1 is similar to the algorithm given in the case of R = k, a field (see Algorithm 1.7.1). We now give an example of how Algorithm 4.5.1 is applied. EXAMPLE 4.5.5. We go back to Example 4.2.11 and use Algorithm 4.5.1 to recompute a Grbner basis with respect ta the lex term ordering with x > y for
1 = (fI, 12), where ft = 3x2y + 7y, 12 = 4xy2  5x and R = Z. We initialize G = {JI, h} and 9 = ft,h . Since 9 '" ,we choose {JI, h} E g, so that now 9 = 0. We compute C = lcm(3, 4) = 12, X = lcm(x2y, xy2) = x 2y2, so that the corresponding Spolynomial is S(Jl, 12) = 4yft  3xh = 15x 2 + 28y 2 This polynomial cannot be reduced and we add h = 15x2 + 28y 2 to the basis, so that now G = {Jl,hh} and 9 = {{ft,h , h h . Since 9 '" 0 we choose {JI, h}, so that 9 = {{h h}}. In this case we have c = 15 and X = x2y, sa that the corresponding Spolynomial is S(Jl, h) = 5ft  yh = 28y3 + 35y. This polynomial cannot be reduced and we add !4 =  28y 3 + 35y to the basis, so that G = {ft,hh!4} and 9 = {{hh}, ft,!4 , h!4 , h!4}}' Since
250
,l,}
li i 0 (1
E G}
~; ~
s)
OUTPUT: G = {g" ... ,g,}, a Grobner basis for (fI, INITIALIZATION: G ;= F, 9 := {{f, g} WHILEgi0DO
,1,)
Iii 9
g:= 9  {{j,g}}
Compute e = !cm(cf' Cg) and X = lcm(Xf' X g ) cX 1 cf Xf
  g >+ h, where h
eX
Cg X g
respect ta G
IFhiOTHEN
9 := 9 U {{ u, h}
G:=GU{h}
for all u E G}
9 i 0 we choose {h h}, 80 that 9 = {{f" 14}, {h 14}, {ho h}} In this case we have C = 60 and X = x2y2, sa that the corresponding Spolynomial is
Since 9 i 0, we choose {f" 14}, sa that 9 = {{h 14}, {ho 14}}. In this case, C = 84, and X = X2 y 3, sa that the corresponding Spolynomial is S(f" 14)
196 y 3
245y~ O.
It is easy ta see that the other two elements of 9 also give rise ta polynomials which reduce ta zero and sa do not contribute new polynomials ta the basis. Therefore we get (as we did in Example 4.2.11) that {fI, h ho 14} is a Grobner basis for J. We note that this computation required more steps than the computation of this Grobner basis did in Example 4.2.11 nsing Algorithm 4.2.2. In arder ta improve the efficiency of Algoritbm 4.5.1, Mimer gave an analogue of crit2 whicheliminates many Spolynomial computations. The interested reader should consult [Mo88]. Recal! that we defined Grobner bases in R[Xl"" ,xn] the way we did in Definition 4.1.13 because of the problem of dividing by elements of the coefficient Ting R. In the case when the coefficient ring is a PID, there is a stronger version
251
of Gr6bner bases which is similar ta the one we gave when the coefficient ring was a field.
DEFINITION 4.5.6. Let G = {gI, ... ,g,} be a set of nonzero polynomials in R[XI, ... ,xn ]. Then we say that Gis a strong Grobner basis for J = (gl, ... ,g,) if for each f E l, there exisls an i E {l, ... , t} such that lt(gi) divides lt(f). We say that G is a minimal strong Grobner basis if no lt(gi) divides lt(gj) for i # j. Note that this definition does not in itself require that R be a PID. However strong Grobner bases exist onIy in the case when R is a PID (Exercise 4.5.16). EXAMPLE 4.5.7. Let R = k[y, z], where k is a field. Consider the ideal J = (x, y, z) in R[x]. This ideal does not have a (finite) strong Grobner basis. This is because there are an infinite number of nonassociate irreducible polynomials in the two variables y, z in J. If a strong Grobner basis G existed, then each of these irreducible polynomials would have leading term (which is the irreducible polyuomial itself) divisible by the leading term of an element of G. This would force an infinite number of elements in G, which violates the definition of a strong Grobner basis. The following result is immeruate and its proof is left to the reader (Exercise 4.5.6). LEMMA 4.5.8. Jf G = {gl, ... ,g,} then it is a Grobner basis.
We now show how ta construct a strong Gr6bner basis frOID a given Grobner basis. 80 let {ft, ... , f,} be a Grobner basis for an ideal l in R[XI, . .. , x n ]. Let lt(fi) = CiXi, where Ci E Rand lp(/i) = Xi' For each saturated subset J of {l, ... , s}, let C] = gcd(cj 1 j E J) and write c] = LjE] ajcj (any such representation will do). Also, let X] = lem(Xj 1 jE J). Consider the polynomial
THEOREM 4.5.9. Let R be a PJD, and J be an ideal of R[XI, ... ,xn ]. Assume that {ft, ... , f,} is a Grobner basis for J. Then the set
{!J 1 J is a saturated subset of {l, ... ,s}} is a strong Grobner basis for 1. In particular, every nonzero ideal in R[Xl1 ... ,xnl has a strong Grobner basis.
PROOF. Let 0 # f E J. Then lt(f) E Lt(ft,. , fs) = (lt(ft), ... , lt(f,)). Let J = {i E {l, ... ,s} 1 Xi divides lp(f)}. It is clear that J is saturated and that X] divides lp(f). We also have lt(f) E (lt(/j) 1 j E J) and so le(f) = LjE] djej for sorne dj E R, from which we conclude that C] divides le(f). Therefore lt(!J) divides lt(f). D
252
We leave it to the exercises to show that every ideal has a minimal strong Grbner basis (Exercise 4.5.9). Together with the concept of strong Grbner bases, we could also define the concept of strong reduction. Reduction of J modulo a set F = {fJ, ... , J,} is performed if lt(f) E (lt(f,), ... ,lt(f,)) (see Definition 4.1.1). Strong reduction would require instead that an lt(fi) divides lt(f). One can show that for a set G of nonzero polynomials in R[XI,'" ,xn ], we have that every element in (G) strongly reduces to zero if and only if G is a strong Grbner basis (Exercise 4.5.1). Theorem 4.5.9 gives us a method for computing strong Grbner bases. We give an illustration in the next example. EXAMPLE 4.5.10. We go back to Example 4.5.5. We saw that a Grbner basis for the ideal l = (3x2y + 7y, 4xy2  5x) Z[x, yi with respect to the lex term ordering with x > y is {fJ, 12, h, J4}, where fJ = 3x2y + 7y, 12 = 4xy2  5x, h = 15x2 + 28y2, and J4 = 28y3 + 35y. FoIJowing the proof of Theorem 4.5.9 we first compute all the saturated subsets of {l, 2, 3, 4}: J, = {2}, J 2 = {3}, J3 = {4}, J4 = {l,3}, J5 = {2,4}, J6 = {1,2,3}, J 7 = {l,2,3,4}. The sets J" J 2, and J, give rise to the original polynomials h, = 12, h, = h, ha = J4. Associated with J4 we have cJ, = gcd(3, 15) = 3, and X J , = x2y, so h, = fJ. Associated with J 5 we have cJ, = gcd(4, 28) = 4, and X J , = xy3. Therefore, h, = y12 Associated with the set J 6 we have cJ, = gcd(3, 4,15) = 1, and X J , = x 2y2 Therefore h, = x12  yfJ = x 2y2  5x 2  7y2 Associated with the set J 7 we have Ch = gcd(3,4,15,28) = 1 and X h = x 2 y 3. Therefore h, = xy12  y2 fJ = yh, We see we do not need h, and h, and therefore, a strong Gr6bner basis for l is {4xy2  5x, 15x2 + 28y2,  28y3 + 35y, 3x 2y + 7y,x 2y2  5x 2 _ 7y2}.
To conclude this example we give an exarnple of determining ideal membership using strong reduction. Consider the polynomial J = 7x 2y2  15x 2 y  35x 2 28xy3 + 35xy  56y4  28y3 21y2. Then we have
J
5,il
~
15x 2y  28xy 3
7y,h
+ 35xy 4 
+ 35y
>
+ 70y2 + 35y
+ 35y :y., O.
Thus J = 7h,  5fJ  7y12 + (2y  I)J4 and since h, = x12  yfJ we have J = (7y  5)fJ + (7x  7y)12 + (2y  1)f<. We note that the first reduction above could not have been done with a single polynomial from fJ, 12, h, J4' We now consider the case where R = k[y], with k a field and y a single variable. In this setting we have three concepts of Grbner bases: Grbner bases in k[y,XI,'" ,xn ] (as defined in Section 1.6), Grbner bases in (k[Y])[XI,'" ,xnl (as defined in Section 4.1), and strong Grbner bases in (k[y]) [XI, ... ,Xn] (as
253
defined in Definition 4.5.6). Clearly the ring k[y,XI,'" ,xn ] is the SaIDe as the ring (k[Y])[XI"" ,Xn], but, in the latter ring, polynomials are viewed as polynomials in the variables x" ... ,Xn with coefficients in k[y]. We have seen in Lemma4.5.8 that if {g" ... ,gt} is astrong Gr6bner basis in (k[Y])[XI"" ,xn] then it is a Gr6bner basis in (k[Y])[XI'''' ,xn ]. Moreover, we saw in Theorem 4.1.18 that if {g"." , g,} is a Gr6bner basis with respect to an elimination order with the X variables larger than the y variable in k[y,XI, ... ,xn ], then it is a Gr6bner basis in (k[y])[x", .. ,x n ]. The next theorem strengthens this result considerably. We will first need a lemma. In both results we assume we have an elimination order with the x variables larger than y. We need a notation to distinguish between leading terms in k[y, x" ... , x n ] and (k[Y])[XI"" ,xn ]. We use It, Ip, le for their usual meanings in k[y, Xl,'" 1 X n ], and we will use It x1 1px'lcx for corresponding abjects in (k[Y])[XI'''' ,xn ]. 80, for example, if f E k[y, X" ... ,X n ], then lex(f) is a polynomial in y. Finally for a E k[y] we use Ity(a) for the leading term of a. Note that because of the chosen order, for f E k[y, X" ... ,xn ] we have It(f) = Ity(lcx(f)) IPx(f)
LEMMA 4.5.11. Let R = k[y]. Then G = {g" ... ,g,} R[XI,". ,xn ] is a strong Grobner basis if and only if (i) G is a Grobner basis in Rlxl, ... ,x n ] and (ii) for every J {l, ... ,t}, satumted with respect to {IPx(g,)"" ,IPx(gt)}, there exists i E J such that lcx(gi) divides lcx(gj) for ail jE J.
PROOF. Let J = (g" ... ,gt). We first prove that (i) and (ii) imply that Gis a strong Gr6bner basis in R[xl, ... , x n ] (this proof is very similar to the proof of Theorem 4.5.9). Let f E J. Sinee G is a Gr6bner basis in R[xl,'" ,Xn ], we have Itx(f) E (Itx(g,)"" ,Itx(gt)). Let J = {j E {l, ... ,t} IIPx(gj) divides IPx(f)}. Then J is saturated. Moreover we have
It x (f) =
L: aj Itx (gj),
JEJ
for sorne aj E R[Xl1 ... 1 xnl, which we may assume are terms with respect ta the variables Xl, ... ,Xn with Ipx (f) = Ipx (aj) Ipx (gj) for ail j E J such that aj # O. Then
lcx(f)
L: lcx(aj) lex(gj).
JE]
Now choosing i E J as in (ii) we get lcx(gi) divides lcx(f) and sa, by definition of J, we get ltx(gi) divides \tx(f) as desired. Conversely, let G be a strong Gr6bner basis in Rix!, ... ,xn ]. Then, by Lemma 4.5.8, G is a Gr6bner basis in R[x!, ... ,xn ]. Let J be a saturated subset of {l, ... ,t}. Let c = gcd(lcx(gj) 1 j E J) and write c = 2: jE J dj lcx(gj), for sorne
254
dj E R = k[y]. AIso, let X = lcm(lpx(gj) 1 j E J). Now consider the polynomial X f= Ldj~( .)gj. jEJ Px gJ
Note that Itx(f) = eX and f E J. Since G is a strong Grbner basis there is a gi E G such that Itx(gi) divides Itx(f). Therefore i E J since IPx(gi) divides X. Moreover, lcx(g;) divides e and we are done. 0 THEOREM 4.5.12. Let R = k[y]. Then G = {g" ... ,g,} is a Grobner basis in k[y, Xl, ... ,xnl with respect ta an eliminaiion order with the x variables larger than y if and only if G is a strong Grobner basis in (k[y]) [Xl, ... ,xn ]. PROOF. Let us first assume that G = {gl,'" ,g,} is a Grbner basis in k[y,xl,'" ,Xn] with respect to an elimination order with the X variables larger than y. By Theorem 4.1.18 we see that Gis a Grbner basis in (k[Y])[Xl"" ,xn ]. Thus by Lemma 4.5.11 it suffices to show that given a subset J of {l, ... ,t}, saturated with respect to {IPx(g,), ... ,IPx(gt)}, there exists i E J such that lcx(g.,)divides lcx(gj) for all j E J. So let J be such a saturated set. Let e = ged(lcx(gj) 1 j E J) and X = lcm(lpx(gj) 1 j E J). We can write e = 2..: jE s bj lcx(gj), for sorne bj E k[y]. Now consider the polynomial
f =.Lbj~( .)gj
JES
Px gJ
E (gl,'"
,gi)'
Note that Itx(f) = eX. Moreover, It(f) = lty(e)X, since we have an elimination order with the X variables larger than the y variable. Since G is a Grbner basis in k[y, Xl, ... ,X n], there exists gi E G such that It(gi) divides It(f) = Ity(e)X. But then i E J since IPx(gi) divides IPx(f) = X. AIso, Ity(lcx(gi)) divides Ity(lcx(f)) = Ity(e). Therefore, deg(lcx(gi)) S deg(e) and so the fact that c divides lcx(gi) implies that e is a nonzero constant in k times lcx(gi) , which immediately gives the desired result. Conversely, let us assume that G is a strong Grbner basis in (k[y]) [Xl, ... ,xn ]. Let f E J. Then there exists gi E G such that Itx(gi) = lex(g;) IPx(gi) divides Itx(f) = lcx(f) IPx(f) So IPx(gi) divides IPx(f) and lcx(gi) divides lcx(f). But then It(gi) = Ity (lc x (gi)) IPx(gi) divides It(f) = Ity(lcx(f)) IPx(f). Therefore G is a Grbner basis in k[y, X" ... ,xn ]. 0 We now go back to the case of an arbitrary PID Rand conclude this section by giving a eharacterization of strong Grbner bases in R[x], where X is a single variable. This will be used in Section 4.6 to give the primary decomposition of ideals in R[x]. From Lazard [Laz85] (see also Szekeres [Sz]), we have THEOREM 4.5.13. Let R be a PJD and let X be a single variable. Assume that G = {g" ... ,gi} is a minimal strong Grobner basis for an ideal J of R[x] and
255
let lp(gi) = xv'. We further assume that we have ordered the Yi 's in such a way that VI :'0 V2 :'0 ... :'0 Vt Let Y = gCd(Y1,'" ,Yt). Then YI Y2 Yi Yt1 Yt
a2a3'" a3'"
at9 ath29
at h t19
ht9,
for i = 2, ... t.
1
~ ,'" ,~ }
that gCd(Y1"" ,Yt) = L Let lt(gi) = Ci XV , , where Ci E R (1:'0 i:'O t), CLAIM L VI < V2 < ' ,. < Vt. PROOF. Assume to the contrary that we have an i, 1 :'0 i < t, such that Vi = Vi+l. Let c = gcd(Ci, Ci+l) and write c = biG + bi + 1Ci+l, for sorne bi1 bi + 1 E R. Consider the polynomial h = biYi + bi+1Yi+1' Then h E J and lt( h) = ex v, . Sinee Gis a strong Gr6bner basis, there exists a j E {l, ... ,t} sueh that lt(Yj) = CjX Vj divides lt(h) = ex"'. Then Vj :'0 Vi' But then lt(Yj) divides lt(Yi), and so, byour assumption that G is minimal, we have that i = j. Henee c = Ci, and lt(Yi) divides lt(Yi+1)' This contradiets our assumption that G is minimal. CLAIM 2. Ci+l divides Ci, for i = 1, ... l t  1. PROOF. Let i E {l, ... ,t 1}. As in Claim 1, let e = ged(ci,C;+1) and write c = biCi + bi + 1 Ci+1, for sorne bi, bi + 1 E R. Now consider the polynomial h = bixv,+,v'Yi + bi+1Yi+1 E J. Note that lt(h) = ex v"" Since G is a strong Gr6bner basis, there exists aj E {l, .. , ,t}, such that lt(Yj) = CjX Vj divides lt(h). Thus Vj :'0 Vi+1, and so j :'0 i + 1, and ej divides c, and so lt(YJ) divides lt(Yi+1)' Since G is minimal, we have that j = i + 1, and so Ci+l = C = gcd(Ci, ci+d. Therefore C;+1 divides c;.
CLAIM 3. PROOF,
lp(Yi+1)' Sinee lp(Yi+1), '" ,lp(Yt) are larger than lp(h), and since h ~+ 0, the only polynomials that cau be used to recluce h to zero are 9b ... 19i. Therefore hE (gl)'" ,9i)' and hence
CLAIM 4,
80
is
~9i+l'
Ci+l
YI E R.
256
PROOF. Let C(91) E R be the greatest cornmon divisor of the coefficients of the powers of x that appear in 91. Then 91 = C(91)P(91), where p(91) E R[x] and the greatest cornmon divisor of the coefficients of P(Y1) is 1. We show by induction on i that P(91) divides Yi. The case i = 1 is clear. Now assume that
P(Y1) divides YI, 92, ... ,Yi Since ~9i+1 E (91, ... ,Yi) by Claim 3, we see that Ci+1 P(Y1) divides
Ci+l
~YH1.
Ci+l
But gcd
(~,P(Y1))
Ci+l
Ci
y,
Y'l
cth, = h,
ctl h tl =
C'_l h cttl
Y'2
ct2 h t2 =
ct
ct
9i Y2 YI
CLAIM a3'" at_lath2
a2a3' .. at
6. hi+l E (hil aihil, ,a3'" aih21 a2'" ai}. PROOF. By Claim 3 we have ~Yi+1 E (91,'" ,9i)' that is,
Ci+l
The result follows after dividing by aH1 ... a,. The Theorern is now completely proved. 0 We note that the converse is also true. That is, any set of polynomials YI, ... ,y, in R[x] which satisfies the conditions in Theorem 4.5.13 is a strong Grbner basis and is minimal if no ai is a unit (Exercise 4.5.12).
257
COROLLARY 4.5.14. Let k be a field and let y, x be variables and set A = k[y, x]. We assume that we have the lex term ordering with y < x. Let G = {g" ... ,gt} be a minimal Grobner basis for an ideal lof k[y, x] and let IPx(gi) = We assume that we have ordered the 9i 's in Buch a way that Vt Let 9 = ged(g" ... ,g,). Then
XVi.
VI
:S
91 92
a2a3'"
at9
a3'" ath29
9i
9tl
9t
a,ht  1 9 h'9,
1/2
where ai
for i
2, ... ,t.
PROOF. We have from Theorem 4.5.12, that G is a strong Grbner basis in (k[y])[x] and so the result follows immediately from Theorem 4.5.13. 0 EXAMPLE 4.5.15. We consider the ring R = lQI[y] and the ideal l = ((x + y)(y2 + 1), x 2  X Y + 1) in R[x]. We compute a strong Grbner basis for l by computing a Grbner basis for l viewed in lQI[x, y] witb respect to the lexicographie arder with x > y (Theorem 4.5.12). We find
91 92
93
= = =
fI 12 h
=
= = =
630x  630 = 9 . 5 . 14(x  1) = a2a39 70x 2 + 70x  140 = 5(x + 2) . 14(x  1) = a3h29 14x4 + 70x 3 + 196x 2  70x 210 (x 3 + 6x 2 + 20x + 15) . 14(x  1) = h39.
It can be easily verified nsing Lemma 4.5.1l that {J" 12, h} is a strong Grbner basis. We also note that the fi's have the form required in Theorem 4.5.13, since h3 = x 3 + 6x 2 + 20x + 15 = (x + l)(x + 2)(x + 3) + 9(x + 1) E (9, x + 2) and so it also follows from the COnverse of Theorem 4.5.13 (Exercise 4.5.12) that {J" h h} is a strong Grbner basis.
258
Exercises 4.5.1. We deline strong reduction in Rix" ... , xn], for R a PID, with respect to a set F = {J" ... , J,} of nonzero polynomials in Rix" ... , x n ] as
follows. For J, 9 E Rix" ... , x n ] we write J "" 9 provided that for sorne i,1 ::; i ::; s we have lt(fi) divides lt(f) and 9 = J  l~tU;)) k We
write f ~+,s g, as lisuaI, when we iterate the preceding. Show that the following are equivalent for a set G = {g" ... , g,} of nonzero polynomials in Rix" ... , x n ] where we set J = (G). a. G is a strong Gr6bner basis for J.
b. For ail J E J we have J >+" O. 4.5.2. Show that in Exercise 4.5.1 the following statement:
4.5.3,
4.5.4.
4.5.5.
4.5.6. 4.5.7.
4.5.11.
(see Equation (4.5.1)) does not imply that G is a strong Gr6bner basis. IHint: Look at the polynomials Ir = 2x + 1 and h = 3y + x in Zlx, y].] Prove the converse of Theorem 4.5.9. That is, prove that if the set of !J delined there is a strong Gr6bner basis for J then {Ir, ... , J,} is a Gr6bner basis for J. Let J,g E Rix" ... ,xn], with J,g oF 0, and let d = gcd(f,g). Prove that {J,g} is a Gr6bner basis if and only if gcd(it(~),lt(~)) = 1. (This is the analog of crit1.) IHint: Follow the proof of Lemma 3.3.1.] For the ring R = Z use Algorithm 4.5.1 to compute a Gr6bner basis for the ideals generated by the given polynomials with respect to the given term order. a. Ir = 2xy  x, h = 3y  x 2 and lex with x < y. b. Ir = 3x 2y  3yz + y, h = 5x 2z  8z 2 and deglex with x > y > z. c. Ir = 6x 2 + y2, h = lOx 2y + 2xy and lex with x > y. Prove Lemma 4.5.8. For the ring R = Z use Theorem 4.5.9 to compute a strong Gr6bner basis for the ideals generated by the given polynomials with respect to the given term order in the exerCses in Exercise 4.5.5. Compute Ji strong Gr6bner basis for the ideal in Zlillx, y, z] in Exercise 4.2.5. Prove that every nonzero ideal of Rix" ... , Xn], where R is a PID, has a minimal strong Gr6bner basis. Show that for the strong Gr6bner basis constructed in Exercise 4.5.7 (for Exercise 4.5.5 part cl, 30x 3 y2 + 6x 3  5x 2y 3  6x 2 y2 + 16x2y + 5xy3 + xy2 + 2xy  5y 5 + y" strongly reduces to zero. Prove that if {g" ... , g,} is a set of nonzero polynomials in Rix" ... , x n ] where R is a PID and 9 = gCd(gl,'" , g,), then {gl, ... , g,} is a strong Gr6bner basis if and only if {~, ... , is a strong Gr6bner basis.
a:}
259
4.5.12. Prove the converse of Theorem 4.5.13 as stated immediately aIter the proof of Theorem 4.5.13. 4.5.13. Verify that the Grobner bases for (_x 2  xy + x 2 y2 + xy3, 5y + 5xy3xy2 + 3x 2 y2) : Q[x, y] with respect ta the lex ordering with x > y has the form stated in Corollary 4.5.14. 4.5.14. Prove that if R is a UFD and iffor every {!J, ... , f,} : R[x" ... ,xn ] we have that Syz(lt(!J), ... ,lt(f,)) has an Sbasis, then R is a PID. [Hint: If R is not a PID, then there exist a, bER such that gcd(a, b) = 1 and 1 rt (a, b). Note that (l, l, 1) E Syz(a, b, a + b).] 4.5.15. Show that if R is a Dedekind Domain, then for every {J" ... , fs} : R[x" . .. , x n ] we have that Syz(lt(fIl, ... ,lt(f,)) has an Sbasis. [Hint: Prove the identity in Lemma 4.5.2 and follow the proof of Proposition 4.5.3 (note that more than one dj may be needed).] 4.5.16. Prove that if R is a UFD and iffor every nonzero ideal l : R[x" ... , x n ], l has a strong Grobner basis, then R is a PID. [Hint: Use the idea in Example 4.5.7. Assume the facts that if every prime ideal in a UFD is principal then it is a PID, and that every nonprincipal prime ideal in a UFD cantains an infinite number of nonassociate irreducibles.] 4.6. Primary Decomposition in R[x] for R a PID. In this section we follow Lazard [Laz85] and use the results of Section 4.5 to "decompose" ideals in R[x], where R is a PID and x is a single variable. The decomposition we have in mind is one similar ta the decomposition of natural numbers into products of powers of prime numbers. In our setting, the analog of a product is an ideal intersection, and the analog of a prime integer is a prime ideal. Recall that an ideal P in a commutative ring A is prime if f g E P implies that either f E P or g E P, or equivalently, if the set S = A  P is a multiplicative set (see Section
4.4).
We will need the following elementary fact about Noetherian rings. 4.6.l. Let A be a Noetherian ring and let S be any nonempty set of ideals of A. Then S contains a maximal element, i. e. there is an ideal lES such that there is no ideal J E S such that l J.
LEMMA
We first consider the decomposition of the radical Recall from Definition 2.2.4 that
.Ji for
an ideal l in A.
.Ji =
LEMMA
{f E
.Ji=
p
lep
P.
prime ideal
260
Vi
nP
ICP
P prime ideal ideal P contains I, it also cantains Vi. We now consider the reverse inclusion. Sa let us assume that there is an element f in P  Vi. Consider the set S = {Iv 1 v = 0,1, ... }. Note that
[CP
prime ideal M E I, Sn Vi = 0, for otherwise, if E Vi for sorne v E N, then (JV)M = for sorne i" E N, and this implies that f E VI, which is a contradiction. Now consider the collection S of all ideals of A which contain VI and have empty intersection with S. Clearly S is nonempty, since VI E S. By Lemma 4.6.1, there exists an ideal MES which is maximal in S. In particular, VI M and M n S = 0. We now prove that M is a prime ideal. Let gh E M and assume that neither 9 nor h is in M. By maximality of M we have
P
(g, M)
n S of 0 and
(h, M)
n S of 0.
ag +m
But then
which is a contradiction, and 80 M is prime. Now we have a prime ideal M which contains VI and henee I, sa f E P M byassumption. But Mn S = 0,
ICP
ES
'. n
'
In view of the above lemma, one might think that any ideal in Rix] ean be decomposed as the intersection of powers of prime ideals. This is not the case as the following example shows. EXAMPLE 4.6.3. ConsidertheidealQ = (4,X2) inZlx]. Anyprimeideal which contains Q must contain both 2 and x, and hence must be equal to M = (2, x), sinee M is a maximal ideal of Zlx] (sinee Zlx]/(2, x) "" Z2). Therefore, if Q were the intersection of powers of prime ideals, it would be a power of (2, x). But M3 : Q : M 2 80 Q cannot be a power of M. The correct analog to powers of primes is the following.
DEFINITION 4.6.4. An ideal Q of A is called primary if Q then either f is in Q or some power of 9 is in Q.
of A
and if fg E Q
It is easy ta see that prime ideals are primary. However 1 powers of prime ideals need not be primary (see IAtMD]) although, using Lemma 4.6.13, we see that powers of maximal ideals are primary.
261
EXAMPLE 4.6.5. The ideol Q given in Example 4.6.3 is primary. To see this, let fg E Q = (4, X2), and let f cf' Q. It is easy to see that we can write f = ht+rf, and 9 = hg + r g , where ht, hg E Q, and rt = atx + bt , rg = agx + bg, where at, ag,bt , bg = 0, 1,2, or 3 (notethat rf andrg are the totally reduced remainders of f and 9 as defined in Definition 4.3.2). Moreover, since f cf' Q, we have that either af or bj is not equol to O. Since fg E Q, 4 divides atbg + agbf and bjbg. Note that if bg = 0, then g2 E Q, and we would be done. So we may assume that bg # O. If bf = then 4 divides afb g, and 80 since af and bg are nonzero, we have af = bg = 2 giving g2 E Q. Otherwise, bf # and so bj = bg = 2, so again we have g2 E Q.
LEMMA 4.6.6. If Q is a primary ideal in a Noetherian ring A, then yfQ is a prime ideal. M oreover yfQ is the smallest prime ideal containing Q. PROOF. Let fg E yfQ. Then (fg)" = rg" E Q and so r E Q or (g")!' = 9"!' E Q. Therefore f E yfQ or 9 E yfQ and yfQ is a prime ideol. The second statement follows from the fact that any prime ideal containing Q also contains yfQ. 0 DEFINITION 4.6.7. IfQ is primary and yfQ = P, we say that Q is Pprimary.
We cau now define what we ruean by decomposition.
DEFINITION 4.6.8. Let 1 = n~~l Qi, where Qi is Piprimary for each i. We cali n~~l Qi a primary decomposition of 1. If, in addition, the Pi are ail distinct and for aU i, 1 :S i :S we have n#i Qj 't Qi, we caU the primary decomposition irredundant. In this latter case, the ideal Qi is said to be the primary component of 1 which belongs to Pi, and Pi is said to be a prime component of 1.
r,
It is easy to prove that if Q" ... ,Qr are ail Pprmary then n~~l Qi is also Pprimary. Given this, and the obvious statement that we can remove superfluous Qi, we see that any ideal that has a primary decomposition olso has an irredundant primary decomposition. We note that in Lemma 4.6.2 we gave a primary decomposition of VI. Also, in Example 4.6.5, the ideal Q was primary, and thus was its own primary decomposition. In general, we have
THEOREM 4.6.9. Every ideal in a Noetherian ring A has a primary decomposition. PROOF. The key to the proof is the concept of irreducible ideals. An ideal 1 is irreducible if 1 = Ir n 12 implies that 1 = Ir or 1 = I,. The proof of the theorem is done in two steps. First we prove that every ideal in A is a finite intersection of irreducible ideals, and then we show that every irreducible ideol is primary.
262
Let S be the collection of ail ideals in A which axe not the intersection of a finite number of irreducible ideals. Assume ta the contrary that S is not empty. By Lernma 4.6.1 there exists a maximal element M in S. Now, sinee M is in S, M is not irreducible. Therefore there exist ideals M, and M 2 such that M # M" Mol M 2 and M = M, n M 2 . Thus M : M" M 2 . By the maximality of M, we have that M, and M 2 are not in S. Therefore they are both a finite intersection of irreducible ideals. But then M is also a finite intersection of irreducible ideals. This is a contradiction, and therefore S = 0. Now let 1 be an irreducible ideal. We will show that 1 is primary. Sa let f 9 E 1 and let f rte 1. Consider the ascending chain
El
El
5For certain PID's, R, this definition is more restrictive than the one usually found in the literature.
263
9i
gt~l
athtl
9t
hl,
for i = 2, ....' t. We first show how to compute ail of the prille ideals containing 1.
THEOREM 4.6.10. Let l, P be ideals in Rix] with 1 zerodimensional and P prime. Then, with the notation above, (i) 1 c;: P if and only if there exists i ::0: 2 such that (ai, hi) c;: P; (ii) Let i E {2, ... ,t}. If (ai, hi) c;: P then P = (u, v), where u is an irreducible factor of ai and v is an irredueible factor of hi modulo u; (iii) If 1 c;: P, then P is maximal. PROOF. To prove (i), let 1 c;: P. Then 91 = a2a3'" at E P, so that there exists i ::0: 2 such that ai E P, and we choose i largest with that property. Now gi = ai+l ... athi E P, but ai+l ... at '1:. P by the choice of i, and 80 hi E P. Therefore (ai, hi) c;: P. For the converse, let i ::0: 2 and assume that ai, hi E P. First note that for all j = 1, ... ,i we have 9j E (ai, hi)' Now we show that for j = i+ 1, . '. t we have gj E (ail hi). Since hj E (h j  l , aj_ 1h j  21 . . ,a2' .. ajl), it is an easy induction on j ta show that for j = i + 1, ... ,t we have
J
Thus, since 9j is a multiple of hj we have 9j E (ai, hi) for j = i + 1, ... , t. We now see that 1 c;: (ai, hi)' So, since (ai, hi) c;: P, we have 1 c;: P. We now prove (ii). Let (ai, hi) c;: P. Since ai E P, an irreducible factor of ai, say u, is in P. Note that the ideal (u) is now a maximal ideal of R, and hence R = R/ (u) is a field and Rix] is a PID. Let P be the image of P in Rix]. Then, since hi E P, P # {O} and so P is a maximal ideal of Rix]. Since Rix] is a PID, we see that P is generated by an irreducible polynomial il E Rix], that is, P = (il). The image hi of hi is in P, and so il is an irreducible factor of hi. Let v E Rix] be a preimage of il. Since il E P, and sinee u E P, we see that v E P. Therefore (u, v) c;: P. We also have
264
Since R[xl/P is a field, we have that R[x]/(u,v) is a field and so (u,v) is a maximal ideal. Therefore P = (u, v). Statement (iii) is now immediate. 0 LEMMA 4.6.1l. Let J be an ideal in a Noetherian ring A Buch that every prime
n
j=l
Qj be a primary decomposition of J,
where Qj is primary and VQ; = Mj is maximal. Then for any maximal ideal M Buch that J M, there exisls j E {l, ... , e} such that M = MJ'
PROOF. We have
Since l
M, we have
,
j=l
,
j=l
IlMJnMjM.
Therefore there exists j E {l, ... ,e} sueh that Mj M=Mj. 0
M.
But Mj is maximal, so
Therefore, to compute the primary decomposition of the zerodimensional ideal J R[x], we first have to determine al! the maximal ideals containing J. To do this we find all maximal ideals which contain (ai, hi)' for eaeh i = 2, ... ,t. Theorem 4.6.10 gives an explicit method for finding al! such maximal ideals: given {gl,'" , g,} a strong Grobner basis for J as in Theorem 4.5.13, for each
i = 1, ...
,t
(i) compute the irreducible factors of ai; (ii) for each u computed in (i), compute the irreducible factors of hi modulo
u;
(iii) each u, v computed in (i) and (ii) respectively gives rise to a maximal ideal containing J, namely M = (u, v). Note that the method presented above gives, in fact, a way to compute the primary decomposition of .,fI for a zerodimensional ideal J (combining Theorem 4.6.10 and Lemma 4.6.2). We give an example to show how this method is used. EXAMPLE 4.6.12. We go back to Example 4.5.15 where R = Q[y] and J = ((X+y)(y2 + 1),x 2 x+y+1). We computed a strong Grobner basis for J to be
gl g2 g3
=
=
= 02a3
Note that the greatest common divisor of gl, 92 and 93 is l. We find al! maximal ideals containing J. 50 we find those maximal ideals which contain (02, h 2 ) ((y + 1)2, X + y) and those which contain (a3' h 3) = (y2 + 1, x 2  X + Y + 1).
265
Maximal idealB which contain ((y + 1)2, X + y): The only irreducible factor of (y + 1)2 is u = Y + 1. Also, x + y == x  1 (mod y + 1) is irreducible. We let v = x  1. Therefore the only maximal ideal which contains ((y + 1)2 ,x + y) is M , =(y+1,x1). Maximal ideals which contain (y2 + l, x 2  X + Y + 1): Clearly u = y2 + 1 is irreducible in Q[y]. Now we find the irreducible factors of x 2  x + y + 1 modulo u, or equivalently, we find the irreducible factors of the image of x 2  x + y + 1 in the ring R[x], where
x2  x
+i + 1 =
(x  i)(x + i  1),
and each ofthe factors in the righthand side polynomial is irreducible in (lQI[i])[x]. We find preimages of these factors in R[x] and we have
x2 
+ Y + 1 == + l, x
(x  y)(x + y  1)
(mod y2
+ 1).
X
+ Y + 1):
M 2 = (y2
+ l, x + Y 
1).
Since we nQW can compute aU the maximal ideals containing I, we need to find the primary ideals which correspond to each maximal ideal in order to compute the primary decomposition of J. We do this in two steps. We first give a criterion to determine whether a given ideal Q is Mprimary. We then give a criterion to determine which of the Mprimary ideals belong to the primary decomposition of J.
LEMMA 4.6.13. Let A be a Noetherian ring. Let M be a maximal ideal of A and let Q : M be an ideal of A. FurtheT assume that faT each m E M there exists l/ E N such that m" E Q. Then Q is M primary.
PROOF. We first prove that ,fi:J = M. Since M is prime and Q : M, we have ,fi:J : M. Moreover, if m E M then m E ,fi:J, sinee a power of m is in Q, and thus M : ,fi:J as weIl. It remains to show that Q is primary. Let fg E Q and f ct Q. We show that 9 E M. Suppose to the contrary that 9 ct M. Then there exist h E A and m E M such that hg + m = l, since M is maximal. Let l/ E N such that m" E Q. Then
1 = 1" = (hg
+ m)" =h'g+m",
266
+ m" f
E Q, a contradiction.
Therefore
1=
n
i=l
Qj={!EAII: (j)tMj }.
PROOF. Let jE {1, ... ,Cl. We denote {! E A 1 J: (j) t M j } by Qj. Let f E Qj. Then there exists 9 E A such that 9 ~ Mj = VQ; and fg E J : Qj. Since Qj is primary, either f E Qj or a power of 9 is in Qj. But since 9 ~ VQ;, we must have f E Q j. Therefore Qj : Q j. For the reverse inclusion let f E Qj. For each i E {l, ... , Cl, i '" j, there exists Si E Mi  Mj, since Mi and Mj are distinct maximal ideals. Since Mi = VlJi, there exists Vi E N such that sr; E Qi. We deline
s=
II sr; E II Qi
i=l i:pj i=l
i:pj
II Qi : nQi = J. Therefore
i=l
i=l
E Qj.
We now return ta the case where A = R[x] where R is a PID. We will use the above ta give a method for computing the primary decornposition of J. Sa let M = (u, v) be a maximal ideal which eontains (ai, hi), as obtained in Theorem 4.6.10. Then u is an irredueible factor of ai and so u divides g, = a2 a,. Let m be the largest integer such that u m divides g, (sa m ;0. 1). Now, we know that the image il of v in the ring (RI (u) )[x] is an irredueible factor of the image hi of hi. Therefore il divides the image ?f, of g" sinee g, = h, E (ai, hi) and u divides ai. Let n be the largest integer such that il n divides ?f, (note that n ;0. 1). Then we have g, '= vnw (mod u), for sorne w E R[x], sueh that the image {jj of w is not divisible by il. THEOREM 4.6.15. We use the notation above. Let V, W E R[x] be such that
g, '= VW
(mod u m
),
V '= vn
(mod u).
: Q.
267
We now show that Q is Mprimary using Lemma 4.6.13. Clearly Q M, sinee u m , V, and 92, ... ,9tl are in M (reeaU that we noted in the proof of Theorem 4.6.10 that g2, ... , g,_, E (ai, hi) M). To conclude, it is sufficient to show that sorne power of u and v are in Q. Clearly u m E Q. Now we can write V = v n + h' u, for sorne h' E R[x]. Therefore v n = V  h' u, and hence v nm = (V  h' ulm E Q. We now show that Q is the Mprimary component of J using Lemma 4.6.14. We deline Q' = {J E R[x] 1 J: (1) rt M}. Let f E Q' and let 9 E J: (1)  M. Then fg E J Q. Since Q is Mprimary, either f E Q or gV E Q, for sorne vEN. But if gV E Q, then 9 E ,jQ = M, a contradiction. Therefore f E Q, and Q'Q. We now prove the reverse inclusion. First note that ~ is relatively prime to m
u because of the choice of m. Therefore ..!!2... fj. M, for otherwise, sinee U E M, . um we would have 1 E M (recall that g, and u are in Rand that R is a PID). Also, um = E J, and so u m E Q'. Now let j be such that 2 <: j <: t  1. Then u 1 ct M, and 19j E J, so that gj E Q'. It remains to show that V E Q'. To see this we note that W ct M, for otherwise, W = hu + h' v for sorne h, h' E R[x], and so w '" W '" h' v (mod u). But this means that divides and this is a m contradiction. ThenW ~ ct M and VW = g,  h, u for sorne h, E R[x] imply m
g:
g,
w,
g, VWm
u
= (g,
 h,u
E J.
Therefore V E Q'. .D The last thing that remains to be done, in order to compute the primary decomposition of J, is to compute the polynomials V and W required in the last theorem. This is always possible and it follows from a result known as Herisel's Lemrna. We will state the result and show how it is used in examples, but we will not provide a proof of it. The interested reader should consult [Cohl.
THEOREM 4.6.16 (HENSEL'S LEMMA). Let u be an irreducible element of the PJD R and let f E R[x]. Let g('), hl') E R[x] be two polynomials such that their images in (R/(u))[xl are relatively prime and such that
Then for any m there exist polynomials lm) and Mm) in R[x] such that f '" g(m)h(m)
(mod u m ), g(m) '" g(1) (mod u), h(m) '" h(!) (mod u).
268
EXAMPLE 4.6.17. We go back to Example 4.6.12. We found that J = ((x + y)(y2 + 1), x 2  X + Y + 1) C;; (<QI[y])[x] has the following strong Grbner basis
91
92
=
93
We now find the primary components QI, Q2, and Q3 corresponding to Ml, M2' and M3 which belong to J. We use Theorem 4.6.15 and the notation set there to find QI, Q2, and Q3. Primary component which corresponds ta Ml: In this case we have u = y + 1 and v = x 1. The largest integer m such that u m divides 91 = (y + 1)2(y2 + 1) is m = 2. Now we need to factor 93 modulo u. We have
93 = x  X + Y + 1 "" x  X "" (x  l)x
(mod y + 1).
Therefore the largest n such that v n divides 93 modulo u is n = 1. We also have w = x. Now we need to find V and W such that
VW "" x 2
+Y+1
(mod (y
+ 1)2),
V""
X 
(mod y
+ 1),
and W "" x
(mod y
+ 1).
+ (y + 1) h',
V = (x  1) + (y + l)h and W = x
and which satisfy the congruence
93
x 2 x+y+l xix  1) + (y + 1)
+ 1)2) xix  1) + x(y + l)h + (x  1)(y + 1) h' +(y + 1)2hh' (mod (y + 1)2) xix  1) + x(y + l)h + (x  l)(y + 1) h' (mod (y + 1)2). Therefore y + 1 "" x(y + l)h + (x  l)(y + 1) h' (mod (y + 1)2), or equivalently 1"" xh + (x  1) h' (mod y + 1). One obvious solution to this equation is h = 1
VW (mod (y
and h' = 1. Therefore we have
V = (x  1) + (y + 1) = x
+ y,
and W
= x  (y + 1) = x  y  1.
By Theorem 4.6.15 the primary component of J which corresponds to the maximal ideal Ml is
pm
269
Primary component which corresponds ta M 2 : In this case we have u = y2 + 1 and v = xy. The largest integer m such that u m divides 91 = (y + 1)2(y2 + 1) is m = 1. Now we need to factor 93 modulo u. We have
93 =x 2 x+y+1
= (xy)(x+y1)
(mody2+1).
Therefore the largest n such that v n divides 93 modulo u is n = 1. We also have w = x + y  1. Since m = 1 we may let V = v and W = w. Therefore the primary ideal corresponding to M 2 and which belongs to J is
Primary component which corresponds ta M 3 : This computation is the same as the previous one and we get tbat the primary ideal corresponding to M3 and which belongs to J is
Q3 = (y2 + l, (y2 + l)(x + y), x + y  1) = M3' Therefore we have J ((x + y)(y2 + 1), x 2 ((y + 1)2,x + y)
X
+ Y + 1) = Q,
n Q2 n Q3
l,x+y1).
n (y2 +
l,x  y)
n (y2 +
The next example illustrates how the Hensel lifting technique is applied repeatedly. EXAMPLE 4.6.18. In this example we again consider the ring R = Q[y]. Let J be the ideal ((x + y)2(y  1), x 2 + X + y) of R[x]. Again, to compute the strong Gr6bner basis for J we compute the Gr6bner basis for J viewed as an ideal in Q[x, y] with respect to the lex term ordering with x > y. We get 91 92 93
yS _y4 = y4(y_1) = a2 a3 xyx+2y4_y3_y=(yl)(x+2y3+y2+y)=a3h2 x 2 +x+y=h 3.
= =
Note that the greatest common divisor of 91,92, and 93 is 1. As in Example 4.6.12 we first compute the maximal ideals which contain J. We find those maximal ideals which contain (a2, h 2) = (y4, x + 2y3 + y2 + y) and those which contain (a3, h 3 ) = (y  1, x 2 + X + y). Maximal ideals which contain (y4,x + 2y3 + y2 + y): The only irreducible factor of a2 = y4 is u = y. The only irreducible factor of x + 2y3 + y2 + Y modulo y is v = x. Therefore the maximal ideal which contains (y4, X + 2y3 + y2 + y) is
M, = (y, x).
Maximal ideals which contain (y  l, x 2 + X + y): It is easy to see that the only maximal ideal that contains (y  l, x 2 + X + y) is
270
That is, we have u = y  1 and v = x 2 + X + 1, sinee x 2 + x + 1 is irreducible in the ring R[x], where R = R/(u) = Ql[yl/(y  1) "" Ql. 80 the original ideal (y  1, x 2 + X + y) = M 2 is itself maximal. Thus, the primary deeomposition of v7 is
v7 =
We now find the primary eomponents that belong to l and whieh correspond to Ml and M 2 We use Theorem 4.6.15 and the notation set there to find QI and Q2' Primary component which corresponds ta Ml: In this case we have u = y and v = x. The largest integer m sueh that u m divides gl = y4(y 1) is 17' = 4. Now we need to factor g3 modulo u. We have
g3 =x2+x+y",x2+x",x(x+l)
(mody).
Therefore the largest n sueh that v n divides g3 modulo u is n = 1. We also have w = x + 1. Thus we need to find V and W sueh that
To do this we use the Hensellifting technique three times to find V(i), W(i) such that at each stage we have
V(i)W(i) '" x 2 + X
+Y
+1
(mod y),
for i = 2,3,4. This is done inductively by constructing V(i+l) and W(i+1) in terms of V(i) and W(i) respectively. We start with'lifting modulo y2 To do this we must find polynomials h(2) and h,(2) in Ql[x, y] such that
V(2)
= x + yh(2)
and W(2)
= x + 1 + yh,(2),
x2+ X
+ (x + l)yh(2) + xyh,(2)
(mod y2).
Therefore we have y '" (x + l)yh(2) + xy h,(2) (mod y2), or equivalently 1 (x + l)h(2) + x h,(2) (mod y). An obvious solution to this congruence is h(2) = 1 and h,(2) = 1. Therefore we have
V(2) =
X
+ Y and W(2)
+ y 2h(3)
= x  y
+ 1.
+ Y + y 2h(3),
271
+Y 
y2
+ 1)y2h(3)
(mod y3).
Canceling y2 we have
(x
+ y)h,(3) + (x  y + 1)h(3)
=
1 and h,(3)
W(3)
= 1.
= x + y2 + Y and
x  y2  Y + 1.
Finally we lift modulo y4. We find h(4) and h,(4) such that
V W
y2 _ Y + 1 + y 3h,(4)
Canceling y3 we have
(x
+ y2 + y)h'(4) + (x _
y2 _ Y + 1)h(4) '" 2
(mod y).
= 2 and
h,(4)
+ 1.
Now that we have V and W we can find the primary ideal QI corresponding to MI and which belongs ta l,
QI
(U m ,g2,V)
(y4,(y_1)(x+2y3+y2+y),x+2y3+y2+y) (y<,x
+ 2y3 + y2 + y).
Primary component which corresponds to M 2 : In this case we have u = y  1 and v = x 2 + X + 1. The largest integer m such that u m divides 91 = y4(y  1) is m = 1. We thus have that Q2 = (y  1, x 2 + X + 1) = M 2 . Therefore the primary decomposition of 1 is
1= QI
272
91 92 93
form a minimal strong Grabner basis in Z[x]. We will compute the primary decomposition of l = (91,92,93), We first compute the maximal ideals wbich contain (a2, h 2) and (a3, h 3) respectively. Maximal ideals which contain (9, x + 2): The only irreducible factor of 9 is u = 3. Also, v = x + 2 is irreducible modulo 3. Therefore there is only one maximal ideal which contains (9, x + 2), and it is
M, = (3,x
+ 2).
Maximal ideals which contain (5, x 3 + 6x 2 + 20x + 15): The only irreducible factor of 5 is u = 5. Also,
x 3 + 6x 2 + 20x + 15 == x 3 + x 2 == x 2 (x + 1)
(mod 5).
Therefore there are two irreducible factors modulo 5, namely x and x + 1. Thus there are two maximal ideals which contain (5, x 3 + 6x 2 + 20x + 15), M 2 = (5,x) and M3 = (5,x + 1). The primary decomposition of
v7 is
+ 2) n (5, x) n (5, x + 1).
v7 =
M, n M 2 n M3 = (3, x
Now we find the prirnary component for each of these maximal ideals. Primary component which corresponds ta M,: In this case we have u = 3 and v = x + 2. The largest integer m sueh that u m divides 91 = 45 is m = 2. Now we need to factor 93 modulo u. We have
93 = x 3 + 6x 2 + 20x + 15 == x 3 + 2x == x(x2 + 2) == x(x + 1)(x + 2)
(mod 3).
Therefore the largest n such that v n divides 93 modulo u is n = 1. We also have w = x(x + 1). Now we need to find V and W such that
VW == x 3 + 6x 2 + 20x + 15
(mod 3),
and W == x(x + 1)
273
x3 x3
_ _
VW (mod 9)
Therefore we have 3x 2 + 6"" 3x(x + l)h + 3(x + 2) h' (mod 9), or equivalently, x 2 + 2 "" x(x + l)h + (x + 2) h' (mod 3). A solution to this congruence is h = 0 and h' = x + 1. Thus we have
v = x + 2 and W
= x(x + 1)
+ 3(x + 1) =
x2
+ 4x + 3.
We now can find the primary ideal Q, corresponding to M, and whlch belongs to J, Primary component which corresponds to M 2 : In this case we have u = 5 and v = x. The largest integer m such that u m divides 9' = 45 is m = 1. Now we factor 93 modulo u. We have 93 = x 3
+ 6x 2 + 20x + 15 "" x 3 + x 2
""
x (x
+ 1)
(mod 5).
Therefore the largest n such that v n divides 93 modulo u is n = 2. We also have w = x + 1. Since m = 1 we may let V = v and W = w. The primary ideal Q2 corresponding to M 2 and which belongs to J is
Primary component which corresponds to M 3 : In this case we have u = 5 and v = x + 1. As above the largest integer m such that u m divides 9, = 45 is m = 1. Also, as above 93"" x 2 (x + 1) (mod 5), and so the largest n such that v n divides 93 modulo u is n = 1. We also have w = x 2 As above we can choose V and W equal to v and w respectively, and so the primary ideal Q3 corresponding to Ma and whlch belongs to J is
Q3 = (U m ,92,v) = (5,5(x
+ 2),:1: + 1) =
(5,x
+ 1).
9'
92
93
+ 2x 6 + 3x 4 + x 2 
Y + 1 = h3.
274
Let J = (9,,92,93) (<Q[x])[y]. Verify that {9" 92, 93} is a strong Grbner basis for J and find the primary decomposition of J. 4.6.2. Consider the following three polynomials in Z[x]
9'
92 93
47 =
7(x
2
a2a3
+ 1) = a3h2 + 4x + 3 = h3'
Let J = (9,,92,93) Z[x]. Verify that {9,,92,93} is a strong Grbner basis for J and find the primary decomposition of J.
Computations. There are many Computer Algebra Systems which have a Grbner basis package, for example AXIOM, MAPLE, and MATHEMATICA. There are other packages which are entirely devoted to computing in polynomial rings and which have an extensive list of commands ta perform sorne of the computations presented in this book. In particular, we mention CoCoA and MACAULAY. Most of the computations in the examples and exercises in this book (except in Chapter 4) were performed using CoCoA. Many of these computations could not have been done with the other systems listed above. MAPLE and MATHEMATICA do not allow computations in modules and have only a limited choice of orders. These systems allow the user to program and the algorithms presented in this book are, in principle, programmable. However, any practical implementation of these algorithms requires a lot of material not included in this book and many hours of work. MACAULAY computes only with homogeneous polynomials and foelises on computations applied ta algebraic geometry. Most of our examples are nonhomogeneous. Sorne of the computations could still be done using MACAULAY, but with care (see Exercises 1.4.9 and 1.6.18). None of the above systems have an implementation for the computation of Grobner bases over rings which are nat fields. Of course the algorithms Qver rings could also, in principle, be implemented using sorne of these systems. CoCoA provides commands for the algebraic manipulation of polynomials in k[Xl, ... , Xn], ideals of k[Xl, ... ,X n], and submodules of the free modules (k[Xl, ... ,xn])m, where k is a field. Moreover, the user can choose among predefined term orders or define a custom ordering. The algebraic procedures nclude the computation of the intersection of ideals and modules, Ideal quotients, normal forms, syzygy modules, elimination Ideals and modules, free resolutions, and, of course, Gr6bner bases for ideals and modules. When starting a computation with CoCoA the user specifies the characteristic of the field. Even when computing ovef Q, CoCoA performs arithmetic modulo a large prime number, 80 errars may occur and the user must keep this in mind. CoCoA was developed at the University of Genova, Italy, by Antonio Capani, Alessandro Giovini, Gianfranco Niesi, and Lorenzo Robbiano. Ta obtain a copy
275
276
Aigorithms. The algorithms in this book are presented in pseudocode, and the format is as follows. We always start our algoritluns by specifying the input (whlch follows the word INPUT) and the output (whlch follows the word OUTPUT). We then always specify how we initialize the variables involved in the algorithm (thls follows the word INITIALIZATION). When we need to assign an expression to a variable we use the instruction variable ;= expression For example, if the CUITent value of the variable C is 4 and the CUITent value of the variable G is {l, 2, 3}, and if the instructions
G:=GU{C} R:= C+ 1
are executed, then the operation {l,2,3}U{4} = {l,2,3,4} is performed, and G takes on its new value {l, 2, 3, 4}, and then the operation 4 + 1 = 5 is performed, and Rtakes on its new value 5. We use the following conditional structure: IF condition THEN action 1
ELSE
action 2 This means that if condition i8 true, then action 1 i8 performed, and if condition is false then action 2 is performed. Note that the truth of condition depends on the CUITent value of the variables in the algorithm. Sometimes we omit the ELSE statement which always means that action 2 is simply "do nothlng." The indentation always indicates what action 1 and action 2 are and when the conditional structure terminates. We also use two loop structures: WHILE condition DO action and FOR each item in a set S DO action In the WHILE loop, action is repeated as long as condition holds and is not performed if condition does not hold. In the FOR loop, action is performed once for each item in the set S. Note that, in many instances, an order on the set S is prescribed, and the FOR loop must be executed in that order. No other instruction is executed until the entire WHILE or FOR loop is completed. The indentation always indicates what the action is and when the loops terminate.
In this book we use a form of "proof by induction" which may be unfamiliar ta the reader. Il is the purpose of this appendix ta briefly describe this process. We consider a nonempty set T which we assume has a total order ":S;" on it. That is, we assume we have a relation ":S" on T satisfying the following properties: the relation :S is reflexive: for an t E T, t ::; tj the relation <: is transitive: for all s, t, u E T, if s <: t and t <: u then s S u; the relation <: is antisymmetric: for ail s, t E T, if s <: t and t <: s then s = t; the relation <: is total: for all s, t E T, either s <: tort <: s. We say that a total arder <: is a wellordering provided that we have the additional property Let S T such that S # 0. Then S contains a smallest element. That is, there is an sES such that for all tES we have s <: t. We will use two examples of wellordered sets. There is, of course, the one familiar ta most people, the set of natural numbers N = {D, 1,2, ... }. The one we will use most in this book is the set '[n of power products in the variables Xl, ... , X n on which we will put various orders (see Section 1.4); ail of them will be wellorderings. Let T be a wellordered set. Since T is a subset of itself, it has a smallest element which we will denote by 1 (of course, in N this element is 0). We assume that we are given a set {Pt 1 t E T} of statements to be proved. We go about this in One of two ways. We argue by contradiction. If one of the statements is false, we can let S be the set of all t E T such that Pt is false. Since S # 0 we may choose sES least. Another way ta say this is that if sorne of the Pt 's are false then we may choose a smallest sET for which P s is false. The idea then is ta find t < s for which Pt is also false and sa arrive at a contradiction and conclude that aU Pt '8 are true. The second way to proceed is in the more traditional "induction argu277
278
menf' style (commonly referred to as strong induction). We assume that (i) P, is true; (ii) For al! t E T the truth of P, for ail s < t implies the truth of Pt. We conclude from this that ail of the PtS are true.
The validity of the first method of reasoning is obvious. Moreover the proof that these two forms of induction are equiva!ent proceeds exactly as it does in the case T = N.
References
[AdGo] W.W. Adams and L.J. Goldstein, Introduction to Number Theory, Prentice Hall, Englewood Cliffs, NJ, 1976. [AtMD] M.F. Atiyah and LG. MacDonald, Introduction to Commutative Algebra, AddisonWesley, Reading, MA, 1969. [Ba] D. Bayer, The Division Algorithm and the Hilbert Scheme, Ph.D. Thesis, Harvard University, Cambridge, MA, 1982. [BaSt88] D.A. Bayer and M. Stilhnan, On the complexity of camputing syzygies, J. Symb. Comp. 6 (1988), 135147. [BaSt90] D.A. Bayer and M. Stillman, Macaulay: A system for computation in algebraic geometry and commutative algebra. User's manual. [BeWe] T. Becker and V. Weispfenning, Grobner Bases: A Camputational Approach ta Commutative Algebra, Springer Verlag, Berlin and New York, 1993. [Bu65] B. Buchberger, Ein Algorithmus zum Auffinden der Basiselemente des Restklassenringes nach einem nulldimensionalen Polynomideal, Ph.D. Thesis, Inst. University of Innsbruck, Innsbruck, Austria, 1965. [Bu79] B. Buchberger, A criterion for detecting unnecessary reauctions in the construction of Grobner bases, in EUROSAM'79, An International Symposium on Symbolic and Algebraic Manipulation (E.W. Ng, ed.), Lecture Notes in Comput. Sei., vol. 72, Springer Verlag, Berlin and New York, 1979, 3~21. [Bu83] B. Bucbberger, A note on the complexity of constructing Grobner bases, in EUROCAL'83, European Computer Algebra Conference (J.A. van Hulzen ed.), Lecture Notes in Comput. Sei., vol. 162, Springer Verlag, Berlin and New York, 1983, 137~145. [Bu85] B. Bucliberger, Grobner bases: An algorithmic method in polynomial ideal theory, in Multidimensional Systems Theory (N.K. Bose ed.), Reidel, Dordrecht, 1985, 184~232. [CGGLMW] B. Char, K. Geddes, G. Gonnet, B. Leang, M. Monogan, and S.M. Watt, Maple V Library Reference Manual, Springer Verlag, Berlin and New York,1991. [Cohl H. Cohen, A Course in Computational Algebraic Number Theory, Springer Verlag, Berlin and New York, 1993. [CoTr] P. Conti and C. Traversa, Buchberger algarithm and integer programming,
279
280
REFERENCES
in Applied Algebra, Algebraic Algorithms, and ErrorCorrecting Codes AAECC'9 (H.F. Mattson, T. Mora, and T.R.N Rao eds.), Lecture Notes in Comput. Sci., vol. 539, Springer verlag, Berlin and New York, 1991, 130139. [CLOS] D. Cox, J. Little, and D. O'Shea, Ideals, Varieties, and Aigorithms: An Introduction to Computational Aigebraic Geometry and Commutative Aigebra, Springer Verlag, Berlin and New York, 1992. [Cz] S.R. Czapor, Grobner basis methods for solving algebraic equations, Ph.D. Thesis, University of Waterloo, Canada, 1988. [EHV] D. Eisenbud, C. Huneke, and W. Vasconcelos, Direct methods for primary decomposition, Invent. Math. 110 (1992), 207235. [FGLM] J.C. Faugre, P. Gianni, D. Lazard, and T. Mora, Efficient computation of zerodimensional Grobner bases by change of ordering, J. Symb. Compl. 16 (1993), 329344. [Ga] D. Gale, The Theory of Linear Economie ModeZs, McGrawHill, New York, 1960. [GTZ] P. Gianni, B. Trager, and G. Zacharias, Grobner bases and primary decomposition of polynomial ideals, J. Symb. Comp. 6 (1988), 149167. [GMNRT] A. Giovini, T. Mora, G. Niesi, L. Robbiano, and C. Traverso, "One sugar cube, please" or selection strategies in the Buchberger algorithm, in Proc. International Symposium on Symbolic and Algebraic Computation ISSAC'91 (S.M. Watt ed.), ACM Press, New York, 1991, 4954. [GiNi] A. Giovini and G. Niesi, CoCoA user manual, 1990. [Go] L. J. Goldstein, Abstract Aigebra, a First Course, Prentice Hall, Englewood Cliffs, NJ, 1973. [He] LN. Herstein, Topics in Aigebra, Blaisdell, New York, 1964. [Hi] H. Hironaka, Resolution of singularities of an algebraic variety over a field of characleristic zero, Ann. Math. 79 (1964), 109326. [Hun] T.W. Hungerford, Aigebra, Springer Verlag, Berlin and New York, 1974. [Huy] D.T. Huynh, A superexponential lower bound for Grobner bases and ChurchRosser commutative Thue systems, Inf. Contr. 68 (1986), 196206. [JeSu] R.D. Jenks and R.S. Sutor, AXIOM: The Scientific Computation System, Springer Verlag, Berlin and New York, 1992. [Lak] YN. Lakshman, On the complexity of computing Grobner bases for zerodimensional polynomials ideaZs, Ph.D. Thesis, Rensselaer Polytechnic Institute, Troy, NY, 1990. [Lan] S. Lang, Aigebra, AddisonWesley, Reading, MA, 1970. [Laz85] D. Lazard, Ideal bases and primary decomposition: Case of two variables, J. Symb. Comp. 1 (1985), 261270. [Laz91] D. Lazard, Systems of algebraic equations (algorithms and complexity), Computational Algebraic Geometry and Commutative Algebra (D. Eisenbud and L. Robbiano, eds.), Cambridge University Press, London, 1993.
REFERENCES
281
[Mac] F.S. Mru::aulay, Some properlies of enumeration in the theory of modular systems, Proc. London Math. Soc. 26 (1927), 531555. [MaMe] E.W. Mayr and A.R Meyer, The complexity of the ward problems for commutative semigroups and polynomial ideals, Adv. Math 46 (1982),305329. [Mi] B. Mishra, Algorithmic Aigebra, Springer Verlag, Berlin and New York, 1993. [Mo88] H.M. Moller, On the construction of Griibner bases using syzygies, J. Symb. Comp. 6 (1988), 345359. [Mo90] H.M. Moller, Computing syzygies a la Gauss Jordan, in Effective Methods in Algebraic Geometry (T. Mora and C. Traverso, eds.), Progress in Mathematics 94, Birkhiiuser Verlag, Basel, 1990, 335345. [MoMo] H.M. Moller and T. Mora, New corutructive methods in classical ideal theory, J. Algebra 100 (1986), 138178. [MoRo] T. Mora and L. Robbiano, The Griibner fan of an ideal, J. Symb. Comp. 6 (1988), 183208. [NZM] 1. Niven, HB. Zuckerman, and H.L. Montgomery, An Introduction ta the Theory of Numbers, 5th ed., Wiley, New York, 1991. [RDSw] L. Robbiano and M. Sweedler, Subalgebra bases, in Proc. Commutative Algebra Salvador (W. Burns and A. Simis eds.), Lecture Notes in Math., vol. 1430, Springer Verlag, Berlin and New York, 1988, 6187. [Sebre] F.O. Sehreyer, Die Bereehnung von Syzygien mit dem verallgemeinerlen Weierstrasschen Divisioruatz, Diplomarbeit, Hamburg, 1980. [Schri] A. Sehrijver, Theory of Linear and Integer Programming, Wiley, Chichester, NY, 1986. [Se] A. Seidenberg, Constructions in algebra, Trans. Amer. Math. Soc. 197 (1974), 272313. [ShSw] D. Shannon and M. Sweedler, Using Griibner bases to determir algebra membership, split surjective algebra homomorphisms determine bira~ tional equivalence, J. Symb. Comp. 6 (1988), 267273. [Sz] G. Szekeres, A canonical basis for the ideals of a polynomial domain, Am. Math. Mon. 59 (1952), 379386. [Wo] S. Wolfram, Mathematica: A System for Doing Mathematics by Computer, AddisonWesley, Reading, MA, 1991. [Za] G. Zacharias, Generalized Griibner bases in commutative polynomial rings, Bachelor's Thesis, MIT, Cambridge, MA, 1978.
List of Symbols
natural numbers ring of integers ring of integers modulo n field of rational numbers IQI field of real numbers IR field of complex numbers C 'lrn set of power products in the variables Xl, ... ,X n a field k affine space kn ring of polynomials in the variables Xl, ... ,X n with k[x" ... , xnl coefficients in the field k ideal (submodule) generated by fI, , J, (f" ... ,J,) J == g (mod 1) J congruent ta g modulo l k[x" ... ,xnl/I quotient ring of k[x" ... , xnl by the ideal l coset of J modulo l J+I V(8) variety in k n defined by the set of polynomials 8 variety in k n defined by the polynomials fI, . , J, V(f" ... , J,) I(V) ideal in k[x" ... , xnl defined by V k n ideal generated by the polynomials in the set 8 (8) greatest common divisor gcd least common multiple lem dimension of the k vector space L dim.(L) lt(f) leading term of J leading power product of J lp(f) leading coefficient of J le(f)
li
Z Zn
xa J~h G J 4+ h
J reduces to h J reduces to h
283
284
LIST OF SYMBOLS
/~h
Lt(S)
S(f,g) Na(f)
VK(S)
Ji
InJ I:J im( <1 ker( <1 k[fI, ... ,/,]
kiF]
k(Xl, ... ,Xn)
Im(J)
FG [FIG]
ts
ann(M)
F0G
Hom(M,N)
(U) SlA Ap Ag
/ reduces to h and h = /  X 9 leading term ideal (submodule) defined by S Spolynomial of / and 9 normal form of / with respect to G variety in Kn defined by S k[Xl' ... , x n ] algebraic closure of the field k radical of the ideal l intersection of land J ideal quotient of l by J image of the map <1> kernel of the map <1> kalgebra generated by the polynomials fI, ... , /, kalgebra generated by the polynomials in the set F rational function field field extension of k obtained by adjoining a field extension of k obtained by adjoining QI, ... ,Qn set of column vectors with entries in the ring A quotient module of M by N isomorphic ta standard basis for the free module Am 1 X s matrix whose entries are polynomials h, ... ,fs m x s matrix whose columns are vectors fI' ... ,fs syzygy module of the matrix [ fI /, syzygy module of the matrix F leading monomial of the vector J direct sum of the matrices F and G concatenation of the matrices F and G transpose of the matrix S annihilator of the module M tensor product of the matrices F and G set of all Amodule homomorphisms between M and N module generated by the columns of the matrix U localization of the ring A at the multiplicative set S localization of the ring A at the prime ideal P localization of the ring A at the set {l, g, g2, g", ... }
Index
algorithm for modules, 149 improved algorithm, 129 Theorem, 40, 48 CoCoA,275 column vector, 113 commutative ring, 1 computation, 275 Computer Algebra System, vii, 275 confluence relation, 37 congruence, 5 Conti, 105 coset, 5 field case multivariable case, 57 one variable case, 15 module case, 155 ring case, 227 cost function, 105 critl, 128, 152, 258 crit2, 128, 168, 224 deglex, 20 degrevlex, 20 determine, 5, 53 Dickson's Lemma, 23 direct sum of matrices, 174 division for vectors, 141 multivariable case, 25, 26, 27 one variable case, 11 division algorithm field case multivariable case, 28 one variable case, 12 module case, 145 ring case, 207 effective, 53 effective coset representatives, 226
285
affine, 84, 180 First Isomorphism Theorem, 80 homomorphism, 79, 92, 232 membership problem, 39 algebraic dosme, 62 element, 97 geometry, 90 algebraically closed field, 62 algorithm, 275 crit2, 130 division module case, 145 rnultivariable case, 28 one variable case, 12 ring case, 207 Euclidean, 14 Grohner basis
Buchberger's, field case, 43 Buchberger's, module case, 149 improved Buchberger's, 129 PID case, 250 ring case, 216 ring case using Mller's technique,
219
primality test, 244 annihilator, 177, 217 ascending chain condition, 6
basis forA Tn jM,155 for k[Xl, ... ,xnl/I, 58
in Am., 114
standard in Am, 114 Bayer, 102 Buchberger, viii, 39, 113, 124, 131 algorithm, ix, 43
286
INDEX
for ideal, ring case, 201, 208 minimal, 211 minimal strong, 251, 254, 262 strong, 251 for module, 147 reduced, 150 Hensel's Lemma, 267 Hilbert Basis Theorem, 5, 6 Nullstellensatz, 62 Hom, 183 homogeneous ideal,49 component, 22 polynomial, 22, 38 syzygy, 121, 212 homogenization, 38 homological algebra, 185 homomorpmsm algebra, 79, 92, 232 image of, 80 kernel of, 80, 232 module, 116 ideal, 3 field case elimination, 70 Grobner basis for, 32, 34 homogeneous, 49 intersection, 70, 172, 175 leading term, 32 membership problem, 5, 53 monomial, 23 of relations, 80 quotient, 72 quotient for modules, 157, 177, 182 irreducible, 261 leading term, 32, 206 monomial, 23 Pprimary, 261 primary, 260 prime, 61, 237, 259 principal, 13, 246 radical of, 62, 259
elimination
GaussJordan, 2
ideal
field case, 70 ring case, 229 module, 156 order) 69, 229 Euclidean Algorithm, 14 exact sequence, 185 short, 184 explicitly given module, 117 Ext functor) 194, 199 Faugre, 68 field algebraic dosme, 62 algebraically closed, 62 First Isomorphism Theorem algebra ease, 80 module case, 117 free module, 114 free re~olution, 195
GaussJordan elimination, 2 generating set, 3, 114 finite, 6 Gianni, 68, 237 global dimension, 196 graph, 102 graph of a map, 91 greatest cornmon diviso!, 13, 15, 71 Grobner basis algorithm Buchberger's, field case, 43 Buchberger's, module case, 148 improved Buchberger's, 129 PID case, 250 ring case, 216 ring case using M611er's technique,
219
for ideal, field case, 32, 34 minimal,47 reduced,48 universal, 50 using syzygies, 121
INDEX
ring case elimination, 229 Grobner basis for, 201, 208 intersection, 230 leading term, 206 membership problem, 225 of relations, 232 quotient, 217, 231 saturation of, 238 zerodimensional, 64, 262 image of a homomorphism, 80 implicitization, 91 induction, 277 integer progranuning, 105 interreduced, 131 intersection of ideals field case, 70, 172, 175 :ring case, 230 of modules, 157,175,176,178 inverse in k[Xl, ... ,xnl/I, 59, 182 irreducible ideal, 261 isomorphic varieties, 94 isomorphism, module, 116 kernel of a homomorphism, 80, 232 Lakshman, 77 Lazard, 68, 201, 254, 259 leading coefficient multivariable case, 21, 202 one variable case, 10 vector case, 143 leading monomial, 143 leading power product, 21, 202 leading term ideal, 32, 206 module, 147 multivariable case, 21, 202 one variable case, 10 vector case, 143 least cornmon multiple of polynomials, 71 of vectors, 147 lex, 19 linear equations are solvable, 204, 262 local ring, 238 localization, 89 long division, 10 membership problem algebra,39 ideal over field, 5, 53 ideal over ring, 225 module, 153 minimal Grobner basis, field case, 47 Grobner basis, ring case, 211 strong Grobner basis, 251 with respect to F, 205 minimal polynomial, 97 module, U3 elimination, 156 explicitly given, 117 First Isomorphism Theorem, 117 free,114 Grobner basis for, 147 homomorphism, 116 ideal quotient, 157, 177, 182 intersection, 157, 175, 176, 178 isomorphism, 116 leading term module, 147 membership problem, 153 Noetherian, 116 normal forro, 155 quotient, 116 reduction in, 143 Spolynomial, 148 syzygy, U8 Moller, 170, 201, 216, 250 monic polynomial, 13 monoid,37 monomial ideal, 23 in modules, 141 leading, 143 Mora, 23, 68 multiplicative set, 238 Noetherian
287
288
module, 116 ring, 6, 259 normal form polynomial case over a field, 57 over a ring, 227 vector case, 155 normal selection strategy, 130 Nullstellensatz, 62
INDEX
ideal, 61, 237, 259 principal ideal, 13, 246 Principal Ideal Domain (PID), 13,246 projection map, 90
pullback, 182
quotient module, 116 ring, 5 radical of an ideal, 62, 258 reduced Grobner basis ideal case over fields, 48 module case, 150 polynomial over a field, 27 totally, 227 vector, 144 reduction linear case, 8 module case, 143 multivariable case over a field, 25, 26,
order, 18 degree lexicographie (deglex), 19 degree reverse lexicographie (degrevlex), 20 elirnination, 69 induced by a matrix, 166 lexicographie (lex), 19 position over term (POT), 142 term, 18, 140 term over position (TOP), 142 total, 18, 277 weJlordering, 18, 277
Pprimary ideal, 261 parametrized variety, 91 polynomial, 1 elementary symmetric, 25
27
multivariable case over a ring, 203, 205 one variable case, 11 strong, 252, 258 remainder module case, 144 muItivariable case over a field, 27 one variable case over a field, Il ring commutative, 1 local, 238 localization, 89 Noetherian, 6, 259 of fractions, 238 quotient, 5 Robbiano, 23, 39 row echelon form, 2 Sbasis, 247 Spolynomial module case, 148 multivariable case over a field, 40, 121,
homogeneous, 22, 38
minimal, 97 monie,13 normal form, 57, 227 reduced, 27 square free, 75 symmetric, 25, 88 position over terrn (POT), 142 power product, 1, 18 leading, 21, 202 presentation, 117, 119, 195 primality test, 244 primary component, 261 decomposition, 261 ideal, 260 prime component, 261
124
INDEX
PID case, 249 ring case, 213 SAGBI basis, 39 saturated set, 213, 226 saturation of a set, 213 saturation of an ideal, 238 Schreyer, 165 Seidenberg, 78 Shannon, 82, 88 square free polynomial, 75 standard basis, 32 strong Grobner basis, 251 minimal Gr6bner basis, 251, 254, 262 reduction, 252, 258 subalgebra, 39 submodule, 114 Sweedler, 39, 82, 88 symmetric polynomial, 25, 88 syzygy and Grobner bases, 121 applications of, 171 homogeneous, 121, 212 of a matrix, 161 module of, 161 of vectors over a field, 118 module of, 118, 134 of vectors over a ring, 212 module of, 232, 246 Szekeres, 254 tensor product of matrices, 189 term module case, 140 order module case, 140 polynomial case, 18 polynomial case, l, 18 term over position (TOP), 142 three color problem, 102 total order, 18, 277 totally reduced, 227 Trager,237 transpose matrix, 176 Traverso, 105 universal Gr6bner basis, 50 variety, 2, 61, 90 isomorphic, 94 parametrized, 91 vector space, 1 wellordering, 18, 277 Zacharias, 201, 226, 237 Zariski closure, 90 zero divisor, 61 zerodimensional ideal, 64, 262
289