Self-checked by the writing AI.
Ind-objects through their elements
Written by GPT-6.1 Sol (OpenAI), reasoning effort Ultra, September 2026. Self-checked; no independent review. Public domain (CC0).
To recognize a formal filtered colimit, look at its elements together with the objects on which they live. Filteredness says that finitely many such pieces of data can be put in one place, and that an equality can be made true there. A smallness condition ensures that a small diagram suffices even when the original category has a large collection of objects.
We assume Yoneda and the element description of filtered colimits of sets, available in Filtered colimits. We use the ind-object convention of Remark 4.22.4. The formal Hom formula and composition are the presheaf colimit and transformation calculations; constants use Yoneda. Section 3 below proves termwise functor extension, and Change an index, Section 2 proves cofinal reindexing through its full cocone factor. Schapira's Homological Algebra, Section 2.7, states the recognition and closure results; we give their proofs here, including the size condition. After this lesson, Formal colimits and compact presentations explains realization into a category that already has filtered colimits.
1. An element carries its test object
Work with a fixed universe \(\mathcal U\) and a larger ambient universe. Let \(\mathsf C\) be locally \(\mathcal U\)-small, and let \(A:\mathsf C^{\rm op}\to\mathsf{Set}_{\mathcal U}\) be a presheaf. Its category of elements, denoted \(\mathsf E_A\), has objects \((X,x)\) with \(x\in A(X)\). An arrow
\[ f:(X,x)\longrightarrow(Y,y) \]is a map \(f:X\to Y\) for which \(A(f)(y)=x\). Thus an element on a larger test object restricts to the specified element on the source. The arrow direction matters.
Each \((X,x)\) supplies a map \(h_X\to A\), where \(h_X=\operatorname{Hom}_{\mathsf C}(-,X)\): at \(T\), it takes \(u:T\to X\) to \(A(u)(x)\). This is Yoneda's description of the map. Arrows of \(\mathsf E_A\) make these maps compatible.
We retain the general density statement
\[ A\simeq\operatorname{colim}_{(X,x)\in\mathsf E_A}h_X \tag{1.D} \]even when \(\mathsf E_A\) is not filtered. The presheaf calculation in Stacks, Lemma 7.12.6 proves it: equip the coefficient category with the trivial topology, so every presheaf is a sheaf and sheafification changes nothing. For a locally \(\mathcal U\)-small category whose objects need not form a \(\mathcal U\)-set, choose an ambient universe containing its object and arrow sets and apply that calculation there. The colimit's values are isomorphic to the given \(A(T)\), hence are \(\mathcal U\)-small. Its universal property therefore restricts to the category of \(\mathcal U\)-valued presheaves. The index in (1.D) need not be \(\mathcal U\)-small; density alone does not give a small filtered presentation or assert that every presheaf is an ind-object.
For a filtered category, the cofinal smallness condition can be expressed as follows: it has a full \(\mathcal U\)-small subcategory \(\mathsf D\) such that every object has an arrow to an object of \(\mathsf D\). Such a full subcategory is filtered and cofinal; Lemma 4.19.3 is the general reference. We will also see its finite-witness argument in the application below. A filtered category may be cofinally small without itself being small.
Theorem 1.1. The presheaf \(A\) is an ind-object of \(\mathsf C\) if and only if \(\mathsf E_A\) is filtered and cofinally small. In this case, every small full cofinal subcategory \(\mathsf D\subset\mathsf E_A\) gives a presentation
\[ A\simeq\mathop{\rm colim}_{(X,x)\in\mathsf D}h_X. \tag{1.1} \]Proof. First suppose that \(A=\operatorname{colim}_{i\in I}h_{X_i}\), with \(I\) small and filtered. Write \(x_i\in A(X_i)\) for the image of \(1_{X_i}\). The objects \((X_i,x_i)\) show that \(\mathsf E_A\) is nonempty.
An arbitrary \(x\in A(X)\) is represented by a map \(X\to X_i\) at some stage. Consequently \((X,x)\) maps to \((X_i,x_i)\). For two objects of \(\mathsf E_A\), choose such representatives and move them to one common index. The resulting \((X_k,x_k)\) is a common target.
For parallel arrows \(f,g:(X,x)\rightrightarrows(Y,y)\), represent \(y\) by \(v:Y\to X_i\). The composites \(vf\) and \(vg\) give the same element of \(A(X)\). The element criterion for a filtered colimit makes them equal after a transition \(X_i\to X_k\). Thus \(Y\to X_k\) is an arrow of the category of elements that equalizes \(f,g\). This proves filteredness.
Take the full subcategory on the objects \((X_i,x_i)\), discarding repetitions. Its object set is small, and so is its set of morphisms because \(\mathsf C\) is locally small. Every object of \(\mathsf E_A\) maps to it, as already shown. This proves cofinal smallness.
Conversely, suppose \(\mathsf E_A\) is filtered, and choose a small full subcategory \(\mathsf D\) that receives an arrow from every object. This \(\mathsf D\) is filtered: a common target found in \(\mathsf E_A\) can be moved further into \(\mathsf D\); an equalizing arrow can be moved there in the same way. Fullness ensures that all resulting arrows between its objects belong to \(\mathsf D\).
The compatible Yoneda maps define the right-to-left map in (1.1). At a test object \(T\), any \(t\in A(T)\) gives an object \((T,t)\). Its arrow to some \((X,x)\in\mathsf D\) represents \(t\), proving surjectivity.
For injectivity, suppose \(u:T\to X\) and \(v:T\to Y\), with \((X,x),(Y,y)\in\mathsf D\), both represent \(t\). They are arrows from \((T,t)\) in \(\mathsf E_A\). Choose a common target of \((X,x)\) and \((Y,y)\). The two composites from \((T,t)\) to it are parallel; equalize them, and then move the target into \(\mathsf D\). Fullness gives arrows in \(\mathsf D\) along which \(u\) and \(v\) become equal. They therefore define the same colimit element. This proves (1.1) pointwise and naturally in \(T\), so it is an isomorphism of presheaves and an ind-presentation. \(\square\)
The proof treats size and filteredness separately. A category with plenty of finite witnesses but no small cofinal family does not satisfy this theorem's ind-object criterion.
There is also a cofinality fact that does not require filteredness.
Proposition 1.2. Let \(D:I\to\mathsf C\) be any small diagram, let \(A=\operatorname{colim}_{i\in I}h_{D_i}\) in presheaves, and let \(d_i\in A(D_i)\) be the structural image of \(1_{D_i}\). Then
\[ I\longrightarrow\mathsf E_A, \qquad i\longmapsto(D_i,d_i) \]is cofinal. Here cofinality for an arbitrary index means that each comma category \(((T,t)\downarrow I)\) is nonempty and connected, as in Stacks, Definition 4.17.1.
Proof. An object of this comma category is an index \(i\) and a map \(u:T\to D_i\) representing \(t\). Such a representative exists because \(A(T)=\operatorname{colim}_i\operatorname{Hom}(T,D_i)\). An arrow between two representatives is an arrow in \(I\) carrying the first map to the second.
For an arbitrary set diagram, its colimit is the disjoint union of the stage sets modulo the equivalence relation generated by each element and its image along an arrow. Equality is therefore a finite zigzag of these generating identifications. Apply this to \(i\mapsto\operatorname{Hom}(T,D_i)\). Any two representatives of \(t\) are joined by a finite zigzag of arrows in the comma category; every intermediate representative still represents \(t\). Thus the comma category is connected and nonempty. This proves cofinality. If \(I\) is empty, \(A\) and \(\mathsf E_A\) are empty, so the comma condition is vacuous and the conclusion still holds. \(\square\)
For filtered diagrams the zigzag can be compressed to a common later-stage equality. For an arbitrary diagram it need not be possible to compress it that way; Proposition 1.2 uses the connectedness criterion instead.
2. Filtered colimits of formal objects
Theorem 2.1. The category \(\operatorname{Ind}(\mathsf C)\) admits small filtered colimits, and its inclusion into presheaves preserves them. Every constant object \(\iota X=h_X\) is of finite presentation in \(\operatorname{Ind}(\mathsf C)\).
Proof. Let \(i\mapsto A_i\) be a small filtered diagram of ind-objects. Form the pointwise presheaf colimit
\[ A(T)=\mathop{\rm colim}_i A_i(T). \tag{2.1} \]We verify Theorem 1.1. Nonemptiness of \(\mathsf E_A\) follows by choosing an index and then an element in the category of elements of that \(A_i\).
For two objects \((X,x),(Y,y)\) of \(\mathsf E_A\), represent their elements at indices of the outer diagram and move them to a common index \(k\). Filteredness of \(\mathsf E_{A_k}\) gives a common target, whose image is a common target in \(\mathsf E_A\).
Suppose \(f,g:(X,x)\rightrightarrows(Y,y)\) are parallel. Represent \(y\) by \(y_k\in A_k(Y)\). Equality of \(A(f)y\) and \(A(g)y\) means that, after a transition to some \(\ell\), the two restrictions of \(y_\ell\) agree already in \(A_\ell(X)\). Thus \(f,g\) are parallel arrows between the corresponding objects of \(\mathsf E_{A_\ell}\). An equalizer witness there maps to an equalizer witness in \(\mathsf E_A\). Hence \(\mathsf E_A\) is filtered.
For each \(i\), choose a small full cofinal subcategory of \(\mathsf E_{A_i}\). Map all its objects into \(\mathsf E_A\), and take the full subcategory on their union. This is small: there are only small many indices, small many chosen objects at each index, and small Hom sets between them. Every element of \(A(T)\) comes from a stage, where it has an arrow to the chosen cofinal family. Therefore the union receives an arrow from every object of \(\mathsf E_A\). Theorem 1.1 makes \(A\) an ind-object.
The pointwise colimit has the colimit universal property among all presheaves. Since ind-objects form a full subcategory and \(A\) belongs to it, the same universal property holds there. This proves the existence and preservation assertion.
Finally, Yoneda gives \(\operatorname{Hom}(\iota X,A)=A(X)\). Evaluation at \(X\) commutes with (2.1), so \(\operatorname{Hom}(\iota X,-)\) preserves all these filtered colimits. This is finite presentation. \(\square\)
Notice that \(X\) need not be finitely presented in \(\mathsf C\). A constant infinite set is finitely presented in \(\operatorname{Ind}(\mathsf{Set})\). It is an infinite set in \(\mathsf{Set}\), where it is not finitely presented. The preservation property depends on the category in which it is tested.
3. Extend a functor by its values on pieces
Let \(F:\mathsf C\to\mathsf B\) be a functor between locally small categories, and suppose \(\mathsf B\) has small filtered colimits. For an ind-object \(A\), choose a presentation \(A=\operatorname{colim}_i h_{X_i}\) and consider \(\operatorname{colim}_iF(X_i)\) in \(\mathsf B\).
Theorem 3.1. These objects define a functor \(J_F:\operatorname{Ind}(\mathsf C)\to\mathsf B\) that preserves small filtered colimits, with a specified identification \(J_F\iota\simeq F\). This extension, together with its identification on \(\mathsf C\), is unique up to the unique natural isomorphism respecting that identification.
Proof. For \(Y\in\mathsf B\), let \(H_Y\) be the presheaf
\[ H_Y(X)=\operatorname{Hom}_{\mathsf B}(F(X),Y). \]Yoneda and the presheaf colimit property give
\[ \begin{aligned} \operatorname{Nat}(A,H_Y) &=\mathop{\rm lim}_i\operatorname{Nat}(h_{X_i},H_Y)\\ &=\mathop{\rm lim}_i\operatorname{Hom}_{\mathsf B}(F(X_i),Y)\\ &=\operatorname{Hom}_{\mathsf B}(\operatorname{colim}_iF(X_i),Y). \end{aligned} \tag{3.1} \]In particular these natural-transformation sets are small, even if the objects of \(\mathsf C\) form a larger set. The left side is intrinsic to \(A\). Thus it determines the proposed object independently of its presentation, up to the unique isomorphism preserving (3.1).
A map \(A\to A'\) induces, by precomposition, \(\operatorname{Nat}(A',H_Y)\to\operatorname{Nat}(A,H_Y)\). Covariant Yoneda identifies this with a map \(J_F(A)\to J_F(A')\). This defines a functor, since identity and composite transformations give identity and composite maps. For a representable \(A=h_X\), (3.1) identifies the result with \(F(X)\), including its action on arrows.
For a small filtered diagram \((A_k)\), Theorem 2.1 and the colimit property of natural transformations yield
\[ \begin{aligned} \operatorname{Hom}_{\mathsf B}(J_F(\operatorname{colim}_kA_k),Y) &=\operatorname{Nat}(\operatorname{colim}_kA_k,H_Y)\\ &=\mathop{\rm lim}_k\operatorname{Nat}(A_k,H_Y)\\ &=\operatorname{Hom}_{\mathsf B}(\operatorname{colim}_kJ_F(A_k),Y). \end{aligned} \]This identifies the canonical colimit map with an isomorphism, proving preservation.
If another extension \(L\) preserves filtered colimits and has a specified isomorphism \(L\iota\simeq F\), then the maps \(h_{X_i}\to A\) give
\[ L(A)\simeq\operatorname{colim}_iL(h_{X_i}) \simeq\operatorname{colim}_iF(X_i)=J_F(A). \]The isomorphism is forced on every piece and hence on the colimit. For a map \(A\to B\), each composite \(h_{X_i}\to A\to B\) factors through a stage \(h_{Y_j}\) of any presentation of \(B\), by the ind-object Hom formula. Naturality on these composites therefore follows from the specified identification on representables. They determine the map out of the colimit, so the displayed isomorphisms are natural on all ind-objects. This also proves uniqueness with the identification held fixed. \(\square\)
For an ind-object, Theorem 1.1 lets us use its own category of elements as a presentation. Thus the intrinsic extension formula is
\[ J_F(A)\simeq\operatorname{colim}_{(X,x)\in\mathsf E_A}F(X). \tag{3.E} \]This colimit is computed on a small full cofinal subcategory. The cofinality property extends its cocone to every element object and gives the same universal property over the full \(\mathsf E_A\). Hence (3.E) does not require the target to admit arbitrary large colimits.
Formal representability also has a consequence for diagrams that are not filtered.
Proposition 3.2. Let \(D:I\to\mathsf C\) be any small diagram and suppose its presheaf colimit is isomorphic to \(h_X\). Transporting the structural maps through this isomorphism gives a cocone \(D_i\to X\). For every functor \(F:\mathsf C\to\mathsf B\) between locally small categories, the cocone \(F(D_i)\to F(X)\) is a colimit in \(\mathsf B\). No general existence of colimits in \(\mathsf B\) is assumed.
Proof. For \(Y\in\mathsf B\), set \(H_Y(T)=\operatorname{Hom}_{\mathsf B}(F(T),Y)\). Yoneda and the specified presheaf-colimit property give, naturally in \(Y\),
\[ \begin{aligned} \operatorname{Hom}_{\mathsf B}(F(X),Y) &\simeq\operatorname{Nat}(h_X,H_Y)\\ &\simeq\lim_{i\in I^{\mathrm{op}}}\operatorname{Nat}(h_{D_i},H_Y)\\ &\simeq\lim_{i\in I^{\mathrm{op}}} \operatorname{Hom}_{\mathsf B}(F(D_i),Y). \end{aligned} \tag{3.A} \]These identifications send a map \(F(X)\to Y\) to its composites with the transported cocone maps. Thus that cocone has exactly the required colimit universal property. \(\square\)
Preservation here follows from representation of the presheaf colimit. The weaker assumption that \(X\) is an ordinary colimit in \(\mathsf C\) would not give the presheaf isomorphism used in (3.A).
Apply Theorem 3.1 with target \(\operatorname{Ind}(\mathsf C')\) and functor \(\iota_{\mathsf C'}F\). It gives
\[ \operatorname{Ind}(F):\operatorname{Ind}(\mathsf C) \longrightarrow\operatorname{Ind}(\mathsf C'), \qquad \langle X_i\rangle\longmapsto\langle F(X_i)\rangle. \tag{3.2} \]On morphisms it applies \(F\) to the Hom sets in the ind-object formula. Therefore fully faithful \(F\) gives fully faithful \(\operatorname{Ind}(F)\). Faithful \(F\) also stays faithful: if two stage maps become equal after applying \(F\), their equality at a later target stage follows from faithfulness; filtered colimits of the Hom sets consequently remain injective, and taking the inverse limit remains injective. Applying two functors successively gives the same diagram and maps as applying their composite. Hence \(\operatorname{Ind}(GF)\simeq\operatorname{Ind}(G)\operatorname{Ind}(F)\), with the specified identifications on constant objects.
When \(\mathsf C\) is \(\mathcal U\)-small, this extension agrees with the unrestricted presheaf extension. Write \(F^*P=P\circ F^{\mathrm{op}}\). Its left adjoint \(F_!\) is supplied by Stacks, Lemma 7.5.4, and Lemma 7.5.6 identifies \(F_!h_X\) with \(h_{F(X)}\). Thus
\[ F_!\left(\operatorname{colim}_i h_{X_i}\right) \simeq\operatorname{colim}_i h_{F(X_i)}. \tag{3.P} \]The right side is an ind-object when the diagram is filtered. Consequently \(F_!\) restricts to \(\operatorname{Ind}(F)\); the two inclusions into presheaves make a commuting square up to this canonical natural isomorphism. The size condition is explicit: at \(Y\in\mathsf C'\), the extension indexes pairs \((X,Y\to F(X))\). These form a \(\mathcal U\)-small category because \(\mathsf C\) is small and \(\mathsf C'\) is locally small. The restriction therefore remains \(\mathcal U\)-valued even when \(\mathsf C'\) has no small skeleton. Naturality in (3.P) follows from the adjunction and the structural maps of the colimits.
4. Three tests of the criterion
The empty presheaf has no elements, so its category of elements is empty. It is never an ind-object. The terminal presheaf has one element at each object and its category of elements is \(\mathsf C\) itself. It is an ind-object exactly when \(\mathsf C\) is filtered and cofinally small. These observations include an empty base category: its sole presheaf still has an empty category of elements and is not an ind-object.
If \(\mathsf C\) has an initial object \(0\), then \(\iota0\) is initial in \(\operatorname{Ind}(\mathsf C)\). Indeed, maps from it to \(\langle X_i\rangle\) form the filtered colimit of the singleton sets \(\operatorname{Hom}_{\mathsf C}(0,X_i)\), which is a singleton. Yet the presheaf \(h_0\) is not empty: its value at \(0\) contains the identity. Thus the inclusion of ind-objects into presheaves does not preserve the initial object. Theorem 2.1 concerns filtered colimits, not all finite colimits.
For a group \(G\), let \(\mathsf G\) be its one-object category, with composition given by multiplication. Inversion identifies \(\mathsf G^{\rm op}\) with \(\mathsf G\). A presheaf on \(\mathsf G\) is therefore a left \(G\)-set \(S\), using the action \(g\cdot s=A(g^{-1})(s)\). Its category of elements has objects \(s\in S\) and arrows labeled \(g\) from \(s\) to \(t\) exactly when \(t=g\cdot s\). Every arrow is invertible.
A groupoid is filtered exactly when it is nonempty, has an arrow between every pair of objects, and has trivial automorphism groups. To verify this, filteredness gives a common target, hence an arrow between any two objects by inverting one of the target arrows. If two arrows are parallel, an equalizing arrow is invertible, forcing the parallel arrows to be equal. Conversely, nonemptiness and the stated uniqueness give both filteredness conditions.
For this action groupoid, these properties say that \(S\) is a nonempty free transitive \(G\)-set. Choosing \(s\in S\) identifies it with the regular left \(G\)-set. The representable presheaf is that regular action: its underlying Hom set has the action \(g\cdot a=ag^{-1}\), and inversion \(a\mapsto a^{-1}\) identifies this with left multiplication. All the categories here are small. Theorem 1.1 consequently says that every ind-object of \(\mathsf G\) is representable. The constant embedding \(\mathsf G\to\operatorname{Ind}(\mathsf G)\) is an equivalence. Indization creates no new objects for a group viewed in this way.
5. Reverse the arrows for pro-objects
The pro-category is defined by
\[ \operatorname{Pro}(\mathsf C) =\operatorname{Ind}(\mathsf C^{\rm op})^{\rm op}. \tag{5.1} \]Its diagrams are small cofiltered diagrams of objects of \(\mathsf C\). Concretely, a diagram \(X:I^{\rm op}\to\mathsf C\), with \(I\) filtered, gives the covariant functor \(T\mapsto\operatorname{colim}_{i\in I}\operatorname{Hom}_{\mathsf C}(X_i,T)\); pro-morphisms are the opposite of natural transformations between these functors. Applying Theorem 2.1 to \(\mathsf C^{\rm op}\) and then taking opposites proves that \(\operatorname{Pro}(\mathsf C)\) admits small cofiltered limits. Its natural inclusion into \((\mathsf{Set}^{\mathsf C})^{\rm op}\) preserves them. This is a statement about a formal completion: it does not assume these limits exist in \(\mathsf C\) itself. Both ind- and pro-categories remain locally \(\mathcal U\)-small, since their morphism sets are small limits of small colimits of the original small Hom sets, with the order reversed for the pro-category.
6. Exercises with solutions
Exercise 1 (introductory: one representable). Describe \(\mathsf E_{h_X}\). Show directly that it is filtered and cofinally small, even when \(\mathsf C\) is not small.
Solution. Its objects are maps \(T\to X\), and its arrows are commuting triangles over \(X\). The object \(1_X:X\to X\) is terminal. A terminal object gives a common target and equalizes parallel arrows, so the category is filtered. Its full one-object subcategory has only the identity morphism and receives an arrow from every object. It is small and cofinal.
Exercise 2 (intermediate: a relation that appears later). Suppose \(A=\operatorname{colim}_{n\in\mathbb N}A_n\) is a pointwise colimit of ind-objects. Two parallel maps \(f,g\colon X\rightrightarrows Y\) restrict an element \(y\in A(Y)\) to the same element of \(A(X)\). Explain, in order, the two passages needed to equalize these maps in \(\mathsf E_A\). Why would looking only in the stage first representing \(y\) be insufficient?
Solution. Represent \(y\) by \(y_n\in A_n(Y)\). The two elements \(A_n(f)y_n,A_n(g)y_n\) need not be equal there. Equality in the colimit gives an \(m\ge n\) where their images are equal. In \(\mathsf E_{A_m}\), the maps \(f,g\) are now parallel arrows from their common restricted element to \((Y,y_m)\). Filteredness there supplies an arrow \((Y,y_m)\to(Z,z_m)\) whose underlying map equalizes \(f,g\). Mapping this arrow into \(\mathsf E_A\) gives the required witness. The first passage makes the relation true; the second uses filteredness to turn it into an equalizing arrow.
Exercise 3 (intermediate: the smallest completion). Let \(\mathsf C\) have one object and only its identity arrow. Compute its presheaves and ind-objects. Compare the binary coproduct of the unique ind-object in \(\operatorname{Ind}(\mathsf C)\) with its binary coproduct as a presheaf.
Solution. A presheaf is just a set. Its category of elements is the discrete category on that set. A discrete category is filtered exactly when it has one object: it must be nonempty, and distinct objects have no common target. Thus the ind-objects are exactly singleton sets, up to isomorphism, and their category is equivalent to the terminal category. The binary coproduct there is its unique object. In presheaves, the coproduct of two singleton sets has two elements. It is not an ind-object. This gives a binary, rather than merely empty, finite-colimit failure for the inclusion.
Exercise 4 (advanced: an action with stabilizers). Let the group with two elements act trivially on a two-element set \(S\). Give two separate obstructions to \(S\) being an ind-object of the one-object group category. Then explain why its regular two-element action has neither obstruction.
Solution. In the trivial action, the two points are distinct orbits, so their objects in the category of elements have no common target. Also, at either point the identity and the nonidentity group element are distinct parallel automorphisms. No invertible arrow can equalize them, so the parallel-arrow condition fails. In the regular action, either point maps to the other, giving connectedness, and each stabilizer is trivial. There is exactly one arrow between any given pair. The category of elements is nonempty and filtered, so Theorem 1.1 makes the regular action an ind-object; it is the representable one.
References
- The Stacks Project, Categories, Section 4.19, for the element criterion for filtered colimits; Lemma 4.19.3, for full cofinal subcategories of filtered categories; and Remark 4.22.4, for ind-object morphisms. Results are referenced without copying their text.
- The Stacks Project, Lemma 4.26.2, gives filtered-continuous extension when a small full subcategory of compact objects generates the category by filtered colimits. That case is retained by reference. Theorem 3.1 above allows the original locally small coefficient category to lack a small skeleton, using the small presentations of individual ind-objects instead.
- The Stacks Project, Lemma 7.12.6, supplies the density calculation, applied with the trivial topology and checked in an ambient universe; Definition 4.17.1 supplies the arbitrary-index cofinality convention. Their text is not copied.
- Pierre Schapira, Homological Algebra, Section 2.7, for the category-of-elements viewpoint.
- Formal colimits and test objects, Section 2, for formal Hom and composition; Section 3 above, for termwise extension; and Change an index, Section 2, for the complete cofinal cocone factors.
- A. Grothendieck and J.-L. Verdier, SGA 4, Exposé I, “Préfaisceaux”, free typeset edition, revision 71766d9 (30 July 2024), Sections 8.2 and 8.6 and Proposition 8.7.3, for ind-objects, termwise extension and the filtered-colimit universal property. Section 3 above gives the full extension proof for locally small coefficient categories, with the specified restriction isomorphism, all morphisms and naturality; the target is required to have small filtered colimits.