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

On the contrary, we do have a choice! We could use computable numbers instead of reals. A computable number is any number which is output by some Turing machine, or, equivalently, any number which can be found by some algorithm. e and pi are computable. You are right that Riemann integrals won't exist, but if you modify definitions somewhat, derivatives and integrals can be defined just as easily for computable numbers as for reals and you can do calculus with them (see second link).

Unlike reals, computable numbers are countable, and are all describable. (That is, there are aleph-null of them, so there are exactly as many computable numbers as natural numbers, and fewer than real numbers). And while almost all real numbers aren't computable (by the argument in the article), essentially every number you'd ever stumble upon in a math class is.

I prefer computable numbers to reals because I have trouble accepting that a thing exists when it by principal cannot be defined.

https://en.wikipedia.org/wiki/Computable_number

http://www.amazon.com/Computable-Calculus-Oliver-Aberth/dp/0...



Numbers that can be computed by Turing Machines are countable, so list them: c_0, c_1, c_2, etc.

Take any interval [a0,b0] (with a0 and b0 computable), and cross out your computable numbers until you find one, say, c_i, in the interval (including an endpoint). Take some strict sub-interval [a1,b1] (again with computable endpoints) within [a0,b0] such that a0<a1, b1<b0, and c_i is not in [a1,b1]. Now continue crossing off computable numbers, each time taking a sub-interval with computable endpoints to exclude any that happen to be in the interval currently under consideration.

The left hand end-points, a0, a1, a2, etc, form a strictly increasing sequence of computable points. This sequence is bounded above, and so we would like there to be a least upper bound.

And yet it cannot be one of the numbers you first chose, because each has been excluded at some stage. So here we have a strictly increasing, bounded above sequence of computable numbers such that there is no limit in the computable numbers.

This proves the computable numbers are not complete, and that makes analysis really messy.


There's two related arguments you (may) be making. One is philosophical, and to that I say: can you give an algorithm to compute a0, a1, ...? If you can't (and I suspect you can't), I'd be hesitant to say that such a sequence exists. But I don't think there's a useful argument to have here ;-).

But more concretely: no, the computable numbers aren't complete. Why would this make analysis messy? I didn't find the presentation and results in Computable Analysis (the book) all that different from what you find in an ordinary analysis course. Is there something it makes hard which I'm missing? (This might be impossible to answer without specific knowledge of Computable Analysis; remember that the definitions of, e.g. limits, are different.)


And while almost all real numbers aren't computable (by the argument in the article), essentially every number you'd ever stumble upon in a math class is.

Not every number though. It turns out that there are numbers that are describable but not computable.

What is the difference? Well here's an example. A Chaitin omega number is the probability that a valid program randomly constructed according to a specific set of rules will eventually halt. It is describable - indeed I just described it. Yet Chaitin has proven that an algorithm to compute it will lead to an algorithm that solves the halting problem, so it cannot be computable.

So there you have it. A class of perfectly describable numbers that are not computable. Indeed it can be proven that we cannot know more than a fixed number of digits for any particular one without increasing the size of our axiom system.




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

Search: