Enough injectives in a topos In the category of sets, each nonempty set is injective since given a mono $A\ \rightarrowtail B$ and an arrow $A\rightarrow C$ we can lift to an arrow $B\rightarrow C$ by giving up injectivity : send each $a\in A\subset B$ to its image in $C$ and do whatever you want with the other elements of $B$.
So for sets injectivity is very simple. Now if one can think of an elementary topos as a category of "variable sets" (whatever that means), is there some sort of "dynamic" analogue for the intuition in the case of the category of sets? Maybe an analogous method of proof?
What's a ("the"?) simple intuitive proof that an elementary topos has enough injectives?
 A: First:

The subobject classifier $\Omega$ is an injective object.

(This is essentially a corollary of the universal property.)
Second:

In a cartesian closed category, if $I$ is an injective object, then the exponential object $I^K$ is also an injective object.

(Here, we are using the fact that if $m : X \to Y$ is a monomorphism, then $m \times \mathrm{id}_K : X \times K \to Y \times K$ is also a monomorphism.)
Finally:

Every object $K$ in an elementary topos embeds in the power object $\Omega^K$.

(Indeed, there are several embeddings $K \to \Omega^K$ – for instance, take the transpose of the morphism $K \times K \to \Omega$ that classifies the diagonal $K \to K \times K$.)
A: The analogue of the argument in the category of sets, when carried out in an elementary topos, gives rather limited information.
In the first place, the analogue of my comment about needing "nonempty" in the case of sets is that in a general topos the only objects $C$ that have a chance of being injective are those that have a global point, i.e., a morphism $p:1\to C$. Otherwise, the trivial morphism $0\to C$ can't be extended from $0$ to $1$, so injectivity fails.
At this point, one can reasonably ask to what extent this necessary condition, existence of a global point, is also sufficient. It is sufficient in Boolean topoi, by essentially the argument in the question.  If you have a monomorphism $A\to B$ and an arbitrary map $f:A\to C$ along with a point $p:1\to C$, then, because the topos is Boolean, $A$ is complemented in $B$, and so you can extend $f$ by making it agree with $p$ on the complement $B-A$.
On the other hand, the existence of a global point $p:1\to C$ does not ensure injectivity of $C$ in any non-Boolean topos. To see this, let me work in the internal logic of such a topos, consider an arbitrary truth value $u$, and try to prove that $u\lor\neg u$.  I'll use the notation $a,b$ for the two obvious global points in $1+1$. Let $C=\{x\in1+1:x=a\lor(u\land (x=b))\}$; that is, $C$ definitely contains $a$, and it contains $b$ exactly to the extent $u$.  So $C$ has a global point, namely $a$. If $C$ is injective, then it's a retract of $1+1$ (extend the identity map of $C$ to $1+1$), say by $r:1+1\to C$. Consider the element $r(b)$ of $C$. It's either $a$ or $b$, as these are all the elements of $C$.  If it's $b$, then $b\in C$ and therefore $u$ holds.  If, on the other hand, $r(b)=a$ then the only way $r$ can be a retraction is that $b\notin C$ (for if $b\in C$ then, being a retraction, $r$ has to fix it) and so $\neg u$.
The conclusion of the preceding two paragraphs is that the property "every object with a global point is injective" of a topos is equivalent to the Boolean property.
We could ask for even more, namely that every object except $0$ is injective.  This would require that every object except $0$ has a global point and the topos is Boolean.  In particular, the topos is two-valued, i.e., the only subobjects of $1$ are $0$ and $1$, for any other subobject of $1$ would fail to have a global point.  In addition, $1$ has to be projective; any surjection to $1$ must have a section, namely any global point of the surjection's domain. Together, these properties imply that $1$ is a generator, i.e., any two distinct morphisms $X\to Y$ have distinct composites with some global point of $X$ (just take a global point of the complement in $X$ of the equalizer of the two morphisms).  This means that the topos is well-pointed, which means (at least to me) that it's practically the category of sets.
All this sounds very pessimistic, but there's another approach to injectivity that works better, namely to observe that the truth-value object $\Omega$ is injective.  This just means that, if $A$ is a subobject of $B$, then any subobject $X$ of $A$ can be extended to a subobject of $B$, and that's clear as you can just compose the two monomorphisms.  It then follows that all powers of $\Omega$ are injective; more importantly, all internal powers $\Omega^X$, for arbitrary objects $X$ of the topos are injective.  (Proof: The functor $(-,\Omega^X)$ sends monomorphisms to epimorphisms  because it's equivalent to $(-\times X,\Omega)$, and $-\times X$ preserves monomorphisms while $(-,\Omega)$ sends monomorphisms to epimorphisms).  And, unless I'm making a silly mistake, every object $Y$ admits a monomorphism to one of the form $\Omega^X$, for example with $X=\Omega^Y$.  So this shows that a topos has enough injectives.
