---
title: The Adjoint Functor Theorem
module: Adjoints, Representables, and Limits Together
moduleNumber: 6
lessonNumber: 4
order: 604
summary: >
  RAPL makes limit preservation necessary for having a left adjoint; the adjoint
  functor theorems identify when it is sufficient. For ordered sets no extra
  hypothesis is needed. In general the candidate adjoint is a limit over a comma
  category that may be large, and the general adjoint functor theorem tames it
  with a weakly initial set. We prove GAFT in full and apply it to free groups
  and, through the special adjoint functor theorem, the Stone–Čech
  compactification.
topics: [Adjoints, Representables, and Limits Together]
sources:
  - book: Leinster
    ref: "§6.3 Interactions between adjoint functors and limits — adjoint functor theorems; Definition 6.3.6–Example 6.3.14"
  - book: Leinster
    ref: "Appendix — Proof of the general adjoint functor theorem"
draft: false
---

[RAPL](/category-theory/adjoints-limits/adjoints-preserve-limits) settles one
direction: a functor with a left adjoint preserves limits. The converse is
harder. Limit preservation alone is not enough (the unique functor
$\mathcal{B} \to \mathbf{1}$ always preserves limits but has a left adjoint only
when $\mathcal{B}$ has an initial object), yet when $\mathcal{B}$ has _all_
limits and $G$ preserves them, a left adjoint exists under mild extra
conditions. The results giving those conditions are the **adjoint functor
theorems**, all of the shape:[^leinster-setup]

$$
\text{$\mathcal{B}$ complete, } G : \mathcal{B} \to \mathcal{A}
\text{, plus further conditions}
\;\Longrightarrow\;
\bigl(\, G \text{ has a left adjoint} \iff G \text{ preserves limits} \,\bigr).
$$

> **Definition (Complete category).** A category is **complete** (properly,
> small complete) if it has all
> [small limits](/category-theory/foundations/size-and-set-theory).

The forward implication is RAPL. The backward one manufactures an adjoint out of
limits.

## Universal arrows and comma categories

By the
[universal-arrow description of adjunctions](/category-theory/adjunctions/adjunctions-via-universal-arrows),
$G : \mathcal{B} \to \mathcal{A}$ has a left adjoint if and only if for every
$A \in \mathcal{A}$ the [comma category](/category-theory/universal-properties/constructions-on-categories)
$(A \Rightarrow G)$ (objects are pairs $(B, \, f : A \to G(B))$, maps are maps
of $\mathcal{B}$ making the triangle commute) has an initial object. The
initial object is the unit component $\eta_A : A \to G F(A)$, and the values
$F(A)$ assemble into the left adjoint. So the entire problem reduces to:

$$
\text{produce an initial object of } (A \Rightarrow G)
\text{ for every } A \in \mathcal{A}.
$$

$$
% caption: The target of every adjoint functor theorem: an initial object of the
% comma category, i.e. a unit map $u_A$ (the component $\eta_A$ in the prose)
% through which every $f : A \to G(B)$ factors by a unique map $g : F(A) \to B$
% in $\mathcal{B}$.
\begin{tikzpicture}[>=stealth, font=\footnotesize]
\definecolor{acc}{HTML}{4A6FA5}
\node (A)   at (0,0)    {$A$};
\node[acc] (GFA) at (2.8,0)  {$G F(A)$};
\node (GB)  at (2.8,-1.9) {$G(B)$};
\node (FA)  at (6.2,0)  {$F(A)$};
\node (B)   at (6.2,-1.9) {$B$};
\draw[->, acc, thick] (A) -- (GFA) node[midway, above]{$u_A$};
\draw[->, black] (A) -- (GB) node[midway, below left]{$f$};
\draw[->, acc, dashed] (GFA) -- (GB) node[midway, right]{$G(g)$};
\draw[->, acc, dashed, thick] (FA) -- (B) node[midway, right]{$g$ unique};
\node[black, anchor=south] at (6.2,0.35) {in $\mathcal{B}$};
\node[black, anchor=south] at (1.4,0.55) {in $\mathcal{A}$};
\end{tikzpicture}
$$

## The ordered-set case

For ordered sets there is no obstruction. Limits in an ordered set
are meets, so completeness means every subset has a meet, and a map preserves
limits when it preserves the meets that exist.[^leinster-637]

> **Theorem (Adjoint functor theorem for ordered sets).** Let $A$ be an ordered
> set, $B$ a complete ordered set, and $G : B \to A$ order-preserving. Then $G$
> has a left adjoint if and only if $G$ preserves meets.

$$
% caption: The ordered-set theorem: $F(a)$ is the meet of every $b$ with
% $a \le G(b)$, the least element of the subset $\{b : a \le G(b)\}$ of $B$.
\begin{tikzpicture}[>=stealth, font=\footnotesize]
\definecolor{acc}{HTML}{4A6FA5}
\node (a)  at (0,0)      {$a$};
\node[black, anchor=east] at (-0.3,0) {$A$};
\node[acc] (Fa) at (4,-0.4) {$F(a)$};
\node (b1) at (3.2,1.0) {$b_1$};
\node (b2) at (4.8,1.0) {$b_2$};
\node (b3) at (4,2.2)   {$b_3$};
\node[black, anchor=west] at (5.1,2.2) {$B$};
\draw[black] (Fa) -- (b1);
\draw[black] (Fa) -- (b2);
\draw[black] (b1) -- (b3);
\draw[black] (b2) -- (b3);
\draw[->, acc, thick] (a) to[bend left=10] node[midway, below]{$F$} (Fa);
\draw[->, black, dashed] (b3) to[bend left=22] node[midway, above]{$G$} (a);
\end{tikzpicture}
$$

> **Proof.** For the backward direction, fix $a \in A$. The comma category
> $(a \Rightarrow G)$ is the sub-ordered-set $\{\, b \in B : a \le G(b) \,\}$, and
> an initial object is a least element. Completeness of $B$ provides the meet
> $$
> F(a) \;=\; \bigwedge_{\, b \,:\, a \le G(b)} b,
> $$
> and the only question is whether this meet still lies in the subset. It does
> because $G$ preserves meets:
> $$
> G\bigl(F(a)\bigr)
> = G\Bigl(\bigwedge_{b \,:\, a \le G(b)} b\Bigr)
> = \bigwedge_{b \,:\, a \le G(b)} G(b)
> \;\ge\; a .
> $$
> So $F(a)$ is the least element of $(a \Rightarrow G)$, and $F$ is the left
> adjoint: the value of the left adjoint at $a$ is the meet of everything $G$
> sends above $a$. $\blacksquare$

A special case is a classical fact of order theory. Take $A = \mathbf{1}$; then
$G$ preserves meets automatically, and a left adjoint is a least element of $B$.
The theorem says a poset with all meets has a least element, and more generally
all joins, since the join of a subset is the meet of its upper bounds, literally
its _least upper bound_.[^leinster-638]

> **Worked example (Least element as the $\mathcal{A} = \mathbf{1}$ adjoint).**
> Order the divisors of $12$ by divisibility: $1, 2, 3, 4, 6, 12$, with meet
> $\gcd$ and join $\operatorname{lcm}$. This is a finite lattice, hence complete.
> Take $A = \mathbf{1}$ and $G : B \to \mathbf{1}$ the unique map, which preserves
> meets automatically. The theorem produces the left adjoint
> $$
> F(\ast) = \bigwedge_{b \in B} b = \gcd(1, 2, 3, 4, 6, 12) = 1,
> $$
> the least element of $B$, since $1$ divides every divisor of $12$. Dually the
> join of the whole lattice is $\operatorname{lcm}(1, 2, 3, 4, 6, 12) = 12$, its
> greatest element.

## The size obstruction

