plus construction on presheaves



Topos Theory

topos theory



Internal Logic

Topos morphisms

Extra stuff, structure, properties

Cohomology and homotopy

In higher category theory


This is a subentry of sheaf about the plus-construction on presheaves. For other constructions called plus construction, see there.



The plus construction () +:PSh(C)PSh(C)(-)^+ : PSh(C) \to PSh(C) on presheaves over a site CC is an operation that makes a presheaf “closer” to being a sheaf.

For ordinary sheaves of sets, the plus construction replaces a presheaf first by a separated presheaf and then by a sheaf.

PSh(C)() +SepPSh(C)() +Sh(C). PSh(C) \stackrel{(-)^+}{\to} SepPSh(C) \stackrel{(-)^+}{\to} Sh(C) \,.

(The first of these steps, however, is not a reflection into SepPsh(C)SepPsh(C).) Notice that in terms of n-truncated morphisms, a presheaf is

More generally, in (n,1)-topos theory, the plus-construction is applied (n+1)(n+1)-times in a row to an (n,1)-presheaf? (a presheaf of (n1)(n-1)-groupoids), at each step decreasing the truncatedness of the comparison map until at the last step it becomes an actual (n,1)-sheaf, a.k.a. stack; see Anel and Leena Subramaniam, 2020. When n=n=\infty, even a countable sequence of applications does not suffice, but a transfinite one does; see Lurie, section 6.5.3.



Let CC be a small site equipped with a Grothendieck topology JJ, let A:C opSetA:C^{op}\to Set be a functor. Then the plus construction is a functor () +:PSh(C)PSh(C)(-)^+ : PSh(C) \to PSh(C) defined by the following equivalent descriptions:

  1. A +(U)=colim (RyU)J(U)Hom Psh(C)(R,A)A^+(U) = colim_{(R\hookrightarrow y U)\in J(U)} Hom_{Psh(C)}(R,A) where J(U)J(U) can be defined in any of the following equivalent ways:

    • The poset of covering sieves on UU for the topology. (It is important here that we use covering sieves, or at least families closed under composition and identities.)
    • The class of dense monomorphisms with representable codomain yUy U.
    • The class of monomorphisms with codomain yUy U that are inverted by the sheafification functor. (Of course, this definition is not available unless we have shown that sheafification exists in some other way.)
  2. For UC opU\in C^{op} we define A +(U)A^+(U) to be the set of equivalence classes of pairs (R,s)(R,s) where RJ(U)R\in J(U) and s=(s fA(domf)|fR)s=(s_f\in A(dom f)|f\in R) is a compatible family of elements of AA relative to RR, and (R,s)(R,s)(R,s)\sim (R', s') iff there is a JJ-covering sieve RRRR'' \subseteq R \cap R' on which the restrictions of ss and ss' agree.

  3. In the internal language of the presheaf topos PSh(C)PSh(C), we can define A +={KA|j(K is a singleton)}/ A^+ = \{ K \subseteq A \,|\, j(K\,\text{ is a singleton}) \}/{\sim}, where \sim is the equivalence relation given by KLK \sim L if and only if j(K=L)j(K = L) and jj is the Lawvere-Tierney topology.

  4. A +=Lan r opRan s opAA^+ = Lan_{r^{op}} Ran_{s^{op}} A, where r:JCr : J \to C is the Grothendieck construction of the functor Cov:C opPosCov : C^{op} \to Pos sending each UU to its set of covering sieves, and s:CJs:C\to J sends each UCU\in C to its maximal sieve M UM_U (the set of all morphisms with codomain UU).

The first and last of these definitions also work for higher sheaves on higher sites, i.e. when CC is an (infinity,1)-site and A:C opGpdA:C^{op} \to \infty Gpd is an (infinity,1)-presheaf, as long as limits, colimits, and Kan extensions are interpreted in the (,1)(\infty,1)-categorical sense.

Construction of sheafification

The basic property of the plus-construction is that we can construct sheafification (a.k.a. stack completion, in the higher-categorical case) by iterating it. For ordinary presheaves of sets, two iterations suffice: for any presheaf AA, A +A^+ is separated, while if AA is separated then A +A^+ is a sheaf; thus A ++A^{++} is the sheafification of any presheaf AA.


Note, though, that () +:PSh(C)SepPSh(C)(-)^+ : PSh(C) \to SepPSh(C) is not left adjoint to the inclusion ι:SepPSh(C)PSh(C)\iota : SepPSh(C) \hookrightarrow PSh(C) of the full subcategory of separated presheaves. If it were, it would be a reflector and therefore satisfy () +ιId(-)^+ \circ \iota \cong Id. But this is false, since the plus construction applied to separated presheaves yields their sheafification. See this MathOverflow question for details.

More generally, when working with presheaves of nn-groupoids for some finite nn, it takes n+2n+2 iterations for the plus-construction to converge to a sheaf/stack. In the case n=n=\infty, no finite number of iterations suffices, and not even a countable number, but a transfinite number does.

