Before we can talk about moduli theory, we need to shift our methods of thinking a bit. So far we’ve thought only of geometric objects like varieties and schemes, and we’ve worked with “points.” However, the points of these objects don’t really behave well, especially in the case of schemes. For instance, for the scheme $\mathrm{Spec}(\mathbb{C}[x,y])$, there are all the usual points $(x-a,y-b)$ corresponding to $(a,b)\in \mathbb{C}^2$. However, there are other points, one for each irreducible curve as well as the point $(0)$ which has closure the whole space.

What can we take away from this example? “Points” for schemes aren’t well-behaved, because $\mathbb{A}^1\times \mathbb{A}^1$ is $\mathbb{A}^2$, but not every point of $\mathbb{A}^2$ is given by a pair of points in the product, there are extra points. One way to handle this is to focus on varieties, but then a lot of constructions are harder or less natural, and we lose the option of nonreduced spaces. The better way, however, is to change our notion of points.

Let’s take a step back. If you care about manifolds, you can identify the set of points with the set $\hom(pt,X)$, the smooth maps of a point into the manifold. For groups you can use $\hom(\mathbb{Z},X)$, because these maps are determined by where 1 goes, but it can go anywhere, etc. There isn’t a description this nice for schemes, however. If we looked at $\hom(\mathrm{Spec}(\mathbb{C}),X)$, we’d just get the traditional points, which correspond to maximal ideals, we’d miss all the others, because they have different residue fields.

So instead let’s look at all of the sets $\hom(Y,X)$ at once, where $Y$ varies over all schemes. This defines a contravariant functor on the category of schemes, that is, a functor such that $f:A\to B$ becomes $F(f):F(B)\to F(A)$, which means composition has to be reversed. We’ll call this functor $h_X$, so that $h_X(Y)=\hom(Y,X)$. Now, we say that a contravariant functor from schemes to sets is representable if it is naturally isomorphic to $h_X$ for some $X$, and we call $h_X$ the functor of points of $X$. So we have changed our view from a point as a prime ideal to a point as a morphism, any morphism.

What does this gain us in the short term? Well, let’s define group schemes, which are analogous to algebraic groups. All we need are morphisms satisfying the group axioms, just as before. That’s the definition, just replace the word “variety” with “scheme.” Both of these definitions are good, but we can give another definition in terms of functors of points. Let $G$ be a scheme. Then it is a group scheme if and only if $h_G$ factors through the category of groups with the forgetful functor from groups to sets. All this says is that the sets $\hom(T,G)$ are all groups and are depend nicely only on which scheme we choose to be $T$. This is always true for an algebraic group, because we can define $f+g(x)$ to be $f(x)+g(x)$ in the group law on $G$. (Or, to be careful, two maps give a map $f\times g:T\to G\times G$, which we then compose with multiplication.)

The other thing it simplifies is the problem of fiber products. By switching to the functorial point of view, we can do ANY construction that we can do in the category of sets on the category of schemes. So to work out $X\times_Z Y$, what we need to do is look at $h_X\times_{h_Z} h_Y$, which exists and has value on any $T$ of $h_X(Y)\times_{h_Z(T)}h_Y(T)$, and determine if it is representable.

Now, there’s a missing ingredient from above: the assignment $X\mapsto h_X$ needs to be a functor itself! Well it is, and we in fact need more. What we need is the following:

Yoneda’s Lemma: Let $\mathcal{C}$ be a category and let $X,X'$ be objects in it. Then

1. If $F$ is any contravariant functor from $\mathcal{C}$ to the category of sets, then the natural transformations from $h_X$ to $F$ are in natural correspondence to elements of $F(X)$.
2. If the functors $h_X$ and $h_{X'}$ are isomorphic, then $X$ and $X'$ are. So the functor $X\mapsto h_X$ embeds the category $\mathcal{C}$ into the category of contravariant functors $\mathcal{C}$ to Sets.

The first part says that if we had ANY functor, we get the set of maps from $h_X$ to it by applying $F$ to $X$. So if $F$ is representable, by $X'$, say, then it says that the set of maps $\hom(X,X')$ is the same is at the set of maps $\hom(h_X,h_{X'})$, so the functors of points have the same maps between them as the original schemes. The second part says that this works out in the nicest possible way, and that we lose no information passing to functors of points, because if we have a representable functor, it uniquely determines the scheme it is represented by.

Now, we can actually do better. The functor of points of a scheme is actually determined by its values on affine schemes, and the category of affine schemes is equivalent, via a contravariant functor, to the category of rings (the contravariant functor is $\mathrm{Spec}:Rings\to AffineSchemes$, in fact). So then we can treat them as covariant functors $h_X:Rings\to Sets$ by defining $h_X(R)=\hom(\mathrm{Spec}(R),X)$.

Now, I’m going to state a result characterizing schemes among such functors, and I’ll define the terms afterwards.

Theorem: A functor $F:Rings\to Sets$ is representable if and only if

1. $F$ is a sheaf in the Zariski topology
2. There exist rings $R_i$ and open subfunctors $\alpha_i:h_{R_i}\to F$ such that, for every field, $K$, the set $F(K)$ can be written as the union of the images of $h_{R_i}(K)$ under the maps $\alpha_i$.

The first condition says that we can glue things nicely. It literally says that for every ring $R$ and every open covering $\cup U_i$ for $\mathrm{Spec}(R)$ with the $U_i=\mathrm{Spec}(R_{f_i})$ for some $f_i\in R$, we have that for any collection of elements $\alpha_i\in F(R_{f_i})$ with $\alpha_i,\alpha_j$ mapping to the same thing in $F(R_{f_if_j})$, we have a unique element $\alpha\in F(R)$ mapping to each $\alpha_i$. I’ll be talking more about this part in the future, I think, but the similarity between the standard sheaf axiom should be pretty clear.

The second condition basically says that we can cover the scheme be affine open sets. To make it technically clearer, we must look at the concept of an open subfunctor. Well, a subfunctor is just a map $\alpha:G\to F$ of functors such that every map $G(X)\to F(X)$ induced by it is injective. For instance, if $U\subset X$ is an open subscheme, then $h_U\to h_X$ is a subfunctor, because any map to $h_U$ is also a map to $h_X$. Now we look at the open part of the definition. Take a subfunctor $\alpha:G\to F$. Then we need that for any map $\psi:h_{\mathrm{Spec}(R)}\to F$ the fibered product $G\times_F h_{\mathrm{Spec}(R)}\to h_{\mathrm{Spec}(R)}$ is isomorphic to the injection from the functor represented by some open subscheme of $\mathrm{Spec}(R)$. It sounds technical, but really just says that when we “intersect” the subfunctor $G$ with the image of a map from an affine scheme, and then take the preimage in the affine scheme, we get an open set.

So that’s quite a bit, and now we can think of schemes as functors and do constructions. So what we can do is, when we want to construct a scheme, we construct the functor of points and then attempt to check representability. For those analysts out there, this is like constructing a distribution that solves a PDE and then proving that it’s really just integration against some function. They’re the same philosophy: construct something more general and then try to prove the specifics. So next time, we’ll get to define a moduli space.