4

Interpretation: Consider the comic strip below, where a person tries to prevent a robot from dismembering them by asking the robot to compute $\pi$ - the robot quickly produces an algorithm to calculate all of the digits of $\pi$ and begins dismembering the person. This is possible because $\pi$ is a computable number.

In contrast, if the person had asked the robot to calculate Chaitin's constant (assuming the robot didn't say something like "which Chaitin's constant?" or "insufficient parameters") or some other non-computable number, would the people have been able to escape the robot's dismembering?

As far as I understand (1)(2), the robot could make an algorithm to calculate the first $n$ digits for any $n$, but to attempt to compute "all" of Chaitin's constant would take an infinite amount of time, because each new digit would require a new program, or something like this.

Question: Is this interpretation at all correct or am I completely off the mark here? To what extent could one describe computable numbers as numbers which "prevent a robot in this specific situation from dismembering people"?

I.e., do all non-computable numbers have algorithmically random (decimal, binary, etc.) expansions?

Source.

enter image description here

Raphael
  • 73,212
  • 30
  • 182
  • 400
Chill2Macht
  • 281
  • 2
  • 12

3 Answers3

11

This is exactly the incorrect interpretation of "computable", resulting of trying to replace the precise definition with (possibly misplaced) intuition.

$\pi$ or any other irrational number also has an infinite digit representation, so according to your logic, it shouldn't be computable. This just shows that it is meaningless to require all of the digits as output, and we actually need a "better" definition.

To fix this issue, we say a number $p$ is computable, if we can approximate $p$ up to any given precision. One way of formalizing this is requiring the existence of a program $M_p(n)$, which upon receiving a number $n$ outputs (in finite time) a number $\hat{p}$ such that $|\hat{p}-p|\le\frac{1}{n}$. The comic actually refers to this definition, as $\pi$ having an infinite expansion does not prevent the robot from dismembering the guy.

If your goal is to avoid dismembering, then it is not clear how to use uncomputable numbers. What exactly is the meaning of calculate $x$? If i ask for some fixed approximation of an uncomputable number, then the robot can give me one (sure, it has no way of algorithmically producing the approximation, but perhaps this is some weird robot with a table of all approximations to any natural constant up to $10^{-100}$). You would probably stand more chance with incompleteness issues, rather than with computability issues. I would ask the robot for a proof in $ZFC$ of its consistency. If it is consistent, he wont find any, and if it isn't, who wants to live anyway.

Ariel
  • 13,614
  • 1
  • 22
  • 39
3

First off, I'm not sure what the intuition you're proposing is, so I'll make some general remarks.

In the comic, the problem given to the robot was ill-posed; the interpretation of the request is not clear, and for any reasonable interpretation it is very obviously impossible.

Then, the robot cheated by not giving the answer but a recipe to find the answer (arguably).

I'm not sure what you would expect the robot to do if you asked: "Compute this incomputable function!". It could not even start. You'd have to get it into an actual computation that does not terminate. For instance: "Find the smallest $i$ for which $f(i)≠i$ with $f:i↦i$!" Of course, the robot may perform elementary static analysis and conclude that there is no such $i$, at which point it will happily start dismembering you.

So it'll have to be a semi-computable problem whose answer is not immediately obvious, and the actual instance needs to loop -- good luck making that up on the spot!

In robocalypse-preventing practice, I'd just give the robot a (hopefully) hard instance of an NP-hard problem and hope that I run fast enough. "What is the shortest route to visit every Starbucks in the world (once)?" That should keep it busy for a while. Of course, if I built the robot any individual on its kill list would also be on the black-list of its spam filter.

Raphael
  • 73,212
  • 30
  • 182
  • 400
1

I think there are too many kinds of sort-of uncomputability involved here:

  • Uncomputable because ill-defined. "The smallest rational larger than 1.0" would be an example.
  • Uncomputable because of assumptions that contradict known theorems. Example: "Largest prime number.".
  • Uncomputable because of assumptions that contradict axioms (this is a trivially degenerate case of the previous point). Example: "Largest integer."
  • Uncomputable because undecidable. Chaitin Numbers (percentage of randomly generated programs that will not terminate) is a particularly nasty version.
  • Uncomputable but any correct answer could be checked computably. It would be hardest to justify a non-answer.
  • Uncomputable because algorithm is known to exist but not discovered yet. I think unsolved mathematical problems can fall in that category. Maybe "what's the lower bound for sorting algorithms" - we believe it's O(N log N), but there was never a proof for that, and there should either be an O(N) algorithm or a proof that nothing faster than O(N log N) is possible.
  • Uncomputable because insufficient data. "How old is the oldest living field mouse?"
  • Uncomputable because subjective. "What's the nicest mathematical theorem in literature?"

In other words, computability, decidability and all that hard-math stuff is only marginally related to the topic of the comic.

There's also your assumption that a better understanding of computability would have somehow improved the scientist's situation.
However, that's entirely arbitrary, because the robot could have likewise answered "I don't mind about your questions or orders", or said "impossible to calculate, I'll rend your limbs anyway", or whatever else the author's whims dictate. For that reason, your question does not have a good answer.

Mankarse
  • 183
  • 5
toolforger
  • 111
  • 2