Prove that if $X^X$ is a terminal object then $X \to \mathbf{1}$ is a monomorphism
I want to know how to solve the following exercise in the textbook Conceptual Mathematics by Lawvere [Session 31, Exercise 2].
Let $X$ be an object in a cartesian closed category. Show that the following two properties are equivalent:
- $X \to \mathbf{1}$ is a monomorphism;
- $X^X = \mathbf{1}$.
I see that (1) is the same as saying that for all objects $A$, there is at most one map $A\to X$. Using this, I can easily prove that (1) implies (2), but the other direction eludes me.
2 answers
The following users marked this post as Works for me:
| User | Comment | Date |
|---|---|---|
| Hernán Ibarra Mejia | (no comment) | Apr 1, 2026 at 16:53 |
Let $f,g$ be any morphisms in $\text{Hom}(A,X)$. We want to show that, if $X^X=1$ then $f=g$. We do this by showing that the projection maps $π_1, π_2: X×X → X$ are equal: $π_1, π_2 \in \text{Hom}(X×X,X) = \text{Hom}(X,X^X) = \text{Hom}(X,1) \sim 1$. Hence $f = π_1 \circ (f × g) = π_2 \circ (f×g) = g$. $\blacksquare$
(This is an old version of my answer, before I completed it.)
First of all note a somewhat tricky point: the condition (2) cannot be weakened to $\text{Hom}(X,X) = 1$. A counterexample can be found in the ccc of (directed multi)graphs $\text{Hom}((n \rightrightarrows e)^{\text{op}}, \text{Set})$.1 For let's define $G_1 \triangleq a → b$; this graph has only one homomorphism to itself, but nevertheless there are two different homomorphisms from the graph $G_2 \triangleq a$ to $G_1$.2 3
And, as the OP indicates, we can prove the direction $(1) \Rightarrow (2)$ by showing that $\text{Hom}(1,X)$ is either $\mathbf{1}$ or $\mathbf{0}$, so $\text{Hom}(X×1,X)$ has to be either $\mathbf{1}$ or $\mathbf{0}$, but we can rule out the $\mathbf{0}$ possibility by exhibiting an element in $X^X$: $\text{id} \in \text{Hom}(1×X,X)$ and so $\text{curry(id)} \in \text{Hom(1,$X^X$)}$, so $\text{Hom}(X,X)$ = $\mathbf{1}$ = $\text{Hom}(1,X^X)$. Thus $X^X$ is uniquely isomorphic to $1$.
Unfortunately it is not yet clear to me how to prove the question in the OP directly. I initially thought of doing a case-analysis proof, but clearly there is a large enough variety of objects $X$ such that $X → 1$ is a monomorphism that that approach doesn't seem at all practicable.
1 We know that this is cc because all categories of presheaves are cc. For more examples of such categories Reyes et al.'s Generic Figures is a very readable and interesting source.
2By the way $G_1$ and $G_2$ are the representable presheaves for the edge ($よ(e) = \text{Hom(-,e)}$) and for the node ($よ(n) = \text{Hom(-,n)}$), respectively, taken over the category $n \rightrightarrows e$ of which the graphs form a presheaf category.
3 And indeed we find that, even though $\text{Hom}(1,G_1^{G_1}) = 1$, $G_1^{G_1}$ is quite different from $1$: $\text{Hom}(1,G_1^{G_1}) = 1$ means that $G_1^{G_1}$ has exactly one loop, but it turns out to have four nodes and four edges, as shown below!
This is because the nodes of $B^A$ (for any graphs $A$ and $B$) correspond to the elements of $\text{Hom}(よ(n),B^A) = \text{Hom}(よ(n) × A,B)$, and likewise the edges of $B^A$ correspond to the elements of $\text{Hom}(よ(e),B^A) = \text{Hom}(よ(e) × A,B)$. The $\text{source}$ and $\text{target}$ mappings from edges to nodes are defined by the Yoneda embedding: $\text{source} = \text{Hom}(よ(s) × A,B)$, $\text{target} = \text{Hom}(よ(t) × A,B)$ where $s$ and $t$ are the morphisms in the source category $n \rightrightarrows e$.

0 comment threads