Undecidable Languages Turing-Decidable Monday, March 29 Thursday, April 1 Spring 2010 3:30Pm in MEC 205 2:00Pm in Chemistry
Total Page:16
File Type:pdf, Size:1020Kb
Menu cs3102: Theory of Computation • Another SELF -REJECTING argument: diagonalization Class 17: • A language that is Turing-recognizable but not Undecidable Languages Turing-decidable Monday, March 29 Thursday, April 1 Spring 2010 3:30pm in MEC 205 2:00pm in Chemistry University of Virginia Ed Clarke, Barbara Liskov, David Evans 2007 Turing 2008 Turing Award Award Alternate Proof Input εεε 0 1 00 01 10 11 000 001 010 … M(εεε) … M(0) … Yes? M(1) M(00) Contradiction! M(01) M(10) Machine M(11) No? M(000) … Contradiction! M(w) … The assumption leads to a contradiction: thus, MSR must not exist! Which of the machines are in SELF -REJECTING ? Alternate Proof Input εεε 0 1 00 01 10 11 000 001 010 … M(εεε) … M(0) … M(1) Languages that can be M(00) any M(01) recognized by mechanical M(10) computing machine Machine M(11) M(000) … M(w) SELF -REJECTING … All Languages Where is wSR ? Recognizing vs. Deciding Turing-recognizable : A language L is “Turing- Turing-Recognizable recognizable” if there exists a TM M such that for all strings w: – ∈ Turing-Decidable If w L: eventually M enters qaccept . – ∉ If w L: either M enters qreject or M never terminates. Context-Free Turing-decidable : A language L is “Turing-decidable” if there exists a TM M such that for all strings w: – ∈ If w L: eventually M enters qaccept . – If w ∉ L: eventually M enters q . SELF -REJECTING reject All Languages Detour: Exam Revisions Proof that SF is not CFL Contradiction means one of the two assumptions must be false, but we don’t know which! Is SF Context-Free? Squarefree Sequences in {a, b, c}* • There are infinitely long squarefree sequences with at least 3 alphabet symbols • Some interesting applications and lots of interesting efficient ways to generate them Ron Rivest’s paper If you solved PS4 question 2 do you know an inefficient way? Proving Recognizability Accepted by TM How do we prove a language is Turing-recognizable ? Is this language Turing-recognizable? How do we prove a language is Turing-decidable ? How do we prove a language is not Turing-decidable ? Accepted by TM Universal Turing Machine Is this language Turing-recognizable? <M> Universal Output of running Can we really do Turing M starting this? w Machine on tape w Universal Turing Machine : a TM that can simulate every other TM. Universal Turing Machines Universal Turing Machines designed with: – 4 symbols, 7 states (Marvin Minsky) – 4 symbols, 5 states – 2 symbols, 22 states – 18 symbols, 2 states – 2 states, 5 symbols (Stephen Wolfram) Manchester Illuminated Universal Turing Machine, #9 from http://www.verostko.com/manchester/manchester.html 2-state, 3-symbol Universal TM Alex Smith, University of Birmingham Of course, simplicity is in the eye of the beholder. The 2,3 Turing machine described in the dense new 40-page proof “chews up a lot of tape” to perform even a simple job, Smith says. Programming it to calculate 2 + 2, he notes, would take Sequence Sequence configurations of up more memory than any known computer contains. And image processing? “It probably wouldn't finish before the end of the universe,” he says. Rough Sketch of Proof Accepted by TM System 0 (the claimed UTM) can simulate System 1 None of these which can simulate System 2 steps involve which can simulate System 3 Is this language Turing-decidable? universal which can simulate System 4 computation which can simulate System 5 themselves which can simulate any 2-color cyclic tag system which can simulate any TM. See http://www.wolframscience.com/prizes/tm23/TM23Proof.pdf for the 40-page version with all the details… Proof that ATM is Undecidable Proof that ATM is Undecidable Proof that ATM is Undecidable Proof that ATM is Undecidable Both are contractions ! So, D must not exist. But, if H exists, we can make D. So, H must not exist! But, if ATM is decidable, H must exist. Thus, ATM must not be decidable. Halting Problem Turing-Recognizable Turing-Decidable Context-Free ATM SELF -REJECTING All Languages Halting Problem is Undecidable Halting Problem is Undecidable HALTSANY Crashes Any equivalent to a TM enters some bad state Model Checking in Theory Model Checking is Undecidable. Impossible to write a program that answers this correctly for all inputs. Edmund M. Clarke, The Birth of Model Checking Model Checking in Practice Monday’s Talk MEC 205, 3:30pm (cookies after talk) Model Checking: My 27 year Quest to Overcome the State Explosion Problem 2007 Turing Award Winner (with Allen Emerson, Joseph Sifakis) Edmund Clarke Return PS4 and Exam Revisions.