# Complete category

In mathematics, a complete category is a category in which all small limits exist. That is, a category C is complete if every diagram F : J → C (where J is small) has a limit in C. Dually, a cocomplete category is one in which all small colimits exist. A bicomplete category is a category which is both complete and cocomplete.
The existence of all limits (even when J is a proper class) is too strong to be practically relevant. Any category with this property is necessarily a thin category: for any two objects there can be at most one morphism from one object to the other.
A weaker form of completeness is that of finite completeness. A category is finitely complete if all finite limits exists (i.e. limits of diagrams indexed by a finite category J). Dually, a category is finitely cocomplete if all finite colimits exist.

## Theorems

It follows from the existence theorem for limits that a category is complete if and only if it has equalizers (of all pairs of morphisms) and all (small) products. Since equalizers may be constructed from pullbacks and binary products (consider the pullback of (f, g) along the diagonal Δ), a category is complete if and only if it has pullbacks and products.
Dually, a category is cocomplete if and only if it has coequalizers and all (small) coproducts, or, equivalently, pushouts and coproducts.
Finite completeness can be characterized in several ways. For a category C, the following are all equivalent:
* C is finitely complete,
* C has equalizers and all finite products,
* C has equalizers, binary products, and a terminal object,
* C has pullbacks and a terminal object.
The dual statements are also equivalent.
A small category C is complete if and only if it is cocomplete. A small complete category is necessarily thin.
A posetal category vacuously has all equalizers and coequalizers, whence it is (finitely) complete if and only if it has all (finite) products, and dually for cocompleteness. Without the finiteness restriction a posetal category with all products is automatically cocomplete, and dually, by a theorem about complete lattices.

## Examples and nonexamples

* The following categories are bicomplete:
** Set, the category of sets
** Top, the category of topological spaces
** Grp, the category of groups
** Ab, the category of abelian groups
** Ring, the category of rings
** K-Vect, the category of vector spaces over a field K
** R-Mod, the category of modules over a commutative ring R
** CmptH, the category of all compact Hausdorff spaces
** Cat, the category of all small categories
** Whl, the category of wheels
** sSet, the category of simplicial sets
* The following categories are finitely complete and finitely cocomplete but neither complete nor cocomplete:
** The category of finite sets
** The category of finite abelian groups
** The category of finite-dimensional vector spaces
* Any (pre)abelian category is finitely complete and finitely cocomplete.
* The category of complete lattices is complete but not cocomplete.
* The category of metric spaces, Met, is finitely complete but has neither binary coproducts nor infinite products.
* The category of fields, Field, is neither finitely complete nor finitely cocomplete.
* A poset, considered as a small category, is complete (and cocomplete) if and only if it is a complete lattice.
* The partially ordered class of all ordinal numbers is cocomplete but not complete (since it has no terminal object).
* A group, considered as a category with a single object, is complete if and only if it is trivial. A nontrivial group has pullbacks and pushouts, but not products, coproducts, equalizers, coequalizers, terminal objects, or initial objects.