Spring 2019
Math 685: Computational Algebraic Geometry -- Winter 2019 (Section 700)

Homework


Week Ω   Due Wednesday, 1 May Start this weekend or early the week of 22 April.
This is the last homework. It will be a bit of a project, and I will add a little to it in the next 2 weeks.
Hand into Frank at fjsteachmath@gmail.com
For this, we will use Macaulay2 or Singular to investigate how the number of solutions to bivariate (2 variables) systems of polynomials depend upon the 'shape' of the polynomials. By 'shape' I mean the actual monomials that occur in the polynomials. I have two scripts, one in Macaulay2 and one in Singular. In each, there is a matrix A with nonnegative integer entries. The columns of A are the exponents of monomials in a system of two equations in x and y that it creates with random coefficients. It then computes a Groebner basis so that it can determine the dimension (should be zero) and the multiplicity/degree of the ideal. This multiplicity/degree is the number of solutions. Both scripts do this same computation several times in a loop. One purpose is to demonstrate that the number of solutions for such general polynomials depends on the monomials in the polynomials and not on the coefficients (if they are general). A second purpose is in case of an unfortunate choice of coefficients, in which the dimension is not zero or the degree/multiplicity is not what is expected. (What is expected is seen in most/all of the iterations.) You should get these scripts on your own computer, run them, and then try to understand what they are doing.
  1. Warm up. Try to do the experiment in Exercise 5 of Section 2.4 of my notes. This is to see the conclusion of Bézout's Theorem in practice. For this n should be 1,2,3, or 4, and the degree should be not so large. You will see that when the expected number of solutions is largish, the computation is very slow. We may need to discuss/find a way to easily generate random polynomials in n variables of a given degree.
  2. One experiment. Try now Exercise 6 for n= 1, 2, 3, and 4. You might set up n=5, or n=6, but it may not run unless you work over a finite field. We may need to discuss what happens in positive characteristic.
  3. Sparse polynomials. Exercise 7 is a wide open exploration. Using the scripts that I provided (or your own scripts), do many computations with different exppnent matrices A, in the case of two variables. Here is some graph paper 1/2 inch and 1/4 inch. I suggest that you plot the exponent vectors (columns of A and compare those data to the number of solutions that you find.
    This exploration may continue into higher dimensions n=3, or where the two polynomials in the system have different monomials.

Week 12   Due Monday, 15 April
Read Chapter 2, Section 4 of the notes that I have on line.
These notes build on what you have learned about Gröbner bases and focusses on the problem of solving equations using Gröbner bases. It first addresses when an ideal defines a finite set of points (when it is zero-dimensional), and how this can be detected using Gröbner bases. In practice, you simply ask the computer algebra system to compute the dimension of the ideal. A focus is on obtaining (computing) an eliminant for a zero-dimensional ideal I, which is a univariate polynomial that contains much of the information in I, and how eliminants are related to Gröbner bases. Later parts of the section explore what information may be optained from an eliminant, especially when the elimination is optimal (the Shape Lemma). This includes computing an eliminant from any Gröbner basis and the very clever FGLM algorithm. While you do not have any homework on those algorithms, as the software will do these computations for you, it is very interesting to understand how they work. In a reading class, sometimes (often) you are asked to understand something, even when there is no hom,ework on it. I am only assigning a tiny bit of homework, but will return to this in the last week of the course.
  1. Exercises 1, 2 (the Whitney umbrella), 3, and 4. (For all of these, give code. We may need to discuss how to determine the number of real solutions in Problem 4).

Week 11   Due Monday, 8 April
Read Section II.8 of CLO. Also, discuss this on Piazza with each other.
This section dips one's toes into the ocean of applications of Gröbner bases, and more precisely, of computational tools for Grröbner bases. These exercises are all computational, and you should write scripts in either Macualay2 or Singular to accomplish these tasks. You may need help with programming (What are the commands to check for ideal membership? or How do I make a Hessian matrix using built in commands?) Do ask for help, and discuss this amongst yourselves on Piazza. The exercises are from the 2007 version of the book (Third edition).
  1. Exercises 1,2,3,5,7. (1 & 2 are similar and you can reuse code.)

Week 10   Due Monday, 1 April
Read Section II.7 of CLO. Also, discuss this on Piazza with each other.
This section addresses the question of how to compute a Groebner basis. It completes the elementary treatment of the engine behind the software that we have begun to use.
  1. Please do exercise 1, checking that the remaining S-polynomials reduce to zero in Example 1. Note that most of them were checked in earlier steps, so you do not need to do 10 reductions.
  2. 2 (b), and then do 3 on this one (four Gröbner bases). That is, first compute Groebner bases for the ideal generated by x2+y ,  x4 + 2x2y + y2 + 3 ,  in lex, grlex, and then give the reduced Gröbner bases in these two orders. I think that you can take x>y.
  3. 8. For this, describe an algorithm whose input is a Gröbner basis for an ideal and output is the reduced Gröbner basis. Include a proof of correctness.
  4. Here is an interesting exercise. Compute both a grlex and a lex Gröbner basis for the ideal with the three generators
    xy2+xz2 + x-1  ,  yz2+yx2 + y-1  ,  zx2+zy2 + z-1  .
    Repeat this with the exponents 2 changed to 3. What are the dimensions and degrees of these ideals? In Singular, to make sure that you get a reduced Gröbner basis, include the line near the top of your file option(redSB);. What do you notice about this? You will want to submit the output files.

Week 9   Due Monday, 25 March
Read Section II.6 of CLO. Also, discuss this on Piazza with each other.
This section develops two signature properties of Gröbner bases. First that the remainder upon division by elements of a Gröbner basis is unique; thus we have unique nornal forms. (This is similar to echelon matrices, which are unique normal forms for matrices having a given row span.) With such desirable properties, you might ask how can you recognise a Gröbner basis? That is the intent of Theorem 6, which is also known as Buchberger's criterion (for recognising Gröbner bases).
  1. Please do exercises 2, 3, 5, and 10. Only 3 is a proof, the others are computations.

Week 8   Due Monday, 18 March
Read Section II.5 of CLO. Also, discuss this on Piazza with each other.
This section defined Gröbner bases, which connect genera iddeals to monomial ideals. At this stage, these are theoretical objects, which Cox, LIttle, and O'Shea emhasize by using the definition of Gröbner bases to prove the Hilbert Basis Theorem that all ideals in a polynomial ring are finitely generated. This demonstrates an that there is an acceptable and optimal way to describe an ideal with finite data. This also implies that varieties are determined by finite data, and a host of other properties, a couple of which are explored in the exercises for this week, which are a bit on the theoretical side.
  1. Section 2.5, Exercises 1 and 2. These explore when you do not have a Gröbner basis for an ideal.
  2. Section 2.5, Exercise 5. This is to think more about the definition of a Gröbner basis
  3. Section 2.5, Exercise 9. This relates Gröbner bases to linear algebra concepts.
  4. Section 2.5, Exercise 13.
  5. If you want to redo a problem from an earlier problem set for feedback from Frank, please send it to him (his problem with attachments seems to have abated with a software update). Also, please entitle the .pdf with your name, and make sure your name is on what you submit.)

