Cantor's diagonal argument is a proof devised by Georg Cantor to demonstrate that the real numbers are not countably infinite. (It is also called the diagonalization argument or the diagonal slash argument.)

Contrary to what many mathematicians believe, the diagonal argument was not Cantor's first proof of the uncountability of the real numbers, but was published three years later. His original argument did not mention decimal expansions, nor any other numeral system.

Since this technique was first used, similar proof constructions have been used many times in a wide range of proofs. These are also known as diagonal arguments by analogy with the argument used in this proof.

Cantor's original proof proceeds by showing that the interval (0,1), that is, the set of real numbers larger than 0 and smaller than 1, is not countably infinite.

The proof by contradiction proceeds as follows:

  • (1) Assume that the interval (0,1) is countably infinite.
  • (2) We may then enumerate the numbers in this interval as a sequence, { r1, r2, r3, ... }
  • (3) We shall now construct a real number x between 0 and 1 by considering the nth digit after the decimal point of the decimal expansion of rn. Assume, for example, that the decimal expansions of the beginning of the sequence are as follows.

      r1 = 0 . 0 1 0 5 1 1 0 ... 
      r2 = 0 . 4 1 3 2 0 4 3 ...
      r3 = 0 . 8 2 4 5 0 2 6 ... 
      r4 = 0 . 2 3 3 0 1 2 6 ...
      r5 = 0 . 4 1 0 7 2 4 6 ... 
      r6 = 0 . 9 9 3 7 8 3 8 ...
      r7 = 0 . 0 1 0 5 1 3 0 ... 

The digits we will consider are indicated in bold. From these digits we define the digits of x as follows.
    • if the nth digit of rn is 0 then the nth digit of x is 1
    • if the nth digit of rn is not 0 then the nth digit of x is 0
For the example above this will result in the following decimal expansion.

       x = 0 . 1 0 0 1 0 0 1 ...

The number x is clearly a real number between 0 and 1.
  • (4) However, it differs in the nth decimal place from rn, so x is not in the set { r1, r2, r3, ... }.
  • (5) This set is therefore not an enumeration of all the reals in the interval (0,1).
  • (6) This contradicts with (2), so the assumption (1) that the interval (0,1) is countably infinite must be false.

Note: Strictly speaking, this argument only shows that the number of decimal expansions of real numbers between 0 and 1 is not countably infinite. But since there are expansions such as 0.01999... and 0.02000... that represent the same real number, this does not immediately imply that the corresponding set of real numbers is also not countably infinite. This can be remedied by disallowing the decimal expansions that end with an infinite series of 9's. In that case it can be shown that for every real number there is a unique corresponding decimal expansion. It is easy to see that the proof then still works because the number x contains only 1's and 0's in its decimal expansion.

The diagonal argument is an example of reductio ad absurdum because it proves a certain proposition (the interval (0,1) is not countably infinite) by showing that the assumption of its negation leads to a contradiction.

Note:The above argument, as given, is fallacious, since the constructed x could be 0. However it does prove that [0,1) is uncountable. Given this we can easily deduce that (0,1) is uncountable: suppose that r1, r2, ... counted (0,1). Then set s1=0, s2 =r1, s3=r2, ... then the s sequence counts [0,1) which was shown impossible--so (0,1) is also uncountable.

A generalized form of the diagonal argument was used by Cantor to prove Cantor's theorem: for every set S the power set of S, i.e., the set of all subsets of S (here written as P(S)), is larger than S itself. This proof proceeds as follows:

Let f be any one-to-one function from S to P(S). It suffices to prove f cannot be surjective. That means that some member of P(S), i.e., some subset of S, is not in the image of f. That set is

If T is in the range of f, then for some t ε S we have T = f(t). Either t ε T or not. If t ε T, then t ε f(t), but, by definition of T, that implies t not ε T. On the other hand, if t not ε T, then t not ε f(t), and by definition of T, that implies t ε T. Either way, we have a contradition.

Note the similarity between the construction of T and the set in Russell's paradox. Its result can be used to show that the notion of the set of all sets is an inconsistent notion in normal set theory; if S would be the set of all sets then P(S) would at the same time be bigger than S and a subset of S.

Analogues of the diagonal argument are widely used in mathematics to prove the existence or nonexistence of certain objects. For example, the conventional proof of the unsolvability of the halting problem is essentially a diagonal argument.

The diagonal argument shows that the set of real numbers is "bigger" than the set of integers. Therefore, we can ask if there is a set whose cardinality is "between" that of the integers and that of the reals. This question leads to the famous continuum hypothesis. Similarly, the question of whether there exists a set whose cardinality is between s and P(s) for some s, leads to the generalized continuum hypothesis.