Remix.run Logo
▲ hyperpape 5 hours ago

What I mean is that any given integer is trivially computable.

The busy beaver sequence is not computable (I am aware that somewhere around BB(700), you've encoded the consistency of ZFC). You cannot necessarily compute that BB(n) is a given number. But you can compute larger numbers. There is no such thing as integer that is too large to be computable.

I did slightly fuck up--the English language "every BB(n) is computable" is a bit ambiguous. What I should say is: "for all n, BB(n) is trivially computable, since it is a single integer".

▲bonzini 5 hours ago | parent [-]

> for all n, BB(n) is trivially computable, since it is a single integer".

It is not computable, because for high enough n you can't prove that you got the right integer.

And also you can prove that if a sequence a_n is always larger than BB(n) for some n, that sequence a_n is also not computable.

▲hyperpape 2 hours ago | parent | next [-]

See https://news.ycombinator.com/item?id=50076267.

The busy beaver function is uncomputable. That is well understood. However, for any given n, there is a number BB(n). Since that number is an integer, it is computable, even though it is the value of an incomputable function applied to a particular n. In particular, for numbers > 5, we have no idea what that number is. But whatever number it is, that number is computable.

Look at the post that I was responding to. It made the bad inference that because Graham's Number is computable, it ought to be smaller than BB(10). That confuses computability of a given number with computability of a function.

▲bonzini an hour ago | parent [-]

Computable doesn't mean that you can write it down the number that is the value, given an oracle that tells you the value. It means that you know that it the number you are writing down is the right one, because you computed it.

▲SAI_Peregrinus 4 hours ago | parent | prev | next [-]

You can always exhaustively run all Turing machines of a given size, at each step comparing the state & tape to all previous steps. If they ever reach the same state with the same tape as a previous step, they're in an infinite loop and never halt. If not, they eventually reach the halt state. BB(n) is computable. But BB is not computable, because there's no general algorithm requiring finite storage and time which computes the results of BB(n) for all n. You have to brute-force it for every positive integer n, which takes infinite time (and space) and is therefore not computable.

▲davrosthedalek 3 hours ago | parent | next [-]

There is no requirement to have a recurring state when not halting. Indeed, the most trivial machine "write 1 and move right", will never have the same tape state.

▲Scarblac 2 hours ago | parent | prev [-]

Note that this casually solves the halting problem, usually a hint that something is wrong.

▲empath75 3 hours ago | parent | prev [-]

I think people are confusing two ideas.

for all n there is some natural number x such that BB(n) = x

x like all natural numbers is trivially computable.

But BB(n) as a function that you could run and _find_ x, is not computable in general, because it would entail solving the halting problem.