The Schroeder-Bernstein Theorem
Can two sets each fit inside one another without being the same size? Suppose injects into and injects into . Is forced? This is exactly what happens for finite numbers, where and imply . This question sits at the foundation of Comparing Cardinalities. Without an answer, the relation "" on cardinal numbers would not even be a legitimate order. It would only be a preorder. The entire arithmetic of infinite sizes would collapse into ambiguity. The Schröder–Bernstein theorem answers this with a resounding yes. It does so constructively: from two injections and , it produces an explicit bijection between and . This is remarkable because the theorem requires no appeal to the Axiom of Choice. It also needs no comparison of "how many" elements are involved. It is a purely combinatorial argument about tracing chains of preimages back through and . The result matters because it converts a mere existence of injections in both directions into genuine equality of cardinality. This gives the antisymmetry law for cardinal comparison. Without it, statements like "" or "" would need hand-crafted bijections every time. This is instead of the much easier task of exhibiting injections in each direction. This is precisely the technique used pervasively when working with Uncountable Sets and Cantor's Diagonal Argument. There, injections are cheap to construct but explicit bijections are often awkward. This article gives the precise statement and a complete rigorous proof. The proof uses the classical partition-into-chains method. It includes two fully worked examples with genuinely asymmetric maps. It also gives a counterexample showing why injectivity cannot be dropped. Finally, it discusses where the theorem sits in the broader landscape. That landscape leads toward Cardinal Arithmetic and the Power Set.
- If and are both injections, there is a bijection .
- The proof is constructive: no Axiom of Choice is needed, unlike many other cardinality facts.
- The classical proof partitions into "chains" traced backward through , and picks or chain by chain.
- This gives antisymmetry for the cardinal order , turning it into a genuine partial order.
- It is the standard tool for proving by exhibiting two injections instead of one bijection.
- Key idea: decompose the domain into disjoint trajectories under the two injections, and each trajectory tells you unambiguously which map to use.
Where this lives today
The theorem is the standard tool throughout mathematics whenever one wants to show two sets have the same cardinality but a direct bijection is inconvenient to write down. In real analysis, it is the cleanest route to showing and more generally that all nondegenerate intervals of are equinumerous, feeding directly into discussions of Uncountable Sets and Cantor's Diagonal Argument where one needs to know the continuum has a single well-defined cardinality regardless of which interval or interval-type representative is used. In set theory and logic, Schröder–Bernstein is precisely what upgrades the preorder on cardinalities into the partial order underlying Cardinal Arithmetic and the Power Set, where facts like and Cantor's theorem rely on having a clean, antisymmetric notion of cardinal comparison to state strict inequality meaningfully. In computer science, the theorem underlies arguments about the equivalence of data representations: showing two encodings of the same information (say, two different ways of serializing trees, or two numbering schemes for pairs of naturals as in the first worked example) have "the same information content" often reduces to producing injections each way rather than a single clean bijection, especially when the encodings are structurally very different. In descriptive set theory and computability theory, Borel and computable equivalents of Schröder–Bernstein (with "injection" replaced by "Borel injection" or "computable injection") are active tools for comparing the complexity of classification problems. In combinatorics, the theorem justifies "bijective-style" cardinality arguments even when only injections are visible, for instance comparing the sizes of two families of combinatorial objects (partitions, lattice paths, tilings) by exhibiting injections in both directions when a direct bijection is elusive — a technique sometimes called the "Schröder–Bernstein trick" in enumerative proofs.
Ask the tutor: Can you walk through why the backward-chain construction never gets stuck in a contradiction — that is, why every element really does fall into exactly one of the three types?
The Schröder–Bernstein Theorem
Let and be sets. Write (" has cardinality at most that of ") if there exists an injection . Write (" and are equinumerous," or ) if there exists a bijection . The Schröder–Bernstein Theorem states: if and , then . Equivalently, in terms of maps: given injections and , there exists a bijection .
Intuition
Think of as embedding a copy of inside , and as embedding a copy of inside . Composing gives an injection that embeds into itself, possibly missing some points of (those never hit by ). The same happens on the side. Naively one might hope itself is already a bijection, but there is no reason for that — may miss huge parts of , with those gaps only reachable via . The resolution is to sort every point of and every point of into one of three types of infinite (or finite) backward trajectories, obtained by alternately undoing and : keep pulling a point back along then then , etc., as long as those preimages exist.
- Trajectories that terminate in (an element of with no -preimage in , or rather whose chain traced backward dies at a point in not in the image of ): call these -stoppers.
- Trajectories that terminate in : call these -stoppers.
- Trajectories that never terminate (they extend infinitely backward, or loop): call these infinite/cyclic chains.
On -stopper chains, turns out to biject the -part onto the -part of the chain. On -stopper chains and infinite chains, (equivalently restricted the other way) does the job. Gluing these three pieces together yields a single bijection .
The central theorem
Let and be sets. Suppose there exist injections
Then there exists a bijection . Consequently , i.e. .
Proof technique: partition into three classes by tracing backward orbits under and , and define piecewise using on two classes and on the third. We verify the partition is well-defined, the pieces are disjoint and exhaustive, and the resulting piecewise map is a well-defined bijection.
Step 1: Define backward chains. For , define a (possibly infinite, possibly terminating) sequence of ancestors by alternately applying , then asking whether the result has a -preimage, and so on. Formally, we build a maximal sequence
where , and inductively, having defined :
- if is even (so ) and for some , set (this is unique since is injective);
- if is odd (so ) and for some , set (unique since is injective);
- otherwise (no such preimage exists), the sequence terminates at .
Because are injective, at each stage the required preimage, if it exists, is unique, so this backward sequence is well-defined once is fixed — there is no ambiguity in how far back it goes or what the terms are. The sequence either terminates after finitely many steps at an element of with no -preimage (an "-stopper"), terminates at an element of with no -preimage (a "-stopper"), or continues indefinitely backward forever (an "infinite chain"). The same construction, started at , is defined symmetrically and traces the same underlying bi-infinite (or terminating) sequence — every element of occurring in it has the same backward chain regardless of which element of the chain we start from, since the recursion is deterministic in both directions where preimages exist.
Step 2: Classify elements by the type of their chain. Define, for : is of type if its backward chain terminates at an element of (an -stopper); of type if its chain terminates at an element of (a -stopper); of type if its chain never terminates in either direction. Every element in the same backward chain gets the same type, because the type is a property of the whole chain, not of the particular starting point — the chain is a single object traced through all of , and "where it stops" (if it stops) is intrinsic to it. Define the same three types for elements , using the identical chain-tracing rule. Thus we obtain a partition
where = elements of of type , and similarly for the other five pieces. These are genuinely disjoint and exhaustive because "type" is a well-defined trichotomy: a chain terminates in , terminates in , or never terminates — exactly one of these three holds for any given chain, since termination point (if any) is unique by the uniqueness of preimages noted in Step 1.
Step 3: restricts to a bijection . ( maps into .) Let . The chain of terminates at some (with no -preimage). Consider . The backward chain of is obtained by prepending to the chain of (since applying the chain-tracing rule to asks for an -preimage, and is exactly that preimage, unique by injectivity of ) — so the chain of is the same chain as that of , only shifted by one step, and it terminates at the very same . Hence has type , i.e. . (Injective.) is injective on all of , hence in particular on . (Surjective onto .) Let . Its chain terminates at some with no -preimage. Since the chain does not terminate at itself unless has no -preimage — but if had no -preimage, the chain would terminate at , contradicting (type means it terminates in , not in ; termination point is unique, so it cannot terminate at both). Hence does have an -preimage with . By the argument above (chain of = chain of shifted), has the same chain type as , namely type , so . Thus for some , proving surjectivity. Hence is a bijection.
Step 4: restricts to a bijection , hence is a bijection . This is symmetric to Step 3 with the roles of and interchanged. Concretely: for , the chain terminates at some with no -preimage; then has the same chain (shifted), so ; is injective everywhere hence on ; and surjectivity onto follows because any must have a -preimage in (else its chain would terminate at , contradicting type ), and that preimage lies in by the shift argument. Hence is a bijection, so its inverse
is also a bijection.
Step 5: restricts to a bijection . Let ; its chain never terminates in either direction. As in Step 3, the chain of is the same chain shifted by one, hence also never terminates, so . Thus , and is injective there since it is injective on all of . For surjectivity onto : let ; since its chain never terminates, in particular it does not terminate at , so has an -preimage (if it had none, the chain would stop at ). By the shift argument, 's chain is the same infinite chain, so and . Hence is a bijection.
Step 6: Assemble the global bijection. Define by
This is well-defined since partition (Step 2), so every falls into exactly one case, with no conflict. Injectivity of . Suppose . By Step 3 and Step 5, is injective on (indeed injective on all of ), and by Step 4, is injective on being an actual function inverse. It remains to check no collision across the pieces: if and with , then since (images under Steps 3, 5) while (Step 4), and are pairwise disjoint (Step 2), this is impossible unless no such pair exists — so equality across pieces cannot occur, and must come from the same piece, forcing by injectivity within that piece. Surjectivity of . Given , by Step 2, lies in exactly one of . If , Step 3 gives with , and then . If , Step 5 gives with , so . If , then by Step 4 (since maps into ), and . In every case is hit, so is surjective. Hence is a bijection, and .
∎For all sets : if and , then . Equivalently, the relation (meaning ) is antisymmetric up to equinumerosity, making a genuine partial order on cardinal numbers (once cardinals are taken as equivalence classes under ).
Immediate restatement of the theorem: means an injection exists, and means an injection exists; the theorem produces a bijection , i.e. .
∎Worked examples
Example 1: via two asymmetric injections, no explicit pairing function needed. Let and . We build two injections that are not mirror images of each other, then apply Schröder–Bernstein rather than writing down the classical Cantor pairing bijection directly. Define by
This is injective: if then forces . Define by
This is injective by uniqueness of prime factorization: if , comparing exponents of the primes and in each factorization forces and . Both and are highly asymmetric — hits only pairs with second coordinate , and hits only numbers of the form (missing, e.g., , , , , and most naturals). Neither is a bijection on its own. Schröder–Bernstein guarantees a bijection exists regardless. Let's trace the chain-classification concretely for a few elements to see the machinery work.
- Take . Does have an -preimage? 's image is , and is not of that form, so has no -preimage. Hence the chain starting at terminates immediately at : this is a -stopper, so .
- By Step 4 of the proof, we then use near this element: , and indeed provided 's chain is confirmed type (traced backward: , and has no -preimage as shown, so the chain from is stop, terminating in ; type confirmed).
- Now take . Trace backward: does have a -preimage? We'd need , impossible since is neither a power of times a power of (it's prime, not or ). So the chain starting at terminates immediately at : an -stopper, type . By Step 3, .
- Take : does have a -preimage, i.e. is for some ? No, since always. So is an -stopper too, and .
- Take : it does have a -preimage . Continue the chain backward from : does have an -preimage? Only pairs are in 's image, and has second coordinate , so no. Chain: stop in . Type , so .
This example shows the theorem is not just an abstract existence claim — the chain-tracing algorithm is fully explicit and computable here, even though were chosen with very different "shapes."
Example 2: , a case with genuinely infinite chains. Let and . Define
(the inclusion, trivially injective), and
which is injective since it is a strictly increasing affine map ( directly from the formula). Note and are deliberately asymmetric in construction — one is the identity inclusion, the other a nontrivial affine contraction — unlike a "symmetric" pair such as , which wouldn't even be well typed here since . Trace chains. Consider . Is in the image of ? Image of is , and , so has no -preimage: chain stops immediately at , type . Consider . Same reasoning: , so has no -preimage. Type as well. Now trace . Does have a -preimage in ? We need with , i.e. . Yes: . Continue backward from : as computed above, has no -preimage, so the chain is
So is type , meaning . Similarly , and by the same logic is type with . Now take , a "generic" point outside . Does it have a -preimage? We'd need with , i.e. ... let's actually solve: . So it does have a preimage, . This means points near the edges of can still be reached by , and the chain continues: from , does it have an -preimage? Yes, trivially since is inclusion and . Continue: from , does it have a -preimage? Solve . No preimage — chain stops at . So the full chain is
type , and . Generic points of that are never expressible as iterates landing in -type preimage chains from or will be type and map via (identity); only the countably many points in the specific backward orbit of under then (namely 's preimage chain, etc.) are type and get redirected via . The resulting is an explicit, computable bijection built entirely from these two very different-looking injections.
Drop injectivity of (weakening one hypothesis) and keep everything else. Let and . Define by — this is injective, so genuinely holds. Define by — this is not injective, since . But is still a perfectly good function , and in fact it is surjective, which might tempt one to think " maps onto , so surely still holds and by some symmetric argument ." However , so no bijection can possibly exist — the conclusion of Schröder–Bernstein genuinely fails here. The point is that existing as some function (even a surjection) does not give in the required sense; the theorem's hypothesis is specifically that is injective, i.e. via , not merely that a function exists. Confusing "there is a function " with "" is exactly the gap this counterexample exposes: surjections and injections point in opposite directions for cardinal comparison, and swapping them silently breaks the theorem. This also shows finiteness doesn't save you: for finite sets, and (correctly, via injections both ways) does force , consistent with Schröder–Bernstein; but the malformed argument above (using a non-injective ) is precisely the wrong hypothesis, and dropping injectivity is what breaks it, as the mismatched cardinalities confirm.
Scope, edge cases & common traps
| Situation | What holds | Common error |
|---|---|---|
| both injective | Theorem applies; bijection exists | Assuming or itself must already be the bijection |
| injective, only surjective | Theorem does not apply as stated | Treating " surjects onto " as equivalent to "" |
| finite | Classical fact recovered as a special case | Thinking the theorem is only interesting/only true for infinite sets |
| or empty | Trivial: if then vacuously and forces | Forgetting to check degenerate cases separately in a general proof |
| Chains that are literally infinite in both directions | Assigned type , handled by (Step 5) | Assuming every chain must terminate somewhere |
| Composition or | Need not be surjective on its own | Believing injective automatically forces it to be onto |
The mathematician behind it
Origins · 1 minFelix Bernstein and how this was discovered
Felix Bernstein proved the theorem as a young student in 1897, at around age 19, while attending Cantor's lectures in Halle. Ernst Schröder had earlier announced a proof (1896) that turned out to be flawed, and Cantor himself had stated the result and sketched an argument relying on the (then-unjustified) well-ordering of cardinals, effectively assuming a form of the Axiom of Choice. Bernstein's contribution was a genuinely choice-free, combinatorial proof, communicated to Cantor and later published with credit shared among Cantor, Schröder, and Bernstein — hence the theorem's several names: Schröder–Bernstein, Cantor–Schröder–Bernstein, or occasionally Cantor–Bernstein. Bernstein went on to a career spanning mathematics, statistics, and human genetics, including foundational work on blood type inheritance.
Does Schröder–Bernstein require the Axiom of Choice?
No. This is one of its most notable features: the chain-decomposition proof given here is fully constructive and choice-free. Every step — tracing a backward chain, classifying it as type , type , or type , and choosing or accordingly — is determined by the structure of and themselves, with no arbitrary selection required. This contrasts with many other cardinality facts, such as "every two cardinals are comparable" (trichotomy for cardinals), which genuinely does require some form of the Axiom of Choice. Historically, Cantor's original argument for Schröder–Bernstein implicitly used well-ordering (a choice-dependent fact), and it was precisely Bernstein's contribution to remove that dependency.
Is the bijection h produced by the proof unique?
No, and it need not be. The theorem only asserts existence of some bijection ; there can be, and typically are, many different bijections between and once is established, especially for infinite sets. The specific constructed by the chain-decomposition method depends on the particular and chosen — different injections realizing the same facts will in general yield different bijections . Uniqueness is never claimed or needed; only existence matters for concluding .
Can the theorem fail for proper classes instead of sets?
The theorem as stated is about sets, and set-theoretic tools like partitioning into chains work cleanly at that level. For proper classes (collections too large to be sets, such as the class of all ordinals), the usual formal apparatus of functions-as-sets-of-pairs and injections needs care, since a "function" between proper classes is itself typically a class-sized entity requiring extensions of ZFC (like NBG or MK class theory) to discuss rigorously. Analogues of Schröder–Bernstein for well-orderable proper classes can be formulated in such extended systems, but the classical statement and proof are for sets, and that is the standard setting in which the theorem is used.
How does this relate to comparing |A| ≤ |B| as a linear order?
Schröder–Bernstein gives antisymmetry: and imply . Reflexivity ( via the identity map) is trivial. Transitivity ( and imply ) follows because a composition of injections is injective. Together these three facts make (descending to cardinal numbers, i.e. equivalence classes under ) a genuine partial order. Full comparability — that for any either or — is a separate, stronger fact that does require the Axiom of Choice (via well-ordering), so on cardinals is only guaranteed to be a linear order once choice is assumed.
Why can't we just directly build the bijection from f and g without the chain argument?
In general and individually are far from bijective — might miss most of , and might miss most of — so there is no shortcut that avoids some case analysis. The chain-decomposition method is the standard way to make the case analysis rigorous and choice-free: it identifies, for every single point, an unambiguous rule (use , or use ) based on the intrinsic structure of how that point's backward orbit behaves under alternating preimages. Alternative proofs exist (e.g. via the Knaster–Tarski fixed-point theorem applied to a suitable monotone set operator), but they are essentially reformulations of the same underlying idea of splitting into a "stable" region handled by and a "leftover" region handled by .
Does the theorem tell us anything when A and B are both finite?
Yes, though in that setting it recovers something already intuitively obvious: if , are finite and there are injections both ways, then and as natural numbers, forcing , and hence any bijection between two finite sets of equal size exists trivially (list elements and pair them up). The genuine content and historical importance of the theorem is entirely in the infinite case, where " and imply " is far from obvious and cannot be checked by direct counting.
What's a quick way to remember the proof idea?
Picture every point as sitting at the end of a backward trail formed by alternately undoing then . Three things can happen to a trail: it dead-ends on the side, it dead-ends on the side, or it runs forever without dead-ending. On an -dead-end trail, follow forward; on a -dead-end trail or an endless trail, follow backward (i.e., use ). Every point falls into exactly one of these three trail-types, so this rule assigns each point of a definite image in with no overlaps and no gaps — that assignment is the desired bijection.