Baby case

In this post we work out how to use the construction discussed here in the affine case for deformations of modules.

Let R —> S be a ring map. Let C be the opposite of the category of surjections φ : P —> S where P is a polynomial algebra over R. Next, let A’ –> A be a surjection of R-algebras whose kernel I has square zero. Finally, let M be a A ⊗R S-module. Assume that M is flat over A. I want to use the idea from the previous post to compute the obstruction to deforming M to an A’-flat module M’ over A’ ⊗R S-module.

The material in this post is only interesting if S is not flat over R. In the flat case the construction of the obstruction class is straightforward and we’ll use it below. If you don’t know how to construct it then you could look in the (somewhat skeletal) chapter on deformation theory.

Consider the functor O : C —> Rings which associates to the pair (P, φ) the ring A ⊗R P. Similarly, consider the functor O‘ : C —> Rings which associates to the pair (P, φ) the ring A’ ⊗R P. Note that there is a surjection O‘ —> O whose kernel has square zero. Moreover, O is flat over A and O‘ is flat over A’.

Let’s endow C with the chaotic topology (all presheaves are sheaves). Then (C, O) and (C, O‘) are ringed topoi and the second is a first order thickening of the first. OK, as O‘ is flat over A’ by general theory we have an obstruction class

o(M) ∈ Ext2O(M, I ⊗A M)

to the existence of an A’-flat module M’ over O‘ lifting M. An fun argument (which I omit here) shows that such an M’ is actually a module over A’ ⊗R S, hence o(M) is the obstruction we are looking for. Since there is a surjection of O onto the constant sheaf with value A ⊗R S (let’s call this sheaf B) we can rewrite this Ext group as

Ext2B(M ⊗LO B, I ⊗A M)

Then we have to consider the morphism of ringed sites

π : (C, B) ——> (point, A ⊗R S)

and use the existence of a functor Lπ! (there is a left adjoint π! to π* = π -1 which is computed by doing colimits over the opposite of the category C, i.e., over the category of pairs (P, φ); the left derived functor Lπ! on bounded above complexes exists because the category of B-modules has enough projectives…) to get finally an element in

Ext2A ⊗R S(E, I ⊗A M)

where

E = Lπ!(M ⊗LO B).

To compute E you’d have to understand the category C a bit better, and here you will naturally be led to consider the standard polynomial simplicial resolution of S over R….

Things to do: How does the construction of E behave with respect to localization? If A, R are Noetherian, R —> S of finite type, and M finite over A ⊗R S, then we’d like the cohomology groups H^i(E) to be finite over A ⊗R S.

A base change

Let f : X —> B be a morphism of schemes. Suppose that for every open U of X we are given a category CU whose opposite is a subcategory of the category of surjections A —> OU of sheaves of f-1OB-algebras. Moreover, assume that these categories fit together to give a stack C over XZar with the usual notion of restriction of sheaves.

Since the purpose of this discussion is to study deformation theory, it make sense to assume the stalks of A are local rings, which means exactly that the localization of A as in the previous blog post doesn’t do anything. I will assume this from now on.

Example: Assume f locally of finite type. Given U let CU be the full subcategory of surjections i-1OT —> OU where i : U —> T is a closed immersion of U into a scheme T smooth over B. As maps we can take those maps that come from morphisms between smooth schemes over B. This does not form a stack over XZar but we can stackify.

Now suppose we have a third scheme S and a morphism of schemes g : S —> B. Then I claim there is a natural stack CS over (XS)Zar which can be called the base change of C. I will construct this by saying what the objects and morphisms look like locally on XS and you’ll have to stackify to get the real thing.

OK, suppose that V is an open of XS which maps into the open U of X. Denote p : V —> S and q : V —> U the projections and h : V —> B the structure morphism. Let A —> OU be an object of CU. Then the map

p-1OSh-1OB q-1A —-> OV

is a surjection (see previous post) and we can consider its localization A’ —> OV (as in previous post). This will be what our objects look like locally. Moreover, morphisms are maps which are locally the pullback of maps in C.

Here is how we can use this: The stack CS is naturally a ringed site with topology inherited from the Zariski topology on XS. Moreover, in the example above the rings A are all “smooth” over B thus the rings A’ in CS are all “smooth” over S. I think we can think of XS as a closed subspace of CS and use this to compute obstruction groups for deformations of modules, etc. I’ll come back to this later (and if not then it didn’t work).

