The Nullstellensatz, first proved by Hilbert, is the following theorem:
Let be an algebraically closed field and let , , …, be polynomials in . Then exactly one of the following is true: either (1) the polynomials , , …, have a common root in or else (2) there are polynomials , … such that .
It is clear that at most one of these can be true. If (1) held, so that we had a root of , then plugging this root into both sides of the relation would give , a contradiction. So the challenge is to show that at least one of these two claims is true. By the way, this is sometimes called the Weak Nullstellensatz. There is a variant called the Strong Nullstellensatz where one tries to solve the equations , . It is straightforward (not trivial) to deduce Strong from Weak by considering the system of equations in variables , so I will focus on the weak case.
Terry Tao has a nice post explaining how to prove the Nullstellensatz by bulldozing forward in the most straightforward manner. (Hopefully, he won’t find this description insulting; I consider the ability to prove results by hammering on them to be very important.) An anonymous commentor on that post points out a very slick three page proof by Arrondo. In this post, I want to discuss a way of understanding the Nullstellensatz which I think is probably well known to experts, but I haven’t seen presented in any elementary books.
Let me remind the reader of the classical theorem of existence of partitions of unity. Let be a smooth manifold and let , …, be a covering of by open sets. Then there are smooth functions on such that is zero on the complement of and .
Now, let’s consider the case that our manifold is and our open sets are of the form , for , , …, some set of polynomials. The assumption that the cover all of precisely means that the do not have a common zero; in other words, condition (1) does not hold. By the theorem of existence of partitions of unity, there are smooth functions , …, such that is zero whenever is zero and . In general, the proof of existence of partitions of unity is extremely nonconstructive; it does not give us a practical way to build the . However, in the example where is and , the Nullstellansatz gives us an explicit answer. Since condition (1) does not hold, condition (2) must. Take . Since divides , we know that is zero whenever is zero and we have .
So, the Nullstellensatz is a version of partitions of unity that works over any algebraically closed field, and with no mention of convergence issues or topology. (There is a tool called the Zariski topology one can use to make this statement precise, although it isn’t quite as easy as you might think.) Whenever I think to myself “I’d like to use a partition of unity here”, I think “Could I use the Nullstellensatz instead?” Indeed, in my own thought, I often refer to the existence of partitions of unity as “the smooth Nullstellensatz”. Of course one major difference between the two results is that partitions of unity exist in , while the Nullstellensatz is not true in . (Consider the polynomials and . They have no real roots in common, but nonetheless there is no pair of polynomials such that .) The ring of polynomials can see complex zeroes, while the ring of smooth functions can not. (Excercise: what about real analytic functions on ?)
I could talk about how to use partitions of unity in setting up sheaf theory, but I suspect the audience for that is small. Instead, a challenge to check your intuition. Let be a bounded metric space and let be the ring of real valued Lipschitz functions on . True or false: for every open cover of , there is a partition of unity subordinate to that open cover using functions in ? If not, what condition should I have imposed on to make this true?