This post is a response to Brian Conrad asking the following question: “How come the stacks project includes a base scheme S in the definition of algebraic spaces? Namely, we could think of an algebraic space over S as just an algebraic space over Spec(Z) equipped with a morphism to S.”
The short answer is that everywhere in the stacks project you can just think of X as an algebraic space over Z endowed with a morphism to S whenever you see the statement “let X be an algebraic space over S”. If you do this, then in many statements mentioning S is indeed completely superfluous.
A longer answer is that it is related to the setup in the stacks project, including our choices regarding set-theory.
When you see “Let S be a scheme” at the beginning of a lemma/proposition/theorem about algebraic spaces then this really means “Choose a partial universe of schemes to work with which contains S”. I can quantify exactly what I mean with “partial universe” and we prove using ZFC that partial universes exist containing any given set of schemes. (See Lemma Tag 000J.)
For the stacks project an algebraic space is a functor defined on the comma category C/S where C is this partial universe. So an algebraic space is a functor F : (C/S)^{opp} —> Sets. If you want to get an algebraic space over Spec(Z) you have to apply “Change of base scheme” (Section Tag 03I3 of the chapter “Algebraic Spaces”). Of course this is a completely trivial operation, but to get all the details right this is what you have to do.
A consequence is that an algebraic space over Spec(Z) doesn’t (a priori) have a value on all schemes, only on the schemes in the partial universe C. But you can apply “Change of big site” (Section Tag 03FO of the chapter “Algebraic Spaces”) to enlarge your partial universe to contain any given set of schemes.
A similar story goes for algebraic stacks. But… what we’ve done for algebraic stacks in Properties of Stacks, Section Tag 04XA is introduce the customary abuse of language which forgets about all of this set-theoretical nonsense. This language is also less precise.
We could (and maybe should) do the same thing for algebraic spaces. On the other hand, it mostly doesn’t hurt; it just looks a bit funny here and there.
[Post edited on May 30, 2012.]