Copying the ordered-set proof into an arbitrary category, the candidate left
adjoint at $A$ is the limit of the projection functor
$$
F(A) \;=\; \lim P_A,
\qquad
P_A : (A \Rightarrow G) \to \mathcal{B},
\quad
(B, f) \mapsto B,
$$
the categorical version of "the meet of everything $G$ sends above $A$." If this
limit exists in $\mathcal{B}$ and $G$ preserves it, the formula does give a left
adjoint. The trouble is size. Completeness of $\mathcal{B}$ supplies only
_small_ limits, but when $\mathcal{B}$ is a large category the comma category
$(A \Rightarrow G)$ is typically large too, so $\lim P_A$ is a large limit that
nothing guarantees. Demanding that $\mathcal{B}$ have all large limits is
useless (essentially no such categories exist), and restricting to small
$\mathcal{B}$ is also useless: a small category with all small limits is forced
to be a complete preorder, so nothing beyond the ordered-set theorem would be
gained.[^leinster-size]

Each adjoint functor theorem imposes a condition under which the large limit can
be replaced by a small one. The general theorem uses the weakest such condition.

> **Definition (Weakly initial set).** A **weakly initial set** in a category
> $\mathcal{C}$ is a set $\mathbb{S}$ of objects such that every object of
> $\mathcal{C}$ admits at least one map from some member of $\mathbb{S}$.
> ("Set" is essential: $\mathbb{S}$ must be small.)

Weak initiality drops the uniqueness half of initiality and compensates by
allowing a whole set of sources. Applied to the comma category $(A \Rightarrow
G)$, a weakly initial set is nothing but the classical **solution-set condition**: a
set of maps $f_i : A \to G(B_i)$ through which every map $A \to G(B)$ factors as
$G(t) \circ f_i$ for some $i$. The existence of a weakly initial set is a size
restriction on $\mathcal{C}$, comparable to a finiteness condition in algebra.

> **Theorem (General adjoint functor theorem).** Let $\mathcal{A}$ be a
> category, $\mathcal{B}$ a complete, locally small category, and $G :
> \mathcal{B} \to \mathcal{A}$ a functor such that each comma category
> $(A \Rightarrow G)$ has a weakly initial set. Then
> $$
> G \text{ has a left adjoint} \iff G \text{ preserves limits}.
> $$

## Proof of GAFT

The core case is $\mathcal{A} = \mathbf{1}$, where the theorem
asserts that a complete, locally small category with a weakly initial set has an
initial object. The key step mirrors the poset picture: to find the least
element of a complete poset one need not meet _all_ elements, only the elements
of a weakly initial subset.[^leinster-appendix]

> **Lemma (Initial objects from weak initiality).** A complete, locally small
> category $\mathcal{C}$ with a weakly initial set has an initial object.

$$
% caption: The candidate initial object is the limit $0$ of the weakly initial
% set; its projections $p_S$ compose with a witnessing map $j : S \to C$ to reach
% any object $C$.
\begin{tikzpicture}[>=stealth, font=\footnotesize]
\definecolor{acc}{HTML}{4A6FA5}
\node[acc] (Z) at (0,0)  {$0$};
\node (S1) at (3,1.4)   {$S_1$};
\node (S2) at (3,0)     {$S_2$};
\node (S3) at (3,-1.4)  {$S_3$};
\node (C)  at (6,0)     {$C$};
\draw[->, acc, thick] (Z) -- (S1) node[midway, above]{$p_1$};
\draw[->, acc, thick] (Z) -- (S2) node[midway, above]{$p_2$};
\draw[->, acc, thick] (Z) -- (S3) node[midway, below]{$p_3$};
\draw[->, black] (S2) -- (C) node[midway, above]{$j$};
\end{tikzpicture}
$$

Regard the weakly initial set $\mathbb{S}$ as a full subcategory. It is small
(local smallness bounds the hom-sets), so the inclusion $\mathbb{S}
\hookrightarrow \mathcal{C}$ has a limit cone
$\bigl(p_S : 0 \to S\bigr)_{S \in \mathbb{S}}$. The claim is that this vertex
$0$ is initial.

- **Existence.** For $C \in \mathcal{C}$, weak initiality gives some
  $S \in \mathbb{S}$ and $j : S \to C$; then $j \circ p_S : 0 \to C$.
- **Uniqueness.** Let $f, g : 0 \to C$ and form their equalizer
  $i : E \to 0$. Weak initiality gives $S \in \mathbb{S}$ and $h : S \to E$.
  The endomorphism $i h p_S : 0 \to 0$ satisfies, for every
  $S' \in \mathbb{S}$,
  $$
  p_{S'} \circ (i h p_S) = (p_{S'} \, i h) \circ p_S = p_{S'} = p_{S'} \circ 1_0,
  $$
  using that the $p_{S'}$ form a cone. Since limit cones are jointly monic,
  $i h p_S = 1_0$. Now $f$ and $g$ both factor through the equalizer along this
  identity: $f = f \, i h p_S = g \, i h p_S = g$.

$$
% caption: Uniqueness in the lemma: the equalizer of $f$ and $g$ absorbs a
% weakly initial object, producing an endomorphism of the limit vertex that the
% cone forces to be the identity.
\begin{tikzpicture}[>=stealth, font=\footnotesize]
\definecolor{acc}{HTML}{4A6FA5}
\node (Z1) at (0,0)   {$0$};
\node (S)  at (2.2,0) {$S$};
\node (E)  at (4.4,0) {$E$};
\node (Z2) at (6.6,0) {$0$};
\node (C)  at (9.4,0) {$C$};
\draw[->, acc, thick] (Z1) -- (S) node[midway, above]{$p_S$};
\draw[->, black] (S) -- (E) node[midway, above]{$h$};
\draw[->, black] (E) -- (Z2) node[midway, above]{$i$};
\draw[->, acc, thick] (Z2.15) -- (C.165) node[midway, above]{$f$};
\draw[->, acc, thick] (Z2.345) -- (C.195) node[midway, below]{$g$};
\draw[->, black, dashed] (Z1) to[bend right=28] node[midway, below]{composite $= 1_0$} (Z2);
\end{tikzpicture}
$$

The general case reduces to the lemma through two transfers.

- **Comma categories inherit completeness.** When $G$ preserves limits, each
  projection $P_A : (A \Rightarrow G) \to \mathcal{B}$
  [creates limits](/category-theory/limits-colimits/limits-and-functors): a
  diagram in $(A \Rightarrow G)$ is a diagram $E$ in $\mathcal{B}$ together with
  a cone on $G \circ E$ with vertex $A$, and the limit of $E$ in $\mathcal{B}$,
  carried through $G$, acquires a unique compatible cone. So $\mathcal{B}$
  complete forces every $(A \Rightarrow G)$ complete.
- **Local smallness passes down.** Hom-sets of $(A \Rightarrow G)$ are subsets
  of hom-sets of $\mathcal{B}$.

Each $(A \Rightarrow G)$ is then complete, locally small, and has a weakly
initial set by hypothesis, so the lemma hands it an initial object. Initial
objects of all the comma categories are exactly a left adjoint, completing the
proof.

```algorithm
caption: $\textsc{Gaft}(G)$ — building the left adjoint of a limit-preserving $G$
for each object $A$ of $\mathcal{A}$ do
  form the comma category $(A \Rightarrow G)$
  // complete because $P_A$ creates limits; locally small; weakly initial set given
  take a weakly initial set $\mathbb{S}$ in $(A \Rightarrow G)$
  take the limit $0_A$ of the inclusion $\mathbb{S} \hookrightarrow (A \Rightarrow G)$
  // $0_A$ is initial: existence by weak initiality, uniqueness by the equalizer argument
  set $\bigl(F(A), \; \eta_A : A \to G F(A)\bigr) \gets 0_A$
assemble the $F(A)$ into a functor $F$ with unit $\eta$
return $F \dashv G$
```

## Applications

### Free algebras without formal expressions

For any category $\mathcal{B}$ of algebras — $\mathbf{Grp}$, $\mathbf{Vect}_k$,
$\mathbf{Mon}$, $\mathbf{Ring}$ — the forgetful functor $U : \mathcal{B} \to
\mathbf{Set}$ satisfies the hypotheses of GAFT: $\mathcal{B}$ is complete and
locally small, $U$
[preserves limits](/category-theory/limits-colimits/limits-and-functors), and a
cardinality estimate produces the weakly initial sets. For groups: a subgroup
generated by a family $(g_a)_{a \in A}$ has cardinality at most
$\max\{\, |\mathbb{N}|, |A| \,\}$, so the isomorphism classes of groups of
bounded cardinality, each equipped with each possible map from $A$, form a
weakly initial _set_ in $(A \Rightarrow U)$. GAFT concludes that the
[free group functor exists](/category-theory/adjunctions/free-forgetful-adjunctions).[^leinster-6311]

> **Worked example (GAFT hypotheses for the free group on two generators).**
> Check the four hypotheses of GAFT for $U : \mathbf{Grp} \to \mathbf{Set}$ at
> the set $A = \{x, y\}$.
>
> - **$\mathbf{Grp}$ complete.** Products are direct products and the equalizer
>   of $f, g : G \to H$ is the subgroup $\{\, s \in G : f(s) = g(s) \,\}$;
>   products and equalizers together give all small limits.
> - **$\mathbf{Grp}$ locally small.** The homomorphisms $G \to H$ form a set.
> - **$U$ preserves limits.** $U$ has the free-group functor as a left adjoint,
>   so RAPL applies.
> - **Weakly initial set in $(A \Rightarrow U)$.** Any map $f : A \to U(G)$
>   factors through the subgroup generated by $f(x), f(y)$, which has cardinality
>   at most $|\mathbb{N}| = \aleph_0$. The isomorphism classes of at-most-countable
>   groups, each paired with each function $A \to U(G)$, form a set $\mathbb{S}$,
>   and every object of $(A \Rightarrow U)$ receives a map from a member of
>   $\mathbb{S}$.
>
> GAFT then supplies an initial object of $(A \Rightarrow U)$, whose group is the
> free group $F(A)$ on two generators, with unit $\eta_A : A \to U F(A)$ the
> inclusion of the generators. No formal words are constructed.

This replaces the entire hands-on construction — formal words like
$x^{-1} y x^2 z y^{-3}$, the equivalence relation, the well-definedness checks,
the verification of the universal property — with hypothesis checking. What is
lost is explicitness. GAFT is an existence theorem; it names no elements of
$F(A)$. And elements are genuinely hard to reach: an element of $F(A)$ is a map
_into_ $F(A)$, but a left adjoint is understood through maps _out_ of its values.
The same situation recurs for forgetful functors between categories of algebras
($\mathbf{Ab} \to \mathbf{Grp}$, $\mathbf{Grp} \to \mathbf{Mon}$,
$\mathbf{Ring} \to \mathbf{Mon}$, $\mathbf{Vect}_{\mathbb{C}} \to
\mathbf{Vect}_{\mathbb{R}}$), all of which get left adjoints from GAFT at once.

### The special adjoint functor theorem

The **special adjoint functor theorem** (SAFT) trades wider hypotheses on
$\mathcal{B}$ (completeness plus conditions involving well-poweredness and a
cogenerating set) for the removal of every condition on $G$: any
limit-preserving functor from such a $\mathcal{B}$ to a locally small
$\mathcal{A}$ has a left adjoint.[^leinster-6313] The classic application is
topological. The forgetful functor
$$
U : \mathbf{CptHff} \longrightarrow \mathbf{Top}
$$
from compact Hausdorff spaces satisfies SAFT's hypotheses (this requires real
topology, Tychonoff's theorem among it), so it has a left adjoint $F$. For a
space $X$, the space $F(X)$ is the **Stone–Čech compactification**; under mild
separation hypotheses on $X$ the unit $X \to U F(X)$ is an embedding. Since $U$
is a full and faithful inclusion, its left adjoint exhibits $\mathbf{CptHff}$ as
a **reflective subcategory** of $\mathbf{Top}$, with $F$ the reflector. SAFT's
proof even yields a formula: $F(X)$ is the closure of the image of the canonical
map
$$
X \longrightarrow [0, 1]^{\, \mathbf{Top}(X, [0,1])}.
$$

| Theorem | Conditions on $\mathcal{B}$ | Conditions per object of $\mathcal{A}$ | Typical use |
| --- | --- | --- | --- |
| Ordered-set AFT | complete poset | none | Galois connections, closure operators |
| GAFT | complete, locally small | weakly initial set in $(A \Rightarrow G)$ | free algebras |
| SAFT | complete, locally small, well-powered, cogenerating set | none | Stone–Čech compactification |

### Checklist for applying GAFT

Verifying the hypotheses is mechanical; forgetting one is the standard error.

- **$\mathcal{B}$ complete** — usually via a known limit construction
  ([products plus equalizers](/category-theory/limits-colimits/products-equalizers-pullbacks)).
- **$\mathcal{B}$ locally small** — automatic for categories of structured sets.
- **$G$ preserves limits** — often because limits are
  [computed underneath](/category-theory/limits-colimits/computing-limits) the
  forgetful functor.
- **Weakly initial sets** — the genuinely case-specific step; almost always a
  cardinality bound showing that "small witnesses suffice."

The failure mode when the last condition is dropped is not hypothetical.
$\mathbf{Field}$ is locally small, and the forgetful functor to $\mathbf{Set}$
preserves the limits that exist, yet
[no free field exists](/category-theory/adjoints-limits/adjoints-preserve-limits);
completeness fails ($\mathbf{Field}$ has no products, no terminal object), so no
adjoint functor theorem applies, consistent with the direct argument that
$\mathbf{Field}$ has no initial object.

[^leinster-setup]: **Leinster**, _Basic Category Theory_, §6.3 — the template for adjoint functor theorems, the completeness definition, and the counterexample $\mathcal{B} \to \mathbf{1}$ showing limit preservation alone is insufficient.
[^leinster-637]: **Leinster**, _Basic Category Theory_, §6.3, Proposition 6.3.7 — the adjoint functor theorem for ordered sets, with the left adjoint given by $F(a) = \bigwedge \{ b : a \le G(b) \}$.
[^leinster-638]: **Leinster**, _Basic Category Theory_, §6.3, Example 6.3.8 — the case $\mathcal{A} = \mathbf{1}$: a complete poset has a least element, and all-meets implies all-joins via meets of upper bounds.
[^leinster-size]: **Leinster**, _Basic Category Theory_, §6.3 — why the naive limit $\lim P_A$ over the comma category can be large, why demanding large limits or small $\mathcal{B}$ both fail (complete small categories are complete preorders), and the role of size conditions.
[^leinster-appendix]: **Leinster**, _Basic Category Theory_, Appendix — proof of GAFT: Lemma A.1 (a complete, locally small category with a weakly initial set has an initial object, by the limit-of-the-set and equalizer argument) and Lemma A.2 (projections of comma categories create limits).
[^leinster-6311]: **Leinster**, _Basic Category Theory_, §6.3, Examples 6.3.11–6.3.12 and Exercise 6.3.24 — GAFT applied to forgetful functors of algebras; the cardinality argument for weakly initial sets and the resulting existence of free groups without formal expressions.
[^leinster-6313]: **Leinster**, _Basic Category Theory_, §6.3, Theorem 6.3.13 and Example 6.3.14 — the special adjoint functor theorem and the Stone–Čech compactification as its classic application, with the explicit closure formula.
