Explore the argument step by step. Click any cell to modify a digit, then press Play to watch the proof unfold.
6×6
The grid shows 6 binary sequences — each row is a real in [0,1] written in binary. We want to prove no list can contain all of them.
Edit cells or resize with ±. Press Play to watch the diagonal argument.
The Diagonal Construction
Define a new number d=0.d1d2d3… by flipping the diagonal:
di={10if bi,i=0if bi,i=1
In other words, di=bi,i for every i.
The Contradiction
∎
Proof
1
Assume a complete enumeration s1,s2,s3,… of all reals in [0,1] exists.
2
Construct d by flipping the diagonal: set di=1−bi,i.
3
For every n∈N, the number d differs from sn at position n, so d=sn.
4
But d∈[0,1], so d should be in the list — contradiction.
Result
Conclusion: There is no surjection f:N→[0,1]. The set of real numbers is uncountable: ∣R∣>∣N∣.
We write ∣N∣=ℵ0 and ∣R∣=c=2ℵ0.
Cantor's Theorem
From Reals to Power Sets
Proof
Cantor's Theorem. For any set A, there is no surjection f:A→P(A).
Define the rogue setR={a∈A:a∈/f(a)}. Then R=f(x) for every x: if x∈R then x∈/f(x)=R, and if x∈/R then x∈f(x)=R — either way a contradiction. Flipping membership (∈ vs ∈/) plays the same role as flipping bits.
Interactive: Power Set Argument
Power Set Diagonal Explorer
Explore Cantor's Theorem with a finite set. Toggle memberships in the grid, then watch the rogue set construction unfold.
4
Set up a mapping f: A → P(A) where A = {1,…,4}. Each row i shows which elements belong to f(i). We'll prove no such map can be surjective.
Toggle cells to change membership. Resize with ±, then press Play.