We know that the category has equalizers and all (small) products, so by the existence theorem we know it is complete. However, it will be useful to have an explicit calculation of all small limits at hand. We’ll find this by walking through the existence theorem in this category.
Given any small category , a functor is a collection of sets and functions . We can take the product of all the sets in the collection , consisting of all lists of elements with each . It comes with projections , but the triangles formed by these projections might not commute — is not equal to in general.
So take the subset of the product consisting of all those lists with for all morphisms of . Then we have functions defined by which do make the required triangles commute, giving a cone on . If is any other cone on then each determines a list which lies in , which determines a unique function .
Now such a list is a list of elements of the various , and when it comes right down to it we just don’t like thinking about elements if we don’t have to. Instead of talking about an element of a set , we can talk about an arrow , where is a terminal object in — a set with one point. So what we really have here is a list of arrows with , which is a cone on !
So here’s the result of our calculation: The limit set is the set of all cones from to in . Further, we see that this set always exists, so is complete.
We could do a similar calculation in another category like , but we actually don’t have to reproduce all this work. Instead, we can consider the functor which assigns to every group its underlying set. If is a functor, then the composite has a limit . I claim that there is a unique group structure on this set so that the arrows are actually group homomorphisms to the groups , and that this cone in is a limiting cone.
Since the projection just reads off the component from the list, we see that for it to be a homomorphism we have to use the product from . That is, , so the component of the product must be , using the product from . Similarly the component of must be , using the inversion from .
Now if is any cone in then is a cone in , so for some unique function . We can check that
so must also be a group homomorphism, proving the required universal property.
In general we say that a functor creates a limit for a functor if for every limiting cone in there exists a unique cone in with and , and further this cone is a limiting cone. The above theorem can then be stated that the functor creates all limits. As a consequence, is complete.
A similar proof to the preceding theorem can be given to show that the “underlying set” functors from , , , , and other algebraic categories all create all (small) limits, and thus those categories are complete. This also shows that the group (ring, module, etc.) structure on a product (equalizer, pullback) is completely determined by the limit on the underlying sets.