Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> since every computer will have rational numbers they can't exactly calculate as well

It might be better worded as "can't calculate a decimal version of every rational number". One can work quite easily nowadays with exact representations of rational numbers on computer. With Bigint stuff, it is easy to have very large (for human purposes) numerators and denominators. To what extent practical calculations could be done with exact rational arithmetic, I am not sure of though I suspect it is largely not an issue as precision of inputs is presumably a limiting factor.

Wildberger has specific objections to the usual definitions of real numbers and they vary based on the definition. For decimals, it is the idea that doing arithmetic with an infinite decimal is difficult even with a simple example such as 1/9*1/9 which is multiplying .111... times itself, leading to sums of 1s that carryover and create a repeating pattern that is not self-evident from the decimal itself.

For Cauchy sequences, he objects to the absurd lack of uniqueness, particularly that given any finite sequence, one can prepend that sequence to the start of any Cauchy sequence. So a Cauchy sequence for pi could start with a trillion elements of a sequence converging to square root 2. This can be fixed up with tighter notions of a Cauchy sequence though that makes the arithmetic much more cumbersome.

For Dedekind cuts, his issue seems mostly with a lack of explicit examples beyond roots. I think that is the weakest critique.

Inspired by his objections, I came up with a version of real numbers using intervals. Usually such approaches use a family of overlapping, notionally shrinking intervals. I maximized it to include all intervals that include the real number and came up with axioms for it that allow one to skirt around the issue that this is defining the real number. My work on this is hosted on GitHub: https://github.com/jostylr/Reals-as-Oracles



> One can work quite easily nowadays with exact representations of rational numbers on computer

One can also work with exact representations of Pi and sqrt(2). Use a symbolic system like MATLAB or Wolfram Alpha. Yes, if you create dedicated data structures for those exact representations you can work around the limitations of both 1/3 and Pi -- this is my point: the line is not "rational vs. irrational", it's "exact vs. computable to arbitrary precision vs. uncomputable". That is to say: a mathematical model that permits the rationals but outlaws the irrationals is much less likely to be at all useful than a model that permits computable numbers but outlaws/ignores non-computable numbers. I contend most objections to irrational numbers boil down to their general incomputability -- that is, 100% of all irrationals are not computable, and that makes people anxious. There is a coherent computation-focused model that keeps all computable irrationals and disallows the rest that would quell almost everyone's objections to the irrationals. For example, the set of rationals plus computable irrationals is countably infinite. All polynomials have roots.

> For decimals, it is the idea that doing arithmetic with an infinite decimal is difficult even with a simple example such as 1/9*1/9 which is multiplying .111... times itself, leading to sums of 1s that carryover and create a repeating pattern that is not self-evident from the decimal itself.

Right, but this is another example where an objection to irrational numbers can also be levied against 1/9, showing that computability is actually what we care about. And Pi and e and sqrt(2) are all computable, and not in any qualitatively more "difficult" way than the rationals.

> For Dedekind cuts, his issue seems mostly with a lack of explicit examples beyond roots. I think that is the weakest critique.

Yes, that is a weak critique indeed. Any computable real can be turned into a Dedekind cut that you can query in finite time.

> I came up with a version of real numbers using intervals

I haven't dug into your axioms but it seems to follow that if you gave me a Dedkind cut (A, B) then I could produce an Interval Oracle by taking [x, y] => x ∈ A && y ∈ B. Similarly if you gave me an Oracle I could query it to determine inclusion in A and B for any points -- immediately if you allow infinity in the query. That is, Oracle(x, inf) <=> x ∈ A and Oracle(-inf, x) <=> x ∈ B. So at first glance these appear to be equivalent, unless you disallow infinity to the Oracle, in which case I might need O(Log(n)) steps to establish inclusion in the Dedekind steps. So it might be a very slight Is that where the power comes from?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: