aa r X i v : . [ c s . L O ] J un T. Neary, D. Woods, A.K. Seda and N. Murphy (Eds.):The Complexity of Simple Programs 2008.EPTCS 1, 2009, pp. 123–129, doi:10.4204/EPTCS.1.12 c (cid:13)
G. Lafitte
Busy beavers gone wild
Grégory Lafitte
Laboratoire d’informatique fondamentale de Marseille, CNRS,Aix-Marseille Université, 39, rue F. Joliot-Curie,13453 Marseille Cedex 13, France ∗ Gregory.Lafittelif.univ-mrs.fr
We show some incompleteness results à la
Chaitin using the busy beaver functions. Then, withthe help of ordinal logics, we show how to obtain a theory in which the values of the busy beaverfunctions can be provably established and use this to reveal a structure on the provability of the valuesof these functions.
When considering a class of Turing machines that halt when started from a blank tape, busy beavers forthat class, as coined by Tibor Radó, are those Turing machines which eventually halt after the maximumnumber of steps (or after producing the maximum number of non-blank symbols). Finding for a class ofTuring machines the busy beaver champion (for any of the two competitions) is of course uncomputable[19]. Nevertheless, efforts have been made to try to find the champions starting with the smallest classesof Turing machines. Finding all the different kinds of behavior of Turing machines in a class is quiteexhilarating an endeavor. Rona J. Kopp [9] and Allen H. Brady [3] have thoroughly studied the four statesand two symbols class and Heiner Marxen and others [15, 16] have tried for more than two decades toexperimentally find the busy beaver champion for the five states and two symbols class. Heiner Marxenfound a candidate but no one has been able to prove that no other machine does better . This is mostcertainly because the behaviors involved are too complicated. This state of affairs is an encouragementto the study of what we have called low-level reverse computability : What does it take to be able tocomprehend the behavior of a certain class of Turing machines? What is needed to be able to prove thesebehaviors? These questions raise the links between the study of busy beavers and incompleteness.To start off, there is a need to see the strong links between computability and incompleteness. Forinstance, one can obtain a first form of the first incompleteness theorem by considering propositions ofthe form n X , where X is a non-recursive but recursively enumerable set, e.g. , the diagonal halting set K . Even if the language of the considered theory does not contain ∈ , there is a simple algorithm thatgenerates given n the proposition “ n X ”. Given a sound (every provable statement is true) recursivelyenumerable theory T , there is a number n such that n X but T does not prove it. The proof is direct:Suppose that there is no such n , then we would have that T proves “ n X ” if and only n X , and X would be recursive (generate the theorems of T and at the same time enumerate X ; if n ∈ X then n willeventually show up in the enumeration; otherwise, “ n X ” will eventually show up in the theorems of T and be true by the soundness assumption). We thus have a true sentence, “ n X ”, which is not provablein T . ∗ We acknowledge the support of the French National Research Agency Sycomore grant.
24 Busybeavers gone wildIncompleteness is also famously linked to computability via Chaitin’s incompleteness theorem.Chaitin’s result, showing that there are unprovable statements on Kolmogorov-Chaitin complexity , is aform of Gödel’s first incompleteness theorem. Actually, Kolmogorov showed in the sixties that the setof random (or incompressible) numbers, i.e. , { x : K ( x ) > x } , is recursively enumerable but not recursive,and, by the above argument, this is already a version of Gödel’s first incompleteness theorem. Moreover,Kolmogorov’s proof can be seen as an application of Berry’s paradox (“the least integer not nameablein fewer than seventy characters” has just now been named in sixty-three characters). Following Boolos[1], it is thus no wonder that we can get proofs using this Kolmogorov complexity function (or other similar computability-related functions) of both incompleteness theorems (see [10]).One of the reasons of the existence of the quest for better understanding the incompleteness phe-nomenon lies in the peculiarity of Gödel’s unprovable statements. They are not natural mathematicalstatements: no mathematician has ever stumbled on them (or should we say over them ?). And thus, itseems to many that normal mathematical practice is not concerned with the incompleteness phenomenon.More and more results show however the contrary. In particular, Harvey Friedman’s P statements, thatare unprovable in Zermelo-Fraenkel (ZF) set theory and need the 1-consistency of strong set-theoreticalunprovable statements (going way beyond ZF) to be proved, are examples of such results.Nevertheless, incompleteness theorems only provide unprovable statements like the consistency ofa theory, that are of an unclear nature. What combinatorial properties does the consistency statementbring to a theory? Having a link between consistency (or soundness) and computability, in particularKolmogorov complexity, would make possible an understanding of what properties consistency adds toa theory. Adding consistency as an axiom would then yield new combinatorial properties because of theexisting links between combinatorics and Kolmogorov complexity. For a detailed exposition of the linksbetween Gödel incompleteness and Kolmogorov complexity, see [10].In the first part of this article, we start by giving an incompleteness theorem à la Chaitin using thebusy beaver functions and then make precise the kind of incompleteness theorems one can obtain withthem. In the second part, we use ordinal logics to construct a theory in which the values of the busybeaver functions can be provably established and use this to find a structure on the provability of thevalues of these functions.
Notational conventions
On top of the usual logical connectives ( ∧ , ∨ and ¬ ), we will respectively denote the logical connectivesof implication and equivalence by and ≡ .When we have a recursively enumerable axiomatic theory T , Cons T designates the arithmetical sen-tence that there is no proof of 0 =
1. When the axioms of T are defined by a formula f , Cons ( f ) will Loosely speaking, the Kolmogorov-Chaitin complexity of a natural number n , denoted by K ( n ) , is the smallest size of aprogram which generates n .Another useful variant of Kolmogorov-Chaitin complexity can be defined as follows. To each enumeration { j i } i ∈ N ofcomputable partial functions, we associate a variant of K : K j ( x | y ) = smallest e such that j e ( y ) = x , and K j ( x ) = K j ( x | ) .Chaitin’s version of Gödel incompleteness is the following theorem. Theorem 1.1 (Chaitin’s incompleteness) . Let T be an arithmetical-able consistent theory. There is a constant c T such that forall x, “K ( x ) > c T ” is unprovable in T . For more on Kolmogorov-Chaitin complexity, the reader is referred to [14]. For a formal definition of arithmetical-ability ,see [10]. .Lafitte 125designate Cons T using that formalization. The provability predicate is designated by Prov T .The partial recursive functions computed by Turing machines, following a fixed convention, aredenoted by { j i } i ∈ N (agreeing with the Turing machines’ coding: j i is the partial function computed by T i ). The sets { W i } i ∈ N denote the recursively enumerable sets, i.e. , the domains of partial recursivefunctions.Concerning computability, the reader is referred to [17, 18, 21, 20, 23, 25]. In the sixties, Tibor Radó, a professor at the Ohio State University, thought of a simple non-computablefunction other than the standard halting problem for Turing machines. Given a fixed finite number ofsymbols and states, select those Turing machines which eventually halt when run with a blank tape.Among these programs, find the maximum number of non-blank symbols left on the tape when they halt.Alternatively, find the maximum number of time steps before halting. These functions are well-definedbut uncomputable. Tibor Radó called them the busy beaver functions. For more on the busy beaverproblem, read [19, 11, 13, 2, 9, 3, 5, 6, 4, 16, 15, 12].Alternative functions can be defined that are close in nature to these busy beaver functions. Let s steps be the function which to i gives the maximum number of steps for which a Turing machine with code i will keep running before halting, starting with a blank tape. For a Turing machine M , t M denotes the timecomplexity function of M : t M ( x ) = s if M ( x ) halts after s steps. Following the busy beaver functions’definitions, we define s value to be the function which to i gives the maximum number which a Turingmachine with code i will output, following a fixed convention, after halting starting with an input i .These functions are in a sense inverses of the K j function (see footnote 1).Other functions can be defined following classical Kolmogorov complexity, e.g. , the function whichto n gives the biggest number with Kolmogorov complexity lower than n .We call these functions the s functions. For each variant, we can define a function focusing onmaximizing the number of steps , e.g. , s steps , or the output values , e.g. , s value . The value of either ofthese functions on a certain x is computable from x and the value of the other function on input x + c fora certain constant c (see [22]).A result similar to Chaitin’s incompleteness result concerning Kolmogorov complexity can be ob-tained concerning the s functions : Theorem 2.1 (Chaitin-like incompleteness theorem for s functions) . Let s be one of the s functions.Let T be an arithmetical-able consistent theory. There is a constant n s T such thatT ⊢ Cons T ∀ s ¬ Prov T ( p s ( n s T ) < s q ) . (1) Proof.
Consider a P formula f s in the language of T such that f s ( x , s ) expresses that s ( x ) < s .Working in T , for a given x , take the smallest s such that Prov T ( p f s ( x , s ) q ) holds. T being consistentand f s P , f s ( x , s ) also holds. A s function is any of the busy beaver functions defined above. For a formal definition of arithmetical-ability , see [10].
26 Busybeavers gone wildProv T ( p f s ( x , s ) q ) is a S formula and thus can be seen as ∃ y y ( x , s , y ) or equivalently ∃h s , y i y ( x , s , y ) where y is D .Thus there is a Turing machine computing y . Consider its code i y (or its number of states ortransitions, depending on the choice of s ). For large enough x , i.e. , x > i y + c , knowing that f s ( x , s ) holds (using the computation through shifting, i.e. , the constant c , between both types of s functions),we know that s ( x ) < s and thus there is an s ′ = h s ′ , s ′ i < s such that y ( x , s ′ , s ′ ) holds. But for each s ′ = h s ′ , s ′ i smaller than s , the statement ¬ y ( x , s ′ , s ′ ) is true by the minimality of s , and provable (being D ). Thus we have ¬ Cons T .We say that a statement f is a revelation for T if f is unprovable in T and its consistency relative to T (if T is consistent, so is T + f ) is provable from itself in T : T ⊢ f Cons T ( f ) We have the following result showing how being able to prove an upper bound for a s function canbe a revelation. Theorem 2.2 (Serendipitous incompleteness theorem for s functions) . Let s be one of the s functions.If T is consistent, then there exists a natural number r s T such that for all x, s ( r s T ) < x is a revelationfor T .Proof. Consider the P statement ∀ x y ( x ) x equivalent to Cons T + f . y ∈ D and thus there is a machine M y with code i y such that M y decides { x : y ( x ) x } : M y on input x eventually enters an acceptance state if y ( x ) x , or a rejection state otherwise.Consider another Turing machine M ′ y which runs M y successively on each natural number startingfrom 0 and stops and writes the counter example of y if the simulation of M y enters a rejection state.Let i ′ y be the code of Turing machine M ′ y . s ( i ′ y ) makes the verification of ∀ x y ( x ) x a D property.By using Kleene’s recursion theorem on this previous construction, we find r s T such that knowing (orbounding) the value of s ( r s T ) makes the verification of Cons T + s ( r s T ) x a D property. Knowing that T isconsistent and assuming s ( r s T ) x , T thus proves Cons T ( s ( r s T ) x ) .By Gödel’s second incompleteness theorem, s ( r s T ) x is an unprovable statement in T .This can be done for other uncomputable functions, like Kolmogorov complexity functions (usingthe Turing-completeness of their graphs). Truth-table completeness is a plus to be able to have a finiterevelation (finite number of constants c Ki , T giving the revelation V K ( x ) > c Ki , T ).The same idea can be used to find a constant T ′ r s T such that if T and T ′ are consistent, then for all x , T ⊢ s ( T ′ r s T ) < x
1- Cons T ′ . This can be done for other soundness properties than 1-consistency.By combining the proofs of the two previous theorems 2.1 and 2.2, we obtain : Corollary 2.3 (Busy beaver pairs) . Let s be one of the s functions. If T is consistent, then there exist s s , T and s s , T such that for all x,T ⊢ s ( s s , T ) < x ∀ s ¬ Prov T ( p s ( s s , T ) < s q ) . .Lafitte 127 We start by recalling the basic notions encompassing ordinal logics. We first need the notion of ordinalnotation .Let h O ⊂ N , ≺ O , | · |i be defined inductively, simultaneously on ≺ O and | · | : O → Ord, as follows:0 ∈ O and | | = a ∈ O , then V ( a ) = h a , i ∈ O , a ≺ O V ( a ) , and | V ( a ) | = | a | + j e is a total function which is increasing according to ≺ O (for all n , j e ( n ) ≺ O j e ( n + ) ), then J ( e ) = h e , i ∈ O , J ( e ) ≻ O j e ( n ) for all n , and | J ( e ) | = lim n ∈ w | j e ( n ) | .Elements of O are called notations. V ( a ) denotes the successor of a , J ( e ) the limit of e . O is calledthe general ordinal representation system because every ordinal representation system is isomorphicto O a = { b ≺ O a } for a particular a . Because of the definition of J ( e ) , assuming j e to be total andincreasing, ≺ O is uncomputable, even not recursively enumerable.Starting from a theory T , we can now define progressions of theories indexed by notations. T = TT V ( a ) = T + Cons ( T ) T J ( e ) = S n T j e ( n ) The idea is to have a sequence of theories indexed by ordinals showing how many times we assumethe consistency of the previous theories, the predecessor theory if the ordinal is a successor and allprevious theories if a limit ordinal. The difficulty lies in always having recursively enumerable axiomatictheories, i.e. , having a sequence of formulae f a defining the axioms of T a and definable from previous f ’s.Turing [24] and later Feferman [7] came up with this idea of recursive progressions of theories. Kleene’ssecond recursion theorem shows the existence of such recursive progressions. Notice that assuming thesoundness of the base theory T , if we add its consistency to the axioms of T , then we know that thisenhanced theory is also sound. Hence, soundness is inherited by consistency extensions.Now, the problem is that T a is not consistent for all a even when assuming the soundness of T : byKleene’s recursion theorem, there is e such that j e ( ) = V ( J ( e )) and for such e , T J ( e ) proves all that T V ( J ( e )) proves, in particular Cons T J ( e ) ; thus T J ( e ) is inconsistent.To ensure that T a is a consistency extension of T , one has to make sure that a belongs to O . Oneway of doing that is working only with a ’s from a branch of O , that is a linearly ordered subset of O closed under ≺ O . A better way is considering only notations, elements of O , such that if a ∈ O and anarithmetically definable variant of “ b ∈ O ” is provable in T a then b ∈ O .In theorem 3.1 we use arguments along the lines of Turing’s [24] as they were described by Feferman[7, 8]. Theorem 3.1 (Point-wise provability of s values) . Let s be one of the s functions. For any consistencyprogression, for all a ∈ O and for all x ∈ N , there exists a x ∈ O with a ≺ O a x such that | a x | = | a | + w + and T a x proves all true statements of the form “ s ( x ) < · · · ”.Proof. Consider a P formula f s ( x , s ) = ∀ t y s ( t , x , s ) in the language of T such that f s ( x , s ) expresses s ( x ) < s and y s is D .28 Busybeavers gone wildLet s x be the true value of s ( x ) +
1. By Kleene’s recursion theorem, let e x be such that provably inPA, for every n , j e x ( n ) = (cid:26) V n ( a ) if “ y ( p i q , p x q , p s x q ) ” is true for every i ≤ n , V ( J ( e x )) otherwise.Since ∀ t y ( t , x , s ) is true, J ( e x ) ∈ O and | J ( e x ) | = | a | + w . Let a x = V ( J ( e x )) . If ¬∀ t y ( t , x , s ) , then T j ex ( n ) is T a for all sufficiently large n and so T J ( e x ) also proves the consistency of T J ( e x ) . Thus by Gödel’ssecond incompleteness theorem, T J ( e x ) is inconsistent. Hence, since we can prove in T a x the consistencyof T J ( e x ) , ∀ t y ( t , x , s ) is also provable in T a x .For any class of machines, it is thus possible with a combination of theories from a progression oftheories to comprehend the busy beaver functions on that class.By an extensive use of Kleene’s recursion theorem and by varying the theory in the use of corollary2.3, we get the following corollary. Corollary 3.2 (Busy beaver relationships) . Let s be one of the s functions. If T is consistent, then forall n > , there exist { s s , Ti } i < n such that for all s, s ( s s , T ) < s is not provable in T , and for all x andi < ( n − ) , T ⊢ s ( s s , Ti ) < x ∀ s ¬ Prov T ( p s ( s s , Ti + ) < s q ) . References [1] George Boolos. A new proof of the Gödel incompleteness theorem.
Notices of the American MathematicalSociety , 36:383–391, 1989.[2] Allen H. Brady. The conjectured highest scoring machines for Rado’s s ( k ) for the value k = IEEE Trans-actions on Elec. Comput. , EC-15:802–803, 1966.[3] Allen H. Brady. The determination of the value of Rado’s noncomputable function s ( k ) for four-state Turingmachines. Mathematics of Computation , 40:647–665, 1983.[4] Allen H. Brady.
The Universal Turing Machine: A Half-Century Survey , chapter The Busy Beaver Game andthe Meaning of Life, pages 259–277. Oxford University Press, Oxford, England, 1988.[5] A. K. Dewdney. Computer recreations: A computer trap for the busy beaver, the hardest-working Turingmachine.
Scientific American , 251(2):19–23, August 1984.[6] A. K. Dewdney. Computer recreations.
Scientific American , 252(4):12–16, April 1985.[7] Solomon Feferman. Transfinite recursive progressions of axiomatic theories.
Journal of Symbolic Logic ,27(3):259–316, 1962.[8] Solomon Feferman.
The Universal Turing Machine: A Half-Century Survey , chapter Turing in the land ofO(z), pages 113–147. Oxford University Press, Oxford, England, 1988.[9] Rona J. Kopp. The busy beaver problem. Mathematical sciences, State University of New York at Binghamton,1981.[10] Grégory Lafitte. Gödel incompleteness revisited. In Bruno Durand, editor,
Proceedings of the First Sympo-sium on Cellular Automata Journées Automates Cellulaires (JAC’2008) , pages 74–89, Moscow, April 2008.MCCME Publishing House.[11] Shen Lin.
Computer Studies of Turing Machine Problems . PhD thesis, The Ohio State University, Colombus(Ohio), 1963.[12] Grégory Lafitte and Christophe Papazian. The fabric of small Turing machines. In S. Barry Cooper,Thomas F. Kent, Benedikt Löwe, and Andrea Sorbi, editors,
Computation and Logic in the Real World, Third .Lafitte 129
Conference of Computability in Europe, CiE 2007 , Quaderni del Dipartimento di Scienze Matematiche e In-formatiche "Roberto Magari". University of Siena, June 2007.[13] Shen Lin and Tibor Radó. Computer studies of Turing machine problems.
Journal of the Association forComputing Machinery , 12(2):196–212, April 1965.[14] Ming Li and Paul Vitányi.
An introduction to Kolmogorov complexity and its applications . Springer Verlag,New York, 1997.[15] H. Marxen and J. Buntrock. Attacking the busy beaver 5.
Bulletin of the EATCS , 40:247–251, 1990.[16] Rona Machlin and Quentin F. Stout. The complex behavior of simple machines.
Physica D. NonlinearPhenomena , 42:85–98, 1990.[17] Piergiorgio Odifreddi.
Classical Recursion Theory . North Holland Publishing, 1989.[18] Piergiorgio Odifreddi.
Classical Recursion Theory , volume Vol. II. North Holland Publishing, 1999.[19] Tibor Radó. On non-computable functions.
Bell System Technical Journal , 41:877–884, May 1962.[20] Hartley Rogers. Gödel numberings of partial recursive functions.
Journal of Symbolic Logic , 23:331–341,1958.[21] Hartley Rogers.
The Theory of Recursive Functions and Effective Computability . MIT Press, 1967.[22] Alexander Shen. Algorithmic information theory and Kolmogorov complexity. Unpublished lecture notes.[23] R. M. Smullyan.
Recursion Theory for Metamathematics . Oxford University Press, New York, 1993.[24] A. M. Turing. Systems of logic based on ordinals.
Proceedings of the London Mathematical Society , 45:161–228, 1939.[25] Nikolai Vereshchagin and Alexander Shen.