Unfortunately not an ideal proof.
It makes certain assumptions:
- That a number 0.999... exists and is well-defined
- That multiplication and subtraction for this number work as expected
Similarly, I could prove that the number which consists of infinite 9's to the left of the decimal separator is equal to -1:
...999.0 = x
...990.0 = 10x
Calculate x - 10x:
x - 10x = ...999.0 - ...990.0
-9x = 9
x = -1
And while this is true for 10-adic numbers, it is certainly not true for the real numbers.