Localize

Let (X, OX) be a ringed space and let A —> OX be a surjection of sheaves of algebras. Let S ⊂ A be the subsheaf of local sections which map to invertible functions of OX. Then S(U) is a multiplicative subset of A(U) for every open U of X and we can factor the map as

A —> S-1A —> OX

If X is a locally ringed space, then the stalks of S-1A are local rings too.

This construction is occasionally useful. For example, consider a fibre product of schemes W = X x_S Y with projections maps p : W —> X, q : W —> Y, and structure morphism h : W —-> S. Then the map

A = p-1OXh-1OS q-1OY —-> OW

is not an isomorphism in general, but a localization: with the notation above we have S-1A = OW.

Standard macros?

In this comment Yuhao Huang suggests we could start having some standard macros in algebraic geometry. I have two comments:

  1. It makes sense to reserve some commands such as \Spec and \colim
  2. It doesn’t make sense, I think, to fix the actual macros for these commands.

I think I can convince most of you to agree with 2. For example, I like to define

\def\Spec{\mathop{\rm Spec}}

but (and I am happy to get feedback) I am sure this is completely utterly totally wrong! And let’s not even talk about

\def\SheafHom{\mathop{\mathcal{H}\!{\it om}}\nolimits}

which I am sure you like to define with an underline or a squiggly underline. It is clear that we are never ever going to agree on the “correct” macro even for something as simple as \Spec. Right?

I think I can make some argument for 1, but I agree it isn’t so clear. Namely, wouldn’t it be nice if you could download another algebraic geometer’s latex code and run it locally on you machine with your own preamble? After all, my preamble is better than yours (as we’ve already discussed above).

Finally, many people define macros for things that take just one letter, typically with something like

\newcommand{\CC}{\mathbb{C}}

I may have done this myself in the past. But now I think just typing \mathbb{C} is just as fast and it makes it clear what you get. The argument that it is faster to change the macro doesn’t really hold water as you can do a search and replace (or run a sed command) quite easily. Moreover, the letter C is going to occur as blackboard bold, gothic, greek, german, calligraphic, italic, roman, etc, etc so don’t try to tell me that it is better to use a short macro because who knows which of \CC, \bC, \cC, \iC is the one you want? No, the only reason for having a macro for blackboard bold C is if you wanted to have a macro for the complex numbers. Then you would probably name it \ComplexNumbers or something long like that so you never get confused.

I guess then the question becomes: Is \ComplexNumbers a good choice for one of the standard command names? I’m not convinced.

Another aspect of the situation is that, if we are inclined to introduce the command \ComplexNumbers, then also some things that never get macros should get macros. For example there should probably be a macro (untested)

\def\DerivedCategory#1{\mathop{\rm D}(#1)}

because part of the value of having macros may be that it makes it easier for our LaTeX files to be parsed by machines in the future. Madness!

I hope there is a lot here you can disagree with. My stance on most of this stuff is that it is much easier to fix this kind of thing (if it turns out we made a bad choice of coding a symbol or whatever), than it is to add new mathematics. So essentially, it doesn’t matter, but I am still interested to hear if you more or less agree with what I said above. Leave a comment!

PS: Here is a complete list of the currently defined macros in the Stacks project: \lim, \colim, \Spec, \Hom, \SheafHom, \Sch, \Mor, \Ob, \Sh. You can find these in preamble.tex.

PPS: Of course there is the whole other issue of choice of macro names. As you can see above I have been tempted by the Capitalization Curse. Why didn’t we name the macros \lim, \colim, \spec, \hom, \sheafhom, \sch, \mor, \ob, \sh? I guess an easy way out is to simply have both?

Human readable

This morning I was thinking about the layout of the search results. Cathy suggested the layout should be like what you get on google where you have a first line which is a link to the result (in our case something like “Lemma 7.69.1”) and then, in smaller font, some content which (hopefully) helps you see at a glance what “Lemma 7.69.1” is all about.

Now if you look at the LaTeX code for “Lemma 7.69.1” then you get:
\begin{lemma}
\label{lemma-resolution-by-finite-free}
Let $R$ be a ring. Let $M$ be an $R$-module.
\begin{enumerate}
\item The exists an exact complex
$$
\ldots \to F_2 \to F_1 \to F_0 \to M \to 0.
$$
with $F_i$ free $R$-modules.
\item If $R$ is Noetherian and $M$ finite $R$, then we
choose the complex such that each $F_i$ is finite free.
In other words, we may find an exact complex
$$
\ldots \to R^{n_2} \to R^{n_1} \to R^{n_0} \to M \to 0.
$$
\end{enumerate}
\end{lemma}
and you can’t quickly see what the lemma is about (although in this case the LaTeX label does give you a hint, but that isn’t always the case).

