\documentclass[psamsfonts]{amsart}
\usepackage{amssymb,amsfonts}
\usepackage[all,arc]{xy}
\usepackage{enumerate}
\usepackage{mathrsfs}
\usepackage{verbatim}

%theoremstyle{plain} --- default
\newtheorem{thm}{Theorem}[section]
\newtheorem{cor}[thm]{Corollary}
\newtheorem{prop}[thm]{Proposition}
\newtheorem{lem}[thm]{Lemma}
\newtheorem{conj}[thm]{Conjecture}
\newtheorem{quest}[thm]{Question}

\theoremstyle{definition}
\newtheorem{defn}[thm]{Definition}
\newtheorem{defns}[thm]{Definitions}
\newtheorem{con}[thm]{Construction}
\newtheorem{exmp}[thm]{Example}
\newtheorem{exmps}[thm]{Examples}
\newtheorem{notn}[thm]{Notation}
\newtheorem{notns}[thm]{Notations}
\newtheorem{addm}[thm]{Addendum}
\newtheorem{exer}[thm]{Exercise}

\theoremstyle{remark}
\newtheorem{rem}[thm]{Remark}
\newtheorem{rems}[thm]{Remarks}
\newtheorem{warn}[thm]{Warning}
\newtheorem{sch}[thm]{Scholium}

\DeclareMathOperator{\cod}{cod}
\DeclareMathOperator{\dom}{dom}
\DeclareMathOperator{\Hom}{Hom}

\makeatletter
\let\c@equation\c@thm
\makeatother
\numberwithin{equation}{section}

\bibliographystyle{plain}

\title{Limits in Category Theory}

\author{Scott Messick}

\date{August 17, 2007}

\begin{document}

\begin{abstract}

I will start assuming no knowledge of category theory and introduce all concepts necessary to embark on a discussion of limits. I will conclude with two big theorems: that a category with products and equalizers is complete, and that limits in any category can be reduced to limits of Hom-sets by means of a natural transformation.

\end{abstract}

\maketitle

\tableofcontents

\section{Categories}

Category theory is a scheme for dealing with mathematical structures in a highly abstract and general way. The basic element of category theory is a category.

\begin{defn}

A category $\mathscr{C}$ consists of three components:

\begin{enumerate}
	\item A collection\footnote{For the scope of this paper, I will not attempt to make the word ``collection'' precise. Note, however, that it is often too big to be a set.} of objects $Ob(\mathscr{C})$. Instead of $C \in Ob(\mathscr{C})$, we may write simply $C \in \mathscr{C}$.
	\item A collection of morphisms $Ar(\mathscr{C})$, and with each morphism $f$, two associated objects, called the domain $\dom f$ and the codomain $\cod f$. The set of morphisms with domain A and codomain B is written $\Hom_{\mathscr{C}}(A, B)$ or simply $\mathscr{C}(A, B)$ and called a ``Hom-set''. A morphism can be thought of as an arrow going from its domain to its codomain. Indeed, I will use the words ``morphism'' and ``arrow'' interchangeably. Instead of $f \in \mathscr{C}(A, B)$, $f: A \to B$ may be written, where $A$ and $B$ are already understood to be objects in $\mathscr{C}$.
	\item A composition law, i.e., for every pair of Hom-sets $\mathscr{C}(A, B)$ and $\mathscr{C}(B, C)$, a binary operation $\circ : \mathscr{C}(B, C) \times \mathscr{C}(A, B) \to \mathscr{C}(A, C)$. Instead of $\circ (f, g)$ we write $g \circ f$ or $gf$. Composition must satisfy the following two axioms.
	\begin{enumerate}
		\item Associativity. If $f \in \mathscr{C}(A, B)$, $g \in \mathscr{C}(B, C)$, and $h \in \mathscr{C}(C, D)$, then $h \circ (g \circ f) = (h \circ g) \circ f = h \circ g \circ f = hgf$.
		\item Identities. For every object $C \in \mathscr{C}$ there exists an identity arrow $1_C \in \mathscr{C}(C, C)$ such that for every morphism $g \in \mathscr{C}(A, C)$ and $h \in \mathscr{C}(C, B)$, $1_C \circ g = g$ and $h \circ 1_C = h$ hold.
	\end{enumerate}
\end{enumerate}
\end{defn}

