Cantor's diagonal argument
51426
216495165
2008-06-01T22:26:19Z
Unzerlegbarkeit
7105047
1891 - 3 =/= 1874
[[Image:Diagonal argument 2.svg|right|thumb|250px|An illustration of Cantor's diagonal argument for the existence of [[uncountable set]]s. The sequence at the bottom cannot occur anywhere in the list of sequences above.]]
'''Cantor's diagonal argument''', also called the '''diagonalisation argument''', the '''diagonal slash argument''' or the '''diagonal method''', was published in [[1891]] by [[Georg Cantor]] as a [[mathematical proof|proof]] that there are [[infinity|infinite]] [[set]]s which cannot be put into [[bijection|one-to-one correspondence]] with the infinite set of [[natural number]]s. Such sets are now known as [[uncountable set]]s, and the size of infinite sets is now treated by the theory of [[cardinal number]]s which Cantor began.
The [[Diagonalization|diagonal]] [[argument]] was not Cantor's [[Cantor's first uncountability proof|first proof]] of the uncountability of the [[real number]]s; it was actually published much later than his first proof, which appears in 1874. However, it demonstrates a powerful and general technique, which has since been reused many times in a wide range of proofs, also known as ''diagonal arguments'' by [[analogy]] with the argument used in this proof. The most famous examples are perhaps [[Russell's paradox]], the first of [[Gödel's incompleteness theorems]], and Turing's answer to the [[Entscheidungsproblem]].
== An uncountable set ==
Cantor's original proof considers an infinite sequence of the form (''x''<sub>1</sub>, ''x''<sub>2</sub>, ''x''<sub>3</sub>, ...) where each element ''x''<sub>''i''</sub> is either 0 or 1.
Consider any infinite listing of some of these sequences. We might have for instance:
:''s''<sub>1</sub> = (0, 0, 0, 0, 0, 0, 0, ...)
:''s''<sub>2</sub> = (1, 1, 1, 1, 1, 1, 1, ...)
:''s''<sub>3</sub> = (0, 1, 0, 1, 0, 1, 0, ...)
:''s''<sub>4</sub> = (1, 0, 1, 0, 1, 0, 1, ...)
:''s''<sub>5</sub> = (1, 1, 0, 1, 0, 1, 1, ...)
:''s''<sub>6</sub> = (0, 0, 1, 1, 0, 1, 1, ...)
:''s''<sub>7</sub> = (1, 0, 0, 0, 1, 0, 0, ...)
:...
And in general we shall write
:''s''<sub>''n''</sub> = (''s''<sub>''n'',1</sub>, ''s''<sub>''n'',2</sub>, ''s''<sub>''n'',3</sub>, ''s''<sub>''n'',4</sub>, ...)
that is to say, ''s''<sub>''n'',''m''</sub> is the ''m''<sup>th</sup> element of the ''n''<sup>th</sup> sequence on the list.
It is possible to build a sequence of elements ''s''<sub>0</sub> in such a way that its first element is different from the first element of the first sequence in the list, its second element is different from the second element of the second sequence in the list, and, in general, its ''n''<sup>th</sup> element is different from the ''n''<sup>th</sup> element of the ''n''<sup>th</sup> sequence in the list. That is to say, ''s''<sub>0,''m''</sub> will be 0 if ''s''<sub>''m'',''m''</sub> is 1, and ''s''<sub>0,''m''</sub> will be 1 if ''s''<sub>''m'',''m''</sub> is 0. For instance:
:''s''<sub>1</sub> = (<u>'''0'''</u>, 0, 0, 0, 0, 0, 0, ...)
:''s''<sub>2</sub> = (1, <u>'''1'''</u>, 1, 1, 1, 1, 1, ...)
:''s''<sub>3</sub> = (0, 1, <u>'''0'''</u>, 1, 0, 1, 0, ...)
:''s''<sub>4</sub> = (1, 0, 1, <u>'''0'''</u>, 1, 0, 1, ...)
:''s''<sub>5</sub> = (1, 1, 0, 1, <u>'''0'''</u>, 1, 1, ...)
:''s''<sub>6</sub> = (0, 0, 1, 1, 0, <u>'''1'''</u>, 1, ...)
:''s''<sub>7</sub> = (1, 0, 0, 0, 1, 0, <u>'''0'''</u>, ...)
:...
:''s''<sub>0</sub> = (<u>'''1'''</u>, <u>'''0'''</u>, <u>'''1'''</u>, <u>'''1'''</u>, <u>'''1'''</u>, <u>'''0'''</u>, <u>'''1'''</u>, ...)
(The elements ''s''<sub>1,1</sub>, ''s''<sub>2,2</sub>, ''s''<sub>3,3</sub>, and so on, are here highlighted, showing the origin of the name "diagonal argument". Note that the highlighted elements in ''s''<sub>0</sub> are in every case different from the highlighted elements in the table above it.)
Therefore it may be seen that this new sequence ''s''<sub>0</sub> is distinct from all the sequences in the list. This follows from the fact that if it were identical to, say, the 10th sequence in the list, then we would have ''s''<sub>0,10</sub> = ''s''<sub>10,10</sub>. In general, if it appeared as the ''n''<sup>th</sup> sequence on the list, we would have ''s''<sub>0,''n''</sub> = ''s''<sub>''n'',''n''</sup>, which, due to the construction of ''s''<sub>0</sub>, is impossible.
From this it follows that the set ''T'', consisting of all infinite sequences of zeros and ones, cannot be put into a list ''s''<sub>1</sub>, ''s''<sub>2</sub>, ''s''<sub>3</sub>, ... Otherwise, it would be possible by the above process to construct a sequence ''s''<sub>0</sub> which would both be in ''T'' (because it is a sequence of 0s and 1s which is by the definition of ''T'' in ''T'') and at the same time not in ''T'' (because we can deliberately construct it not to be in the list). ''T'', containing all such sequences, must contain ''s''<sub>0</sub>, which is just such a sequence. But since ''s''<sub>0</sub> does not appear anywhere on the list, ''T'' cannot contain ''s''<sub>0</sub>.
Therefore ''T'' cannot be placed in one-to-one correspondence with the natural numbers. In other words, it is uncountable.
The interpretation of Cantor's result will depend upon one's view of mathematics. To [[constructivism (mathematics)|constructivists]], the argument shows no more than that there is no bijection between the natural numbers and ''T''. It does not rule out the possibility that the latter are [[subcountable]]. In the context of [[classical mathematics]], this is impossible, and the diagonal argument establishes that, although both sets are infinite, there are actually ''more'' infinite sequences of ones and zeros than there are natural numbers.
=== Real numbers ===
The uncountability of the [[real number]]s was already established by [[Cantor's first uncountability proof]], but it also follows from this result.
Naively, one might consider infinite binary strings (sequences of 0s and 1s) as being binary expansions of a real number (between 0 and 1). However, [[0.999...|non-uniqueness of decimal expansions]] (and likewise binary expansions) means that this argument does not work: two different binary strings may correspond to the same real number. Thus the new sequence produced by diagonalisation might equal one of the listed sequences ''as real numbers''.
This technicality can be finessed: one can use ternary expansions of reals, never ending in <math>222\cdots</math> (instead ending in <math>000\cdots</math>), and only using 0 or 1 (not 2) in constructing the new sequence that isn't in the list.
More abstractly, the set ''T'' and the real numbers can be placed into one-to-one correspondence, and we say that they both have the [[cardinality of the continuum]].
As ''T'' is uncountable, it follows that the real numbers must also be uncountable.
One way to show that they have the same cardinality is to produce injections <math>T \to \mathbf{R}</math> and <math>\mathbf{R} \to T</math> and applying the [[Cantor–Bernstein–Schroeder theorem]].
Further discussion in the [[cardinality of the continuum]].
== General sets ==
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 [[subset]]s of ''S'' (here written as '''''P'''''(''S'')), is larger than ''S'' itself. This proof proceeds as follows:
Let ''f'' be any [[Function (mathematics)|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 (mathematics)|image]] of ''f''. Such a set is
:<math>T=\{\,s\in S: s\not\in f(s)\,\}.</math>
''T'' is not in the image of ''f'': for all <math>s \in S</math>, either ''s'' is in ''T'' or not, and in both cases, <math>f(s) \neq T</math>.
If <math>s \in T</math>, then by definition of ''T'', <math>s\not\in f(s)</math>, so <math>T \neq f(s)</math> since <math>s\in T</math> but <math>s \not\in f(s)</math>.
If <math>s \not\in T</math>, then by definition of ''T'', <math>s \in f(s)</math>, so <math>T \neq f(s)</math>, since <math>s \not\in T</math> but <math>s \in f(s)</math>.
For a more complete account of this proof, see [[Cantor's theorem]].
===Consequences===
This result implies that the notion of the [[set of all sets]] is an inconsistent notion. If ''S'' were the set of all sets then '''''P'''''(''S'') would at the same time be bigger than ''S'' and a subset of ''S''.
[[Russell's Paradox]] has shown us that [[naive set theory]], based on an unrestricted [[axiom of comprehension|comprehension scheme]], is contradictory. Note that there is a similarity between the construction of ''T'' and the set in Russell's paradox. Therefore, depending on how we modify the axiom scheme of comprehension in order to avoid Russell's paradox, arguments such as the non-existence of a set of all sets may or may not remain valid.
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 infinite ''S'' leads to the [[Continuum hypothesis#The generalized continuum hypothesis|generalized continuum hypothesis]].
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.
===Version for Quine's New Foundations===
The above proof fails for [[W. V. Quine]]'s "[[New Foundations]]" set theory (NF). In NF, the naive [[axiom of comprehension|axiom scheme of comprehension]] is modified to avoid the paradoxes by introducing a kind of "local" [[type theory]]. In this axiom scheme, <math>\{s \in S: s\not\in f(s)\,\}</math> is '''not''' a set — i.e., does not satisfy the axiom scheme. On the other hand, we might try to create a modified diagonal argument by noticing that <math>\{s \in S: s\not\in f(\{s\})\,\}</math> '''is''' a set in NF. In which case, if '''''P'''''<sub>1</sub>(''S'') is the set of one-element subsets of S and f is a proposed bijection from '''''P'''''<sub>1</sub>(''S'') to '''''P'''''(''S''), one is able to use reductio to prove that |'''''P'''''<sub>1</sub>(''S'')| < |'''''P'''''(''S'')|.
The proof follows by the fact that if ''f'' were indeed a map '''onto''' '''''P'''''(''S'')), then we could find <math>r \in S | f( \{ r \} )</math> coincides with the modified diagonal set, above. We would conclude that if <math>r \not\in f(\{r\})</math>, then <math>r \in f(\{r\})</math> and vice-versa.
It is '''not''' possible to put '''''P'''''<sub>1</sub>(''S'') in a one-to-one relation with ''S'', as the two have different types, and so any function so defined would violate the typing rules for the comprehension scheme.
==See also==
*[[Controversy over Cantor's theory]]
== External links ==
*[http://uk.geocities.com/frege@btinternet.com/cantor/diagarg.htm Original German text of the 1891 proof, with English translation]
[[Category:Set theory]]
[[Category:Mathematical theorems]]
[[Category:Proofs]]
[[Category:Infinity]]
[[Category:Arguments]]
[[cs:Cantorova diagonální metoda]]
[[de:Cantors zweites Diagonalargument]]
[[et:Cantori diagonaaltõestus]]
[[es:Diagonalización de Cantor]]
[[fr:Argument de la diagonale de Cantor]]
[[ko:대각선 논법]]
[[it:Argomento diagonale di Cantor]]
[[he:האלכסון של קנטור]]
[[ka:კანტორის დიაგონალური არგუმენტი]]
[[lmo:Argümeent da la diagunala da Cantor]]
[[hu:Átlós eljárás]]
[[nl:Diagonaalbewijs van Cantor]]
[[ja:カントールの対角線論法]]
[[pl:Metoda przekątniowa]]
[[pt:Argumento de diagonalização de Cantor]]
[[sl:Cantorjev diagonalni dokaz]]
[[fi:Cantorin diagonaaliargumentti]]
[[ta:கேண்டரின் கோணல்கோடு நிறுவல்முறை]]
[[th:วิธีการแนวทแยงของคันทอร์]]
[[tr:Cantor'un Köşegen Yöntemi]]
[[zh:對角論證法]]