Hi. I was away for a while and read the postings from the last couple of months only now. Hence this delayed reaction on Peter Freyd's comments from January on the Cantor-Schroeder-Bernstein theorem.
I trust that CSB holds for any boolean topos. (Anyone want to confirm?)
The other way around, the validity of CSB in a topos ALMOST implies that the topos is boolean. "Almost" means a slightly stronger version needs to be considered: (CSB*) if f:A->B and g:B->A are monics then there is an iso h:A->B such that for every x in A holds h(x) = f(x) or h(x) = g^{-1}(x) The usual set-theoretical proof of CSB (which goes through in boolean toposes) actually yields (CSB*). In return, (CSB*) implies booleanness. We assume that every topos has an object of natural numbers. PROPOSITION. A topos is boolean if and only if it satisfies (CSB*). PROOF of the "if" part: Let X be a subobject of Y. We use (CSB*) to construct its complement. Define A = YxN B = X+(YxN) (where N is the object of natural numbers). Let f:A-->B be the inclusion, and g:B-->A the unique arrow which maps X into the first copy of Y in A, while it takes the copies of Y contained in B into the second one, the third one and so on. (Formally, g is defined using the universal property of coproducts, and the structure of N.) It is clear that both f and g are monics. By (CSB*), there is a bijection h:A-->B with h(x)=f(x) or h(x)=g^{-1}(x). This means that the union of C = {z | h(z)=f(z)} and D = {z | h(z)=g^{-1}(z)} covers A. On the other hand, the definitions of f and g imply that C and D are disjoint. So they are complements in A. By pulling back C and D along the inclusion of Y iso Yx{0} in A, we get two complementary subobjects of Y. The claim is now that the intersection (pullback) X' of D and Yx{0} is isomorphic to X -- so that the intersection of C and Yx{0} yields the complement of X in Y. First of all, each element <y,n> of D must surely be in the image of g. Thus, if <y,0> is in D, then y must be in X. So X' is contained in Xx{0}. The other way around, since h(C) is contained in f(C), the intersection in B of X and h(C) must be empty. Therefore, X must be contained in h(D): indeed, h is an iso, and the direct images h(C) and h(D) must be complementary in B. But h(D) is contained in g^{-1}(D). So X is in g^{-1}(D), i.e. g(X) is in D. Hence, Xx{0}=g(X) is contained in X'. Regards to all, Dusko --