Lemma of the day

Let S be a scheme. Let {Xi → X}i ∈ I be an fppf covering of algebraic spaces over S. Assume I is countable (we can allow larger index sets if we bound the size of the algebraic spaces or if we don’t worry about set theoretic issues). Then any descent datum for algebraic spaces relative to {Xi → X}i ∈ I is effective. See Lemma Tag 0ADV.

Slogan: fppf descent data for algebraic spaces are effective.

Example wanted

Can somebody give me an explicit example of a Noetherian local domain A which does not have resolution of singularities? In particular, I would like an example where the completion A* of A defines an isolated singularity, i.e., where Spec(A*) – {m*} is a regular scheme?

A related question (I think) is this: Does there exist a Noetherian local ring A such that there exists a proper morphism Y —> Spec(A*) whose source Y is an algebraic space which is an isomorphism over the punctured spectrum such that Y is not isomorphic to the base change of a proper morphism X —> Spec(A) whose source is an algebraic space? [Edit 20 October 2014: This cannot happen; follow link below.]

I wanted to make an example for the second question by taking a Noetherian local ring A which does not have a resolution whose completion A* is a domain and defines an isolated singularity. Then a resolution of singularities Y of A* would presumably not be the base change of an X, because if so then X would presumably be a resolution for A. [Edit 20 October 2014: This cannot happen; follow link below.]

Anyway, I searched for examples of this sort on the web but failed to find a relevant example. Can you help? Thanks!

[Edit 23 July 2014: The discussion is continued in this blog post.]

Bounding the first betti number

For some reason I am annoyed with the use of the structure of Jacobians and abelian varieties in the proof of finiteness of the first l-adic betti nr of a curve. Here is a silly argument to get around this.

Let k be an algebraically closed field. Let X be a smooth projective curve over k. We want to prove the number of finite etale G = Z/lZ covers is finite. In fact the argument will work for any finite group G.

If not then we get p_n : Y_n —> X, n = 1, 2, 3, 4, … which are finite etale covers with Galois group G and which are pairwise nonisomorphic. By Riemann-Hurwitz each of the curves Y_n has the same genus, call it g. Choose an integer d bigger than 2g and prime to |G|. Fix closed points x_i in X where i = 1, …, d. Set D = \sum x_i as a divisor on X. For each n pick points y_{i, n} in Y_n mapping to x_i. Then we can find a rational function f_n on Y_n which has poles exactly at the set of points y_{1, n}, …, y_{d, n}. Then we get a morphism

(f_n, p_n) : Y_n —–> P^1 x X

which is birational onto its image. By our careful choice of f_n the divisor class of the image is the class of a fixed line bundle, namely L = OP^1(|G|) ⊗ OX(D). Thus in the linear system |L| we get an infinitude of curves whose normalization is finite etale Galois over X with group G. By standard (but nontrivial) arguments, we get an actual family of such curves which contains an infinity of our Y_n. However, there are no moduli of finite \’etale Galois covers (another standard fact). Hence infinitely many Y_n are isomorphic (as Galois covers) which is a contradiction.

Of course this is quite useless!

Pointers to the literature

Just this morning we updated the Stacks project website (huge thanks to Johan Commelin and Pieter Belmans) so that we can now start adding precise outside references. Since the Stacks project is selfcontained we view these references more as pointers to the literature. Currently we have only four examples of this:

If you click on one of these links and then look in the sidebar you should find a gadget with title “References” which gives you a reference. This sidebar gadget only shows up on the page of the lemma and not on the page for the section which contains the lemma; it also does not show up on the page of lemmas for which we have not yet added references.

The hope is that you, dear reader, will help. While browsing the Stacks project you may come to a lemma for which you know a precise reference. If so, please leave a corresponding comment on the page of the lemma.

The way things are setup we can add these specific references to any lemma, proposition, theorem, remark, example, exercise, situation, equation, or definition. I stress once more that these references should be as precise as possible (i.e., point to an exact result and/or an exact page number if known). If the result in the paper referenced is different, it may be helpful to briefly explain how. Also, it is very useful if multiple references are given for a single result.

More technical information can be found in this post. At the moment parts 1, 2, 4, 5, 6, and 7 of the list there are done. Please feel free to help with parts 3, 8, and 9.

Slow with updating comments

Dear commenters,

This is just to let you know that I’ve been a bit slow with approving the valid comments as I am getting too many spam comments. This blog gets almost 500,000 spam comments per month. Yes, this is insane as only 5 people read this blog! Most of these spam comments are filtered out automatically but some get through which is already annoying enough to make me not want to check comments. If you did leave a comment and you are annoyed that it doesn’t show up, then you can try emailing me directly.

Thanks for your patience!

References, slogans, and history

For a while now I have been thinking about adding “layers” to the Stacks project. You can find some discussions of this in post 1, post 2, post 3, post 4, and comment 1. Some possibilities for layers are “sign-offs”, “slogans”, “history”, and “references”. References are the most important for now, so let’s focus on that one.

