category of elements



The category of elements of a functor F:CF : C \to Set is a category el(F)Cel(F) \to C sitting over the domain category CC, such that the fiber over an object cCc \in C is the set F(c)F(c).

This is a special case of the Grothendieck construction, by considering sets as discrete categories.

We may think of Set as the classifying space of “Set-bundles;” see generalized universal bundle. The category of elements of FF is, in this sense, the Set-bundle classified by FF. It comes equipped with a projection to CC which is a discrete fibration, and provides an equivalence between presheaves and discrete fibrations.

Forming a category of elements can be thought of as “unpacking” a concrete category. For example, consider a concrete category CC consisting of two objects X,YX,Y and two non-trivial morphisms f,gf,g

The individual elements of X,YX,Y are “unpacked” and become objects of the new category. The “unpacked” morphisms are inherited in the obvious way from morphisms of CC.

Note that an “unpacked” category of elements can be “repackaged”.

The generalization of the category of elements for functors landing in Cat, rather than just SetSet, is called the Grothendieck construction.


Given a functor P:CSetP:C\to\mathbf{Set}, the category of elements el(P)el(P) or El P(C)El_P(C) (or obvious variations) may be understood in any of these equivalent ways:

  • It is the category whose objects are pairs (c,x)(c,x) where cc is an object in CC and xx is an element in P(c)P(c) and morphisms (c,x)(c,x)(c,x)\to(c',x') are morphisms u:ccu:c\to c' such that P(u)(x)=xP(u)(x) = x'.

  • It is the pullback along PP of the universal Set-bundle U:Set *SetU : Set_* \to Set

    El P(C) Set * π P U C Set, \array{ El_P(C) &\to& Set_* \\ \downarrow^{\mathrlap{\pi_P}} && \downarrow^\mathrlap{U} \\ C &\to& Set }\,,

    where UU is the forgetful functor from pointed sets to sets.

  • It is the comma category (*/P)(*/P), where ** is the inclusion of the one-point set *:*Set*:*\to Set and P:CSetP:C\to Set is itself:

    El P(C) * π P pt C Set \array{ El_P(C) &\to& * \\ \downarrow^{\mathrlap{\pi_P}} &\Downarrow& \downarrow^{\mathrlap{pt}} \\ C &\to& Set }
  • Its opposite is the comma category (Y/P)(Y/P), where YY is the Yoneda embedding C op[C,Set]C^{op}\to [C,Set] and PP is the functor *[C,Set]*\to [C,Set] which picks out PP itself:

    El P(C) op π P op C op Y * P [C,Set] \array{ El_P(C)^{op} &\overset{\pi_P^{op}}{\to}& C^{op} \\ \downarrow &\Downarrow& \downarrow^{\mathrlap{Y}} \\ * & \underset{P}{\to}& [C,Set] }

    El P(C)El_P(C) is also often written with coend notation as CP\int^C P, c:CP(c)\int^{c: C} P(c), or cP(c)\int^c P(c). This suggests the fact the set of objects of the category of elements is the disjoint union (sum) of all of the sets P(c)P(c).

  • It is the (strict) oplax colimit of the composite CPSetdiscCatC \xrightarrow{P} \mathbf{Set} \xrightarrow{disc} \mathbf{Cat}; see Grothendieck construction.

When CC is a concrete category and the functor F:CSetF:C\to Set is simply the forgetful functor, we can define a functor

Explode():=El F().Explode(-) := El_F(-).

This is intended to illustrate the concept that constructing a category of elements is like “unpacking” or “exploding” a category into its elements.


The category of elements defines a functor el:Set CCatel : \mathbf{Set}^{C} \to \mathbf{Cat}. This is perhaps most obvious when viewing it as an oplax colimit. Furthermore we have:


The functor el:Set CCatel : \mathbf{Set}^{C} \to \mathbf{Cat} is cocontinuous.


As remarked above, elel is a strict weighted colimit 2-colimit, hence we have an isomorphism

el(P) cCJ(c)×disc(P(c)) el(P) \cong \int^{c\in C} J(c) \times disc(P(c))

where the weight J:C opCatJ:C^{op} \to \mathbf{Cat} is the functor cc/Cc\mapsto c/C, and disc:SetCatdisc:\mathbf{Set}\hookrightarrow \mathbf{Cat} is the inclusion of the discrete categories. But since discdisc (regarded purely as a 1-functor) has a right adjoint (the functor which sends a -small- category CC into its set of elements C 0C_0), it preserves (1-categorical) colimits. Since colimits also commute with colimits, the composite operation el\el also preserves colimits.


