I first saw the following proof that 1 = 0.999… many years ago:
Let x = 0.999…
10x = 9.999…
10x – x = (9.999…) – (0.999…)
9x = 9
x = 1
I was assured that this is not a fallacious proof. There are no tricks hiding out sight that a good mathematician could swoop in with and say, ‘Aha! You subtly violated the axiom of Banach-Tarski-Zermelo in step 3.14159. Your proof is fallacious and I claim my prize.’ 0.9 recurring is actually equal to 1, and this means that 0.9 recurring is exactly the same as 1. It has been proven, the proof is correct, and there can be debate about it. The number 1 is exactly the same as the number 0.9999999999999…
Unfortunately it never made any intuitive sense to me. How could 1 possibly be equal to 0.999…? It is absurd on the face of it. They are clearly different numbers. I accepted the math, but my brain refused to really, truly believe it.
I made the breakthrough recently when I was reading a blog post at qntm about this very subject. The author gives a number of different proofs of it and (briefly) rebuts rejoinders that people may have. It’s a nice post, with several nice proofs (I particularly like the one by the continuity of the real numbers), but what made it click in my head was something I realized while reading the post.
The reason my brain refused to accept it was because I thought that when you subtract .999… from 9.999…, the difference shouldn’t be just 9, it should be 9.000…1, where the 1 comes after an infinity of zeros.
On reflection, this is a rather basic mistake. There can be no 1 after an infinity of zeros, because the very concept of infinity precludes anything from coming after it. Infinity means forever and ever.
This is also tackled by the author of qntm (which makes me question whether I independently came up with the mistake, as I thought I had, or it only hit me after he pointed it out, but I suppose it doesn’t matter):
‘Argument from subtraction
If the difference between two numbers is zero, then they are equal. For example, if x – 5 = 0, then x = 5.
The difference between 1.0000… and 0.9999… is:
1.0000... - 0.9999... = 0.0000... = 0
Therefore, they are equal.
“At that first step, you’re already assuming 1 = 0.9999….”
No I’m not, I’m just doing a simple subtraction. Work it out yourself if you like.
“But 0.0000… should have a 1 at the end.”
No, it shouldn’t. There is no end. “0.0000…1” is meaningless. The “…” means “every decimal digit is 0”. [my underline – IA]
x = 0.9999...
Multiply both sides by ten:
10x = 9.9999...
Subtract x from both sides:
10x - x = 9.9999... - 0.9999... 9x = 9.0000...
Divide by nine:
x = 1.0000...
“But on line two, 9.9999… should be 9.9999…0, because you multiplied it by ten.”
“9.9999…0” is meaningless. The “…” means “every decimal digit is 9”.’
So now my brain feels much better about it. Another long standing internal math problem has been solved!
In the end, here’s a proof by the continuity of real numbers:
The real numbers are continuous. They can also be written in a decimal expansion in at least one way. If 1 and 0.999… are different numbers, it should be possible to find another real number between them.
But it is impossible to write out the decimal expansion of a real number which is between 1 and 0.999… .
Therefore 1 and 0.999… are not different numbers. They are the same number.