Subobject classifier of presheaf categories without using sieve

category-theory

As part of Leinster's Basic Category Theory exercise, I am trying to find a subobject classifier of presheaf category. Let $\textbf{A}$ be a small category. Then there is a functor $\text{Sub}:[\textbf{A}^{op},\textbf{Set}]^{op}\to\textbf{Set}$ sending every presheaf $X$ on $\textbf{A}$ to the set of subobjects of $X$. Here is the definition he used for the exercise:

A subobject classifier of $[\textbf{A}^{op},\textbf{Set}]$ is a representing object of $\text{Sub}$, provided it is representble

I have successfully use this to find a candidate of the subobject classifier $\Omega$, by assuming that it exists:
$$\text{Sub}(H_A)\cong H_\Omega(H_A)\cong [\textbf{A}^{op},\textbf{Set}](H_A,\Omega)\cong \Omega(A)$$
Here the first isomorphism is from the representability and the last one is from Yoneda Lemma.

Using this observation, we define $\Omega:\textbf{A}^{op}\to\textbf{Set}$ by
$$\Omega(A)=\text{Sub}(H_A)$$
$$\Omega(f:A'\to A)=\text{Sub}(H_f)$$
I would like to find a natural isomorphism $\alpha:\text{Sub}\to H_\Omega$. Here is where I got stuck: how do we define the component $\alpha_X$? A subobject of $X$ is a natural transformation into $X$, so an element in $\text{Sub}(X)$ has $X$ being the codomain. On the other hand, an element in $H_\Omega(X)=[\textbf{A}^{op},\textbf{Set}](X,\Omega)$ has $X$ being the domain

I have been searching around, but it seems like every explanation use the concept of sieve and subfunctors (which are something I haven't touched at all). I hope someone can give some insight and finish the argument

P.S. throughout this post, I use $H_\bullet$ for the Yoneda embeddings. The domains are made implicit for simplicity

Best Answer

Here's the idea.

The monomorphisms in the presheaf category are pointwise monomorphisms, so we can identify subobjects of a presheaf $X\in[\mathbf{A}^\text{op},\newcommand\Set{\mathbf{Set}}\Set]$ with subpresheaves of $X$, in the sense of presheaves $F$ such that $F(a)\subseteq X(a)$ for all objects $a$, and for $f:a\to a'$, $X(f)$ sends elements of $F(a')$ to $F(a)$.

Now suppose we have a subpresheaf $F$ of some presheaf $X$. We want to construct a natural transformation $X\to \newcommand\Sub{\operatorname{Sub}}\Sub(H_{-})$.

Thus for $a\in \newcommand\A{\mathbf{A}}\A$, $\alpha\in X(a)$, we need to construct a subpresheaf of $H_a$. By Yoneda, $\alpha$ corresponds to a natural transformation $H_a\to X$, so we can just take the preimage of $F$ in $H_a$. In other words, define $G_\alpha\newcommand\into\hookrightarrow\into H_a$ by $$G_\alpha(a') = \{ f : a'\to a \text{ such that } f^*\alpha \in F(a')\subseteq X(a')\}.$$ Then we define $\eta : X\to \Sub(H_-)$ by $\eta \alpha = G_\alpha$.

Conversely, from a natural transformation, $\eta : X\to \Sub(H_-)$, we can recover the subobject $F$ by $$F(a) =\{ \alpha\in X(a) \text{ such that } 1_a \in (\eta_a\alpha)(a)\subseteq H_a(a)\}.$$

Side note: a subfunctor is a subobject of a functor, and a sieve is a subobject of a representable functor, but we don't really need to use these words to prove the claim.

Edit: To see that $\eta$ is natural, let $f:a\to a'$, let $\alpha\in X(a')$. We need to show that $\eta f^*\alpha = f^*\eta\alpha$.

Now $$ (\eta f^*\alpha)(a'') = \{ g: a''\to a \text{ such that } g^*f^*\alpha \in F(a'') \}, $$ and $$ (f^*\eta\alpha)(a'') = (f_*)^{-1}((\eta\alpha)(a'')) = \{ g: a''\to a \text{ such that } (f\circ g)^* \alpha \in F(a'') \}. $$

Thus, since $(f\circ g)^* = g^*f^*$, we have naturality.

Edit 2

I've been asked how we show that if we start with a natural transformation $\eta : X\to \Sub(H_-)$ and construct the associated subobject $F$ of $X$ how we show that the natural transformation $\overline{F}$ associated to $F$ is in fact $\eta$.

Let $a,a'\in \mathbf{A}$. Recall that $$F(a) = \{ \alpha \in X(a) \text{ such that } 1_a \in \eta_a(\alpha)(a) \}.$$ We also know that if $\alpha \in X(a)$, then $$ \overline{F}_a(\alpha)(a') = \{ g:a'\to a \text{ such that } g^*\alpha \in F(a) \}. $$ Putting these together we can compute $$ \begin{aligned} \overline{F}_a(\alpha)(a') &= \{ g:a'\to a \text{ such that } 1_{a'}\in \eta_{a'}(g^*\alpha)(a') \} \\ &= \{ g:a'\to a \text{ such that } 1_{a'}\in g^*(\eta_{a}\alpha)(a') \} \\ &= \{ g:a'\to a \text{ such that } 1_{a'}\in (g_*)^{-1}(\eta_{a}\alpha)(a') \} \\ &= \{ g:a'\to a \text{ such that } g\circ 1_{a'}\in (\eta_{a}\alpha)(a') \} \\ &= \{ g:a'\to a \text{ such that } g\in (\eta_{a}\alpha)(a') \} \\ &=(\eta_a\alpha)(a'). \end{aligned} $$

Thus as subobjects of $H_a$, we have that $\eta_a\alpha = \overline{F}_a\alpha$, as desired.

Related Question