In $\mathbf{Sets}^\mathbf{Q}$, prove the subobject classifier $\Omega$ is given by $\Omega(q)=\{r\mid r\in\mathbf{R^+},r\ge q\}.$

category-theoryfunctorsrational numberstopos-theory

This is Exercise I.9 of Mac Lane and Moerdijk's, "Sheaves in Geometry and Logic [. . .]".

The Details:

A definition of a subobject classifier is given on page 32, ibid.

Definition: In a category $\mathbf{C}$ with finite limits, a subobject classifier is a monic, ${\rm true}:1\to\Omega$, such that to every monic $S\rightarrowtail X$ in $\mathbf{C}$ there is a unique arrow $\phi$ which, with the given monic, forms a pullback square

$$\begin{array}{ccc}
S & \to & 1 \\
\downarrow & \, & \downarrow {\rm true}\\
X & \stackrel{\dashrightarrow}{\phi} & \Omega.
\end{array}$$

The Question:

Let $\mathbf{Q}$ be the (linearly) ordered set of all rational numbers considered as a category, while $\mathbf{R^+}$ is the set of reals with a symbol $\infty$ adjoined. In $\mathbf{Sets}^\mathbf{Q}$, prove that the subobject classifier $\Omega$ has $\Omega(q) = \{r \mid r\in \mathbf{R^+}, r \ge q\}$.

Context:

I have asked about an example of a subobject classifier in the past:

But that was a long time ago and with a subtle difference in the definition of a subobject classifier.

You can check my recent questions for how to show some subobject classifiers do not exist.

I'm studying topos theory for fun and Exercise I.9 is exciting to me because the truth values of $\mathbf{Sets}^\mathbf{Q}$ (i.e., $\Omega(q)$ in the question, right?) make sense to me intuitively (no pun intended).

My Attempt:

The terminal object in $\mathbf{Sets}^{\mathbf{Q}}$ is, I suppose, $1_{\mathbf{Sets}^{\mathbf{Q}}}:\mathbf{Q}\to \textbf{Sets} $ given by $1_{\mathbf{Sets}^{\mathbf{Q}}}(s)=\{\ast\}$ for a rational number $s$; I'm not sure how to prove this.

Let $p:\mathbf{Q}\to \mathbf{Sets}$ and $q:\mathbf{Q}\to \mathbf{Sets}$ be objects in $\mathbf{Sets}^{\mathbf{Q}}$. Suppose $f: p\rightarrowtail q$ is a monic natural transformation in $\mathbf{Sets}^{\mathbf{Q}}$.

We have $!_s: s\to 1_{\mathbf{Sets}^{\mathbf{Q}}}$ given by (again, I suppose) $!_s: s(\rho)\mapsto \ast$ for all $\rho\in \Bbb Q$ and all $s\in {\rm Ob}(\mathbf{Sets}^{\mathbf{Q}})$.

Let $\Omega\in{\rm Ob}(\mathbf{Sets}^{\mathbf{Q}})$ be as defined in the question.

How do we define $(\phi=)\chi_f:q\dashrightarrow \Omega$ and ${\rm true}: 1_{\mathbf{Sets}^{\mathbf{Q}}}\to \Omega$?

I get that, by definition of a pullback, I need, for $x\in{\rm Ob}(\mathbf{Sets}^{\mathbf{Q}})$ and $h: x\to q$ with ${\rm true}\circ !_x=\chi_f\circ h$, the existence of a unique $x\stackrel{u}{\dashrightarrow}p$ in ${\rm Mor}(\mathbf{Sets}^{\mathbf{Q}})$ such that $f\circ u=h$ and $!_p\circ u=!_x$.

Please help 🙂

Best Answer

There is a trick to calculating subobject classifiers (if they exist) in a functor category $\textbf{Sets}^\textbf C$. Namely if we denote by $h_c=\text{Hom}(c,-):\textbf C \rightarrow \textbf{Sets}$ we know by the yoneda lemma that if $\Omega$ exists $$\text{Sub}(h_c) = \text{Nat}(h_c , \Omega) = \Omega(c)$$

then you can try and figure out what a subobject of $h_c$ looks like. A hint would be that monomorphisms in a functor category $\text{Func}(C,D)$ are precisely the natural transformations which are pointwise monomorphisms, i.e $\phi:F \rightarrow G$ is a monomorphism iff $\phi_c$ is a monomorphism for all $c$.

The terminal object $T$ in a functor category is given by the functor $T$ which takes every object $c$ in $C$ to the terminal object in $D$.