What is so wrong with thinking of real numbers as infinite decimals?
dpmms.cam.ac.uk
dpmms.cam.ac.uk
Haha, no. And here's why.
> Because of irritating difficulties such as the need to carry digits and to identify 0.999999.... with 1
Not only does this not fit in with people's existing picture of real numbers, people become emotionally attached to the opposite with a fervor unknown in any other part of mathematics! (Second place would be Cantor's theorem for real numbers, but you have to know a little more to be passionately opposed to that.)
I think even for beginners who are willing to believe that 0.99999... = 1, they are going to have trouble agreeing that 0.99999... < 1 is a false statement.
[EDITED to insert the word "mostly"; I expect WTG wasn't thinking only of his and his colleagues' first-year students.]
The problem with floating point numbers is that most mathematical operations on them are approximations. People expect the same kind of correctness from floating point arithmetic that we've come to expect from integer arithmetic, when you really should be thinking in error bars.
I mean, just ask the average programmer to do currency math and I assure you they'll go straight for the `double`. Most of the time, not a catastrophic error, except for when it is.
For the curious, this is a long but very thorough overview of floating point arithmetic and it's quirks: http://docs.sun.com/source/806-3568/ncg_goldberg.html
For what little it's worth, I agree with Gowers, and have done since before I read that page, though I'd prefer to use binary rather than decimal.
In my defense, I wasn't trying to criticize the theoretical content of the article, which, in all honesty, is beyond my mathematical knowledge to criticize. The real number to "infinite" decimal conversion issue just reminded me of the age-old floating point number arithmetic problem, so I let out a little rant.
Also, I'm not a programmer, I'm a mathematician. Is the "right" way to do currency math do to integer arithmetic on prices expressed in cents (or, more generally, the smallest subdivision of the currency)?
Using floating point math for money is just asking for trouble.
Infinite decimals in particular bring up the equality problem. If you're willing to think of the real numbers as ONLY infinite decimals, you avoid this confusion. But it's silly to always write .999... instead of 1.
"It would be somewhat misleading to infer [...] that foundational systems act primarily as a basis out of which mathematics is actually created. The artificiality of that view is evident when one reflects that the essential content of mathematics is already there before the basis is made explicitly, and does not depend on it for its existence. We may for example think of a real number as an infinite decimal expression, or a point on the number line. Alternatively it could be introduced as an element of a complete ordered field, an equivalence class of Cauchy sequences, or a Dedekind cut. None of these could be said to be the correct explanation of what a real number is. Each is an embodiment of an intuitive notion and we evaluate it, not in terms of its correctness, but rather in terms of its effectiveness in explicating the nature of the real number system."
Tim Gowers makes a good case for the usefulness of the "infinite decimal expression" view of real numbers.
Uh, C^2?
To quote my favorite close-is-good-enough source, Wikipedia, "Poincaré referred to Cantor's ideas as a "grave disease" infecting the discipline of mathematics".