Week 7   Due Friday, 8 March
Read Section II.4 of CLO. Also, discuss this on Piazza with each other.
This section covers monomial ideals, and is the most important background for Gröbner bases. These objects are quite combinatorial in nature, which greatly simplifies their study. The most important theorem in the chapter is Dickson's Theorem. Work to understand it and its proof. Look up the biography of Leonard Eugene Dickson (author of Dickson's Theorem). He is one of the first prominent mathematicians to receive a Ph.D. in the US (at that time, US professors were either imported from Europe or trained there). This section is short, and I think that some had problems with running the computer algebra programs, so I will ask for a little less in the computer algebra realm.
  1. Exercises 3 and 4, Section 2.4 in CLO. These are to help you understand monomial ideals and Disckson's Lemma. You may find graph paper helpful.
  2. This exercise asks you to do a computational experiment.
    In either Singular or Macaulay2, create the monomial ideal generated by x2y3 and compute its dimension and multiplicity/degree. (These are commands in the language. In Singular, if I is your ideal then I = std(I); dim(I); and mult(I); will do this.)
    In Macaulay2, you can get started with R = QQ[x,y], I=ideal{x^2*y^3}, dim I, and then degree I (probably on separate lines).
    Add the monomials x6, xy7, y8, x3y, and y4, one at a time, computing the dimension and multiplicity/degree each time. Compare this to a two-dimensional plot of the monomials in the ideal. Can you make any conclusions from this experiment? If needed, add a few more monomials to the ideal to begin to see what is happening.
    Here is are links to graph paper 1/2 inch and 1/4 inch, if you need them for sketching the ideals.
    The dimension of an ideal is the dimension of its variety, to which Cox, Little, and O'Shea devote a later chapter. Please take this as a black box. It is however easy to define zero-dimensional. An ideal I is zero-dimensional if and only if V(I) is a finite set if and only if k[x1,...,xn]/I is a finite-dimensional k-vector space. In that case, the multiplicity of I is its degree (there is no ambiguity in these terms for zero-dimensional ideals), and this is simply the dimension of the ring k[x1,...,xn]/I as a k-vector space.
  3. Exercises 8 and 9, Section 2.4 in CLO. These should not be so involved, but they show how monomial ideals are much better than ordinary ideals. Here is a statement of them:
    8) A basis for a monomial ideal is minimal if no element in it divides any other (for then the second could be removed without changing the ideal).
            (a) Prove that every monomial ideal has a minimal basis
            (b) Prove that every monomial ideal has a unique minimal basis
    9) If I is a monomial ideal with generators xα(1),...,xα(m), prove that a polynomial f lies in I if and only if the remainder of f upon division by xα(1),...,xα(m) is zero. There is a hint to use Lemmas 2 and 3.
  4. If you want to redo a problem from an earlier problem set for feedback from Frank, please send it to him (his problem with attachments seems to have abated with a software update). Also, please entitle the .pdf with your name, and make sure your name is on what you submit.)

Week 6   Due Monday, 25 February
Read Section II.3 of CLO. Also, discuss this on Piazza with each other.
This section covers the multivariate version of the division algorithm. The division algorithm for polynomials in one variable is straightforward, and was covered in Chapter I, Section 5. It behaves quite differently when there are several variables. There are two differences. One is that we need to divide with respect to an ordered list of polynomials (this is because ideals in polynomial rings in more than one variable may have more than one generator). The second is that we need to decide what is the leading term of both the divisor and the dividend, and so we need to choose a monomial order.
    Please go through the examples in this section, following some of them by hand; this will help you to see how this works. The Division Algorithm is the first important new algorithm in this class. Pay particular attention to its proof (which is contained in the actual division algorithm, which is a procedure written in pseudocode). A few points about algorithms. An algorithm needs to have a well-defined input and output, and a well-defined sequence of operations, so that the choices at each step are canonical. The proof of an algorithm includes that it has the claimed output and that it stops after finitely many steps.
    The exercises explore the division agorithm. I have coded up Exercise 1 in both Singular and Macaulay2. These files are found at Week6.sing and Week6.m2. The output of the Singular code is at Week6_sing.out. They are included to give you a template for using either Singular or Macaulay2 for the other exercises, if you choose (I would recommend checking your answers in either Singular or Macaulay2). Note that they are extremely verbose, and you needn't have so many single reduction steps. I would simply report the final expression in the form f = aF + bG + r with a, b, and r specific polynomials. More precisely, have a line f - ( (a)*F + (b)*G ) that outputs r. Do make sure that a and b were computed using the division algorithm, like in the sample files Week6.sing and Week6.m2. The printf statements are also a bit tedious for the Singular file, but can help to explain the output when it is run. You could also include some comment lines, which begin with -- in Macaulay2 or // in Singular.
  1. Run one of Week6.sing or Week6.m2 and examine the output.
  2. Please do Exercise 2.
  3. To help understand the division algorithm, do Exercise 4.
  4. Do Exercise 5
  5. Do Exercise 6
  6. If you want to redo a problem from an earlier problem set for feedback from Frank, please send it to him, again at sottile@math.tamu.edu. (There is a problem with attachments on that gmail account. Also, please entitle the .pdf with your name, and make sure your name is on what you submit.)

Week 5   Due Monday, 18 February
Read Section II.2 of CLO. Also, discuss this on Piazza with each other.
This section describes the key organizing concept in the theory of Gröbner bases, that of a monomial order. Roughly, this is a way of comparing (determining which is larger) any two monomials in a polynomial ring k[x1,x2, ..., xn] which respects multiplication by monomials, and is a well-ordering. This last property of being a well-ordering is key, because of it, the algorithms we will give will halt, and more importantly, we use this in almost every proof in the subject. It turns out that it is equivalent to the statement that 1 is the minimal monomial (that fact about the minimality of 1 is Exercise 7, which I did not assign).
    Because of this, I ask that you please review what you learned in the past about mathematical induction and the well-ordering property of the nonnegative integers. This will be essential to understand what comes next.
    When reading the text, take time to work out some (or all) examples by hand, and maybe even rewrite the proofs, to make sure that you understand them. In a reading class, the book is a primary source, and not merely a placeholder for definitions and exercises. Read it and re-read it; it may take several passes to get it. Especially this section.
  1. This exercise is to get you running either Macaulay2 or Singular. Taylor and I made two scripts Feb_11.m2 and Feb_11.sing, which are Macaulay2 and Singular (respectively; note the extension) scripts. Please run one of them, and read it. They both do some of the exercises in Chapter I and the beginning of Chapter II. You may not understand what all the commands are, or are doing.
        The last computation in each computes the equation for some crazy plane curve that is given by a parametrization x=f(t) and y=g(t). Copy this part of the code and change the copy, altering the coefficients and degrees (in t) of f and g. What does this do to the resulting polynomial F(x,y) that is computed? Experiment, and be glad that the computer is doing all the work for you.
  2. To study monomial orderings, consider monomials in x, y, and z with x > y > z. Write the six monomials of degree two in x, y, z in both graded lexicographic order and in graded reverse lexicographic order. Do the same for the 10 monomials of degree 3 in these variables.
  3. For more, do exercises 1 and 2 from Section II.2.
  4. Please work to give a proof of Lemma 8, part (a). This will be much more difficult, but it is very important, as it underlies many arguments and algorithms. It is essentially using transitivity of the order and an argument that there is no cancellation at the top. You may find thinking about Exercise 11 is helpful. I would also do an example or two by hand, and maybe even experiment with some Singular or Macaulay2 code (ask for help with that on Piazza). I expect this will be one where we have a lot of back and forth in Piazza, and likely you will hand in a revised version to me in the future. If you can get this, that is great, but I expect to work with some of you on this one.
  5. Speaking of revisions, please hand in to Frank (in .pdf, and at sottile@math.tamu.edu) a revised version of one of the problems from Week 3.

Week 4   Due Monday, 11 February
Read Section II.1 of CLO. Also, discuss this on Piazza with each other.
This is the start of the algorithmic part of the course. We will explore some problems about ideals (and varieties) that will be answered using algorithms which we will be learning about in subsequent weeks. It is also the start of a slightly different approach that I will take. From reading your homeworks (week 2) it appears that the new topics and ideas, coupled with the stresses of the problems I assigned have led to a slight confusion between points and polynomials, varieties and ideals. I now know that section I.4 will require a more careful approach when I next teach this course. Also, the unrelenting theoretical nature of the problems I have been assigning has given you little respite.
This week's homework has three computational problems, one serious theoretical one, and one that is your choice (read on). All except the last one is from the exercises for Chapter II, Section 1.
  1. Problem 1 d. Determine whether or not x3-1 lies in the ideal generated by the following 2 polynomials: x9-1 and x5+x3-x2-1.
  2. Problem 2c. Find a parametrization of the affine variety in either R3 or C3 defined by the equations, y - x3 = 0 and z - x5 = 0.
  3. Problem 3b. Find implicit equations for the affine variety in either R4 or C4 parametrized by x1 = 2t - 5u,   x2 = t + 2u,   x3 = -t + u,   x4 = t+ 3u.
    (This is a topic from linear algebra.)
  4. Problem 5. This is somewhat theoretical. Let me give you a hint. The ring k[x,y] of polynomials in two variables is also a vector space over k. A basis for this is given by monomials, xa yb, for a,b nonnegative integers. Part a. asks for you to determine the dimension of the space of bivariate polynomials of degree at most m.
    Similarly, the polynomial ring k[t] has a basis of monomials ta for a a nonnegative integer. When f(t) is a polynomial of degree at most n, (f(t))a is a polynomial in t of degree at most an, and thus is an element in the vector space of polynomials in k[t] of degree at most an. You should verify/understand that this vector space has dimension an + 1.
    The point of this exercise is that the 'monomials' (f(t))a(g(t))b, which are polynomials in t, will necessarily have a linear dependency (when there are more monomials than the dimension of the ambient vector space in k[t]) and that this linear dependency gives a polynomial F(x,y) that vanishes on the parametrized curve.
  5. This last problem is special. For each of you, choose a problem from the first homework that you did not get completely right. Taking advantage of Taylor's comments, or anything else, try to revise your answer (or completely redo it) and hand that into me (Frank). Either email it to me at fjsteachmath@gmail.com or type it into Piazza and send it to me as a private note. The purpose of this is for me to work with you to improve your answer via a one-on-one discussion. Both Taylor and I have had similar instruction earlier in our careers, and it was very helpful. I hope this will also work for each of you.