One mathematical point: the idea of finding references is not that we’ll use them anywhere in the Stacks project. It is just to point out that such and such a result, or something similar, can be found in the literature. This way we don’t have to check the proofs given in the literature and we don’t have to worry about circular reasoning. In other words, we should think of “references” more as pointers to the literature than anything else.

In the rest of this post we discuss the mechanism for dealing with references. If you are a mathematician and only interested in the mathematical aspects of the Stacks project, then please check back when an implementation is in place (hopefully this summer) and help us do the hard work, i.e., actually finding precise references for results. Hopefully by then there’ll be an interface (or even a phone app) where it is easy to quickly suggest a reference.

Recall that the Stacks project consists of a bunch a LaTeX files + one extra file dealing with the tags. All the material is reviewed (by the maintainer = me currently). The Stacks website extracts information out of the LaTeX files and displays it and allows for visitors to leave comments (which are not part of the Stacks project and no correctness of the comments is claimed by the authors of the Stacks project).

Clearly, this means references go into the LaTeX files. Visitors can suggest references in the comments on the website, which can then be reviewed and put in the LaTeX file if suitable. We’ll need to write more code for the Stacks website to suitably display them.

Namely, since we (eventually) want references for each single lemma, I think by default we do not want to display references in the pdf or even on the website. There should be a button one can click which shows the references (if there are any) and asks the visitor for references / slogans / historical remarks. Pieter points out that we can show a list of references in the side bar on the tags pages, which may be a good solution.

LaTeX implementation: Currently every lemma is coded as follows

\begin{lemma}
\label{lemma-about-smooth-morphisms}
A smooth morphism is wonderful!
\end{lemma}

in the LaTeX files. Suppose we have a reference for this lemma is EGA II, Theorem 5.4.1.1. Then I suggest we put this into the LaTeX file as follows

\begin{lemma}
\label{lemma-about-smooth-morphisms}
\begin{reference} This is \cite[II Theorem 5.4.1.1]{EGA}. \end{reference}
A smooth morphism is wonderful!
\end{lemma}

If there are more references then maybe the formatting would be like so

\begin{lemma}
\label{lemma-about-smooth-morphisms}
\begin{reference}
The first part of this lemma can be found in \cite[page 455]{A}
and the second part of the lemma can be found in \cite[Lemma 5]{B}.
\end{reference}
A smooth morphism is wonderful!
\end{lemma}

What needs to be done (in no particular order):

  1. Change preamble.tex so \begin{reference} … \end{reference} gets ignored.
  2. Change the current Stacks website code so that \begin{reference} … \end{reference} gets ignored on rendering the LaTeX but so \begin{reference} … \end{reference} does show when clicking the “code” view button.
  3. Make a “show / add references” button on the stacks website which pops up a window showing the current content of \begin{reference} … \end{reference} and asks for a comment
  4. Write a python function extracting the actual \cite commands from the text in between \begin{reference} and \end{reference}
  5. Add a database table with references (both text and actual cite commands) and add a script which populates the table on each update
  6. Add to the script checking correctness of the Stacks project to check correctness of the format of \begin{reference} … \end{reference}
  7. Add a sidebar gadget which shows references (not the surrounding text)
  8. Write a phone app, eg asking for references for a “random” tag
  9. Put your idea here!

If you are comfortable with using LaTeX, php, and python, then you can probably jump right in and help develop. In fact, it might even be fun! If you are interested just email me or Pieter and we can make sure we aren’t doubling up on the work.

Contributors

This is just a quick post to point out that I’ve just updated the contributors file. Please let the Stacks project maintainer (currently me) know if you should be there and you’re not, or if I spelled your name wrong, or if you want your name removed. If you want to learn more precisely who did what you have to look at the commit log and you actually have to look into the commits themselves to see who is thanked for what. A quicker way, if you have a question about this, is to email me and ask.

There are lot’s of things you can do to get onto this list. A suggestion is to browse the project online and find typos/errors and leave a comment on the site. You can also leave comments with an imaginary name, e.g., I think that Levi Civita once send me a suggestion. Be creative. Thanks!

Stratifications

Today I tried to figure out what a stratification is. Of course, I already knew the answer but I sort of got worried I had it wrong. Let me explain.

The “correct” (actually no, see Edit below) definition for general purpose applications in algebraic geometry is as follows. Let X be a topological space.

A partition of X is a decomposition of X into pairwise disjoint locally closed subsets. A stratification of X is a partition of X such that if X_j meets the closure of X_i, then X_j is contained in the closure of X_i.

For a stratification the index set gets a canonical partial ordering such that the closure of X_i is the union of the X_j for j ≤ i. [Side remark: at the moment of writing a stratification of a scheme isn’t formally defined in the stacks project, but is introduced in the text of a section on flattening stratifications, where it unfortunately conflicts with the notion as defined above. Argh! We’ll fix that soonish.]