We now sketch a proof of these facts, using the implicit infinity-category convention so that our results apply to higher sheaves/stacks as well as ordinary ones.

We use the fourth definition above A +=Lan r opRan s opAA^+ = Lan_{r^{op}} Ran_{s^{op}} A, which we will write more shortly as A +=r !s *AA^+ = r_! s_* A. There is a canonical map AA +A\to A^+, which we can more easily construct and study with the following observation:


s:CJs:C\to J is right adjoint to r:JCr:J\to C. Therefore, we have an adjunction r *:Psh(C)Psh(J):s *r^* : Psh(C) \rightleftarrows Psh(J) : s^*, and hence an adjoint quadruple:

r !r *s *s *. r_! \dashv r^* \dashv s^* \dashv s_*.

Moreover, r *r^* and s *s_* are fully faithful and r !r_! preserves finite limits, so Psh(J)Psh(J) is cohesive and even totally connected over Psh(C)Psh(C).


Since the maximal sieve M UM_U is the terminal object of the fiber of rr, the functor ss picks out a fiberwise terminal object in the fibration rr; thus it is right adjoint to rr. This implies the existence of the adjoint quadruple as discussed here. Since rs=1 Cr s = 1_C, we have that ss is fully faithful, and hence so are s *s_* and s !r *s_! \cong r^*. Finally, the fibers of r opr^{op} are filtered since covering sieves are closed under intersections, so r !r_! preserves finite limits since finite limits commute with filtered colimits.

Thus, we can identify Psh(C)Psh(C) with either the discrete objects or codiscrete objects in Psh(J)Psh(J), via the fully faithful functors r *r^* or s *s_*. If we regard APsh(C)A\in Psh(C) as the discrete object r *Ar^*A, then the plus-construction is similarly identified with r *r !s *s *r *Ar^* r_! s_* s^* r^* A. Thus r *(A +)r^*(A^+) can be written as ʃr *Aʃ \sharp r^* A, where ʃ=r *r !ʃ = r^* r_! is the reflector into the discrete objects and =s *s *\sharp = s_* s^* is the reflector into the codiscrete objects.

The rest of the proof can actually be carried out “synthetically” in the internal homotopy type theory of the cohesive topos Psh(J)Psh(J). This argument is formalized in the HoTT/Coq library. But here we formulate the argument externally and categorically.


The plus-construction is a well-pointed endofunctor. That is, we have a natural transformation η:AA +\eta : A \to A^+ and a homotopy (an equality in the case n=0n=0) θ:η A +(η A) +\theta : \eta_{A^+} \sim (\eta_A)^+. Moreover, the whiskered homotopy θη A\theta \eta_A is homotopic to the naturality square η A +η A(η A) +η A\eta_{A^+} \circ \eta_A \sim (\eta_A)^+ \circ \eta_A.


This follows fairly formally from its identification with ʃʃ \sharp, the composite of two reflectors.


The plus-construction preserves finite limits.


Both functors r !r_! and s *s_* preserve finite limits.


For APsh(C)A\in Psh(C), the following are equivalent:

  1. AA is a sheaf.
  2. The canonical map r *As *Ar^* A \to s_* A is an equivalence.
  3. r *Ar^* A is codiscrete.
  4. η A:AA +\eta_A : A \to A^+ is an equivalence.
  5. η A:AA +\eta_A : A \to A^+ has a retraction.


To see that the first two are equivalent, note that for a covering sieve RR of UU we have (r *A)(R)=A(U)(r^* A)(R) = A(U) while (s *A)(R)(s_* A)(R) is the space of descent data for RR. Now we have s *As *s *r *A=r *As_* A \cong s_* s^* r^* A = \sharp r^* A, so the second and third statements are equivalent.

For the fourth, if r *Ar^*A is codiscrete, then it is equivalent to r *A\sharp r^* A; hence the latter is also discrete, and thus equivalent to ʃr *Aʃ \sharp r^* A. Of course if η A\eta_A is an equivalence, it has a retraction. Finally, if it has a retraction, then the composite r *Aʃr *A=r *A +\sharp r^* A \to ʃ \sharp r^* A = r^* A^+ is a retraction for r *Ar *Ar^* A \to \sharp r^* A, so that r *Ar^*A is codiscrete.


If some (perhaps transfinite) iteration of the plus-construction on APsh(C)A\in Psh(C) stabilizes, it is a sheaf and the sheafification of AA.


This follows formally from the fact that the plus-construction is a well-pointed endofunctor whose fixed points are the sheaves.

Now since the plus-construction is an accessible endofunctor of a locally presentable category, its iteration always converges at some transfinite stage. It follows that sheafification exists. (Roughly this argument appears in Lurie, section 6.5.3.)

We now want to prove that if AA is a presheaf of nn-groupoids for some finite nn, the iteration in fact converges already after n+2n+2 steps. Though long expected, it seems that this was first actually proven by Anel and Leena Subramaniam, 2020; what follows is inspired by their proof. We will actually prove something slightly more general.