But what is the lemma really saying? Well, if I wanted to tell a student or a colleague what it says I would say something like “Modules have free resolutions.” or “Finite modules over a Noetherian ring have a resolution by finite free modules.” (By the way, this already points to a potential problem with this lemma. We should really have had two lemmas, one dealing with the general case and one dealing with the finite over Noetherian case.)

Anyway, it is technologically easy to add this kind of human readable descriptions to the Stacks project. Namely, we could change the start of the LaTeX code above to
\begin{lemma}
\label{lemma-resolution-by-finite-free}
% Modules have free resolutions and finite modules over a
% Noetherian ring have a resolution by finite free modules.
Let $R$ be a ring. Let $M$ be an $R$-module.
Our scripts running the search on the website could pick up the LaTeX comment and print it out on the search results page. Moreover, this also allows us to add bibliographical information, historical information, etc. To do that we could code it like this:
\begin{lemma}
\label{lemma-resolution-by-finite-free}
% Human:
% Modules have free resolutions and finite modules over a
% Noetherian ring have a resolution by finite free modules.
% Ref:
% MatCA, page 73
% Hist:
% Goes back at least to Hilbert.
Let $R$ be a ring. Let $M$ be an $R$-module.
and so on and so forth. This works because there aren’t almost any comments in the stacks project LaTeX files (the symbol % occurs on only 232 lines).

Of course, the problem (as usual) is to find somebody who is willing to add human readable descriptions to each and every lemma, proposition, theorem, remark, situation, etc. Since there are 5889 lemmas, 161 propositions, 134 theorems, 471 remarks, 46 situations this is no mean task! (It will take about 100 hours to do this if you can do one of these per minute. Come on guys, that is only 10 days of hard work! And with a group of 10 people…)

We should have done this from the start! Hmm…

Questions about a construction

Let B —> A be a surjection of rings. Let M, X, Y be a A-modules.

If φ : X —> Y is a B-module map, then φ is an A-module map. We obtain X ⊗A M —> Y ⊗A M and X ⊗LA M —> Y ⊗LA M by functoriality.

Let ξ ∈ Ext^1_B(X, Y). I claim there is an element in Ext^2_A(X ⊗LA M, Y ⊗LA M) associated to ξ. Here is my construction. Choose a complex of free A-modules F_* resolving M. Choose a sequence (not a complex) of free B-modules F’_* such that F’_* ⊗B A is isomorphic to F_*. Let 0 —> Y —> E —> X —> 0 be the short exact sequence representing ξ. Then consider the composition

F’_{n + 2} ⊗B E —> F’_{n + 1} ⊗B E —> F’_n ⊗B E

Clearly this factors through a map

F_{n + 2} ⊗A X = F’_{n + 2} ⊗B X —> F’_n ⊗B Y = F_n ⊗A Y

The collection of these map gives X ⊗LA M —> Y ⊗LA M[2] as desired.

Questions:
(a) Does this actually work?
(b) What is a “better” description of this construction?
(c) Is there a similar map Ext^2_B(X, Y) —> Ext^3_A(X ⊗LA M, Y ⊗LA M)?
(d) If you have a reference, could you please let us know?.

Thanks!

Compressing the Stacks project

Nick Katz was wondering whether maybe we should distribute USB memory sticks with copies of the stacks project on it. This is completely possible as we can compress the Stacks project to fairly small size files:

-rw-r--r-- 1 johan johan 2.9M Feb 6 21:00 stacks-project.tar.gz
-rw-r--r-- 1 johan johan 2.1M Feb 6 21:03 stacks-project.tar.bz2
-rw-r--r-- 1 johan johan 2.0M Feb 6 21:04 stacks-project.tar.xz
-rw-r--r-- 1 johan johan 1.5M Feb 6 21:32 stacks-project.zpaq

Of course these archives only contain the tex files (more precisely all the files listed when you do git ls-files in your local clone of the stacks-project repository). The smallest one compressed using the zpaq program is just 1546240 bytes. Can your favorite compressor do better?

