busy beavers
play

Busy Beavers 15-0 Busy Beavers Consider Turing machines - PDF document

Griffith University 3130CIT Theory of Computation (Based on slides by Harald Sndergaard of The University of Melbourne) Busy Beavers 15-0 Busy Beavers Consider Turing machines with tape alphabet { , 1 }


  1. ✬ ✩ Griffith University 3130CIT Theory of Computation (Based on slides by Harald Søndergaard of The University of Melbourne) Busy Beavers ✫ ✪ 15-0

  2. ✬ ✩ Busy Beavers Consider Turing machines with tape alphabet { � � , 1 } . Starting with an empty tape, a machine may write a string of 1s and halt. We say that its productivity is the number of 1s. Define  the productivity of most  Σ( n ) = productive n -state machines  An optimally productive machine is a busy beaver . ✫ ✪ 15-1

  3. ✬ ✩ Busy Beavers (cont.) Here is a trivial machine T 3 which has productivity 3: � ���� ���� � � → 1 ,L � ���� ���� � � → 1 ,L � ���� ���� � � → 1 ,L � ���� ���� Of course there are more productive 4-state machines. (The Turing machine model used here is the two-way tape machine with anonymous halting state.) Note that there are ( n + 1)-state machines T n with productivity n . ✫ ✪ 15-2

  4. � � � � � ✬ ✩ A Busy Beaver with 3 States Here is a proof that Σ(3) ≥ 6: � → 1 ,R � � ���� ���� ���� ���� 1 ,R � � � � � � → 1 ,L � � � � � � � 1 ,L � → 1 ,L � � � ���� ���� � � � ✫ ✪ 15-3

  5. ✬ ✩ About Busy Beavers It is known that Σ(1) = 1 (trivial) Σ(2) = 4 (easy) Σ(3) = 6 (fairly hard) Σ(4) = 13 (hard) In early 2003, all that is known about Σ(5) is that it is at least 4098. Out of about 88 million 5-state machines, more than 99.9% have been checked! Σ(6) > 10 865 . About 30% of the 6-state machines have been checked. Clearly Σ is a very fast-growing function. ✫ ✪ 15-4

  6. � � � � � � � � � ✬ ✩ Σ Is Not Computable Here is a 10-state Turing machine D to double a string of 1s: � ���� ���� � ,R � ���� ���� ���� ���� � ,L � ���� ���� � ,L � � � � 1 ,L � ������������������������������� 1 ,R ���� ���� 1 ,R � ,L � ���� ���� � ,R � � ,L 1 → � ���� ���� 1 ,L � ,L � ���� ���� ���� ���� � → 1 ,R � ���� ���� 1 ,L 1 ,R � → 1 ,L � � � ✫ ✪ 15-5

  7. ✬ ✩ Σ Is Not Computable (cont.) If we run D after T n , we have a machine of productivity 2 n . − → T n − → D − → We have Σ( n + 10) ≥ 2 n (1) To show that Σ is not computable, assume that we have a machine BB which computes Σ: n �→ Σ( n ) Let k be the number of states in BB . The following machine: − → T n − → BB − → BB − → shows that Σ( n + 2 k − 1) ≥ Σ(Σ( n )) (2) ✫ ✪ 15-6

  8. ✬ ✩ Σ Is Not Computable (cont.) In summary: Σ( n + 10) ≥ 2 n (1) Σ( n + 2 k − 1) ≥ Σ(Σ( n )) (2) Note that Σ is total. Σ is also monotonic and strictly increasing, so Σ( j ) ≥ Σ( i ) ⇒ j ≥ i. Hence for all n , n + 2 k − 1 ≥ Σ( n ) . In particular, n + 2 k + 9 ≥ Σ( n + 10) ≥ 2 n by (1). So 2 k + 9 ≥ n for all n . But this is clearly false—take n = 2 k + 10. ✫ ✪ We conclude that BB does not exist. 15-7

  9. ✬ ✩ Undecidability Again We can think of the busy beaver problem as a decidability problem. If we can decide Σ( n ) ≤ k for all n and k , then we can compute Σ, and vice versa. So in showing Σ uncomputable we have produced an undecidable problem, without relying on any other results about undecidability. ✫ ✪ 15-8

  10. ✬ ✩ TM Halting Revisited This can also give us an easy alternative proof of the undecidability of TM halting . Namely, we can reduce the problem of computing Σ to the halting problem. Here is why Σ would be computable if the halting problem was decidable: On input n : 1. Generate all n -state Turing machines. 2. Filter out all the non-terminating machines. 3. Run the rest until all have halted. 4. Pick the most productive machine. 5. Print its productivity. ✫ ✪ 15-9

Recommend


More recommend