A presheaf APsh(C)A\in Psh(C) is nn-separated if the map η A:AA +\eta_A : A\to A^+ is n-truncated.

Thus AA is a sheaf if and only if it is (2)(-2)-separated. Moreover, since the plus-construction preserves finite limits, it preserves truncated objects; thus if AA is nn-truncated (i.e. a presheaf of nn-groupoids) then so is A +A^+ and hence so is η A\eta_A. Thus, any nn-truncated presheaf is nn-separated.

We will prove that if AA is nn-separated, then its plus-construction converges after n+2n+2 steps. The central auxiliary definition is:


A map f:ABf:A\to B in Psh(C)Psh(C) is plus-connected if there is a lift in its η\eta-naturality square. That is, there is a map h:BA +h:B \to A^+ and homotopies f +hη Bf^+ h \sim \eta_B and hfη Ah f \sim \eta_A that paste to the naturality square f +η Aη Bff^+ \eta_A \sim \eta_B f.


For any APsh(C)A\in Psh(C), the map η A:AA +\eta_A : A\to A^+ is plus-connected.


Lemma says precisely that 1 A +1_{A^+} is a lift in the η\eta-naturality square for η A\eta_A.


If f:ABf:A\to B is plus-connected, so is its diagonal f:AA× BA\triangle f : A \to A\times_B A.


Since the plus-construction preserves finite limits, it suffices to observe that if a given commutative square has a lift, so does the induced square between its diagonals.

So far everything has been very formal. The concrete input from the fact that we are talking about a Grothendieck topology comes here:


If f:ABf:A\to B is a monomorphism that is plus-connected, then f +:A +B +f^+ : A^+ \to B^+ is an equivalence.


Since the plus-construction preserves finite limits, it preserves monomorphisms; thus it suffices to show that f +f^+ is surjective. An object xB +(U)x\in B^+(U) is determined by a matching family over a covering sieve RyUR\hookrightarrow y U, consisting of x VB(V)x_V \in B(V) for all VUV\to U in RR. Since ff is plus-connected, we have a map h:BA +h:B\to A^+ assigning to each x Vx_V an object h(x V)A +(V)h(x_V) \in A^+(V), determined by a matching family over a covering sieve S VyVS_V \hookrightarrow y V. Now we can compose the sieves S VS_V and RR to obtain a covering sieve TT on UU, such that the restriction of xx to TT (which is equal to xx) is in the image of f +f^+.


For n1n\ge -1, if f:ABf:A\to B is nn-truncated and plus-connected, then f +:A +B +f^+ : A^+ \to B^+ is (n1)(n-1)-truncated.


By induction. The base case n=1n=-1 is the previous lemma. For the inductive step, ff is (n+1)(n+1)-truncated and plus-connected, then its diagonal f\triangle f is nn-truncated and plus-connected. Thus, by induction (f) +(\triangle f)^+ is (n1)(n-1)-truncated. But since the plus-construction preserves finite limits, (f) +(\triangle f)^+ is equivalent to (f +)\triangle (f^+), so f +f^+ is nn-truncated.


If AA is nn-separated, then its plus-construction converges after n+2n+2 steps.


If AA is nn-separated, then by definition η A:AA +\eta_A : A\to A^+ is nn-truncated, and we have shown it is always plus-connected. Thus, (η A) +(\eta_A)^+ is (n1)(n-1)-truncated. Hence so is η A +\eta_{A^+}, in other words A +A^+ is (n1)(n-1)-separated.

Thus, by induction, if AA is nn-separated, the (n+2)(n+2)-th iteration of the plus-construction is (n(n+2))(n-(n+2))-separated, i.e. (2)(-2)-separated, i.e. a sheaf.


Note that we do not need to know that the category JJ is obtained as the category of covering sieves for a topology on CC. We only need that there is a projection r:JCr:J\to C that is a fibration with cofiltered fibers and a fully faithful right adjoint, plus the result of Lemma . In particular, JJ could be a “mono-saturated lex modulator” in the sense of ALS, generating a non-topological localization of Psh(C)Psh(C).


We can also construct left exact localizations of non-presheaf toposes in this way. If EE is a topos that is itself a left exact localization of some presheaf topos Psh(C)Psh(C), then a lex modulator on EE induces a JJ as above, and by composing the reflectors ʃʃ and \sharp with the reflection into EE we can make the same argument work to construct a left exact localization of EE.


Related entries: sheafification

A standard textbook reference in the context of 1-topos theory is:

Remarks on the plus-construction in (infinity,1)-topos theory is in section 6.5.3 of

The plus-construction for presheaves in values in abelian categories is also called the Heller-Rowe construction:

The plus-construction is studied for higher sheaves, and shown to converge after n+2n+2 steps for nn-presheaves, in

  • Mathieu Anel, Chaitanya Leena Subramaniam. Small object arguments, plus-construction, and left-exact localizations. arxiv:2004.00731, 2020.

The above argument is formalized in the internal logic of Psh(J)Psh(J) here:

Last revised on May 28, 2021 at 14:40:51. See the history of this page for a list of all contributions to it.