If we can get it below 1.44 MB then we could hand out floppy disks with a copy of the Stacks project on it!

Most referenced lemmas

Guess what? The most used lemma in the Stacks project is currently Nakayama’s lemma with 73 references. Then there is a gap for a while. The next most highly cited lemmas are:

I guess it makes sense that the first few of these would be results that we consider to be part of the language, and somehow not really results at all (if that makes sense).

Example please!

Can you, dear reader, send me (or post in comments) an example of a Noetherian ring A and finite A-modules M, N such that the canonical map

RHom_A(M, A) ⊗^L_A N —–> RHom_A(M, N)

is not an isomorphism in D(A)? Much obliged.

——————————————————————————————————————-

Update Jan 27, 2013. Bhargav emailed me the following observation. Any mistakes are mine.

Lemma If A has a dualizing complex ω and the map is an isomorphism for every M, N then A has to be Gorenstein.

Proof. Denote the map above f_{M, N}. Then f_{M, N} is also an isomorphism for any M, N \in D^b_{Coh}(A) by triangles. Now choose M = N = ω. Then RHom(ω, ω) = A, so ω is invertible for the derived tensor product. This forces ω to be (locally) the shift of an invertible module by the following lemma. End.

Lemma If A is a Noetherian local ring and K is in D^b_{Coh}(A) and K ⊗^L_A M = A for some object M of D(A), then K is the shift of an invertible A-module.

Proof. Observe that K can be represented by a bounded above complex K^* of finite free A-modules all of whose differentials are zero modulo the maximal ideal m_A of A. Let k be the residue field of A. We have

k = A ⊗^L_A k = (K ⊗^L_A M) ⊗^L_A k = (K ⊗^L_A k) ⊗^L_k (M ⊗^L_A k)

The lemma is clear for D(k) as this is the category of graded k-vector spaces. We conclude that K ⊗^L_A k which is represented by K^* ⊗_A k is isomorphic to k[a] for some integer a. Thus we conclude that K^{-a} = A and K^n = 0 for other n as desired. End.

The conclusion from the comments below is that the ring of dual numbers k[\epsilon] does satisfy the property that f_{M, N} is an isomorphism for all M, N finite. [This is wrong! See update below.] This is a Gorenstein ring so there is no contradiction. On the other hand the ring R = k[x, y, w]/(x^2, y^2, xw – yw, w^2) does not satisfy the property, which now also follows from Bhargav’s observation as this ring isn’t Gorenstein (the socle has dimension 2).

——————————————————————————————————————-

Update Jan 29, 2013. Actually, Bhargav send me the following update. As usual any and all mistakes are mine.

Lemma If the map is an isomorphism for all finite M,N, then A is regular.

Proof. A is Gorenstein as before, so A has finite injective dimension. Hence, RHom(M,A) is a finite A-complex for any M. Then RHom(M,A) (x) N is bounded above (being the derived tensor product of two bounded above A-complexes). On the other hand, the right hand side is not bounded above if A is not regular. For example if A is local with residue field k, we could take M = N = k, in which case Ext^i_A(k,k) is non-zero for arbitrarily large i (as the minimal free resolution does not terminate). End.

In particular, this shows that the map is not an isomorphism for A = k[x]/(x^2), and M = N = k. This contradict the discussion above in the comments. The mistake I (and I think also Ben) made is that in computing the LHS for A = k[ε] = k[x]/(x^2), and M = N = k I took a free resolution of k over k[ε], then I took the dual of this complex and used it to compute the left hand side. But a complex of free A-modules isn’t K-flat so can’t be used to compute the derived tensor product… Argh!

Apologies for all the confusion!

Plots

Some plots from statistics gathered by the new Stacks project website. The first google checking in shows the number of times the google bot has been checking in over time (in total about 160000 times). The second count tags visited shows the cumulative count of tags looked up in the stacks project. This plot is a bit misleading. Precisely, there are

  • 391 tags which have been looked up at most 10 times,
  • 2377 tags which have been looked up at most 25 times,
  • 10109 tags which have been looked up at most 50 times, and
  • 10611 tags which have been looked up at most 100 times.

Unfortunately these numbers include hits from robots (mostly search engines). The most looked up tags are:

For some of these there doesn’t seem to be a good reason for them to be looked up more and so there must be some other reason why these get hit (i.e., the tag in question refers to something in “real” life).