17.06.2014 Views

Notes for the Lifebox, the Seashell, and the Soul - Rudy Rucker

Notes for the Lifebox, the Seashell, and the Soul - Rudy Rucker

Notes for the Lifebox, the Seashell, and the Soul - Rudy Rucker

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Notes</strong> <strong>for</strong> The <strong>Lifebox</strong>, <strong>the</strong> <strong>Seashell</strong>, <strong>and</strong> <strong>the</strong> <strong>Soul</strong>, by <strong>Rudy</strong> <strong>Rucker</strong><br />

<strong>the</strong> string n is found on <strong>the</strong> Turing machine tape.<br />

Definition. The integer n is Chaitin-Kolmogorov incompressible if <strong>for</strong> no e < n do we<br />

have T e (0) = n.<br />

Ra<strong>the</strong>r than working with arbitrary kinds of computations, <strong>the</strong> proof of Chaitin’s<br />

<strong>the</strong>orem focuses on Turing machines with two symbols. The key notion behind <strong>the</strong> proof is<br />

that both <strong>the</strong> programs <strong>and</strong> <strong>the</strong> outputs of <strong>the</strong>se Turing machines can both be thought of as<br />

strings of 0s <strong>and</strong> 1s. Because of this, a program can itself be regarded as possibly being <strong>the</strong><br />

output of a smaller program. For any P, let P* be <strong>the</strong> program such that if P(0) halts with<br />

output Q, Q is treated as a program <strong>and</strong> Q(0) is run. There will be some fixed number<br />

overhead such that size(P*) = size(P) + overhead.<br />

Now Chaitin argues that if of, once again, <strong>the</strong> unsovability of <strong>the</strong> halting problem.<br />

know that a string is a name <strong>for</strong> ano<strong>the</strong>r string, you need to know that, when fed into <strong>the</strong><br />

universal computer, <strong>the</strong> name produces a computation that writes <strong>the</strong> target string <strong>and</strong> halts.<br />

So proving that a number is Chaitin complex involves proving that certain computations<br />

don’t halt <strong>and</strong> <strong>the</strong>re<strong>for</strong>e fail to name <strong>the</strong> string. And, as we know by now, some<br />

computations never halt even though you can’t prove this to be so.<br />

A more transparent way to get at <strong>the</strong> proof of Chaitin’s <strong>the</strong>orem is to use <strong>the</strong><br />

following line of thought. If that if Chaitin’s <strong>the</strong>orem weren’t true, <strong>the</strong>n T could prove <strong>the</strong>re<br />

is a number called BerryT which is definable as “<strong>the</strong> first number that doesn’t have a<br />

definition shorter than itself.” And <strong>the</strong>n T would be in trouble as this proof provides a short<br />

name <strong>for</strong> BerryT.<br />

People Who Email Me About Gödel’s Proof<br />

I’ve written about Gödel’s proof be<strong>for</strong>e, like in Infinity <strong>and</strong> <strong>the</strong> Mind <strong>and</strong> in Mind<br />

Tools, <strong>and</strong> I get email about it every few months, usually from people who think <strong>the</strong> proof is<br />

wrong. Guys wanting to tell me <strong>the</strong>y’re smarter than Kurt Gödel. “Oooooh kay.”<br />

Adding Quantifiers<br />

The simple sentences G I’ve been discussing can be characterized as having a single<br />

kind of quantifier ⎯ where a quantifier is a phrase like “<strong>for</strong> all n” or “<strong>for</strong> some n”.<br />

Although we’ve speaking of G as having <strong>the</strong> <strong>for</strong>m “For all n, g[n] is false,” we could also<br />

express it as <strong>the</strong> negation of a sentence of <strong>the</strong> <strong>for</strong>m “There is an n such that g[n].”<br />

Adding more quantifiers of <strong>the</strong> same kind doesn’t change much. But if we allow<br />

alternating quantifiers we get into a richer zone of undecidability.<br />

Course-of-values Simulation<br />

A slightly stronger <strong>for</strong>m of simulation is what one might call course-of-values<br />

simulation. Say that Big with translation function tr is a course-of-values-simulation of<br />

Small iff, <strong>for</strong> any s0, if <strong>the</strong> computation Small(s0) produces, at some increasing sequence of<br />

times, <strong>the</strong> output states s1, s2, s3, etc., <strong>the</strong>n <strong>the</strong> Big(tr(s0)) will also produce, <strong>for</strong> some<br />

increasing sequence of times, <strong>the</strong> states tr(s1), tr(s2), tr(s3), etc.<br />

References<br />

David Deutsch, The Fabric of Reality: The Science of Parallel Universes — <strong>and</strong> Its<br />

p. 106

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!