Limits of Diagrams

Shapes and Diagrams Cones and Limits Recovering the Three Constructions The Existence of Limits

Shapes and Diagrams

The product, the equalizer, and the pullback have been set side by side and seen to share a single form. Each begins with a small configuration of objects and maps, and each produces from it a universal object lying over the configuration, through which every compatible family of maps factors in exactly one way. Only the shape of the starting configuration distinguishes them: a pair of objects, a parallel pair of maps, a cospan.

The task now is to give this common form a name and a definition that does not depend on which of the three shapes one began with, so that the same construction becomes available for a configuration of any shape whatsoever.

The first step was taken in the closing section on the three constructions, where the starting configurations were recognized as diagrams drawn in a category, each one a functor into \(\mathscr{A}\) from a small category encoding its shape. We keep the names introduced there. The category \(\mathbf{1}\) is the one-object category, so that a functor \(\mathbf{1} \to \mathscr{A}\) is an object of \(\mathscr{A}\), and \(\mathbf{2}\) is the category with two objects \(0\) and \(1\) and a single non-identity map \(0 \to 1\), so that a functor \(\mathbf{2} \to \mathscr{A}\) is a map of \(\mathscr{A}\). The shapes \(\mathbf{T}\), \(\mathbf{E}\), and \(\mathbf{P}\) are the categories whose functors into \(\mathscr{A}\) are, respectively, a pair of objects, a parallel pair of maps, and a cospan. In each case the small category serves as a template, and a functor out of it into \(\mathscr{A}\) instantiates the template with actual objects and maps of \(\mathscr{A}\).

The shape is not the diagram

It is worth separating two roles that the letter \(\mathbf{1}\) might be asked to play. As a shape, \(\mathbf{1}\) is the one-object category used as a template, and a functor \(\mathbf{1} \to \mathscr{A}\) is the act of placing a single object of \(\mathscr{A}\) into that template. This has nothing to do with a terminal object of \(\mathscr{A}\), which is an object of \(\mathscr{A}\) with a special mapping-in property, and which need not exist. The shape category lives outside \(\mathscr{A}\) and is fixed in advance. The diagram is the functor that fills it. Keeping the template and its filling distinct is what lets one configuration of objects and maps be described uniformly, regardless of the category it is drawn in.

The configurations and their shapes are thus separated cleanly. The shape is a small category, and the configuration is a functor out of it. Nothing in this picture privileges the three shapes. Any small category may serve, and the universal construction will be defined for all of them at once.

Definition: Diagram

Let \(\mathscr{A}\) be a category and \(\mathbf{I}\) a small category. A diagram in \(\mathscr{A}\) of shape \(\mathbf{I}\) is a functor \(D : \mathbf{I} \to \mathscr{A}\). The category \(\mathbf{I}\) is called the index category or the shape of the diagram.

For an object \(I\) of \(\mathbf{I}\) the diagram supplies an object \(D(I)\) of \(\mathscr{A}\), and for a map \(u : I \to J\) of \(\mathbf{I}\) it supplies a map \(D(u) : D(I) \to D(J)\) of \(\mathscr{A}\), with composites and identities preserved as for any functor. The objects \(D(I)\) are the vertices of the diagram and the maps \(D(u)\) its edges. Following common usage we abbreviate \(D(u)\) to \(Du\). The configurations met as the starting data of the three constructions are recovered by taking \(\mathbf{I}\) to be \(\mathbf{T}\), \(\mathbf{E}\), or \(\mathbf{P}\). Allowing \(\mathbf{I}\) to be an arbitrary small category opens the construction beyond those three cases.

One typeface for shapes, another for categories

From here on a boldface letter \(\mathbf{I}\), \(\mathbf{J}\), \(\mathbf{T}\) denotes a small category serving as a shape, while a script letter \(\mathscr{A}\), \(\mathscr{B}\) denotes an arbitrary category in which diagrams are drawn. The distinction is a convenience rather than a necessity, since a shape is itself a category. Still, shapes and the categories they are mapped into play different parts in the theory, and the typographic split keeps the two roles legible. The shape \(\mathbf{I}\) is required to be small, meaning that its objects and maps form sets rather than proper classes. This requirement will matter once the existence of the universal object is at stake, and it is recorded now so that it is in force throughout.

Cones and Limits

