Before defining limits, it is useful to define the auxiliary notion of
a cone of a functor. Therefore consider two categories J and C
and a covariant functor F : J-> C. A cone of F
is an object L of C, together with a family of morphisms
φX : L -> F(X) for every
object X of J, such that for
every morphism f : X -> Y in J, we have
F(f) o φX = φY. This situation
may be depicted as a commutative diagram, more precisely as a
commutative triangle with the vertices L, F(X), and F(Y).
Indeed the (usually infinite) collection of all these triangles can
be (partially) depicted in the shape of a cone with the point L.
A limit of a functor is just a universal cone. In detail, a cone
(L, φX) of a functor F : J-> C is a limit of that functor iff
for any cone (N, ψX) of F, there exists precisely one morphism u : N -> L such that φX o u = ψX for all X.
We may say that the morphisms ψX factor through L with
the unique factorization u.
As for every universal property, this definition describes a balanced state
of generality: The limit object L has to be general enough to allow any other cone to factor through it; on the other hand, L has to be sufficiently specific, so that only one such factorization is possible for every cone.
It is possible that a functor does not have a limit at all. However, if a functor
has two limits then there exists a unique isomorphism between the respective
limit objects which commutes with the respective cone maps; this isomorphism is given by the unique factorization from one limit to the other.
Thus limits are unique up to isomorphism and can be denoted by lim F.
The definition of limits is general enough to subsume several constructions useful in practical settings. In the following
we will consider the limit (L, φX)
of a functor F : J -> C.
Products. If J'\' is a discrete category, i.e. if J'' has only the identity
morphisms, then the functor F is essentially nothing but a family of objects of C, indexed by J. The limit L of F is called the product of these objects.
The special case where J consists of just two objects (which we will call 1 and 2)
then defines a binary product. For example, assume that C is the category Set
and let J be the discrete two-element category. The binary product L will then
just be the cartesian product F(1) x F(2) in Set. The morphisms
φ1 and φ2 are the projections to the respective
components of the tuples from L.
In many
algebraic contexts,
such as (abelian) groups,
rings , boolean algebras, etc., products
are just cartesian products, where the operations are defined pointwise.
Another well-known product is the product topology in Top, the category of topological spaces and continuous maps.
If a
partially ordered set is viewed as a category C, then products in C
are greatest lower bounds while arbitrary cones are just lower bounds. .
Terminal object. If J is the empty category that contains no objects, then
clearly the above definitions imply that every object of C is a cone of F.
A limit then is an object that has a unique factorization through any other object. This
is just the definition of a terminal object.
Equalizers. If J is a two-object category with two parallel morphisms from
object 1 to object 2 then the limit L is called an equalizer. Practical
examples of these constructions are considered in the article on equalizers.
Kernels. The special case of an equalizer where one of the morphisms is mapped
to a zero morphism, the resulting limit is called a
kernel.
Pullbacks. Let J be a category with the three elements a, b and c,
where the only non-identity morphisms are f : a -> c and
g : b -> c. The limit L is then called a pullback or a
fibred product. It can nicely be visualized as a commutative square, with the diagonal
φc = F(f) o φa =
F(g) o φb.
All of the above examples follow a common scheme for the definition of limits: in
order to model a limit construction, such as a product of sets, one uses a functor
that "picks out" the relevant objects (and sometimes morphisms) from the category C.
Consequently, the category J usually is small and has fewer elements than the
category C. If one considers a finite category J then the above
constructions can also be specified by giving the objects and morphisms that the functor
F maps to. For example one may talk about an "equalizer of two morphisms" instead of
calling this limit an "equalizer of a functor that maps the only two non-trivial morphisms in J to certain values".
However, J may well be a large category, i.e. one that has a proper class of objects. For example, the product of all sets exists and is just the
empty set (indeed, this is the only possible cone on all families of sets that contain
the empty set).
A category C is called
complete iff every functor F : J-> C, where J is any small category, has a limit. For short: "all small limits in C exist".
Many important categories
are complete: groups, abelian groups, sets, modules
over some ring, topological spaces and compact
Hausdorff spaces.
The Existence Theorem for Limits states that a category is complete iff
it has equalizers and arbitray (infinite) products.
Typical examples of categories that are not complete are categories with some "size restriction": the category of finite groups or the category of finite-dimensional vector spaces over a fixed field.
It turns out that the property of having all (even large) limits is too strong
to be practically relevant. Any category with this property necessarily is of a
very restricted form: for any two objects there can be at most one morphism from
one object to the other.
If J is a small category and every functor from J to C has a limit,
then the limit operation forms a functor from the
functor category CJ to C.
For example, if J is a discrete category and C is
the category Ab of abelian groups, then
lim : AbJ -> Ab is the functor which
assigns to every J-indexed family of abelian groups its direct product.
More generally, if J is a small category arising from a partially ordered set,
then lim: AbJ -> Ab assigns to every system of
abelian groups its inverse limit.
It is a natural question to ask, which functors are compatible with the
construction of limits in the sense that they map limits to limits.
These functors are called continuous or limit preserving.
Formally, a functor G : C -> D is continuous iff,
for every small category I and every functor F : I -> C
that has a limit (L,φX) in C, the functor
GF : I -> D has the limit (G(L), G(φX) ).
Since the Existence Theorem for Limits mentioned above shows that all limits can be expressed
by products and equalizers, it is sufficient for continuity if G preserves
these special limits.
Important examples of continuous functors are given by representable ones:
if U is some object of C, then the functor
GU : C -> Set with
GU(V) = MorC(U, V) for all objects
V in C is continuous.
The importance of adjoint functors lies in the fact that every functor which
has a left adjoint (and therefore is a right adjoint) is continuous.
In the category Ab of abelian groups, this for example shows that the
kernel of a product of homomorphisms is naturally
identified with the product of the kernels. This illustrates that one may also
say that a continuous functor commutes with the construction of limits.
Being a universal construction, limits also have other strong relationships to
adjoint functors. The limit functor lim : CJ -> C
(if it exists) has as left adjoint the
diagonal functor C -> CJ which
assigns to every object N of C the constant functor
whose value is always N on objects and idN
on morphisms. In particular, limit functors are continuous; intuitively, this means that the order in which two limits are computed does not matter.
The dual notion of limits and cones are colimits and co-cones. Although
it is straightforward to obtain these definitions by inverting all morphisms in the
above definitions, we will explicitly state them here:
Consider two categories J and C and a covariant functor
F : J-> C. A co-cone of F
is an object L of C, together with a family of morphisms
φX : F(X) -> L for every
object X of J, such that for
every morphism f : X -> Y in J, we have
φX o F(f)= φY. Again,
a visualization of this situation resembles a cone (this time
pointing downwards).
A colimit of a functor is a universal co-cone: a co-cone
(L, φX) of a functor F : J-> C is a
colimit of F iff
for any co-cone (N, ψX) of F, there exists precisely one morphism u : L -> N such that u o φX = ψX for all X.
If it exists, the colimit of F is unique up to a unique isomorphism and is
denoted by colim F.
Examples of colimits are given by the dual versions of the ones given above: coproducts, initial objects,
coequalizers, cokernels, and pushouts, respectively.
Limits and colimits are related as follows: A functor F : J
-> C has a colimit if and only if for every object N
of C, the functor X |->
MorC(F(X),N) (which is a covariant functor
on the dual category Jop) has a limit. If that is the
case, then
The category C is called cocomplete if every functor
F : J -> C with small J has a colimit.
The following categories are cocomplete: sets, groups, abelian groups,
modules over some ring and topological spaces.
A covariant functor that commutes with the construction of colimits is said to
be cocontinuous or to preserve colimits. Every functor which has a right
adjoint (and hence is a left adjoint) is cocontinuous.
As an example in the
category Grp of groups the functor F : Set -> Grp
which assigns to every set S the free group over S has a right
adjoint (the forgetful functor Grp -> Set) and is
therefore cocontinuous.
The free product of groups is an example of a colimit construction, and it follows that the free product of a family of free groups is free.Definition
Examples
Complete categories
Continuous functors
Colimits
for every object N of C.