Week 3   Due Monday, 4 February
Read Section I.5 of CLO. Also, discuss this on Piazza with each other.
This introduces us to algorithms involving polynomials in one variable. Some of this (but not the presentation) might have been done in Algebra II in high school (at least in the 1970's we learned polynomial long division and Corollary 3 which is a result of Fermat, I think).
After some thought, I think that there is enough in this section that is new, and it is important for what comes later, so we will just do it this week.
Part of your reading will be to read through exercises 12, 13, 14, and 15 (but do not do them).
I expect to send out a starter tutorial for Macaulay 2 and/or Singular later this week. Thank Taylor for that.
  1. Problem 2, involving the Vandermonde determinant, is a very nice application of of Corollary 3.
  2. Problem 4, While this can be done directly, it is much easier to use Proposition 6 (ii).
  3. Problem 9. It was not hard (but only slightly tedious) to compute the gcd of the three polynomials by hand. Later, we will use software for such computations.
  4. Problem 11, which solves the consistency problem for univariate polynomials.

Week 2   Due Monday, 28 January
Read Section I.4 & I.5 of CLO. Also, discuss this on Piazza with each other.
These cover basics in algebra that we are using. The first introduces the ideals of the title of the book, as well as how they interact with varieties. Consequently, it is one of the most important in the book, and I expect that for many of you the material is unfamiliar. The next section is about polynomials in one variable. It develops some of the arithmetic of univariate polynomials; I say arithmetic as it is in very close analogy to the basic theory of the integers. The division algorithm and the Euclidean algorithm for the integers are taught in undergraduate classes (here, it is in the first proof-based class), so I hope this is not too much for you. These ideas are extended in the next chapter to multivariate polynomials, so this is also important.
  1. Prove Proposition 4, that if f1, f2, ..., fs and g1, g2, ..., gt both generate the same ideal J, then they define the same variety, V(f1, f2, ..., fs) = V(g1, g2, ..., gt) .
  2. Do Problem 8 on radical ideals. These will be important near the end of the course when we prove basic theorems in algebraic geometry.
  3. Please try problem 12, it might be a bit challenging. Its main part will be to determine the ideal of the space curve parametrized by the monomials (t2,t3,t4). So that we can discuss this, use the coordinates (x,y,z).
  4. Also do 15 (a), showing that for any subset S of kn, the set of polynomials vanishing identically on S forms an ideal.

Week 1   Due Monday, 21 January
Read Sections I.1–I.3 of CLO. Also, discuss this on Piazza with each other.
  1. Prove that the set Z of integers is not a subvariety of the set C of complex numbers.
  2. Problem 6 in the Exercises for Section I.2: Show that every finite subset of kn is an affine variety.
  3. Problem 8 in the Exercises for Section I.3: This walks you through the parametrization of a nodal cubic, y2=cx2-x3 by nonvertical lines through the origin. It is similar to a problem I assign in Math 629.