With a diagram of arbitrary shape in hand, the universal object built over it can be defined. In each of the three constructions the universal object came equipped with maps to the objects of the configuration, compatible with the maps already present in the configuration. For a product these were the projections, for an equalizer the single map, and for a pullback the projection pair. The structure of such a family of maps, from a fixed object to a whole diagram, is what must be isolated.

Definition: Cone

Let \(\mathscr{A}\) be a category, \(\mathbf{I}\) a small category, and \(D : \mathbf{I} \to \mathscr{A}\) a diagram. A cone on \(D\) is an object \(A \in \mathscr{A}\), called the vertex of the cone, together with a family of maps \[ \big(A \xrightarrow{f_I} D(I)\big)_{I \in \mathbf{I}} \] in \(\mathscr{A}\), one for each object \(I\) of \(\mathbf{I}\), such that for every map \(u : I \to J\) in \(\mathbf{I}\), \[ Du \circ f_I = f_J . \] Equivalently, the triangle with apex \(A\) and legs \(f_I, f_J\) to \(D(I), D(J)\) commutes with the edge \(Du : D(I) \to D(J)\).

The vertex is a single object of \(\mathscr{A}\), and the family assigns to each vertex of the diagram a map from \(A\) into it. The commuting condition ties the family to the structure of the diagram. Following the map \(f_I\) into \(D(I)\) and then the edge \(Du\) along to \(D(J)\) must give the same result as the map \(f_J\) straight into \(D(J)\). A cone is thus a way of mapping a single object compatibly into every part of a diagram at once. Among all cones on a given diagram there is, in good cases, a most efficient one, through which all others factor uniquely. That cone is the limit.

Definition: Limit

Let \(D : \mathbf{I} \to \mathscr{A}\) be a diagram. A limit of \(D\) is a cone \[ \big(L \xrightarrow{p_I} D(I)\big)_{I \in \mathbf{I}} \] with the following universal property: for every cone \(\big(A \xrightarrow{f_I} D(I)\big)_{I \in \mathbf{I}}\) on \(D\), there exists a unique map \(\bar{f} : A \to L\) such that \(p_I \circ \bar{f} = f_I\) for all \(I \in \mathbf{I}\). The maps \(p_I\) are called the projections of the limit.

The limit is the universal cone. Every cone factors through it, and in only one way. When a limit exists, its vertex \(L\) is written \(\lim D\). By a mild abuse of language one often calls the object \(L\) alone the limit, rather than the whole cone, and leaves the projections understood. A cone with this universal property is called a limit cone.

A limit is a representing object

The universal property has a compact restatement. Suppose \(\mathscr{A}\) is locally small. For a fixed diagram \(D\), each object \(A\) of \(\mathscr{A}\) determines the set of cones on \(D\) with vertex \(A\), a subset of \(\prod_{I \in \mathbf{I}} \mathscr{A}(A, D(I))\). A map \(g : A' \to A\) turns a cone with vertex \(A\) into one with vertex \(A'\) by composing every leg with \(g\), so the assignment of cone-sets is a presheaf on \(\mathscr{A}\), contravariant in the vertex. The universal property says precisely that a map \(A \to L\) corresponds to a cone on \(D\) with vertex \(A\), naturally in \(A\). The limit \(L\) is thus an object representing the presheaf of cones. Read this way, a map into \(\lim D\) is the same thing as a cone on \(D\), which is the most economical statement of the definition.

For a locally small \(\mathscr{A}\), casting the limit as a representing object settles its uniqueness at once. Two objects representing the same presheaf are isomorphic, and the isomorphism is uniquely determined by the requirement that it respect the representation, which here means that it commute with the projections. The limit of a diagram is therefore unique up to a single compatible isomorphism whenever it exists, and the definite article in "the limit" is justified. The proposition below records this conclusion for an arbitrary category, with a direct proof that uses only the universal property.

Proposition: Uniqueness of Limits

Let \(D : \mathbf{I} \to \mathscr{A}\) be a diagram. If \(\big(L \xrightarrow{p_I} D(I)\big)_{I \in \mathbf{I}}\) and \(\big(L' \xrightarrow{p'_I} D(I)\big)_{I \in \mathbf{I}}\) are both limits of \(D\), then there is a unique isomorphism \(\theta : L' \to L\) such that \(p_I \circ \theta = p'_I\) for all \(I \in \mathbf{I}\).

Proof

