Cantor's Theorem

Basis
Last updated: Tags: Set Theory

Prerequisites

Every set you can think of — no matter how large, finite or infinite — has a power set that is strictly larger than itself. This is Cantor’s theorem, and its proof is one of the most elegant in all of mathematics: a single self-referential construction called the diagonal set defeats every candidate surjection at once. The result also opens a door that mathematicians did not know existed: there are infinitely many distinct sizes of infinity.

What Cantor’s theorem says

Cantor’s Theorem. For any set AA, there is no surjection from AA onto P(A)\mathcal{P}(A). Equivalently,

A<P(A).(1)|A| < |\mathcal{P}(A)|. \tag{1}

Recall from Maps that A<B|A| < |B| means there is an injection ABA \hookrightarrow B but no bijection — and therefore no surjection — ABA \twoheadrightarrow B. Cantor’s theorem has two parts that together establish (1)(1):

  • The easy direction: an explicit injection from AA into P(A)\mathcal{P}(A) (giving AP(A)|A| \leq |\mathcal{P}(A)|).
  • The hard direction: a proof that no surjection from AA onto P(A)\mathcal{P}(A) can exist (ruling out equality).

The easy direction: injecting A into P(A)

Define the singleton map:

ι ⁣:AP(A),a{a}.\iota \colon A \to \mathcal{P}(A), \quad a \mapsto \{a\}.

This sends each element to the singleton set containing it. If ι(a1)=ι(a2)\iota(a_1) = \iota(a_2), then {a1}={a2}\{a_1\} = \{a_2\}, which forces a1=a2a_1 = a_2. So ι\iota is injective, and therefore AP(A)|A| \leq |\mathcal{P}(A)|.

The diagonal argument

The proof that no surjection can exist uses a technique called the diagonal argument. You build a subset DAD \subseteq A that any candidate surjection must miss — not just some specific bad choice of ff, but every ff imaginable.

Proof. Suppose, for contradiction, that f ⁣:AP(A)f \colon A \to \mathcal{P}(A) is surjective. Define the diagonal set:

D    {xAxf(x)}.(2)D \;\coloneqq\; \{x \in A \mid x \notin f(x)\}. \tag{2}

Since DAD \subseteq A, we have DP(A)D \in \mathcal{P}(A). Because ff is assumed to be surjective, some element of AA must map to DD. Call it dd:

f(d)=D.f(d) = D.

Now ask: is dd a member of DD?

  • If dDd \in D: then by the definition (2)(2) of DD, we need df(d)d \notin f(d). But f(d)=Df(d) = D, so dDd \notin D. Contradiction.
  • If dDd \notin D: then by the definition (2)(2) of DD, we need df(d)d \in f(d). But f(d)=Df(d) = D, so dDd \in D. Contradiction.

Both cases lead to a contradiction. The assumption that ff is surjective must be false. \square

Why the diagonal set works

The definition D={xAxf(x)}D = \{x \in A \mid x \notin f(x)\} is crafted so that DD disagrees with f(x)f(x) on the membership of xx, for every single xAx \in A:

xD        xf(x).(3)x \in D \;\iff\; x \notin f(x). \tag{3}

This means Df(x)D \neq f(x) for any xx: the two sets differ on whether xx belongs. Since DD differs from every set in the range of ff, it cannot be in the range. A surjection must hit everything in P(A)\mathcal{P}(A) — but DD escapes.

The matrix picture

If you could list AA‘s elements as a0,a1,a2,a_0, a_1, a_2, \ldots, you can picture ff as an infinite membership table, where cell (i,j)(i, j) records whether ajf(ai)a_j \in f(a_i):

a0a_0a1a_1a2a_2\cdots
f(a0)f(a_0)?
f(a1)f(a_1)?
f(a2)f(a_2)?
\vdots\ddots

The bold diagonal entries answer ”aif(ai)a_i \in f(a_i)?” for each ii. The diagonal set DD is built by flipping every diagonal entry: include aia_i in DD exactly when the ii-th diagonal entry says “no.” The resulting row differs from row ii in column aia_i, for every ii — so DD matches no row in the table.

The argument works for any set AA, countable or not. The matrix is just a visualization device; the formal proof in the previous section requires no listing of elements.

An infinite tower of cardinalities

For finite sets, equation (1)(1) reduces to n<2nn < 2^n, which holds for all n0n \geq 0. The theorem becomes far more surprising when applied to infinite sets.

Apply (1)(1) to N\mathbb{N}, then to P(N)\mathcal{P}(\mathbb{N}), and keep going:

N  <  P(N)  <  P(P(N))  <  |\mathbb{N}| \;<\; |\mathcal{P}(\mathbb{N})| \;<\; \bigl|\mathcal{P}(\mathcal{P}(\mathbb{N}))\bigr| \;<\; \cdots

This is a strictly ascending chain of infinite cardinalities that never terminates. There is no “largest” infinity — the power set operation always produces a strictly larger one. Infinity, it turns out, comes in many different sizes.

A notable special case connects back to analysis: P(N)=R|\mathcal{P}(\mathbb{N})| = |\mathbb{R}|. This means the real numbers are strictly larger than the natural numbers. You will see a direct proof of this in the Uncountable Set checkpoint.

Summary

  • Cantor’s theorem (1)(1) states that for any set AA, there is no surjection from AA onto P(A)\mathcal{P}(A), so A<P(A)|A| < |\mathcal{P}(A)|.
  • The easy direction is the singleton injection a{a}a \mapsto \{a\}, which shows AP(A)|A| \leq |\mathcal{P}(A)|.
  • The diagonal argument defines D={xAxf(x)}D = \{x \in A \mid x \notin f(x)\}, a subset of AA that lies outside the range of every candidate surjection f ⁣:AP(A)f \colon A \to \mathcal{P}(A).
  • DD escapes the range of ff because it disagrees with f(x)f(x) on the membership of xx, for every xAx \in A.
  • Applying the theorem repeatedly gives an infinite strictly ascending tower N<P(N)<|\mathbb{N}| < |\mathcal{P}(\mathbb{N})| < \cdots: there are infinitely many distinct sizes of infinity.
  • In particular, P(N)=R|\mathcal{P}(\mathbb{N})| = |\mathbb{R}|, so the real numbers form a strictly larger infinity than the natural numbers.