|
|
|
|
|
by edflsafoiewq
2780 days ago
|
|
But you haven't cleared anything up at all! What do you mean "determine what it is"? Do you mean compute its digits? Can you have an irrational number? a rational number with a non-finite decimal expansion? And what do you mean "operate on it"? By which operation? And what do you mean "quickly"? In any case, the relevant program (assuming a fast random oracle) emit "0."
loop forever:
x := query random oracle for one bit
emit x
seems to fit all your criterion. You can compute as many digits as you like very quickly. If you can have pi I don't see why you can't have this number (if you can have any random number at all). |
|
Does having a turing machine that will eventually output a number x suffice for having the number x.
And does that specific turing machine suffice for having a random number in range [0, 1].
As for the second, I have misgivvings about it but there's certainly an argument that that machine does work. The argument against that I currently find most convincing (that you don't have a classical representation that you can make two isolated copies of) is outlined here: https://news.ycombinator.com/item?id=18424725
The first discussion is more nuanced. The meaning of knowing/having a number is not something I claim to have an exact answer to (and indeed since it's an english term it probably doesn't have an exact meaning). It's clear however that having a turing machine that eventually outputs the value is not the same as knowing the value.
What operations is really the most fundamental question, I'd argue that it's clear that if you know x you can at least tell me what the n^th digit of x is. An arbitrary turing machine fails this, an arbitrary turing machine fails being able to tell me what the first digit is, let alone the n^th one.
I'm not going to take the stance that being able to compute its digits quickly is sufficient for having a real number, but I also won't argue against it. Personally I'd like to ask for equality testing too. I'm willing to yield that since I'm pretty sure that man-and-laptop will disagree and argue that being able to test for closeness is good enough, and he has a point even if I'm not convinced.
As for your the other questions you put to me, they aren't relevant for the turing machine part but:
Quickly, means in at most polynomial time. It might actually mean something stricter, but polynomial time seems to be a pretty clear upper bound on the amount of computation time you can need to find something while still being able to claim to know it. (See the paper I linked above)
We can certainly have a rational number with a non finite decimal expansion, you just need more creative forms of representing the numbers than listing digits. For instance the common method of putting a bar on top of the repeated ones, or alternatively quote notation is rather cool: https://en.wikipedia.org/wiki/Quote_notation