Colimits as connected components

Written and self-checked by GPT-6.1 Sol (OpenAI), Ultra reasoning effort, October 2026. Original text: CC0.

A diagram of sets contains elements at many locations. Its colimit identifies an element with every image obtained by following an arrow. These identifications can propagate through a chain in either direction. Recording the elements as objects of a category turns the whole construction into a set of connected components. The same description explains constant diagrams, pointwise presheaf colimits, and a comparison that groups two Hom variables in different orders.

Compose from right to left. All category data are sets in ambient set theory, and we assume ambient choice. Fix a Grothendieck universe \(\mathcal U\) containing \(\mathbb N\). “Small” means \(\mathcal U\)-small up to bijections. Write \(\mathsf{Set}_{\mathcal U}\) for small sets with all functions, using universe-member representatives when needed. Functor and transformation collections may live in a larger ambient universe. Enlarging those collections does not make every ambient diagram small in \(\mathcal U\).

Retain the complete Set coproduct and coequalizer factors, and the general diagram construction, in Universal forks, Sections 1–2 and 8. Keep the full transported union, subset and quotient bounds in Universes and small categories, Sections 2–3, the complete finite-zigzag component construction in Zero maps, Section 4, and the full pointwise functor-category theorem in Compatible families, Section 4.

1. Identify every transported element

Let \(D:I\to\mathsf{Set}_{\mathcal U}\), with \(I\) small. Form the tagged set

\[ \begin{gathered} T_D=\coprod_{i\in\operatorname{Ob}I}D(i),\\ (i,x)\mathrel{R_D}(j,D(s)x) \quad(s:i\to j). \end{gathered} \tag{1.1} \]

The notation \(\coprod\), or \(\bigsqcup\) for sets, retains the tag \(i\). Elements with the same underlying name in different values are different elements until the relation identifies them. Let \(\sim_D\) be the equivalence relation generated by \(R_D\), and set

\[ \begin{gathered} Q_D=T_D/{\sim_D},\qquad\\ c_i(x)=[i,x]. \end{gathered} \tag{1.2} \]

Both sets are small by the complete transported tagged-union and quotient bounds. The original labels need not belong to \(\mathcal U\); smallness supplies an encoded representative.

Two tagged elements are equivalent exactly when a finite chain joins them, each step being a generating pair in either direction. Indeed length zero gives reflexivity, reversing a chain gives symmetry, and concatenating chains gives transitivity. This chain relation contains every generator. Conversely every equivalence relation containing the generators contains every such chain. Thus it is exactly the generated equivalence relation. A single arrow or its reverse need not suffice.

Theorem 1.1. The maps \(c_i\) make \(Q_D\) the colimit of \(D\).

Proof. For \(s:i\to j\), relation (1.1) gives \(c_jD(s)=c_i\), so this is a cocone. A cocone \(v_i:D(i)\to S\) determines a function \((i,x)\mapsto v_i(x)\) on the tagged union, by the full Set coproduct property. Its values agree on every generator, since \(v_jD(s)=v_i\). They therefore agree along every finite chain. The function descends to

\[ \begin{gathered} \bar v:Q_D\longrightarrow S,\\ \bar v([i,x])=v_i(x). \end{gathered} \tag{1.3} \]

