Hacker News new | past | comments | ask | show | jobs | submit login

I mean construction in the mathematical sense. If you believe, for example, that the rational numbers exist, then it is easy to construct the real numbers. Very roughly, we look at the set of all sequences of rational numbers that converge in a specific way (technically, all Cauchy sequences) and call this the "set of real numbers" (technically, after taking an appropriate equivalence class, since intuitively multiple sequences can converge to the same real number). [1] has a few other constructions. This is very different from a program, which has its own definition.

[1] https://en.wikipedia.org/wiki/Construction_of_the_real_numbe...






So, if I understand correctly, you are saying that many (actually most) Cauchy sequences converge to uncomputable numbers. I think I understand a bit more, though I still have an issue with defining such a Cauchy sequence, because either I can describe it exactly (in which case the number it converges to can have an infinite expansion but it's computable, like pi) or I cannot define it exactly, in which case I don't know what number it converges to. I think my gap is that I don't understand how these constructions differ from programs. By program I mean a sequence of instructions, which may have an infinite number of steps because of loops, but it still has a finite description. I agree that all such programs are countable. Do you mean programs with an infinite description?

Even programs with infinite descriptions are only countably infinite, but the reals are uncountable.

This construction by Cauchy sequences looks innocent, but it's the diagonalization argument in disguise. (Start with all the rationals, make sequences out of them, make one that picks one from all, sort them into equivalence classes, and try to map them back to the rationals, notice that you will end up with more equivalence classes.)

The trick is basically that between every rational you can fit an infinite number of irrationals (using the rationals via these sequences). And exactly in this way these are "programs" -- like diagonalization itself. The fact that we can't give programs for most of them is because they are non-computable. (And it's the definition, the indirect proof is above via the cardinalities.)

[but it's dangerously late here, so double check my ramblings ... https://math.stackexchange.com/a/1488502 ]




Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: