nLab presheaf



Category Theory

Topos Theory

topos theory



Internal Logic

Topos morphisms

Extra stuff, structure, properties

Cohomology and homotopy

In higher category theory




Given a small category CC of “primitive objects”, we can think of a functor F:C opSetF:\: C^{op} \to Set as being a more complex object built out of primitive objects:

  • Given a primitive object XX in CC, we interpret F(X)F(X) as a set representing the ways XX occurs inside FF

  • Given a morphism f:XYf:\: X \to Y in CC, we interpret F(f):F(Y)F(X)F(f):\: F(Y) \to F(X) as the function mapping each occurrence yy of YY in FF to the corresponding suboccurrence xx (included in yy through ff) of XX in FF

Such functors are called presheaves.


A presheaf on a small category CC is a functor

F:C opSet F:\: C^{op} \to Set

from the opposite category C opC^{op} of CC to the category Set of sets. Equivalently this may be thought of as a contravariant functor F:CSetF:\: C \to Set.

More generally, given any category SS, an SS-valued presheaf on CC is a functor

F:C opS. F:\: C^{op} \to S.

While, hence, presheaves are just functors (on small categories), one says “presheaf” to indicate a specific perspective or interest, namely interest in the sheafification of the functor/presheaf, or at least interest in the functor category as a topos (the presheaf topos). Hence “presheaf” is a concept with an attitude.

Historically, the initial applications of presheaves and sheaves involved cases like S=S = CRing (the category of commutative rings), S=S = Ab (abelian groups), S=S = RMod (modules), etc. Later, especially with the development of topos theory, the primary importance of the category of set-valued (pre)sheaves as a topos was recognized; these other cases could be considered algebraic objects which live in the topos. This article and the one on sheaf topos recognize these later developments by making the set-valued case the default (in other words, presheaf or sheaf without further qualification is understood to refer to the set-valued case).

The category of presheaves on CC, usually denoted Set C opSet^{C^{op}} or [C op,Set][C^{op},Set], but often abbreviated as C^\widehat{C}, has:

As such, it is an example of a functor category.


  • Speaking of functors as presheaves indicates operations that one wants to do apply to these functors, or certain properties that one wants to check.

    • when S=SetS = Set, and especially one is interested in the Yoneda embedding of a category CC into its presheaf category [C op,Set][C^{op}, Set] for purposes of studying, for instance, limits, colimits, ind-objects, and pro-objects of CC;

    • or when there is the structure of a site on CC, such that it makes sense to ask if a given presheaf is actually a sheaf.

  • One generally useful way to think of presheaves is in the sense of space and quantity.

  • In the case where S=SetS = Set and CC is small, an important general principle is that the presheaf category [C op,Set][C^{op},Set] is the free cocompletion of CC; see Yoneda extension. Intuitively, it is formed by taking CC and ‘freely throwing in small colimits’. The category CC is contained in [C op,Set][C^{op},Set] via the Yoneda embedding

    Y:C[C op,Set] Y:\: C \to [C^{op},Set]

    The Yoneda embedding sends each object cCc \in C to the presheaf

    F()=hom(,c) F(-) = hom(-, c)

    Presheaves of this form, or isomorphic to those of this form, are called representable; among their properties, representable presheaves always turn colimits into limits, in the sense that a representable functor from C opC^{op} to SetSet turns colimits in CC (i.e., limits in C opC^{op}) into limits in SetSet (i.e., colimits in Set opSet^{op}). In general, such continuity is a necessary but not sufficient criterion for representability; however, nicely enough, it is sufficient when CC itself is a presheaf category. To see this, suppose KK is such a presheaf on C=[D op,Set]C = [D^{op}, Set], and let G=KYG = K Y, a presheaf on DD. By the Yoneda lemma, we have a natural isomorphism between [D op,Set](Y(),G)[D^{op}, Set](Y(-), G) and KY()K Y(-). But by the free cocompletion property of the Yoneda embedding, a colimit-preserving functor on presheaves is entirely determined by its precomposition with YY; accordingly, our isomorphism must extend to an identification of [C op,Set](,G)[C^{op}, Set](-, G) with K()K(-), thus establishing the representability of KK.


Limits and colimits

Any category of presheaves is complete and cocomplete, with both limits and colimits being computed pointwise. That is, to compute the limit or colimit of a diagram F:DSet C opF:\: D \to Set^{C^op}, we think of it as a functor F:D×C opSetF:\: D \times C^{op} \to Set and take the limit or colimit in the DD variable.

Presheaves are colimits of representables


Every presheaf is a colimit of representable presheaves.

An elegant way to express this colimit for a presheaf F:C opSetF:\: C^{op} \to Set is in terms of the coend identity

F()= cCF(c)×hom C(,c), F(-) = \int^{c \in C} F(c) \times hom_C(-,c) \,,

which follows by Yoneda reduction. See also at co-Yoneda lemma.

More concretely: let Y:C[C op,Set]Y:\: C \to [C^{op}, Set] denote the Yoneda embedding and let C FY/FC_F \coloneqq Y/F be the corresponding comma category, the category of elements of FF:

C F{Y(V) Y(g) Y(V) f f F} C_F \coloneqq \left\lbrace \array{ Y(V) &&\stackrel{Y(g)}{\to}&& Y(V') \\ & {}_f\searrow && \swarrow_{f'} \\ && F } \right\rbrace

and let p:C FCp:\: C_F \to C the canonical forgetful functor. Then the colimit over representables expression FF is

Fcolim (Y(V)F)C F(Yp). F \simeq colim_{(Y(V) \to F) \in C_F} (Y\circ p) \,.

This is often written with some convenient abuse of notation as

Fcolim VFV. F \simeq colim_{V \to F} V \,.

Notice that these formulas can also be understood as those for the left Kan extension (see there) of FF along the identity functor.


Notice that for every B[C op,Set]B \in [C^{op}, Set] and using the property of the hom-functor we have

Hom [C op,Set](colim (Y(V)F)C F(Yp),B) lim (Y(V)F)C FHom [C op,Set](Y(V),B) lim (Y(V)F)C FB(V) \begin{aligned} Hom_{[C^{op}, Set]}(colim_{(Y(V) \to F) \in C_F} (Y\circ p),B) &\simeq lim_{(Y(V) \to F) \in C_F} Hom_{[C^{op}, Set]}(Y(V),B) \\ & \simeq lim_{(Y(V) \to F) \in C_F} B(V) \end{aligned}

by the Yoneda lemma.

By the definition of limit we have that

=Hom [C F op,Set](pt,B),\cdots=Hom_{[C_F^{op}, Set]}(pt,B),

so for each natural transformation αHom [C F op,Set](pt,B)\alpha \in Hom_{[C_F^{op}, Set]}(pt,B) and each object h:Y(V)FC Fh:\: Y(V)\to F\in C_F, α h\alpha_h is a map {*}B(V)\{*\}\to B(V), that is, it is an element of B(V)B(V). However, by Yoneda, we know that each object h:Y(V)FC Fh:\: Y(V)\to F\in C_F specifies a unique element hF(V)h\in F(V). Then rephrasing this, α\alpha specifies a function F(V)B(V)F(V)\to B(V). The naturality of this assignment is guaranteed by the naturality of the map α\alpha. Then α\alpha induces a natural transformation k α:FBk^\alpha:\: F\to B. It’s easy to check that kk defines an isomorphism:

Hom [C F op,Set](pt,B)Hom [C op,Set](F,B). Hom_{[C_F^{op}, Set]}(pt,B) \simeq Hom_{[C^{op}, Set]}(F,B) \,.

Since this holds for all BB, the claim follows, again using the Yoneda lemma.

Special cases


Examples for presheaves are abundant. Here is a non-representative selection of some examples.

  • For CC a locally small category, every object cCc \in C gives rise to the representable presheaf Hom C(,c):C opSetHom_C(-, c):\: C^{op} \to Set.

  • More generally, for i:CDi:\: C \hookrightarrow D a subcategory of a locally small category DD, every object dDd \in D gives rise to the presheaf

    Hom D(i(),d):C opSet. Hom_D(i(-), d):\: C^{op} \to Set \,.

    Let’s spell this out in more detail: given a morphism ϕ:VU\phi:\: V \to U in CC, we can take any morphism f:i(U)Xf:\: i(U) \to X in Hom D(U,X)Hom_{D}(U,X) and turn it into a morphism VϕUfXV \stackrel{\phi}{\to} U \stackrel{f}{\to} X in Hom D(i(V),X)Hom_{D}(i(V),X). This determines a map of set

    f *:Hom D(i(U),X)Hom D(i(V),X). f^*:\: Hom_{D}(i(U),X) \to Hom_{D}(i(V),X) \,.

    So we have a functorial assignment of the form

    W Hom Diff(i(W),X) g g * V Hom Diff(i(V),X) f f * U Hom Diff(i(U),X). \array{ W && \mapsto && Hom_{Diff}(i(W),X) \\ \downarrow^g &&&& \uparrow^{g^*} \\ V && \mapsto && Hom_{Diff}(i(V),X) \\ \downarrow^f &&&& \uparrow^{f^*} \\ U && \mapsto && Hom_{Diff}(i(U),X) } \,.

    Of course ii here could be any functor whatsoever. Asking if such a presheaf is representable is asking for a right adjoint functor of ii.

  • A simplicial set is a presheaf on the simplex category

    A globular set is a presheaf on the globe category.

    A cubical set is a presheaf on the cube category.

  • A diffeological space is a concrete presheaf on CartSp.

  • An important class of presheaves is those on a category of open subsets Op(X)Op(X) of a topological space or smooth manifold XX.

  • Traditional standard examples include: the presheaf of smooth functions on XX, that assigns to each UXU \subset X the set C (U,)C^\infty(U,\mathbb{R}) of smooth functions and to each inclusion VUV \subset U the corresponding restriction operation of functions. This is further a sheaf.

  • Traditional standard example which is a presheaf but not a sheaf: the presheaf of exact forms on XX, that assigns to UXU \subset X the set Ω exact (U)\Omega^\bullet_{exact}(U) of exact forms on UU and to each inclusion VUV \subset U the corresponding restriction operation of functions. Here, and like above, the site is made up by open sets in XX with inclusions as morphisms.

… etc. pp.

Last revised on October 9, 2021 at 06:43:46. See the history of this page for a list of all contributions to it.