This is precisely the complete Set quotient factor proved in Universal forks, Section 2, applied to all pairs (1.1). Every class has a representative, so no other function can have these composites with the \(c_i\). The assignments \(v\mapsto\bar v\) and \(h\mapsto(hc_i)_i\) are inverse. Postcomposition by \(S\to S'\) acts on both by the same elementwise rule, proving naturality in the target. The entire cocone-factor property is therefore established. \(\square\)

For a transformation \(\theta:D\to E\), define

\[ Q(\theta)([i,x])=[i,\theta_i(x)]. \tag{1.4} \]

Its image of a generator is a generator for \(E\), because \(\theta_jD(s)=E(s)\theta_i\). Hence it is well-defined. An identity gives the identity class map, and two transformations compose by composing their values. The class maps satisfy \(Q(\theta)c_i^D=c_i^E\theta_i\), the specified general colimit transformation law retained from Universal forks, Section 8.

For a functor \(u:J\to I\), there is likewise a canonical map \(Q_{Du}\to Q_D\), sending \([j,x]\) to \([u(j),x]\). Every source generator maps to the generator labelled \(u(s)\). Identities and compositions of index functors, and compatibility with \(\theta\), follow from these same class formulas. These are the canonical restriction comparisons, not arbitrary bijections between quotient sets.

If \(I\) is empty, \(T_D\) and \(Q_D\) are empty, with their initial-object property. A nonempty index can also give the empty colimit when every value is empty. In a general diagram equivalence may require zigzags. No filteredness or common target for all representatives is assumed here.

2. Components of the element category

For a covariant set functor \(D:I\to\mathsf{Set}\), define \(E_D\) with objects \((i,x)\), \(x\in D(i)\), and arrows

\[ \begin{gathered} (i,x)\xrightarrow{s}(j,y),\\ s:i\to j,\qquad D(s)x=y. \end{gathered} \tag{2.1} \]

These are the complete covariant element-category laws retained from Points and representations, Section 3. Explicitly, \(1_i\) fixes \(x\), and \(D(t)D(s)x=z\) gives \(D(ts)x=z\); original associativity and units supply all remaining equations. Forgetting \(x\) is a functor. If \(I\) and its values are small, its object set is a small tagged union, and its arrow set is a small union of subsets of the original Hom sets. The transported bounds therefore make the entire category small.

Recall that \(\pi_0(E_D)\) is the set of objects modulo finite arrow zigzags. The complete component construction in Zero maps, Section 4, uses all arrows, rather than only isomorphisms. An arrow in (2.1) has exactly the endpoints in (1.1). Consequently the two generated equivalence relations on the same tagged set are identical. There is a specified bijection

\[ \begin{gathered} Q_D\xrightarrow{\ \sim\ }\pi_0(E_D),\\ [i,x]\longmapsto[(i,x)]. \end{gathered} \tag{2.2} \]

Its inverse sends the component of \((i,x)\) to \([i,x]\). Both assignments are independent of the representative because their defining relations are the same, and both composites fix every class.

A transformation \(\theta:D\to E\) gives a functor \(E_D\to E_E\), sending \((i,x)\) to \((i,\theta_i x)\) and an arrow \(s\) to \(s\). Naturality of \(\theta\) verifies its element equation. Original identities and composites are unchanged. The induced component map in (2.2) is exactly (1.4), which proves naturality of the comparison. The analogous functor for a change of indices sends \((j,x)\) to \((u(j),x)\), with the same verification.

This description also works for an arbitrary ambient index and ambient set values: the tagged union, its equivalence relation and its quotient are ambient sets. It gives the colimit among ambient sets. It need not give a small object in the fixed \(\mathcal U\); Section 6 gives the exact criterion.

For discrete \(I\), only identity arrows occur in \(E_D\), so the colimit is the tagged union. For a parallel pair \(f,g\colon X\rightrightarrows Y\), each tagged \(x\) is connected both to \(f(x)\) and to \(g(x)\). Every source element is therefore in a component represented in \(Y\). The resulting relation on \(Y\) is generated by \(f(x)\sim g(x)\). The class map from \(Y\) is exactly the Set coequalizer of the complete retained proof, including \(X=\varnothing\) or \(Y=\varnothing\). In particular, if \(Y\) is empty, the existence of \(f,g\) forces \(X\) empty as well.

3. Constants and a distinguished identity

Let \(S\) be a small set and \(\Delta_S:I\to\mathsf{Set}_{\mathcal U}\) the constant diagram. Every arrow acts as \(1_S\). A generator therefore changes the index and keeps the element of \(S\) fixed. Finite chains give the equivalence

\[ \begin{gathered} (i,s)\sim(j,t)\\ \quad\Longleftrightarrow\quad\\ s=t,\ [i]=[j]\text{ in }\pi_0(I). \end{gathered} \tag{3.1} \]

For the reverse implication, keep \(s\) fixed along any index zigzag. For the forward implication, each generator preserves \(s\) and stays in one index component. Thus

\[ \begin{gathered} \operatorname{colim}_I\Delta_S \xrightarrow{\ \sim\ }S\times\pi_0(I),\\ [i,s]\longmapsto(s,[i]). \end{gathered} \tag{3.2} \]

An inverse sends \((s,a)\) to the class of \((i,s)\) for any \(i\) in component \(a\). Such an \(i\) exists by the definition of a component, and (3.1) makes the result independent of that choice. The two composites fix their displayed elements. The coprojection from the value at \(i\) is \(s\mapsto(s,[i])\).

This is one copy of \(S\) for each component: the copower \(S^{(\pi_0(I))}\). In sets the tag description identifies it with the product \(S\times\pi_0(I)\). It is not the binary disjoint union of \(S\) with its component set.

For \(a:S\to S'\), (3.2) sends its class map to \(a\times1\). For \(u:J\to I\), the restriction comparison becomes \(1_S\times\pi_0(u)\), since \(u\) sends an index zigzag to an index zigzag. These formulas prove naturality in both variables and their identity/composition laws.

The empty index has empty component set and empty colimit, even if \(S\) is nonempty. Empty \(S\) also gives empty on both sides. A category is connected here when it is nonempty and all objects are joined by zigzags. The full component criterion in Zero maps therefore gives

\[ \begin{gathered} I\text{ connected}\\ \Longleftrightarrow\ \operatorname{colim}_I\Delta_1 \text{ is a singleton}. \end{gathered} \tag{3.3} \]

Nonemptiness is essential: the empty colimit is empty, not a singleton.

Now choose \(i_0\in I\) and let \(H(i)=\operatorname{Hom}_I(i_0,i)\). Its arrows act by postcomposition, by the full Hom functor laws in Products and mixed functors, Section 4. Each \(u:i_0\to i\) is the image of \(1_{i_0}\) under \(H(u)\). Hence

\[ [i,u]=[i_0,1_{i_0}] \quad\text{in }\operatorname{colim}_I H. \tag{3.4} \]

Every class has this value, and the displayed identity class exists. The unique map to a singleton is therefore bijective, with inverse selecting this class. Equivalently \(E_H=(i_0\downarrow I)\), on all objects and arrows; \((i_0,1_{i_0})\) is initial because its unique arrow to \((i,u)\) must be \(u\). The complete initial-object component argument then gives the same singleton. Individual \(H(i)\) may be empty; the object \(i_0\) premise rules out empty \(I\).

4. Compute presheaf limits and colimits pointwise

Let \(C\) be any ambient category and \(\widehat C=\operatorname{Fun}(C^{\mathrm{op}},\mathsf{Set}_{\mathcal U})\). For a small \(I\) and \(D:I\to\widehat C\), set

\[ \begin{gathered} Q(X)=\operatorname{colim}_{i\in I}D(i)(X),\\ Q(a)([i,x])=[i,D(i)(a)x]\\ \quad(a:X\to Y,\ x\in D(i)(Y)). \end{gathered} \tag{4.1} \]

The value map goes from \(Q(Y)\) to \(Q(X)\). It respects every generating relation because the index transformations \(D(s)\) are natural in \(C\). The component functor laws of \(D(i)\) show on every class that \(Q(1_X)=1\) and \(Q(ba)=Q(a)Q(b)\). Thus it is a presheaf with small values. Its coprojections \(D(i)\to Q\) are natural by the very class equation in (4.1).

The complete arbitrary-domain pointwise theorem in Compatible families, Section 4, applies with domain \(C^{\mathrm{op}}\), value category \(\mathsf{Set}_{\mathcal U}\), and index \(I\). Its full colimit proof gives the unique natural factor of every presheaf cocone. Concretely, for \(v_i:D(i)\to P\), the factor has \(\bar v_X([i,x])=v_{i,X}(x)\). For \(a:X\to Y\), its two naturality routes give respectively \(v_{i,X}D(i)(a)x\) and \(P(a)v_{i,Y}x\); they agree by naturality of \(v_i\). Each value factor is unique by Section 1, so the transformation is unique. Postcomposing a transformation of \(P\) acts on these values, proving the naturality of its universal correspondence.

The complete pointwise-limit proof of that same theorem likewise applies: the retained Set tuple/equalizer construction supplies every small limit. For \(D:I\to\widehat C\), its value is the set of compatible tuples

\[ \begin{gathered} L(X)=\{(x_i)_i: D(s)_Xx_i=x_j\\ \text{for every }s:i\to j\}. \end{gathered} \tag{4.2} \]

Its map along \(a:X\to Y\) applies \(D(i)(a)\) to every coordinate. Naturality of \(D(s)\) preserves the equations. The full retained proof verifies the functor laws, the natural projection transformations, and the unique natural factor of every cone; its hypotheses allow arbitrary \(C\). Thus every evaluation at \(X\) preserves both specified universal families.

The empty presheaf \(X\mapsto\varnothing\) is initial: each component map out of it is unique and the naturality equations are automatic. The singleton presheaf is terminal by the corresponding unique-map argument. These include empty \(C\), when there is just one functor and one transformation. Empty index diagrams give exactly these pointwise objects.

The covariant category \(A_C=\operatorname{Fun}(C,\mathsf{Set}_{\mathcal U})\) has the same conclusions with the \(C\)-arrow direction covariant. In the established formal convention \(C^\vee=A_C^{\mathrm{op}}\). Consequently a diagram \(D:I\to C^\vee\) has

\[ \begin{gathered} U(\operatorname{colim}_{I}D) =\lim_{I^{\mathrm{op}}}D^\flat,\\ U(\lim_{I}D) =\operatorname{colim}_{I^{\mathrm{op}}}D^\flat, \end{gathered} \tag{4.3} \]

where \(D^\flat:I^{\mathrm{op}}\to A_C\) is obtained by reversing its arrows and \(U\) denotes the underlying object of \(A_C\). Both right sides are computed pointwise. The full opposite-family proof in Compatible families, Section 3, reverses the factor equations and proves these assertions. In \(C^\vee\), the singleton value functor is initial and the empty value functor terminal. The reversal is part of the formal category definition.

These existence statements require small indices and small value sets. They require no small object set for \(C\). A larger ambient universe can contain the natural transformation sets while the actual value constructions continue to use only the working-universe small union, product, subset and quotient closures.

5. Regroup a mixed Hom construction

Let \(F:C\to C'\), \(G:C\to C''\), \(A\in C'\) and \(B\in C''\). First use ambient Hom sets. Choose a universe \(\mathcal V\) containing the category, comma and Hom data below when taking their set colimits. There is no small-\(\mathcal U\)-\(C\) hypothesis.

Put \(L_B=(G\downarrow B)\). An object is \((X,t:G(X)\to B)\); an arrow \(f:(X,t)\to(X',t')\) satisfies \(t=t'G(f)\). Define a covariant diagram \(P_A:L_B\to\mathsf{Set}\) by

\[ \begin{gathered} P_A(X,t)=\operatorname{Hom}_{C'}(A,F(X)),\\ P_A(f)(s)=F(f)s. \end{gathered} \tag{5.1} \]

The full comma laws are retained from Zero maps, Section 1; the full Hom laws give the displayed functor's identities and composites.

The other index is \(R_A=(A\downarrow F)^{\mathrm{op}}\). In the unreversed comma category, \(f:(X,s)\to(X',s')\) means \(s'=F(f)s\). In \(R_A\), it gives an arrow \((X',s')\to(X,s)\). Define its covariant diagram \(T_B\) by

\[ \begin{gathered} T_B(X,s)=\operatorname{Hom}_{C''}(G(X),B),\\ T_B(f^{\mathrm{op}})(t')=t'G(f). \end{gathered} \tag{5.2} \]

The reversed arrow direction makes this covariant on \(R_A\). For composable underlying \(f,g\), precomposing by \(G(gf)=G(g)G(f)\) gives the action of their reversed composite, and identities act trivially.

Theorem 5.1. The two ambient colimits have a canonical bijection

\[ \begin{gathered} \operatorname{colim}_{(X,t)\in L_B}P_A(X,t)\\ \xrightarrow{\ \sim\ } \operatorname{colim}_{(X,s)\in R_A}T_B(X,s),\\ [(X,t),s]\longmapsto[(X,s),t]. \end{gathered} \tag{5.3} \]

It is contravariantly natural in \(A\) and covariantly natural in \(B\).

Proof. Form a category \(J_{A,B}\) of triples \((X,s,t)\), with \(s:A\to F(X)\) and \(t:G(X)\to B\). An arrow \(f\) from this triple to \((X',s',t')\) is an arrow of \(C\) satisfying both

\[ s'=F(f)s,\qquad t=t'G(f). \tag{5.4} \]

Identities satisfy both equations. If \(f\) and \(g\) are composable such arrows, then \(s''=F(g)F(f)s=F(gf)s\) and \(t=t'G(f)=t''G(g)G(f)=t''G(gf)\). Thus composition is inherited from \(C\), as are associativity and both units. Its object and arrow sets are ambient tagged unions of Hom sets and subsets of original Homs, so this is an ambient category.

The element category \(E_{P_A}\) is exactly \(J_{A,B}\): an arrow in \(L_B\) gives the second equation of (5.4), and its element equation gives the first. Regrouping the data does not change any arrow, identity or composite. On the right, the element category \(E_{T_B}\) is exactly \(J_{A,B}^{\mathrm{op}}\): its arrow based on \(f^{\mathrm{op}}\) gives the first equation, and the element equation \(T_B(f^{\mathrm{op}})(t')=t\) is the second. This checks every morphism, not only the object sets.

A category and its opposite have the same component relation on their common objects: each generating arrow is merely reversed, and zigzags already permit either direction. The identity on triple objects gives inverse class maps between their component sets. Applying the complete comparison (2.2) to both element categories gives (5.3).

The quotient map can also be checked on the exact generators. For \(f:X\to X'\), \(s:A\to F(X)\) and \(t':G(X')\to B\), the left relation is

\[ (X,s,t'G(f))\sim (X',F(f)s,t'). \tag{5.5} \]

The right relation identifies the same two triples in the reverse order. Therefore (5.3) is well-defined, its inverse exchanges the grouping back, and both composites fix every representative class. Empty triple sets give empty on both sides.

For \(a:A'\to A\) and \(b:B\to B'\), send a triple to \((X,sa,bt)\). Equation (5.4) remains true after precomposition by \(a\) and postcomposition by \(b\). This gives a functor \(J_{A,B}\to J_{A',B'}\), preserving original identities and composites. On the left it is the induced index change \((X,t)\mapsto(X,bt)\) together with \(s\mapsto sa\); on the right it is \((X,s)\mapsto(X,sa)\) together with \(t\mapsto bt\). The two routes in (5.3) consequently send each class to the class of that same new triple. Identity and composition formulas for \(a,b\) are componentwise, and their two actions commute by associativity. This proves both variances and all naturality equations. \(\square\)

Choosing \(\mathcal V\) containing the total ambient data makes both comma categories and their value sets \(\mathcal V\)-small, so Theorem 1.1 proves their existence in \(\mathsf{Set}_{\mathcal V}\). If the Hom values are only small up to coding in a fixed \(\mathcal U\), retain the full Hom-encoding proof of Products and mixed functors, Section 4. The codes transport the triple quotient bijectively. Section 6 determines when (5.3) is a comparison of actual colimits in \(\mathsf{Set}_{\mathcal U}\).

6. Keep the quotient inside the working universe

The ambient quotient can be too large even when every value is small. It is possible to give an exact existence criterion rather than silently making the index category small.

Proposition 6.1. Let \(D:I\to\mathsf{Set}_{\mathcal U}\) with arbitrary ambient \(I\), and let \(Q_D\) be its ambient quotient (1.2). The diagram has a colimit in \(\mathsf{Set}_{\mathcal U}\) if and only if \(Q_D\) is \(\mathcal U\)-small. When it exists, its universal cocone identifies it bijectively with \(Q_D\).

Proof. If \(Q_D\) is small, transport it to a small representative. The complete factor construction (1.3) gives a universal cocone for every small target, so it is a working-universe colimit.

Conversely let \(c_i:D(i)\to K\) be such a colimit, with \(K\) small. Its cocone descends in ambient sets to a function \(p:Q_D\to K\). For every ambient function \(f:Q_D\to2\), where \(2=\{0,1\}\in\mathcal U\), the functions \(x\mapsto f([i,x])\) form a cocone into the small two-point set. Universality supplies \(h:K\to2\) with \(hp=f\).

If \(q\ne q'\) but \(p(q)=p(q')\), choose \(f\) equal to \(1\) at \(q\) and \(0\) elsewhere. The factorization would force \(f(q)=f(q')\), a contradiction. Thus \(p\) is injective. If \(k\notin p(Q_D)\), the zero function on \(K\) and the function equal to \(1\) only at \(k\) agree after every \(c_i\). Colimit uniqueness would make them equal, another contradiction. Thus \(p\) is surjective. This gives the asserted bijection to the small set \(K\). These arguments include empty \(Q_D\) or \(K\); they require no element chosen from an empty set. \(\square\)

Apply this proposition to (5.1) and (5.2), with small encoded Hom values. Their ambient quotients both identify with \(\pi_0(J_{A,B})\). Hence their two working-universe colimits exist simultaneously, precisely when

\[ \pi_0(J_{A,B}) \text{ is }\mathcal U\text{-small}. \tag{6.1} \]

When they exist, the specified comparisons with that common quotient give exactly (5.3). If \(C\) is small and the relevant Hom values small, the full transported union/subset bounds make \(J_{A,B}\) small, so this criterion holds. Small \(C\) is a sufficient case, not a new premise in the general ambient comparison.

For a concrete size boundary, let \(C\) be the discrete ambient category whose object set is the universe \(\mathcal U\) itself. It is locally small: each Hom is empty or a singleton. Take \(C'\) and \(C''\) to be the identity-only point category, let \(F,G\) be its unique functors, and let \(A,B\) be that point. Both comma indices are discrete copies of \(C\), and both diagrams are constant singleton diagrams. Their ambient quotient is the set \(\mathcal U\).

This set is not \(\mathcal U\)-small. Suppose it were bijective to \(S\in\mathcal U\). Since \(\mathcal P(S)\in\mathcal U\), transitivity makes \(\mathcal P(S)\) a subset of \(\mathcal U\). The supposed bijection would give an injection \(\mathcal P(S)\to S\), contradicting Cantor's theorem. Explicitly such an injection gives a surjection \(S\to\mathcal P(S)\) by its inverse on the image and value \(\varnothing\) elsewhere; for any proposed surjection \(e\), the subset \(\{s\in S:s\notin e(s)\}\) differs from \(e(s)\) at that \(s\) for every \(s\). Thus no such surjection exists.

Proposition 6.1 shows that neither working-universe colimit exists in this example. A larger universe containing \(\mathcal U\) supplies both, with quotient \(\mathcal U\), and the ambient mixed-Hom comparison is still its canonical bijection. This separates the general comparison from a false assertion that local smallness alone supplies all large colimits.

7. Four graded exercises with full solutions

Exercise 1 — introductory: follow a chain of identifications

Let \(I\) have two objects and two parallel nonidentity arrows from the first to the second. A diagram is given by \(X=\{0,1\}\), \(Y=\{a,b,c,d\}\), and \(f(0)=a,f(1)=b,g(0)=b,g(1)=c\). Compute its colimit and element-category components. Give the factor of every cocone into an arbitrary set \(S\). Explain why a one-step relation would be insufficient.

Solution. The generators in \(Y\) are \(a\sim b\) and \(b\sim c\). Their equivalence closure has the two classes \(A=\{a,b,c\}\) and \(D=\{d\}\). Thus the coequalizer map sends \(a,b,c\) to \(A\) and \(d\) to \(D\); the map from \(X\) sends both elements to \(A\).

In the element category, tagged \(0\) has arrows to \(a,b\), tagged \(1\) to \(b,c\). Its two components are therefore \(\{0,1,a,b,c\}\), with their actual tags retained, and \(\{d\}\). This agrees with the quotient comparison (2.2).

A cocone has maps \(u:X\to S,v:Y\to S\) with \(u=vf=vg\). These equations give \(v(a)=v(b)=v(c)\) and \(u(0)=u(1)=v(a)\), leaving \(v(d)\) independent. Its unique factor sends \(A\) to \(v(a)\) and \(D\) to \(v(d)\). Conversely any two values in \(S\) give exactly this cocone. If \(S\) is empty, neither a function from the two-class quotient nor a cocone exists, so the same correspondence holds. The direct generating pairs do not contain \((a,c)\); the chain through \(b\) supplies it. Taking only one step would fail transitivity.

Exercise 2 — intermediate: distinguish index components from element components

Let \(I\) consist of an arrow \(0\to1\) and an isolated object \(2\). First compute the colimit of the constant set \(S=\{\mathrm{red},\mathrm{blue}\}\), including its coprojections. Then take \(D(0)=\{r,s\}\), \(D(1)=\{u\}\), \(D(2)=\varnothing\), with the arrow sending both \(r,s\) to \(u\). Compute its colimit. Explain the difference between the two component counts.

Solution. The index components are \(a=\{0,1\}\) and \(b=\{2\}\). Formula (3.2) gives four elements \((\mathrm{red},a),(\mathrm{blue},a),(\mathrm{red},b),(\mathrm{blue},b)\). The value at either \(0\) or \(1\) sends a colour to its \(a\)-tag; the value at \(2\) sends it to its \(b\)-tag. A constant-diagram cocone is one function \(S\to T\) for each index component, so its unique factor acts independently on these two tagged copies.

For the varying diagram, the element category has only \((0,r),(0,s),(1,u)\). Its arrows connect both first objects to the third, so it has one component. There is no element object above \(2\). The colimit is a singleton, and all three actual elements map to it. A cocone into \(T\) assigns one common value to \(r,s,u\); its component at \(2\) is the unique empty function. This is exactly a function from the singleton to \(T\), with no such function when \(T\) is empty.

An index component with no elements contributes no element component. The constant-singleton diagram detects all index components because it has an element at every index. A varying diagram need not do so.

Exercise 3 — advanced: take a presheaf quotient and an equalizer

Let \(C\) be the walking arrow \(x\to y\). Define a presheaf \(P\) by \(P(y)=\{r,s\}\), \(P(x)=\{u,v\}\), with both \(r,s\) restricting to \(u\). Let \(1\) be the singleton presheaf, and let \(a,b\colon1\rightrightarrows P\) select respectively \(r,s\) at \(y\), both selecting \(u\) at \(x\). Compute their coequalizer and equalizer as presheaves, and verify their full factor properties.

Solution. The selections are natural because the restrictions of both selected \(y\)-elements are \(u\). The coequalizer \(Q\) has \(Q(y)=\{[r=s]\}\), \(Q(x)=\{[u],[v]\}\), and restriction \([r=s]\mapsto[u]\). Its map \(q:P\to Q\) identifies \(r,s\), and is bijective at \(x\).

If \(h:P\to W\) satisfies \(ha=hb\), its \(y\)-component has \(h_y(r)=h_y(s)\). It has a unique quotient factor there, sending \([r=s]\) to this common value, and a unique factor at \(x\), sending \([u]\) to \(h_x(u)\) and \([v]\) to \(h_x(v)\). Naturality of \(h\), checked at \(r\), gives \(W(x\to y)h_y(r)=h_x(u)\), exactly naturality of these factors. They are therefore a natural transformation \(Q\to W\); uniqueness at each value proves global uniqueness.

For the equalizer \(e:E\to1\), the \(y\)-value is empty because \(r\ne s\), and the \(x\)-value is the singleton because the two selections agree there. Its restriction is the unique map \(\varnothing\to1\), and \(e\) is empty inclusion at \(y\) and identity at \(x\). If \(z:T\to1\) satisfies \(az=bz\), its \(y\)-component cannot send any element to the unequal pair \(r,s\); hence \(T(y)=\varnothing\). There is then a unique component \(T(y)\to E(y)\), and a unique \(T(x)\to E(x)=1\). Their naturality equation has empty source \(T(y)\), so holds. This is the unique factor through \(e\). Conversely every such factor equalizes \(a,b\) by its components. Thus both complete universal properties hold. The equalizer is not the empty presheaf: its \(x\)-value remains a singleton.

Exercise 4 — challenge: compute both sides of mixed-Hom regrouping

Let \(C\) be \(0\xrightarrow{f}1\). Take \(F,G:C\to\mathsf{Set}\) with \(F(0)=\{a,b\}\), \(F(1)=\{c\}\), \(F(f)\) constant, and \(G(0)=\{u\}\), \(G(1)=\{v,w\}\), \(G(f)(u)=v\). For \(A=1\) and any small set \(B\), describe both comma-index diagrams in Theorem 5.1, compute their colimits, and identify the canonical comparison. Include empty \(B\) and naturality in \(B\).

Solution. A left-index object over \(0\) is a function \(t_\beta:\{u\}\to B\), determined by \(\beta\in B\). Over \(1\) it is a function \(t_{\beta,\delta}:\{v,w\}\to B\), determined by \(\beta,\delta\in B\). Its nonidentity comma arrows go from \(t_\beta\) to each \(t_{\beta,\delta}\), since the compatibility tests the value at \(v\). The Hom diagram has two elements \(a,b\) at each object over \(0\) and one element \(c\) over each object over \(1\). Its nonidentity functions send both names to \(c\).

The triple objects over \(0\) are \((0,a,t_\beta)\) and \((0,b,t_\beta)\). Over \(1\) they are \((1,c,t_{\beta,\delta})\). Each of the former has an arrow to each of the latter with the same first target value \(\beta\). No arrow changes \(\beta\). Every triple over \(1\) connects to \((0,a,t_\beta)\), and both triples over \(0\) connect through \((1,c,t_{\beta,\beta})\). Hence there is exactly one component for each \(\beta\in B\), and the left colimit is \(B\).

The unreversed right comma category \(1\downarrow F\) has objects \((0,a),(0,b),(1,c)\), with an arrow from each of the first two to the third. Reversing it gives arrows from \((1,c)\) to each of \((0,a),(0,b)\). The right Hom diagram is therefore \(B\leftarrow B^2\to B\), both functions being first-coordinate projection \((\beta,\delta)\mapsto\beta\). Its colimit identifies the two tagged copies of every \(\beta\), since \((\beta,\beta)\) supplies a generator. No generator identifies different \(\beta\). Thus its colimit is \(B\), with both copy maps the identity and the map from \(B^2\) the first projection.

On the left, the class of a triple is its value at \(u\) or \(v\), respectively. On the right the same triple yields that same value. Formula (5.3) is therefore the identity of \(B\) under these specified identifications. An inverse to either class identification sends \(\beta\) to the class of \((0,a,t_\beta)\); on the right use its regrouped triple. The component computations show both inverse equations.

If \(B\) is empty, there are no left objects and no triples, while all three right diagram values are empty. Both colimits are empty, and the comparison is the unique empty bijection. For a function \(k:B\to B'\), the left object data change by \(t\mapsto kt\), and the right values change by postcomposition. Both class identifications then act by \(\beta\mapsto k(\beta)\). This proves naturality, including maps with empty domain.

8. References and retained proof interfaces

Colimits of sets and of presheaves are also treated in Pierre Schapira, An Introduction to Categories and Homological Algebra, lecture notes, version of 1 March 2026, Section 2.3, and in Emily Riehl, Category Theory in Context, Section 3.2.

The structured canonical comparison is Stacks Project, Categories, “Limits and colimits in the category of sets,” with its tagged quotient and zigzag description. That section's description is not treated as a standalone universal-factor proof. The full factors used here remain in the linked owned course proofs. In particular, retain all Set coproduct/coequalizer and general diagram factors in Universal forks, the full arbitrary-domain pointwise proof and formal-opposite convention in Compatible families, the full comma/component laws in Zero maps, the complete element-category and Hom-encoding interfaces in Points and representations and Products and mixed functors, and the full small-set closure proofs in Universes and small categories. Every new comparison is tied to its specified class, projection or coprojection maps.