the identity arrow on subobjects (exercise) and that if k 0 : C 00 ¡ C 0, then the
!
diagram
 Sub(C 0 )
Sub(k)
Sub(C)
@
@
@
Sub(k ± k0 ) @ Sub(k0 )
@
@
@?
R
Sub(C 00 )
commutes. But the commutativity of this diagram at the subobject represented
by f0 is equivalent to the outer rectangle of the diagram
0
 k0 
C0
k0 
00 0
C0 C0
00 0
f0 f0 f0
? ? ?
  C0 C
C 00
k0 k
being a pullback when the two smaller squares are, which is true by Exercise 10
of Section 8.3.
5.1.2 De¯nition A topos is a category which
TOP{1 has ¯nite limits;
TOP{2 is cartesian closed;
TOP{3 has a representable subobject functor.
We know that a functor is representable if and only if it has a universal element
(see 4.5.9). A universal element of the subobject functor is an object, usually
called , and a subobject 0 µ  such that for any object A and subobject
A0 µ A, there is a unique arrow ‚ : A ¡  such that there is a pullback
!
A0 A
‚
? ?
0 
5.1 De¯nition of topos 59
It can be proved that 0 is the terminal object and the left arrow is the unique
arrow from A0 ([Barr and Wells, 1985], Proposition 4 of Section 2.3).
The object  is called the subobject classi¯er and the arrow from 0 = 1
¡  is usually denoted true. The arrow ‚ corresponding to a subobject is called
!
the characteristic arrow of the subobject.
The fact that the subobject functor is represented by  means precisely that
there is a natural isomorphism
Á : Sub(¡) ¡ Hom(¡; )
!
which takes a subobject to its characteristic function.
5.1.3 Example The category of sets is a topos. It was shown in 6.1.9 that sets
are a cartesian closed category. A twoelement set, which we call 2, is a subobject
classi¯er. In fact, call the two elements true and false. Given a set S and subset
S0 µ S, de¯ne the characteristic function ‚ : S ¡ ftrue; falseg by
!
(
true if x 2 S0
‚(x) =
false if x 2 S0
=
Then the following square (where the top arrow is inclusion) is a pullback:
S S
0
‚
? ?

1 2
true
Thus 2 is a subobject classi¯er.
5.1.4 Exercises
!
1. Referring to Diagram (ES 5.1), show that if the monomorphism f0 : C0 )¡ C is
equivalent to f1 : C1 )¡ C, then for any g : C ¡ C, the pullbacks f0 : C0 )¡ C 0
0 0 0
! ! !
0 0 0
!
and f1 : C1 )¡ C are also equivalent.
2. Show that the identity arrow C ¡ C induces the identity arrow Sub(C) ¡
! !
Sub(C).
3. Show that the category of ¯nite sets and all functions between them is a topos.
y
4. (Requires some knowledge of in¯nite cardinals.) Show that the category of
¯nite and countably in¯nite sets and all functions between them has a subobject
classi¯er but is not cartesian closed. (Hint: the set of subsets of a countable set
is not countable.)
60 Toposes
5.2 Properties of toposes
We list here some of the properties of toposes, without proof.
5.2.1 In the ¯rst place, a topos is not only cartesian closed, it is locally carte
sian closed (see Section 9.4). This is Corollary 1.43, p. 36 of [Johnstone, 1977],
Corollary 7, p. 182 of [Barr and Wells, 1985] or section 17.2 of [McLarty, 1992].
5.2.2 Power objects In any topos, the object [A ¡ ] has the property that
!
Hom(B; [A ¡ ]) » Hom(A £ B; ) » Sub(A £ B)
! (5.2)
= =
These isomorphisms are natural when the functors are regarded as functors of
either A or of B. The object [A ¡ ] is often called the power object of A and
!
denoted A. It is the topos theoretic version of the powerset of a set. Theorem 1
of Section 5.4 of [Barr and Wells, 1985] implies that a category with ¯nite limits
is a topos if for each object A there is a power object that satis¯es (ES 5.2).
The inverse image and universal image constructions in 9.2.7 for the powerset
of a set can be made on [A ¡ ] for any object A in a topos. The left and
!
right adjoints of the pullback functors (they exist because any topos is locally
cartesian closed) are related to these images via the diagram in [Johnstone, 1977],
Proposition 5.29; this diagram is called the `doctrinal diagram' and is the basis
for introducing elementary (¯rst order) logic into a topos.
¡
!
5.2.3 E®ective equivalence relations Let d; e : E ¡ A be two arrows in a
!
category. For any object B we have a single function
hHom(B; d); Hom(B; e)i : Hom(B; E) ¡ Hom(B; A) £ Hom(B; A)
!
which sends f to the pair (d ± f; e ± f ). If this function is, for each object B, an
isomorphism of Hom(B; E) with an equivalence relation on the set Hom(B; A),
then we say that E is an equivalence relation on the object A. This means
that the image of hHom(B; d); Hom(B; e)i is actually an equivalence relation on
Hom(B; A).
This can be thought of as embodying two separate conditions. First o®, the
function hHom(B; d); Hom(B; e)i must be an injection, because we are supposing
that it maps Hom(B; E) isomorphically to a subset of Hom(B; A) £ Hom(B; A).
Secondly, that subset must satisfy the usual re°exivity, symmetry and transitivity