The quintessential example of a category is the category of sets, $\mathbf{Set}$. The objects are all sets, and the morphisms all functions between sets (with the usual composition of functions). The categories of topological spaces and groups are similar; in fact, there is a category like this for almost every branch of mathematics; the objects are the structures being studied, and the morphisms are the structure-preserving maps.

\begin{table}
\begin{tabular}{|lll|}

\hline Category & Objects & Morphisms \\ \hline
$\mathbf{Set}$ & sets & functions \\
$\mathbf{Top}$ & topological spaces & continuous maps \\
$\mathbf{Grp}$ & groups & homomorphisms of groups \\
Any poset & elements of the set & exactly one arrow for every $\leq$ \\ \hline

\end{tabular}

\caption{Examples of categories}
\end{table}

The two axioms for composition of morphisms can be restated diagramatically as follows. For every object C, there exists an identity arrow $1_C$ such that the following diagram commutes for every g, h:

\[\xymatrix{A \ar[r]^g \ar[rd]_{1_C \circ g} & C \ar[d]^{1_C} \ar[rd]^{h \circ 1_C} \\ & C \ar[r]_h & B}\]

Given objects A, B, C, D and morphisms between them, the following diagram always commutes:

\[\xymatrix{ A \ar[r]^f \ar[rd]_{g \circ f} & B \ar[d]^g \ar[dr]^{h \circ g} \\ & C \ar[r]^h & D} \]

A commutative diagram is one where, between any two given objects, composition along every (directed) path of arrows yields the same morphism between those objects. These diagrams also exemplify the usual way of illustrating concepts of category theory, representing objects as nodes and morphisms as arrows between them.

The following concept is important, and a first example of how category theory generalizes important kinds of statements about mathematical objects. In this case, the idea of two objects being isomorphic is generalized.

\begin{defn}

A morphism $f: A \to B$ is an isomorphism if there exists a morphism $g: B \to A$ such that $f \circ g = 1_B$ and $g \circ f = 1_A$. Then the objects $A, B$ are said to be isomorphic.

\end{defn}

Loosely speaking, isomorphic objects look ``the same'' in a category, because arrows to or from one can be uniquely mapped through the isomorphism to arrows to or from the other. Isomorphic objects are not the same, but have the same categorical structure. Intuitively, a branch of mathematics, say, group theory, specifies what structure is important in an object (group). Two such structures (groups) are isomorphic, in the setting-specific sense (invertible homomorphisms here), if they have the same such structure. Since the category is defined with the appropriate maps for the setting (homomorphisms), two objects will be categorically isomorphic if and only if they are isomorphic. The importance of this idea of generalizing from a concept, defined internally in the same way for many different types of objects, to a single categorical concept defined externally by means of arrows, must be stressed. Isomorphisms are a simple example with which to think about the philosophy; limits, which come later, are much more complicated.

\section{Functors and Natural Transformations}

Categories, in part, embody the idea that any notion of a mathematical object should come with a notion of maps between two such objects. Sets come with functions, groups with homomorphisms, topological spaces with continuous maps, and so on. Similarly, categories come with functors.

\begin{defn}

A functor $F: \mathscr{C} \to \mathscr{D}$ is a map which associates with every object $C \in \mathscr{C}$ an object $F(C) \in \mathscr{D}$, and with every morphism $f \in \mathscr{C}(C_1, C_2)$ a morphism $F(f) \in \mathscr{D}{F(C_1), F(C_2)}$, and which preserves composition and identities, as in:

\begin{itemize}
	\item $F(1_C) = 1_{F(C)}$ holds for every object $C \in \mathscr{C}$.
	\item Whenever $h, g, f$ are arrows in $\mathscr{C}$ such that $h = g \circ f$, it also holds that $F(h) = F(g) \circ F(f)$.
\end{itemize}
\end{defn}

Parentheses may be omitted, as in $C \mapsto FC$ and $f \mapsto Ff$.

There are many simple examples of functors, forgetful functors from $\mathbf{Grp}$ or $\mathbf{Top}$ to $\mathbf{Set}$ which take objects to their underlying sets, free functors going the other way (e.g. putting the trivial topology on every set), functors from little categories that pick out diagrams in their codomain (which will be important later), and so on. One important kind of functor is given by Hom-sets. Observe that if $\mathscr{C}$ is any category, with any object $C$, then $\Hom_\mathscr{C}(C,-)$ gives a functor $H: \mathscr{C} \to \mathbf{Set}$. This functor maps arrows by left-composition, i.e., given $f: A \to B$, $Hf: Hom_\mathscr{C}(C,A) \to Hom_\mathscr{C}(C, B)$ is defined by $(Hf)(g) = f \circ g$.

A natural transformation is, in turn, a morphism of functors. Given functors $F, G: \mathscr{C} \to \mathscr{D}$, one may imagine the image of F as a bunch of objects sitting in $\mathscr{D}$, with some arrows between them highlighted. Similarly one may imagine the image of G as another bunch of objects. Loosely speaking, a natural transformation will be a way of getting from the first picture to the second picture, using the arrows of $\mathscr{D}$, in a ``natural'' way, i.e., in the same way for every object.

\begin{defn}

Given functors $F, G: \mathscr{C} \to \mathscr{D}$, a natural transformation $\eta: F \to G$ is a collection of arrows in $\mathscr{D}$, specifically, one arrow for each object $X$ of $\mathscr{C}$, called\footnote{I'm switching notation slightly here, to avoid nested subscripts.} $\eta_X$, such that the following diagram commutes for every $X, Y \in \mathscr{C}$.

\[\xymatrix{
X \ar[d]_f & FX \ar[r]^-{Ff} \ar[d]_{\eta_X} & FY \ar[d]^{\eta_Y} \\
Y & GX \ar[r]_-{Gf} & GY\\} \]

\end{defn}

\begin{defn}

A natural isomorphism is a natural transformation in which every arrow is an isomorphism.

\end{defn}

\section{Limits}

The notion of a limit in category theory generalizes various types of universal constructions that occur in diverse areas of mathematics. It can show very precisely how thematically similar constructions of different types of objects, such as the product of sets or groups of topological spaces, are instances of the same categorical construct. Consider the Cartesian product in sets. $X \times Y$ is usually defined by internally constructing the set of ordered pairs $\{(x,y) | x \in X \, \text{and} \, y \in Y\}$. But it can also by identified as the set which projects down to $X$ and $Y$ in a universal way, that is to say, doing something to $X \times Y$ is the same as separately doing something to $X$ and $Y$.

\begin{defn}
A product of objects $A, B$ in a category $\mathscr{C}$ is an object, $C$, together with morphisms $p: C \to A$ and $q: C \to B$, called the projections, with the following universal property\footnote{A formal definition of universal properties exists, but is unnecessary for the purposes of this paper.}. For any other object $D\ \in \mathscr{C}$ with morphisms $f: D \to A$ and $g: D \to B$, there is a unique morphism $u: D \to C$ such that $p \circ u = f$ and $q \circ u = g$. In other words, every $(D, f, g)$ factors uniquely through $(C, u)$.

\[\xymatrix{D \ar@/_/[ddr]_f \ar@/^/[rrd]^g \ar@{.>}[rd]^u && \\ & C \ar[r]^q \ar[d]_p & B \\ & A &}\]

\end{defn}

\begin{exmp}

In the category $\mathbf{Set}$, the product is the Cartesian product. The projections $p: A \times B \to A$ and $q: A \times B \to B$ are given by $p(a, b) = a$ and $q(a, b) = q$. Given another set $D$ with arrows $f: D \to A$ and $g: D \to B$, the unique arrow $u: D \to A \times B$ is given by $u(d) = (f(d), g(d))$. That this commutes and is the only arrow doing so are transparent, as for example, $(p \circ u)(d) = p(u(d)) = p(f(d), g(d)) = f(d)$.

\end{exmp}

\begin{exmp}

In $\mathbf{Grp}$, the product is the direct product of groups. The construction is similar to $\mathbf{Set}$; the product is given by the underlying Cartesian product, with a group operation constructed elementwise from those of the factors. To demonstrate that the universal arrow exists and is unique, it suffices to show that the function u given by the same construction is in fact a homomorphism, given that, because we are in the category of groups, f and g are also homomorphisms. (Trivially, the projections are homomorphisms.) This proof is straightforward:

\begin{multline}
u(d_1d_2)=(f(d_1d_2), g(d_1d_2)) = (f(d_1)f(d_2), g(d_1)g(d_2)) \\ = (f(d_1), g(d_1))(f(d_2), g(d_2)) = u(d_1)u(d_2)
\end{multline}

\end{exmp}

\begin{exmp}

In $\mathbf{Top}$, the product is the usual product of topological spaces. In fact, this product is often defined as ``the coarsest topology which makes the projections continuous,'' which is exactly what is needed to make the analogous construction work.

\end{exmp}

\begin{exmp}

In a poset, the product is the greatest lower bound, if it exists. This provides not only an example which is very different from sets, but also one showing that the product doesn't always exist. Let $c = glb(a, b)$. There is only one choice of projections. If $d$ has arrows to $a$ and $b$, it means $d \leq a$ and $d \leq b$, so $d$ is a lower bound. But $c$ is a greatest lower bound, so $d \leq c$. This gives the universal arrow which easily commutes and is unique because arrows are scant in this category.

\end{exmp}

\begin{prop}

The product of any two objects in a category, if it exists, is unique up to unique isomorphism.

\end{prop}

\begin{proof}

Let $A$ and $B$ be objects in a category, and $C, p_C, q_C$ and $D, p_D, q_D$ be products of $A$ and $B$. By the universal property, there exist unique morphisms $f: C \to D$ and $g: D \to C$ which commute with the projections. This gives $p_C \circ g$ = $p_D$ and $p_D \circ f = p_C$ and hence $p_C \circ g \circ f = p_C$. Similarly, $q_C \circ g \circ f = q_C$. Thus, $g \circ f$ is an arrow from $C$ to itself which commutes with the projections. But by the universal property there can only be one morphism from $C$ to itself which commutes with the projections, and the identity suffices. Hence $g \circ f = 1_C$. The other way around is similar.

\[\xymatrix{ & C \ar[ld] \ar[rd] \ar@<-0.5ex>@{.>}[dd]_f & \\ A & & B \\ & D \ar[lu] \ar[ru] \ar@<-0.5ex>@{.>}[uu]_g & }\]

\[\xymatrix{ & C \ar[ld] \ar[rd] \ar@<-0.5ex>@{.>}[dd]_{1_C} & \\ A & & B \\ & C \ar[lu] \ar[ru] \ar@<-0.5ex>@{.>}[uu]_{gf} & }\]

\end{proof}

\begin{rem}

A product can be generalized in an obvious way to any number of factors other than two. Later I will speak of a category with ``all small products''; this just means the products of any \emph{set} of objects exists in the category. In $\mathbf{Set}$ it's clear that all small products exist.

\end{rem}

The second most important example of a limit is an equalizer. In sets, and in many similar categories, this is just the subset of the domain of two parallel arrows where those two functions are equal.

\begin{defn}

An equalizer of two arrows $f, g: X \to Y$ in a category $\mathscr{C}$ is an object, $E$, together with a morphism $e: E \to X$ such that $f \circ e = g \circ e$, with the following universal property: for any $O \in \mathscr{C}$ with a morphism $m: O \to X$ such that $f \circ m = g \circ m$, there is a unique morphism $u: O \to E$ such that $m = e \circ u$. This equalizer may be denoted $eq(X, Y)$.

\[\xymatrix{E \ar[r]^e & X \ar@<0.5ex>[r]^f \ar@<-0.5ex>[r]_g & Y \\ O \ar[ur]_m \ar@{.>}[u]^u & &}\]

\end{defn}

\begin{rem}

In $\mathbf{Grp}$ and $\mathbf{Top}$, equalizers are constructed exactly the same way. In $\mathbf{Grp}$, it can be viewed as a difference kernel. (In fact, kernels can also be viewed as limits).

\end{rem}

Now we're ready for the general notion of a limit, but first, it's useful to define a cone. Notice that in the product and the equalizer, the projections played the same role as the morphism $e$. In what follows, $\mathscr{J}$ should be thought of as a small category, such as two discrete objects (no morphisms except identities) in the case of products, or a just a pair of objects with a pair of arrows in the case of equalizers.  The functor $F: \mathscr{J} \to \mathscr{C}$ should be thought of as a diagram of that shape in the category $\mathscr{C}$. Thus the limit of the diagram is taken.

\begin{defn}

Given a functor $F: \mathscr{J} \to \mathscr{C}$, a cone of F is an object $N \in \mathscr{C}$ together with morphisms $\psi_X: N \to F(X)$ for every $X \in \mathscr{J}$ such that for every morphism $f: X \to Y$ in $\mathscr{J}$, the triangle commutes, i.e. $Ff \circ \psi_X = \psi_Y$.

\end{defn}

\[\xymatrix{ & N \ar[dl]_{\psi_X} \ar[d]_{\psi_Y} \ar[dr]^{\psi_Z} & \\ F(X) \ar[r]_{F(f)} & F(Y) \ar[r]_{F(g)} & F(Z)}\]

\begin{defn}

A limit of a functor $F: \mathscr{J} \to \mathscr{C}$ is a universal cone\footnote{The term \emph{limit} is overloaded to mean either the cone, i.e., the object with the arrows, or just the object.} $L, \phi_X$. That is, for every cone $N, \psi_X$ of $F$, there is a unique morphism $u: N \to L$ such that $\phi_X = u \circ \psi_X$ for every $X \in \mathscr{J}$. The limit object may be written $\lim_{i \in \mathscr{J}}F(i)$.

\end{defn}

\[\xymatrix{ & N \ar@{.>}[d]|u \ar[ddl]_{\psi_X} \ar[ddr]^{\psi_Y} & \\ & L \ar[dl]^{\phi_X} \ar[dr]_{\phi_Y} & \\ F(X) \ar[rr]_{F(f)} & & F(Y)}\]

\begin{prop}

The limit of any diagram in a category, if it exists, is unique up to unique isomorphism.

\end{prop}

\section{Pullbacks}

The pullback (fiber product) is the last limit I will define explicitly. There are many other important limits, but pullbacks will be my example for how all limits come from products and equalizers.

\begin{defn}

A pullback is a limit of a diagram of the following form: $A \longrightarrow C \longleftarrow B$. That is, a pullback is an object $D$ with morphisms $p_1: D \to A$ and $p_2: D \to B$ which make the square commute and are universal, i.e. for every other object $Q$ with morphisms $q_1: Q \to A$ and $q_2: Q \to B$, there is a unique morphism $u: Q \to D$ which makes the diagram commute. The pullback, interpreted as the object $D$, may be written $A \times_C B$.

\[\xymatrix{ Q \ar@/^/[rrd] \ar@/_/[ddr] \ar@{.>}[dr]|u & & \\ & D \ar[r] \ar[d] & B \ar[d] \\ & A \ar[r] & C }\]

\end{defn}

\begin{prop}

In $\mathbf{Set}$, the pullback is given by the set $X \times_Z Y = \{(x, y)|$ $f(x)=g(y)\}$ where $f: X \to Z$ and $g: Y \to Z$, together with the restricted projection maps $p_1, p_2$ into $X$ and $Y$.

\end{prop}

\begin{proof}

Let $D, q_1, q_2$ be another cone of the same diagram. We have $f(q_1(d))=g(q_2(d))$ for every $d \in D$. Thus the pairs $(q_1(d), q_2(d))$ are in $X \times_Z Y$. Let $u(d) = (q_1(d), q_2(d))$.

\end{proof}

\begin{prop}

In any category, a pullback can be constructed using a product and an equalizer.

\end{prop}

\[\xymatrix{ A \times B \ar[r]^{p_2} \ar[d]_{p_1} \ar@<0.5ex>[dr]^{gp_2} \ar@<-0.5ex>[dr]_{fp_1} & B \ar[d]^g \\ A \ar[r]_f & C }\]

The product $A \times B$ induces two parallel diagonal arrows to $C$, of which the equalizer can be taken.

\[\xymatrix{ E \ar@/_/[ddr]_{p_1e} \ar[dr]_e \ar@/^/[drr]^{p_2e} & & \\ & A \times B \ar[r]^{p_2} \ar[d]_{p_1} \ar@<0.5ex>[dr]^{gp_2} \ar@<-0.5ex>[dr]_{fp_1} & B \ar[d]^g \\ & A \ar[r]_f & C }\]

Now, consider any other cone commuting with the pullback diagram. The universal property of the product gives a unique arrow to the product. By a diagram chasing argument, this arrow can be seen to equalize the diagonal arrows, which gives a unique arrow to the equalizer that makes the diagram commute. Thus, the equalizer is the pullback.

\section{Complete Categories}

\begin{defn}

A category is complete if every small\footnote{A diagram is small if the collection of objects is a set.} diagram has a limit.

\end{defn}

\begin{thm}

Let $F: \mathscr{J} \to \mathbf{Set}$ be any small diagram in $\mathbf{Set}$. Then the limit of F is the set \[L = \lim_{i \in \mathscr{J}}F(i) = \{(x_i) \in \prod_{i \in \mathscr{J}} F(i) \| (Ff)(x_i) = x_{\cod f} \forall f \in Ar(\mathscr{J}) \}\]

\end{thm}

\begin{rem}

An equivalent condition to the one given is that $(Ff)(x_i) = (Fg)(x_j)$ whenever $f,g \in Ar(\mathscr{J})$ and $\cod f = \cod g$. For $g$ can be the identity, which gives the statement in the theorem, and to go the other way, note that if $\cod f = \cod g = k$ then $(Ff)(x_i) = x_k = (Fg)(x_j)$. This makes it clear that an equalizer is being taken in order to produce the limit.

\end{rem}

\begin{proof}

The limit cone is L with restricted projection maps $(p_i)$. Let $(N, (\psi_i)_{i \in \mathscr{J}})$ be any other cone. We have $(Ff)(\psi_i(n))=(Fg)(\psi_j(n))$ whenever $\cod f = \cod g$, for every $n \in N$. Thus the tuples $(\psi_i(n))_{i \in \mathscr{J}}$ are in $L$. Let $u(n) = (\psi_i(n))_{i \in \mathscr{J}}$.

\end{proof}

\begin{thm}

A category with all equalizers and all small products is complete.

\end{thm}

\begin{proof}

This proof is a careful and slightly clever generalization of the idea in the previous proof. Actual equality no longer exists, so an equalizer has to be used to do the trick. We will take two products and find two arrows between them of which to take the equalizer, which will be the limit. The product is taken first over all objects in the diagram, then over the codomains of all arrows in the diagram, indexed by arrows. 

\[\xymatrix{ & F(\cod f) \\ \prod_iF(i) \ar@/^/[ur] \ar[d] \ar@{.>}@<0.5ex>[r]^u \ar@{.>}@<-0.5ex>[r]_v & \prod_f F(\cod f) \ar[u]^{p_f} \ar[d]_{p_f} \\ F(\dom f) \ar[r]_{Ff} & F(\cod f)}\]

The first product with its projections (repeated if necessary) can make a cone for the second product in two different ways, as shown in the triangle on top and the square on the bottom of the first figure. This gives the two universal arrows $u$ and $v$ as shown, which respectively make all the triangles commute, or all the squares.

\[\xymatrix{ F(i) & & F(\cod f) \\
	E \ar@{.>}[r]^e \ar[u]^{\phi_i} & \prod_iF(i) \ar[ul]_{p_i} \ar@/^/[ur] \ar[d] \ar@<0.5ex>[r]^u \ar@<-0.5ex>[r]_v & \prod_f F(\cod f) \ar[u]^{p_f} \ar[d]_{p_f} \\
	& F(\dom f) \ar[r]_{Ff} & F(\cod f)}\]

The equalizer is taken as shown, and the arrows $\phi_i = p_ie$ are formed to make the cone $E, \phi_i$. That it's a cone can be seen by inspecting the diagram. Given $f: j \to k$, we have $ue = ve$, $p_fue = p_fve$, $p_ke = Ff \circ p_je$, $phi_k = Ff \circ phi_j$. Then any other cone $Q, (psi_i)$, gives a unique map $t$ to the product, by its universal property, but since it's a cone, $ut = vt$, so there is a unique arrow $s: Q \to E$ by the universal property of the equalizer.

\end{proof}

\section{Another Limit Theorem}

The following is a beautiful and fascinating theorem, and in a paper of larger scope, much more could be done with it. Even without the purpose of proving other theorems, it illustrates a lot of intuition behind the notion of a categorical limit.

\begin{thm}

Let $F: \mathscr{J} \to \mathscr{C}$ be a diagram in $\mathscr{C}$. Then an object $X \in \mathscr{C}$ is a limit of $F$ if and only if there is a natural isomorphism \[\Hom_\mathscr{C}(C, X) \cong \lim_{i \in \mathscr{J}} \Hom_\mathscr{C}(C, F(i))\] where the limit on the right is in $\mathbf{Set}$ and hence exists. 

\end{thm}

\begin{proof}[Proof for products.]

First suppose that $C$ is the product $A \times B$. We need to find a bijection of sets, $\Hom(D,C) \cong \Hom(D,A) \times \Hom(D,B)$. Given arrows from $D$ to $A$ and $B$ gives us a cone of $F$, so since $C$ is the product we have a unique arrow $u$ given by the universal property. For the other direction, given any arrow $h: D \to C$ we simply take $p \circ h, q \circ h$, so we have a bijection.

To show naturality, let $\alpha: M \to N$ be an arrow in $\mathscr{C}$. Then the following diagram must commute:

\[\xymatrix{\Hom(M,C) \ar@{<->}[r] & \Hom(M,A) \times \Hom(M,B) \\ \Hom(N,C) \ar[u] \ar@{<->}[r] & \Hom(N,A) \times \Hom(N,B) \ar[u]}\]

Here the vertical arrows are just left-composition by $\alpha$ and the horizontal arrows are just elementwise right-composition by $p, q$. The diagram commutes by associativity.

On the other hand suppose we have such a natural isomorphism for some object $C$. We need to find the projections in order to form a product. To do this, we consider a particular, enlightening case of the natural isomorphism: \[\Hom(C,C) \cong \Hom(C,A) \times \Hom(C,B) \] Even in an arbitrary category, we know $\Hom(C,C)$ has an identity element. By plugging the identity through the isomorphism, we get $p: C \to A$ and $q: C \to B$. Now let $D, f, g$ be another cone. We can prove the universal property by using the following commutative diagram:

\[\xymatrix{\Hom(D,C) \ar@{<->}[r] & \Hom(D,A) \times \Hom(D,B) \\ \Hom(C,C) \ar@{<->}[r] \ar[u] & \Hom(C,A) \times \Hom(C,B) \ar[u]}\]

\[\xymatrix{u \ar@{<->}[r] & (f,g) \\ 1_C \ar@{<->}[r] \ar@{|->}[u] & (p,q) \ar@{|->}[u]}\]

We know we can construct the vertical arrows because the bijection gives us $u: D \to C$ from $(f,g)$. The vertical arrows are left-composition by $u$. The commutative diagram then states that $p \circ u = f$ and $q \circ u = g$.

\end{proof}

Notice that this theorem illustrates what a product morally \emph{is}: an object such that specifying a map to the object is the same as specifying a map to the factors. In fact, this ``thoerem'', though I call it that, is really just a restatement of the definition of a limit, and we're proving that they are the same. But the concept is profound and not obvious, so I think it's worth drawing attention to.

\begin{proof}[General proof.]

The general case proceeds similarly. Let $L$ be the limit of $F: J \to C$. We need to find a bijection of sets, $\Hom(X,L) \cong \lim \Hom(X,F(i))$. What is an element of the limit on the right-hand side? Well, we have an explicit description of a limit in $\mathbf{Set}$. But we have to be careful, because the functor here is not $F$ itself but $HF$, where $H$ is the Hom-functor $\Hom(X,-)$. Then the following is true for an element $(\psi_i)$ of the limit: $(HFf)(\psi_i) = \psi_j$ whenever $f: i \to j$ in J. But we know what $H$ does to arrows, so we have $Ff \circ \psi_i = \psi_j$ wheenver $f: i \to J$ in J. Thus, the statement that a tuple of arrows $(\psi_i)$ is in the limit of Hom-sets is exactly the statement that $X, (\psi_i)$ is a cone of F. This gives a unique arrow $u: X \to L$ and everything proceeds just as before.

To go the other way, we again take the bijection $\Hom(L,L) \cong$ $\lim \Hom(L,F(i))$ and feed the identity through it, yielding a cone $L, (\phi_i)$ as before, which we must prove is universal. Let $X, (\psi_i)$ be any other cone.

\[\xymatrix{\Hom(X,L) \ar@{<->}[r] & \lim \Hom(X,F(i)) \\ \Hom(L,L) \ar@{<->}[r] \ar[u] & \lim \Hom(L,F(i)) \ar[u]}\]

\[\xymatrix{u \ar@{<->}[r] & (\psi_i) \\ 1_L \ar@{<->}[r] \ar@{|->}[u] & (\phi_i) \ar@{|->}[u]}\]

Just as before, we can find $u$ with the bijection and construct the commutative diagram to complete the proof.

\end{proof}

\begin{thebibliography}{9}

\bibitem{sM98}
	Mac Lane, Saunders. \emph{Categories for the Working Mathematician.} Second Edition, 1998.
\bibitem{bG04}
	Guillou, Bert and Haris Skiadas. \emph{WOMP 2004: Category Theory.}
\bibitem{aA07}
	Anders, Alan. DRP Notes, Winter 2007.
	
\end{thebibliography}

\end{document}