The functor el:Set CCatel\colon \mathbf{Set}^{C} \to \mathbf{Cat} has a right adjoint (which is maybe a more direct way to see that it is cocontinuous).


By a simple coend computation

Cat(el(F),D) Cat( cJc×δ(Pc),D) cCat(Jc×δ(Fc),D) cSets(Fc,[Jc,D] 0) Set C(F,K(D)) \begin{array}{rl} \mathbf{Cat}(el(F),D)&\cong \mathbf{Cat}\Big( \int^c J c\times\delta(P c), D\Big)\\ &\cong \int_c\mathbf{Cat}\big(J c\times \delta(F c),D\big)\\ &\cong \int_c \mathbf Sets\big(F c,[J c,D]_0\big)\\ &\cong \mathbf{Set}^{C}(F, K(D)) \end{array}

where K(D):c[Jc,D] 0K(D)\colon c\mapsto [J c,D]_0.

Now for any CC, the terminal object of Set C\mathbf{Set}^C is the functor Δ1\Delta 1 constant at the point. The category of elements of Δ1\Delta 1 is easily seen to be just CC itself, so the unique transformation PΔ1P\to \Delta 1 induces a projection functor π P:el(P)C\pi_P: \el(P) \to C defined by (c,x)c(c,x)\mapsto c and uuu\mapsto u. The projection functor is a discrete opfibration, and can be viewed also as a CC-indexed family of sets. When we regard el(P)\el(P) as equipped with π P\pi_P, we have an embedding of Set C\mathbf{Set}^C into Cat/C\mathbf{Cat}/C.


Representable Presheaves

Let Y(C):𝒞 opSetY(C):\mathcal{C}^{op}\to Set be a representable presheaf with Y(C)(D)=Hom 𝒞(D,C)Y(C)(D)=Hom_{\mathcal{C}}(D,C). Consider the contravariant category of elements 𝒞Y(C)\int_\mathcal{C} Y(C) . This has objects (D 1,p 1)(D_1,p_1) with p 1Y(C)(D 1)p_1\in Y(C)(D_1), hence p 1p_1 is just an arrow D 1CD_1\to C in 𝒞\mathcal{C}. A map from (D 1,p 1)(D_1, p_1) to (D 2,p 2)(D_2, p_2) is just a map u:D 1D 2u:D_1\to D_2 such that p 2u=p 1p_2\circ u =p_1 but this is just a morphism from p 1p_1 to p 2p_2 in 𝒞/C\mathcal{C}/C. Accordingly we see that 𝒞Y(C)𝒞/C\int_\mathcal{C} Y(C)\simeq \mathcal{C}/C .

Action Groupoid

In the case that C=BGC = \mathbf{B}G is the delooping groupoid of a group GG, a functor ϱ:BGSet\varrho : \mathbf{B}G \to Set is a permutation representation XX of GG and its category of elements is the corresponding action groupoid X//GX/\!/G.


This is easily seen in terms of the characterization el(ϱ)(*/ϱ)el(\varrho)\cong (*/\varrho), the category having as objects triples (*,*;*ϱ(*)=X)(*,*; *\to \varrho(*)=X), namely elements of the set X=ϱ(*)X=\varrho(*), and as arrows xyx\to y those gBGg\in \mathbf{B}G such that

* x X 1 g * y X \array{ {*} & \overset{x}{\to} & X \\ {}^1\downarrow && \downarrow^g\\ {*} & \underset{y}{\to} & X }

commutes, namely g.x=ϱ(g)(x)=yg . x=\varrho(g)(x)=y. We can also present the right adjoint to el()el(-): one must consider the functor J:BG opCatJ\colon \mathbf{B}G^{op}\to \mathbf{Cat}, which represents GG in Cat\mathbf{Cat}, and sends the unique object *BG*\in \mathbf{B}G to */BGG//G*/\mathbf{B}G\cong G/\!/G, the left action groupoid of GG. The functor JJ sends hGh\in G to an automorphism of G//GG/\!/G, obtained multiplying on the right xgxx\to g x to xhxghx h\to x g h.

Now for any category DD, K(D)(*)K( D)(*) is exactly the set of functors [G//G,D][G/\!/G, D], which inherits from G//GG/\!/G an obvious action: given F[G//G,D]F\in [G/\!/G, D] we define F h=J(h) *F=FJ(h):gF(gh)F^h=J(h)^*F=F \circ J(h) \colon g \mapsto F(g h).

Category of simplices

For a simplicial set regarded as a presheaf on the simplex category, the corresponding category of elements is called its category of simplices. See there for more.


A very nice introduction emphasizing the connections to monoid theory is ch. 11 of

Revised on August 9, 2016 12:02:33 by Thomas Holder (