Flo Tur said:
OK, no binary.
Sup(p)ose I have the list of rationals.
Can you prove that any diagonal number is irrational?
No matter how I order my list.
Um, yeah? The result you describe is the reason the proof works?
First aside: let me reiterate that Cantor's intent was to use Diagonalization on
strings, and specifically
not on
numbers. His first proof of the proposition that there are uncountable sets did use numbers. But it made some debatable assumptions about sets of numbers. So he devised a
second proof, because (and this is a direct quote from that link) "there is a proof of this proposition that is much simpler, and which
does not depend on considering the irrational numbers."
If used on strings, your question is irrelevant; a string is not "rational" or "irrational." The argument can be used on numbers, but only with the additional step of converting them to strings.
Second aside: "0.25" is not a number. It is a string used to represent a number; in this case, the number we name "one fourth". I know it sounds pedantic to point out the difference, but the property of numbers that you are trying to utilize depends on it. Some rational numbers have two such representations. And I'll point out that since you are relying on two such representations, and only rational numbers have two, the answer to your question should already be obvious.
To get a "diagonal number" as you call it, there are steps that Cantor didn't need that become necessary. There technically is no such thing - diagonlaization applies to strings. So you mean the number associated with the diagonal string. And to get it, we need to guarantee that any number, rational or irrational, has only one valid string. So we need these requirements in any base B:
- If the number to be converted is rational with a denominator whose prime factors are all prime factors of the base B, then express it as terminating string and append an infinite string of "0"s to it.
- If there is a prime factor of the denominator that is not a prime factor of B, then the representation eventually becomes a repeating string of characters that are not all "B-1".
- If the number is irrational, there is no repetition.
Now we need to make sure that diagonalization will produce a string meeting the same requirements (i.e., not ending with repeating "B-1")s:
- One way (there are many) is to replace each character "C", that isn't an "B-1", with "C+1". And replace "B-1" with "0".
- None of the many similar methods works in binary, so you need a more complicated scheme like stevendaryl's. He was a little terse in explaining the string for every number, even the ones he seemed to skip over, are included in his list. It's not that I think you don't, but I need to ask you if you understand why.
So now the proof you asked for is:
- Let ##Q## be the set of rational numbers in [0,1). It can be put into a list. Assume we have an arbitrary one.
- Let ##S## be the set of strings that represent the elements of ##Q##. It can be put into a parallel list.
- Apply the valid diagonlaization technique to the list of ##S##. Call the result a "diagonal string", and name it ##d##.
- Trivially, ##d## is not in ##S##.
- But ##d## does fulfill the restrictions for our strings. So it can be converted back to a number, ##r##.
- Since each number has exactly one representation, and ##d## is not in ##S##, we know that ##r## is not in ##Q##.
- But all rational numbers are in ##Q##. So ##r## is not a rational number.