Now, we are often interested in partitions and stratifications with additional properties. For example, it is nice if the index set is finite or at least if the decomposition is locally finite. If X is a spectral space (topological space underlying an affine scheme), then it is nice to require the parts and strata to be constructible locally closed subsets.

How is this used? For example in the following definition:

A sheaf of sets F on the etale site of an affine scheme X is called constructible if there is a finite constructible partition of X such that F is finite locally constant on each stratum.

The thing that got me worried is the following. Let X be a topological space with a closed subset Z and complementary open U. Then X = Z ∪ U is a partition of X. Now we ask ourselves: Can we refine this partition by a stratification? But wait, why is this even a question? Well, because Z’ = U̅ ∩ Z may be nonempty and strictly smaller than Z. Thus to get a stratification we need to split Z up into Z’ and Z \ Z’. However, then we need to do the same thing for the closure of the complement of Z’, etc, etc. The process potentially never stops.

Moreover, if we start with a finite constructible partition of an affine scheme X, then, in general, there does not exist a constructible stratification refining it. (Because it can happen that one has an irreducible quasi-compact open of X whose closure is not constructible.)

OK, and now it appears that we have two possible definitions for constructible sheaves. Namely, instead of the definition above we could require F is finite locally constant over the strata of a finite constructible stratification of X. But, happily, it turns out the second version isn’t the correct notion. Namely, we want pullback of constructible sheaves to be constructible. For a noetherian scheme the two notions give the same thing. But… the inverse image of a stratification by a continuous map is in general just a partition, not a stratification!

Thus for the Stacks project we should: (1) introduce formal definitions for partitions, refinments of partitions, and stratifications, and (2) search of all occurences of partitions and stratifications and make sure they match the given definitions. Moreover, we should have done this a long time ago.

Any comments on this are very welcome.

[Edit next day: I just realized that there is an intermediate notion, where one assumes that the index set comes with a partial ordering and the closure of X_i is contained in the union of X_j with j ≤ i. For example the stratification by Newton polygon has this property, but isn’t a stratification in the sense defined above. So probably that one is the “correct” one for algebraic geometry? So now I am tempted to take this weaker definition and then call the stronger one a good stratification.]

Limits of quasi-compact spaces

The limit of a directed inverse system of quasi-compact spaces need not be quasi-compact. Danger Will Robinson!

Nice exercise: what happens with an inverse limit of spectral spaces with spectral maps? A spectral space is a topological space which is sober, has a basis of quasi-compact opens, and is such that the intersection of any two quasi-compact opens is quasi-compact; actually Hochster showed these are always homeomorphic to spectra of rings.

As usual: don’t answer if you know the answer…

Generators and dgas

Let D be a triangulated category. Let E be an object of D. We say that E is a generator if for every nonzero object K we have that Hom(E, K[n]) is nonzero for some n. As discussed earlier on this blog, if X is a quasi-compact and quasi-separated scheme, then D_{QCoh}(X) has a perfect generator E and in this case we get D_{Qcoh}(X) = D(A) where A is the dga of endomorphisms of E. In a formula

A = RHom(E, E)

(To get an actual dga you find a K-injective complex of O_X-modules representing E and you take its endomorphisms in the differential graded category of O_X-modules.) Moreover, it then follows that D^b_{Coh}(X) = D_{compact}(A).

Let X be a smooth projective curve over a field k. Let E be a vector bundle on X. Then it turns out that E is a generator for D_{QCoh}(X) if and only if for every nonzero vector bundle F on X either H^0(X, F ⊗ E) or H^1(X, F ⊗ E) is nonzero. (We omit the proof of this statement.) Take for example E = L ⊕ N for some invertible sheaves L and N. Then it follows from Riemann-Roch that E is a generator if L and N have different degrees.

Let’s specialize even further. Assume the genus g of X is not 1. Take L = O_X and N general of degree g – 1. Then H^0(N) = H^1(N) = 0 and H^0(N^*) = 0. Thus the differential graded algebra A has cohomology H^*(A) given by

H^0(A) = k x k

(put these two factors k along the diagonal in a 2×2 matrix) and

H^1(A) = H^1(O_X) ⊕ H^1(N^*) ⊕ H^1(O_X)

(put these in an upper triangular 2×2-matrix) and all other cohomologies are zero. It follows from this that the algebra structure on H^*(A) depends only on the integer g and not on the isomorphism class of X (or N for that matter). However, since we know that the derived category of X determines the isomorphism class of X we see that there are moduli hinding in the dga A! In particular this shows (in a very roundabout way) that there is a positive dimensional family of isomorphism classes of dgas A with cohomology algebra as indicated above.

I have no doubt there are simpler examples of this phenomenon. Please leave a comment or email me if you have one or a reference. Thanks!