Since \(\big(L' \xrightarrow{p'_I} D(I)\big)\) is a cone on \(D\) and \(L\) is a limit, the universal property of \(L\) yields a unique map \(\theta : L' \to L\) with \(p_I \circ \theta = p'_I\) for all \(I\). Symmetrically, since \((L, p_I)\) is a cone and \(L'\) is a limit, there is a unique \(\theta' : L \to L'\) with \(p'_I \circ \theta' = p_I\) for all \(I\).

Composing gives \(p_I \circ (\theta \circ \theta') = p'_I \circ \theta' = p_I\) for all \(I\), so \(\theta \circ \theta'\) is a map \(L \to L\) commuting with the projections of \(L\). The identity \(1_L\) is another such map, and the uniqueness clause of \(L\)'s universal property, applied to the cone \((L, p_I)\) itself, forces \(\theta \circ \theta' = 1_L\). The same argument on \(L'\) gives \(\theta' \circ \theta = 1_{L'}\). Hence \(\theta\) is an isomorphism with inverse \(\theta'\), and it is the unique map \(L' \to L\) commuting with the projections by the first step.

Because the shape \(\mathbf{I}\) was required to be a small category from the outset, the limits defined here are what are properly called small limits. No other limits will concern us.

Recovering the Three Constructions

The definition was built to subsume the product, the equalizer, and the pullback, and the claim is discharged by computing the limit for each of the three shapes. In every case a diagram of that shape is unwound into its objects and maps, a cone is identified with the data of the corresponding universal property, and the limit is read off as the construction already named.

Products as limits of shape \(\mathbf{T}\)

A diagram \(D\) of shape \(\mathbf{T}\) in \(\mathscr{A}\) is a pair \((X, Y)\) of objects, with no non-identity maps in \(\mathbf{T}\) to impose any commuting condition. A cone on \(D\) is therefore an object \(A\) together with maps \(f_1 : A \to X\) and \(f_2 : A \to Y\) and nothing more, since the commuting condition is vacuous when there are no non-identity edges. A limit of \(D\) is a cone through which every cone factors uniquely. Concretely, it is an object \(P\) with maps to \(X\) and \(Y\) through which any pair of maps to \(X\) and \(Y\) factors in one way. This is exactly the product of \(X\) and \(Y\).

More generally, let \(I\) be a set and let \(\mathbf{I}\) be the discrete category on \(I\), whose objects are the elements of \(I\) and whose only maps are identities. A diagram \(D : \mathbf{I} \to \mathscr{A}\) is then an \(I\)-indexed family \((X_i)_{i \in I}\) of objects, a cone on it is a family of maps \(\big(A \to X_i\big)_{i \in I}\) with no commuting condition, and the limit is the product \(\prod_{i \in I} X_i\). The shape \(\mathbf{T}\) is the case \(I = \{1, 2\}\).

At the other extreme, taking \(I = \varnothing\) gives the empty diagram, whose only cone-data is the vertex itself. A limit of the empty diagram is therefore an object \(L\) such that every object \(A\) admits exactly one map \(A \to L\), namely a terminal object. The terminal object is the empty product.

Equalizers as limits of shape \(\mathbf{E}\)

A diagram \(D\) of shape \(\mathbf{E}\) is a parallel pair \(s, t : X \to Y\). A cone on \(D\) is an object \(A\) with maps \(f : A \to X\) and \(g : A \to Y\) such that the two edges are respected, \(s \circ f = g\) and \(t \circ f = g\). The map \(g\) is determined by \(f\) as \(g = s \circ f\), so a cone is equally an object \(A\) and a single map \(f : A \to X\) satisfying \(s \circ f = t \circ f\), that is, a fork on \(s\) and \(t\). A limit of \(D\) is a universal fork, the one through which every fork factors uniquely, which is the equalizer of \(s\) and \(t\).

Pullbacks as limits of shape \(\mathbf{P}\)

A diagram \(D\) of shape \(\mathbf{P}\) is a cospan \(X \xrightarrow{s} Z \xleftarrow{t} Y\). A cone on \(D\) is an object \(A\) with maps to \(X\), \(Y\), and \(Z\) compatible with \(s\) and \(t\). As with the equalizer, the map to \(Z\) is forced by the maps to \(X\) and \(Y\). A cone therefore reduces to an object \(A\) with maps \(f_1 : A \to X\) and \(f_2 : A \to Y\) satisfying \(s \circ f_1 = t \circ f_2\), that is, to a commuting square \[ \begin{array}{ccc} A & \xrightarrow{f_2} & Y \\[4pt] {\scriptstyle f_1}\big\downarrow & & \big\downarrow{\scriptstyle t} \\[4pt] X & \xrightarrow{s} & Z \end{array} \] A limit of \(D\) is the universal such square, the pullback of the cospan.

Inverse limits

Beyond the three finite shapes, an infinite shape produces a construction with a longer history. Let \(\mathbf{I} = (\mathbb{Z}_{\geq 0}, \leq)^{\mathrm{op}}\), the non-negative integers with their usual order, reversed. A diagram \(D : \mathbf{I} \to \mathscr{A}\) is then a descending chain of objects and maps \[ \cdots \xrightarrow{s_3} X_2 \xrightarrow{s_2} X_1 \xrightarrow{s_1} X_0 , \] one map \(s_{n} : X_{n} \to X_{n-1}\) for each step down. A cone on \(D\) is an object \(A\) with a compatible family of maps to all the \(X_n\), and a limit assembles the chain into a single object receiving such a family universally.

Example: a nested intersection

Suppose in \(\mathbf{Set}\) we have a set \(X_0\) and a descending chain of subsets \[ \cdots \subseteq X_2 \subseteq X_1 \subseteq X_0 , \] with the inclusion maps \(X_n \hookrightarrow X_{n-1}\) forming a diagram of the shape above. A cone with vertex \(A\) is a family of maps \(A \to X_n\) compatible with the inclusions, which amounts to a single map \(A \to X_0\) whose image lands inside every \(X_n\). The universal such object is the intersection \(\bigcap_{n} X_n\), with its inclusions into each \(X_n\). The limit of a descending chain of subsets is thus their intersection. Here the indexing is not by a finite shape but by a chain.

Limits over a reversed chain of this kind, and over similar shapes, are also called inverse limits, a name in common use in algebra and topology. The name connects to the second sense of the word limit below.

Why "limit"

The limit of a diagram is the most efficient cone over it. Formally, the cones on the diagram form a category, a map of cones being a map of vertices that commutes with all the legs, and the limit is the terminal object of that category. The word limit is to be read in the sense of an extreme or boundary case, the cone that all others fall short of, rather than as a limiting process of the kind met in analysis. The two senses are not unrelated. The inverse-limit example above, where an infinite descending chain is resolved into a single object, is the point at which the categorical notion and the analytic one make contact. But the defining idea is universality, not approximation.

The Existence of Limits

A limit need not exist. The definition only describes the universal cone should there be one. It remains to show that in the familiar categories limits do exist, and the cleanest way is to construct them explicitly. The construction is carried out first in \(\mathbf{Set}\), where it is concrete, and then shown to reduce in any category to two ingredients already studied: products and equalizers.

Limits in Set

Let \(D : \mathbf{I} \to \mathbf{Set}\) be a diagram of sets. Consider the product \(\prod_{I \in \mathbf{I}} D(I)\), whose elements are families \((x_I)_{I \in \mathbf{I}}\) with \(x_I \in D(I)\) for each \(I\). A cone on \(D\) with vertex a one-element set picks out one such family, subject to the compatibility forced by the edges of \(D\). Carrying that compatibility into the product, define \[ L = \big\{ (x_I)_{I \in \mathbf{I}} \in \textstyle\prod_{I \in \mathbf{I}} D(I) \bigm| (Du)(x_I) = x_J \text{ for every map } u : I \to J \text{ in } \mathbf{I} \big\} , \] with projections \(p_J : L \to D(J)\), \(p_J\big((x_I)_{I \in \mathbf{I}}\big) = x_J\).

The family \((p_J)\) is a cone on \(D\). For a map \(u : I \to J\) the defining condition \((Du)(x_I) = x_J\) reads \((Du) \circ p_I = p_J\) on \(L\), which is the cone condition. This cone is in fact the limit cone.

Given any cone \(\big(A \xrightarrow{f_I} D(I)\big)\), the compatibility \((Du) \circ f_I = f_J\) says that for each \(a \in A\) the family \((f_I(a))_{I \in \mathbf{I}}\) satisfies the membership condition for \(L\). Hence \(\bar{f}(a) = (f_I(a))_{I \in \mathbf{I}}\) defines a map \(\bar{f} : A \to L\) with \(p_I \circ \bar{f} = f_I\) for all \(I\). No other map has this property, since the value of such a map at each \(a\) is forced coordinatewise by the equations \(p_I(\bar{f}(a)) = f_I(a)\). Therefore \(L\) is the limit of \(D\). Since \(D\) was arbitrary, \(\mathbf{Set}\) has all limits.

A limit is a subobject of a product cut out by equations

The set \(L\) sits inside the product \(\prod_{I} D(I)\) as the families satisfying one equation \((Du)(x_I) = x_J\) for each edge \(u\) of the diagram. A solution set of simultaneous equations inside a product is exactly what an equalizer of two maps into a product produces, as recorded when equalizers were combined with products to capture systems of equations. The limit in \(\mathbf{Set}\) is therefore an equalizer of a pair of maps between two products. Unlike the explicit set \(L\), this description uses only the universal properties of products and equalizers, and so makes sense in any category.

Limits from products and equalizers

The set-level description points to a construction valid in general, one that assembles every limit from products and equalizers. A shape with finitely many objects and maps is called finite, and a limit indexed by a finite shape is a finite limit.

Proposition: Limits from Products and Equalizers

Let \(\mathscr{A}\) be a category.

(a) If \(\mathscr{A}\) has all products and all equalizers, then \(\mathscr{A}\) has all limits.

(b) If \(\mathscr{A}\) has binary products, a terminal object, and all equalizers, then \(\mathscr{A}\) has all finite limits.

Proof

(a) Let \(D : \mathbf{I} \to \mathscr{A}\) be a diagram. Form two products: one over the objects of \(\mathbf{I}\), and one over its maps, \[ \begin{align*} P &= \prod_{I \in \mathbf{I}} D(I) , \\\\ Q &= \prod_{(u : J \to K)\, \in\, \mathbf{I}} D(K) , \end{align*} \] the second indexed by the maps of \(\mathbf{I}\), with the factor of \(Q\) at a map \(u : J \to K\) being the codomain object \(D(K)\). Both exist by hypothesis, since \(\mathbf{I}\) is small. Write \(\pi_I : P \to D(I)\) for the projections of \(P\). Define two maps \(s, t : P \to Q\) by specifying their components at each map \(u : J \to K\) of \(\mathbf{I}\). The \(u\)-component of \(s\) is \(Du \circ \pi_J\), and the \(u\)-component of \(t\) is \(\pi_K\). These determine \(s\) and \(t\) by the universal property of \(Q\).

Now form the equalizer \(e : L \to P\) of \(s\) and \(t\), which exists by hypothesis. A map \(g : A \to P\) is a family of maps \(\big(\pi_I \circ g : A \to D(I)\big)_{I \in \mathbf{I}}\). The equation \(s \circ g = t \circ g\) holds exactly when, for every map \(u : J \to K\) of \(\mathbf{I}\), the \(u\)-components agree, namely \(Du \circ \pi_J \circ g = \pi_K \circ g\). This is precisely the condition that the family \((\pi_I \circ g)\) be a cone on \(D\). By the universal property of the equalizer, maps \(A \to L\) correspond to maps \(g : A \to P\) with \(s \circ g = t \circ g\), hence to cones on \(D\) with vertex \(A\).

Set \(p_I = \pi_I \circ e : L \to D(I)\). Taking \(A = L\) and \(g = e\) in the previous paragraph shows that the family \((p_I)\) is a cone on \(D\). For any cone \(\big(A \xrightarrow{f_I} D(I)\big)\), the components \(f_I\) determine a map \(g_f : A \to P\) with \(\pi_I \circ g_f = f_I\), and the cone condition makes \(g_f\) equalize \(s\) and \(t\). Hence \(g_f\) factors as \(e \circ \bar{f}\) for a unique \(\bar{f} : A \to L\), the uniqueness being the universal property of the equalizer. This \(\bar{f}\) satisfies \[ \begin{align*} p_I \circ \bar{f} &= \pi_I \circ e \circ \bar{f} \\\\ &= \pi_I \circ g_f \\\\ &= f_I \end{align*} \] for all \(I\).

Any map \(h : A \to L\) with \(p_I \circ h = f_I\) for all \(I\) gives \(\pi_I \circ (e \circ h) = f_I = \pi_I \circ g_f\). Then \(e \circ h = g_f\) by the uniqueness clause in the universal property of \(P\), and \(h = \bar{f}\) because the factorization of \(g_f\) through \(e\) is unique. Thus \((L, (p_I))\) is a limit of \(D\), and \(\mathscr{A}\) has all limits.

(b) When \(\mathbf{I}\) is a finite category, the two products \(P\) and \(Q\) are finite, indexed by the finitely many objects and maps of \(\mathbf{I}\). A finite product is built from binary products and a terminal object. The latter serves as the empty product, and iterated binary products give products of any finite arity, since the universal property of \((X \times Y) \times Z\) unwinds to that of a product of \(X\), \(Y\), and \(Z\), and induction handles longer families. The construction of part (a) then goes through using only binary products, the terminal object, and equalizers, and produces the limit of every finite diagram. Hence \(\mathscr{A}\) has all finite limits.

Part (b) also explains why binary products, terminal objects, equalizers, and pullbacks recur as the standard examples. They are the finite limits one meets first.

Limits across categories

With the construction in place, limits in the familiar categories are read off in turn.

Example: algebraic categories and \(\mathbf{Top}\)

In categories of algebraic structures, such as \(\mathbf{Grp}\), \(\mathbf{Ring}\), and \(\mathbf{Vect}_k\), the limit of a diagram is the set \(L\) constructed in \(\mathbf{Set}\), and it carries the structure defined coordinatewise. For vector spaces, the sum of two families \((x_I)_{I \in \mathbf{I}}\) and \((y_I)_{I \in \mathbf{I}}\) in \(\lim D\) is computed coordinatewise as \((x_I)_{I \in \mathbf{I}} + (y_I)_{I \in \mathbf{I}} = (x_I + y_I)_{I \in \mathbf{I}}\). This sum stays in the limit, since each \(Du\) is linear and so preserves the membership condition, and scalar multiples are handled the same way.

In \(\mathbf{Top}\) the same set \(L\) carries the topology making the projections continuous as economically as possible. It is the subspace topology inherited from the product, where the product carries the product topology, the coarsest topology making its projections continuous. In each case the underlying-set construction is the limit, with the extra structure determined by requiring the projections to be maps of the appropriate kind. That this recipe always works is the statement that the forgetful functor to \(\mathbf{Set}\) creates limits, which is taken up in the study of creation of limits.

Example: compact Hausdorff spaces

Let \(\mathbf{CptHff}\) be the category of compact Hausdorff spaces and continuous maps. Equalizers exist there. For continuous \(s, t : X \to Y\) with \(Y\) Hausdorff, the subset \(E = \{x \in X \mid s(x) = t(x)\}\) is closed in \(X\). If \(s(x) \neq t(x)\), then disjoint open sets \(U \ni s(x)\) and \(V \ni t(x)\) give the open neighborhood \(s^{-1}(U) \cap t^{-1}(V)\) of \(x\), which misses \(E\). Being closed in the compact space \(X\), the set \(E\) is compact, since any open cover of \(E\) becomes an open cover of \(X\) once \(X \setminus E\) is added, and it is Hausdorff as a subspace. With its inclusion into \(X\) it is the equalizer. Products exist there as well. A product of compact spaces is compact by Tychonoff's theorem, and a product of Hausdorff spaces is Hausdorff, since two points that differ in some coordinate are separated by the preimages, under the projection to that coordinate, of disjoint open sets. Hence an arbitrary product of compact Hausdorff spaces is again one. Having all products and all equalizers, \(\mathbf{CptHff}\) has all limits by the proposition. Here the set-level construction alone does not settle existence, since the compactness of an infinite product rests on Tychonoff's theorem. Once that is granted, the existence of all limits follows from products and equalizers alone.

Example: finite limits from direct sums and kernels

In \(\mathbf{Vect}_k\) the equalizer of a parallel pair is the kernel of their difference, and the binary product is the direct sum \(X \oplus Y\), with the zero space \(\{0\}\) as terminal object. By part (b) of the proposition, every finite limit in \(\mathbf{Vect}_k\) is expressible through direct sums, the zero space, and kernels. The same holds in the category of abelian groups, where finite limits are built from finite direct sums, the trivial group, and kernels.

The categories \(\mathbf{Set}\), \(\mathbf{Top}\), \(\mathbf{Grp}\), \(\mathbf{Ring}\), \(\mathbf{Vect}_k\), and \(\mathbf{CptHff}\) thus each have all limits.