---
title: Adjunctions from Universal Arrows
module: Adjunctions
moduleNumber: 5
lessonNumber: 3
order: 503
summary: >
  The unit component at a single object is an initial object of a comma
  category, and this universal property alone rebuilds the whole adjunction. A
  functor has a left adjoint exactly when every object admits such a universal
  arrow, and the left adjoint is assembled from them one object at a time. We
  prove the equivalence of all three formulations of adjointness.
topics: [Adjunctions]
sources:
  - book: Leinster
    ref: "§2.3 Adjunctions via initial objects"
  - book: Simmons
    ref: "Ch. 5 §5.5 Free and co-free constructions (universal viewpoint)"
  - book: Barr & Wells
    ref: "Ch. 13 §13.2 Adjoints; §13.3 Further topics on adjoints"
draft: false
---

Everyday mathematics states adjointness neither as a hom-set bijection nor as a
unit–counit pair, but as an extension property: _given a vector
space $V$, any function $f \colon S \to V$ extends uniquely to a linear map
$\bar{f} \colon F(S) \to V$._ A family of such statements, one per object, is
a third complete description of an adjunction, and the most useful for
_constructing_ adjoints, since it builds a left adjoint one object at a time,
with functoriality following automatically.[^lein-open]

## The comma category of an object over a functor

"$f$ extends uniquely along $\eta_S$" is a statement about a
category whose objects are arrows. The general gadget was introduced with the
[constructions on categories](/category-theory/universal-properties/constructions-on-categories);
we need one special case.

> **Definition (Comma category $(A \Rightarrow G)$).** Let
> $G \colon \mathcal{B} \to \mathcal{A}$ be a functor and $A \in \mathcal{A}$ an
> object. The comma category $(A \Rightarrow G)$ has:
>
> - **objects**: pairs $(B, f)$ with $B \in \mathcal{B}$ and
>   $f \colon A \to G(B)$ in $\mathcal{A}$;
> - **maps** $(B, f) \to (B', f')$: maps $q \colon B \to B'$ in $\mathcal{B}$
>   with $G(q) \circ f = f'$.

An object of $(A \Rightarrow G)$ is "a way of mapping $A$ into the image of
$G$," and a map between two such is a map downstairs in $\mathcal{B}$ that is
compatible upstairs. Slice and coslice categories are the special cases where
$G$ is an identity functor.[^lein-comma]

$$
% caption: An object of the comma category $(A \Rightarrow G)$ is an arrow $A \to G(B)$;
% a map to another object $(B', f')$ is a map $q$ in the target category making
% the triangle commute.
\begin{tikzpicture}[>=stealth, font=\small]
  \definecolor{acc}{HTML}{4A6FA5}
  \node (A)   at (0,0)      {$A$};
  \node (GB)  at (3.2,0.9)  {$G(B)$};
  \node (GBp) at (3.2,-0.9) {$G(B${'}$)$};
  \draw[->, thick] (A) -- (GB) node[midway, above left] {$f$};
  \draw[->, thick] (A) -- (GBp) node[midway, below left] {$f${'}};
  \draw[->, acc, thick] (GB) -- (GBp) node[midway, right] {$G(q)$};
  \node[font=\footnotesize, black, align=left, anchor=west] at (5.4,0) {$q$ lives in $\mathbf{B}$;\\the triangle lives in $\mathbf{A}$};
\end{tikzpicture}
$$

Following Leinster's convention, we casually call "$f \colon A \to G(B)$" an
object of $(A \Rightarrow G)$, leaving the pair $(B, f)$ implicit.[^lein-comma]

## The unit is initial

Recall that an initial object of a category is one with exactly one map to every
object; [initial objects](/category-theory/universal-properties/universal-properties)
are unique up to unique isomorphism. The next lemma ties the unit of an
adjunction to initiality.

> **Lemma (Initiality of the unit).** Let $F \dashv G$ be an adjunction with
> unit $\eta$, and let $A \in \mathcal{A}$. Then
> $\eta_A \colon A \to GF(A)$, i.e. the pair $(F(A), \eta_A)$, is an initial
> object of $(A \Rightarrow G)$.

> **Proof.** Let $(B, f)$ be any object of $(A \Rightarrow G)$. A map
> $(F(A), \eta_A) \to (B, f)$ is a map $q \colon F(A) \to B$ with
> $G(q) \circ \eta_A = f$. But $G(q) \circ \eta_A = \bar{q}$ by the
> [recovery lemma](/category-theory/adjunctions/units-and-counits), so the
> condition reads $\bar{q} = f$, i.e. $q = \bar{f}$. Exactly one such $q$ exists:
> the transpose of $f$.[^lein-init] $\blacksquare$
$$
% caption: The unit component $u_A = \eta_A$ is initial in $(A \Rightarrow G)$: every
% arrow $f$ from $A$ into the image of $G$ factors through it by a unique map,
% namely the transpose of $f$.
\begin{tikzpicture}[>=stealth, font=\small]
  \definecolor{acc}{HTML}{4A6FA5}
  \node (A)    at (0,0)      {$A$};
  \node (GFA)  at (3.4,0)    {$GF(A)$};
  \node (GB)   at (3.4,-2.3) {$G(B)$};
  \node (FA)   at (7.2,0)    {$F(A)$};
  \node (B)    at (7.2,-2.3) {$B$};
  \draw[->, acc, thick] (A) -- (GFA) node[midway, above] {$u_A$};
  \draw[->, thick] (A) -- (GB) node[midway, below left] {$f$};
  \draw[->, black, dashed, thick] (GFA) -- (GB) node[midway, right] {$G(q)$};
  \draw[->, black, dashed, thick] (FA) -- (B) node[midway, right] {$q$ unique};
  \node[font=\footnotesize, black, anchor=north] at (7.2,-2.9) {in $\mathbf{B}$};
  \node[font=\footnotesize, black, anchor=north] at (3.4,-2.9) {in $\mathbf{A}$};
\end{tikzpicture}
$$

For the free vector
space, $(S \Rightarrow U)$ has as objects the functions from $S$ into underlying
sets of vector spaces, and initiality of $\eta_S \colon S \to UF(S)$ says: every
function $f \colon S \to U(V)$ factors as $U(\bar{f}) \circ \eta_S$ for a unique
linear $\bar{f} \colon F(S) \to V$. "Extends uniquely" = "is initial."[^lein-open]

> **Worked example (The free monoid on one generator).** Let
> $U \colon \mathbf{Mon} \to \mathbf{Set}$ be forgetful and $S = \{a\}$. An object
> of $(S \Rightarrow U)$ is a monoid $M$ together with a chosen element
> $m = f(a) \in U(M)$. The initial object is the free monoid
> $F(S) = \{a\}^\ast = \{\langle\rangle, \langle a\rangle, \langle aa\rangle, \dots\}$
> with $\eta_S(a) = \langle a\rangle$; concatenation makes
> $F(S) \cong (\mathbb{N}, +, 0)$ via $\langle a^n\rangle \mapsto n$. Initiality: for
> any $(M, m)$ the unique morphism $F(S) \to M$ sends $\langle a^n\rangle \mapsto m^n$,
> the only homomorphism carrying $\langle a\rangle$ to $m$. A monoid homomorphism
> out of $\mathbb{N}$ is thus a single choice of element, exactly the datum that
> $\mathbf{Set}(\{a\}, U(M))$ records.

> **Worked example (Closure as a universal arrow).** In a poset viewed as a thin
> category, a comma category $(A \Rightarrow G)$ is the set of objects above $A$ in
> the image of $G$, and its initial object is the least of them. Let $G = i$ be the
> inclusion of the closed subsets of a space $X$ into all subsets, ordered by
> $\subseteq$. For $A \subseteq X$, an object of $(A \Rightarrow i)$ is a closed set
> $B$ with $A \subseteq B$; the initial one is the smallest closed set containing
> $A$, the closure $\mathrm{Cl}(A)$. The unit $\eta_A \colon A \subseteq \mathrm{Cl}(A)$
> is the universal arrow: every inclusion $A \subseteq B$ into a closed $B$ factors
> through it as $\mathrm{Cl}(A) \subseteq B$.[^lein-closure]

Barr & Wells take this property as their _definition_ of adjointness: $F$ is
left adjoint to $G$ when there is a natural transformation
$\eta \colon 1 \Rightarrow GF$ such that every $f \colon A \to G(B)$ equals
$G(q) \circ \eta_A$ for a unique $q \colon F(A) \to B$ — the **universal mapping
property** of $\eta$, also called the map-lifting property.[^bw-def] In the
language of [universal elements](/category-theory/representables-yoneda/representable-functors),
$\eta_A$ is a universal element of the functor
$\mathcal{A}(A, G(-)) \colon \mathcal{B} \to \mathbf{Set}$.[^bw-universal]

## The third formulation

The lemma has a converse, giving the full three-way equivalence.

> **Theorem (Adjunctions via initial objects).** Let
> $F \colon \mathcal{A} \to \mathcal{B}$ and
> $G \colon \mathcal{B} \to \mathcal{A}$ be functors. There is a one-to-one
> correspondence between:
>
> - adjunctions between $F$ and $G$ (with $F$ on the left);
> - natural transformations $\eta \colon 1_{\mathcal{A}} \Rightarrow GF$ such
>   that $\eta_A$ is initial in $(A \Rightarrow G)$ for every $A$.

> **Proof.** The lemma sends each adjunction to such an $\eta$. Conversely, let
> $\eta$ have every component initial; by the
> [unit–counit theorem](/category-theory/adjunctions/units-and-counits) it
> suffices to produce a unique $\varepsilon \colon FG \Rightarrow 1_{\mathcal{B}}$
> making the triangle identities hold.
>
> - **Uniqueness.** The second triangle identity forces
>   $G(\varepsilon_B) \circ \eta_{G(B)} = 1_{G(B)}$, which says exactly that
>   $\varepsilon_B$ is a map $\big(FG(B), \eta_{G(B)}\big) \to \big(B, 1_{G(B)}\big)$
>   in $(G(B) \Rightarrow G)$. Since $\eta_{G(B)}$ is initial, at most one such
>   map exists.
> - **Existence.** Define $\varepsilon_B$ to be that unique map. Naturality of
>   $\varepsilon$ and the remaining triangle identity
>   $\varepsilon_{F(A)} \circ F(\eta_A) = 1_{F(A)}$ are both proved by the same
>   device: exhibit the two sides as maps out of an initial object of a comma
>   category with the same codomain, and conclude they are equal.[^lein-thm] $\blacksquare$
Initiality converts every verification into
"two maps out of an initial object agree" — no computation, only uniqueness.
This is the standard idiom for working with universal properties, first met in
the [uniqueness-up-to-isomorphism lemma](/category-theory/universal-properties/universal-properties).

$$
% caption: The three equivalent presentations of an adjunction and what converts
% each into the others: transposing identities, recovering the bijection, and
% reading off initiality.
\begin{tikzpicture}[>=stealth, font=\footnotesize,
  pkg/.style={draw, minimum width=34mm, minimum height=12mm, align=center}]
  \definecolor{acc}{HTML}{4A6FA5}
  \node[pkg] (hom) at (0,0)     {hom-set bijection\\one for every pair $A$, $B$};
  \node[pkg] (uc)  at (7.6,0)   {unit and counit\\two triangle identities};
  \node[pkg, draw=acc, text=acc] (ua) at (3.8,-3.0) {universal arrows\\each $u_A$ an initial object};
  \draw[->, thick] (hom.15) -- (uc.165) node[midway, above] {transpose identities};
  \draw[->, thick] (uc.195) -- (hom.345) node[midway, below] {transpose by $G(g)$ after $u_A$};
  \draw[->, acc, thick] (uc.250) -- (ua.20) node[midway, right=2pt] {unit is initial};
  \draw[->, acc, thick] (ua.160) -- (hom.290) node[midway, left=2pt] {rebuild counit};
\end{tikzpicture}
$$

| Formulation | What must be checked | Typical use |
| --- | --- | --- |
| hom-set bijection | a bijection for each pair, natural both ways | recognizing an adjunction already in hand |
| unit and counit | two natural transformations, two identities | formal arguments; composing adjunctions |
| universal arrows | one initial object per object of $\mathcal{A}$ | constructing an adjoint that does not yet exist |

## Building a left adjoint objectwise

The universal-arrow formulation has a corollary that the other two do not make
visible: to produce a left adjoint, no functor needs to be guessed in advance.

> **Corollary (Existence of left adjoints).** A functor
> $G \colon \mathcal{B} \to \mathcal{A}$ has a left adjoint if and only if the
> comma category $(A \Rightarrow G)$ has an initial object for every
> $A \in \mathcal{A}$.

> **Proof sketch.** "Only if" is the initiality lemma. For "if," _choose_ for each
> $A$ an initial object of $(A \Rightarrow G)$ and name it
> $\big(F(A),\; \eta_A \colon A \to GF(A)\big)$ — at this point $F$ is only an
> assignment on objects. For a map $f \colon A \to A'$, define
> $F(f) \colon F(A) \to F(A')$ as the unique map with
>
> $$
> GF(f) \circ \eta_A \;=\; \eta_{A'} \circ f,
> $$
>
> which exists because $\eta_A$ is initial and $\eta_{A'} \circ f$ is an object of
> $(A \Rightarrow G)$. Uniqueness makes $F$ functorial: $F(f' \circ f)$ and
> $F(f') \circ F(f)$ both solve the same factorization problem for the composite,
> so they coincide, and $F(1_A) = 1_{F(A)}$ likewise. The defining square is then
> exactly naturality of $\eta$, and the theorem above upgrades the package to an
> adjunction $F \dashv G$.[^lein-cor] $\blacksquare$
$$
% caption: Assembling the left adjoint on arrows: $F(f)$ is the unique map whose
% $G$-image completes the naturality square over $f$; functoriality follows by
% pasting squares and appealing to uniqueness.
\begin{tikzpicture}[>=stealth, font=\small]
  \definecolor{acc}{HTML}{4A6FA5}
  \node (A)    at (0,0)     {$A$};
  \node (Ap)   at (4.2,0)   {$A${'}};
  \node (GFA)  at (0,-2.4)  {$GF(A)$};
  \node (GFAp) at (4.2,-2.4) {$GF(A${'}$)$};
  \draw[->, thick] (A) -- (Ap) node[midway, above] {$f$};
  \draw[->, acc, thick] (A) -- (GFA) node[midway, left] {$u_A$};
  \draw[->, acc, thick] (Ap) -- (GFAp) node[midway, right] {$u_{A}${'}};
  \draw[->, black, dashed, thick] (GFA) -- (GFAp) node[midway, below] {$GF(f)$};
  \node[font=\footnotesize, black, align=center] at (7.4,-1.2) {$F(f)$ unique\\by initiality of $u_A$};
\end{tikzpicture}
$$

In practice a left adjoint is found by solving the universal problem for each
object separately; uniqueness then assembles the solutions into a functor.
Barr & Wells run exactly this argument for free monoids — the universal property
of $X^\ast$ alone forces $F$ to be a functor and $\eta$ to be
natural[^bw-monoid] — and state the general **pointwise adjointness theorem**:
if for each $A$ there is an object $F(A)$ with
$\mathcal{B}(F(A), -) \cong \mathcal{A}(A, G(-))$ naturally, the assignment
extends uniquely to a left adjoint.[^bw-pointwise] The
[adjoint functor theorem](/category-theory/adjoints-limits/adjoint-functor-theorem)
begins from this corollary: it gives conditions under which the required initial
objects exist.

Everything dualizes. A **right** adjoint to $F \colon \mathcal{A} \to \mathcal{B}$
exists iff each comma category $(F \Rightarrow B)$ has a _terminal_ object, a
component $\varepsilon_B \colon FG(B) \to B$ through which every map
$F(A) \to B$ factors uniquely.[^lein-dual]

## Free and co-free solutions

Simmons frames the same idea as a "universal solution to a problem"; the
vocabulary recurs throughout algebra.[^simm-free] Fix a
functor $G \colon \mathcal{B} \to \mathcal{A}$ (often forgetful, but not
necessarily). The **free problem** for an object $A \in \mathcal{A}$ asks for an
arrow $A \to G(S)$ comparing $A$ with a transported object; a **$G$-free
solution** is a uniform choice of

$$
F(A) \in \mathcal{B},
\qquad
\eta_A \colon A \to (G \circ F)(A),
$$

one per object $A$, such that for each arrow $f \colon A \to G(S)$ there is a
unique $f^\sharp \colon F(A) \to S$ with $G(f^\sharp) \circ \eta_A = f$. This is
word-for-word the initiality condition, stated without naming comma categories.
Two theorems connect the two:

- **Every adjunction yields solutions.** If $F \dashv G$ with unit $\eta$ and
  counit $\varepsilon$, then $(F, \eta, (\cdot)^\sharp)$ is a $G$-free solution
  and $(G, \varepsilon, (\cdot)^\flat)$ is an $F$-co-free solution — the
  transposition formulas are the factorizations.[^simm-thm1]
- **Every solution yields an adjunction.** Given a $G$-free solution, the
  object assignment $F$ fills out to a functor left adjoint to $G$, with
  $(\cdot)^\sharp$ as transposition and $\eta$ as unit. The proof is a chain of
  appeals to the uniqueness clause — Simmons counts "some 8 or 9" — with no
  other ingredient.[^simm-thm2]

The dual **co-free problem** seeks $\varepsilon_S \colon (F \circ G)(S) \to S$
through which every $g \colon F(A) \to S$ factors as $g = \varepsilon_S \circ
F(g^\flat)$ for a unique $g^\flat$; co-free solutions correspond to right
adjoints. Free monoids, groups, and vector spaces are the free constructions;
[indiscrete topologies and co-free algebras](/category-theory/adjunctions/free-forgetful-adjunctions)
the co-free ones.

| Vocabulary | Meaning | Equivalent to |
| --- | --- | --- |
| $G$-free solution at $A$ | $\eta_A \colon A \to GF(A)$, every $f$ factors uniquely | initial object of $(A \Rightarrow G)$ |
| uniform $G$-free solution | one such $\eta_A$ per object $A$ | left adjoint $F \dashv G$ |
| $F$-co-free solution at $S$ | $\varepsilon_S \colon FG(S) \to S$, every $g$ factors uniquely | terminal object of $(F \Rightarrow S)$ |
| uniform $F$-co-free solution | one such $\varepsilon_S$ per object $S$ | right adjoint $F \dashv G$ |

An adjunction can be
recognized (hom-set bijection), manipulated (unit and counit), or built
(universal arrows); the three descriptions suit the three tasks.

[^lein-open]: **Leinster**, _Basic Category Theory_, §2.3 opening — the "everyday" statement of the free vector space's universal property, diagram (2.7), and the claim that it is equivalent to $F \dashv U$ with unit $\eta$.
[^lein-comma]: **Leinster**, §2.3, Definition 2.3.1 and Examples 2.3.3–2.3.4 — the comma category $(P \Rightarrow Q)$, slice and coslice as special cases, the comma category $(A \Rightarrow G)$, and the abuse of notation calling $f$ an object.
[^lein-init]: **Leinster**, §2.3, Lemma 2.3.5 — the unit map $\eta_A$ is an initial object of $(A \Rightarrow G)$; the proof identifies maps out of $(F(A), \eta_A)$ with transposes.
[^bw-def]: **Barr & Wells**, _Category Theory for Computing Science_, §13.2, Definition 13.2.1 — adjointness defined by the universal mapping property of $\eta$: each $f \colon A \to UB$ has a unique $g \colon FA \to B$ with $f = Ug \circ \eta A$.
[^bw-universal]: **Barr & Wells**, §13.2 after Definition 13.2.1, and §13.3, Proposition 13.3.6 — $\eta_A$ is a universal element of $\mathrm{Hom}(A, U(-))$; $U$ has a left adjoint iff this functor has a universal element for every $A$.
[^lein-thm]: **Leinster**, §2.3, Theorem 2.3.6 — one-to-one correspondence between adjunctions and natural transformations $\eta$ with every component initial; the uniqueness and existence of the counit both argued by initiality in $(G(B) \Rightarrow G)$.
[^lein-cor]: **Leinster**, §2.3, Corollary 2.3.7 — $G$ has a left adjoint iff each $(A \Rightarrow G)$ has an initial object, with the objectwise construction of $F$ on arrows and its functoriality "easily checked" from uniqueness.
[^bw-monoid]: **Barr & Wells**, §13.1, Propositions 13.1.2–13.1.4 — the universal mapping property of the free monoid, and the proof that the object assignment $X \mapsto F(X)$ becomes a functor with $\eta$ natural using only that property.
[^bw-pointwise]: **Barr & Wells**, §13.3, Theorem 13.3.5 (Pointwise Adjointness Theorem) — a natural equivalence $\mathrm{Hom}(FA, -) \cong \mathrm{Hom}(A, U-)$ specified objectwise extends uniquely to a left adjoint functor.
[^lein-dual]: **Leinster**, §2.3, Exercise 2.3.9 — the dual of Corollary 2.3.7: right adjoints from terminal objects in the dual comma categories.
[^simm-free]: **Simmons**, _An Introduction to Category Theory_, §5.5 and Definition 5.5.1 — free and co-free problems and solutions across a functor, defined in parallel columns; the mnemonic "for each $f$ there is an $f^\sharp$ making the triangle commute."
[^simm-thm1]: **Simmons**, §5.5, Theorem 5.5.2 — every adjunction provides a $G$-free solution (via $F$, $\eta$, $(\cdot)^\sharp$) and an $F$-co-free solution (via $G$, $\varepsilon$, $(\cdot)^\flat$).
[^simm-thm2]: **Simmons**, §5.5, Theorem 5.5.3 — a $G$-free solution makes the object assignment $F$ a functor left adjoint to $G$ with $\eta$ as unit; the proof is a sequence of appeals to the uniqueness clause.
[^lein-closure]: **Leinster**, _Basic Category Theory_, §2.2, Example 2.2.7 and the following remark — topological closure as left adjoint to the inclusion of closed subsets, with unit $A \subseteq \mathrm{Cl}(A)$ initial among closed sets containing $A$.
