The notion of stack is the one-step vertical categorification of a sheaf.
Or rather, it is the half-categorification of a sheaf where the codomain is categorified (from Set to Cat or Grpd). If also the domain (the site) is categorified, one speaks of a derived stack.
Since the full -categorification of “sheaf” is ∞-stack, a stack is conversely an ∞-stack which happens to be 1-truncated.
From this -point of view it seems a bit pointless to say “stack” instead of “2-sheaf” and accordingly for instance in HTT the term ∞-sheaf is used instead of -stack.
More concretely this means that a stack on a site is
a (pseudo-)functorfrom to the 2-category Cat of categories or Grpd of groupoids;
that satisfies descent.
In the latter case, the stack is sometimes referred to as a stack of groupoids. This is the more commonly occurring case so the term ‘stack’ has come to mean ‘stack of groupoids’ in much of the literature.
In some circles the notion of a stack as a generalized groupoid is almost more familiar than the notion of sheaf as a generalized space. For instance differentiable stacks have attracted much attention in the study of Lie groupoids and orbifolds, while diffeological spaces are only beginning to be investigated more in Lie theory.
The following is “provisional” material on stacks that Todd Trimble wrote in the course of a discussion with Urs. Somebody should turn this here into a coherent entry on stacks.
(Todd speaking.) I don’t really speak “stacks”, but in an effort to build a bridge between sheaves and stacks, I’ll write down what I thought I understood, and ask someone such as Urs to come in and check. (Warning: I’m treating this edit box almost as a sandbox, in that what I say below is all a bit provisional until we get some discussion going.)
Hi Todd, thanks for this. I started making some remarks on the relation between descent -categories and pseudofunctors from covers regarded as sieves (hence as presheaves) at descent and codescent in the section titled Descent in terms of pseudo-functors.
At the simplest level, let be a category. As we know, a presheaf on is just a functor .
Now let’s categorify just once: regard a category as a bicategory whose local hom-categories are discrete. What I’ll call a “pre-stack” is then a homomorphism of bicategories . Here I’m following Street’s terminology: a homomorphism of bicategories is the “pseudo” version of a weak map of bicategories, as opposed to the “lax” version. So, we have given coherent isomorphisms , and so on.
Now suppose that also comes equipped with a topology , and let be a -covering sieve for , so that in particular it’s a subfunctor . We want to build a (truncated) simplicial object out of this, and to this end I’ll use some yoga which was basically developed in my Cafe post on the bar construction perhaps this may go partway to addressing your most recent query there, Urs.
Namely, there is a canonical way of presenting as a colimit of representables. Officially, it’s given by a coend formula, but it’s probably more illuminating to think of it in terms of tensor products over :
In the long-winded version, this says that is the coequalizer of a diagram having the form
where the more visible one of the two parallel arrows involves the contravariant action of on :
and the less visible one uses acting on itself:
The point now is that this coequalizer diagram represents the tail end of a simplicial object (with appearing in dimension -1), which in the notation of the bar construction one could call . Let me explain this last bit.
The point is that any category can be regarded as a monad in the bicategory of spans. The underlying span is of course
and a presheaf on , as a discrete op-fibration, has an underlying span
and is precisely an algebra over the monad . Then, given the data of a monad and an algebra over that monad, one proceeds to build the bar construction as a simplicial object, and I think this is probably the simplicial thingy we want to base the category of descent data on (given a pre-stack ).
In fact, if memory serves the category of descent data can be efficiently expressed in bicategorical language as follows. The covering sieve becomes a homomorphism of bicategories by changing base from to :
and, abbreviating to , it turns out that
where the thing on the right side is the category of strong (i.e., pseudo) natural transformations between the indicated bicategory homomorphisms.
In that case, the stack condition on becomes the statement that the canonical functor
(where the first equivalence comes from the bicategorical Yoneda lemma, and the second functor is induced from the subfunctor ) is an equivalence for all -covering sieves . This formulation connects up nicely, that is, is a straight categorification of what was put down in the entry sheaf.
Special kinds of stacks include
gerbes.
Introductory material is
Jochen Heinloth, Some notes on differentiable stacks (pdf)
Ieke Moerdijk, Introduction to the language of stacks and gerbes (arXiv)
The article
discusses stacks focussing on their dual incarnation as Grothendieck fibrations.
A model category presentation of stacks that mimics the way the model structure on simplicial presheaves models ∞-stacks is discussed in