Solution (source code)

= Solution

For a <locally small category> $\mathcal C$, the <Yoneda lemma> states that
$$
\operatorname{Nat}(\mathcal C(-,A),F)\cong F(A),
\qquad \alpha\longmapsto\alpha_A(1_A),
$$
naturally in both $A\in\mathcal C$ and $F:\mathcal C^{\mathrm{op}}\to\mathbf{Set}$. Taking $F=\mathcal C(-,B)$ gives
$$
\operatorname{Nat}(yA,yB)\cong\mathcal C(A,B),
$$
so the <Yoneda embedding> is full and faithful.

For small $\mathcal C$, the <presheaf category> has pointwise finite limits and colimits, exponential
$$
(G^F)(C)=\operatorname{Nat}(yC\times F,G),
$$
and a <subobject classifier> whose elements at $C$ are sieves on $C$. Hence it is a <presheaf topos>.

If $\mathcal C$ has finite limits, the Yoneda embedding preserves them: maps into a limiting object are the corresponding limits of hom-sets. Its essential image is therefore a full subcategory of the presheaf topos closed under finite limits. Since Yoneda is full and faithful, this proves the assertion up to equivalence.