Introduction to Computability Theory Lecture 14 Recap Prof
Introduction to Computability Theory Lecture 14: Recap Prof. Amos Israeli 1
Subjects 1. Regular languages – Finite automata. 2. Context free languages – Stack automata. 3. Decidable languages – Turing machines. 4. Undecidability. 5. Reductions. 2
The Language Hierarchy Non Turing recognizable Ex: RL-s Ex: Turing recognizable Ex: CFL-s Ex: Decidable Ex: 3
Regular Languages 1. Defined DFA-s and their languages. 2. Defined NFA-s and their languages. 3. Defined RE-s and their languages. 4. Showed all three are equivalent. 5. Proved the Pumping lemma and demonstrated its use to prove irregularity. 4
Training Problem 1 Consider a. Show that L is regular. b. Present an RE for L. 5
Proof a, b a. Consider a, b - 6 - a, b, - -
Proof b. Consider 7
Context Free Languages 1. Defined CFG-s and their languages. 2. Defined Stack automata and their languages. 3. Showed that the two classes are equivalent. 4. Proved the Pumping lemma for CFL-s and demonstrated its use to prove languages to be non CFL. 8
Training Problem 2 Let Show that L is context free. Proof: 9
Decidable Languages 1. Defined Turing machines, decidable languages and Turing recognizable languages. 2. Defined multi-tape TM-s and non deterministic TM-s, and showed their equivalence to ordinary TM-s. 3. Introduced the Church-Turing hypothesis. 10
Training Problem 3 Consider a. Show that L is regular by presenting a DFA. b. Show that L is CF by presenting a PDA. c. Show that L is decidable by presenting a TM. 11
Training Problem 3 Consider a. Show that L is regular by presenting a DFA. 0, 1 0 12 0
Training Problem 3 Consider b. Show that L is CF by presenting a PDA. 0, 1 0 13 0
Training Problem 3 Consider 0, 1 c. Show that L is decidable by presenting a TM. 14
Undecidability 1. Defined Cardinality of sets. 2. Showed that the cardinality of the rational numbers is equal to. 3. Used Diagonalization to show that the cardinality of infinite binary sequences is not equal to. 15
Undecidability (cont. ) 4. Showed that the cardinality of Turing recognizable languages is equal to 5. Showed that the cardinality of languages is larger than. 6. Concluded the existence of a non Turing recognizable language. 16 .
Undecidability (cont. ) 7. Defined and showed that it is undecidable. 17
Reductions 1. Defined reductions. 2. Used reductions to prove that , , and many other problems are undecidable. 3. Defined mapping reductions. 18
Training Problem 4 Consider the following problem: Show that 19 is undecidable.
Proof We show a reduction from to Assume TM R is a decider for S=“On input . , let where N is a TM 1. Let M be the TM rejecting all its inputs. 2. if R accepts (meaning - accept, otherwise reject. ” 20 )
Proof We conclude that S never loops and it accepts iff. In other words: S is a decider for. Since is undecidable, we conclude that is also undecidable. QED Other practice problems: Prove by reduction from and from. 21
Training Problem 5 Prove or disprove: a. If L is Turing recognizable then L is undecidable. Disprove: A Language L is Turing recognizable if there exists a TM, M, s. t. . If M, halts on every input then L is decidable. In other words: Every decidable language is also Turing recognizable. 22
Training Problem 5 Prove or disprove: b. If a Turing machine moves its head only to the right then it must halt. Disprove: Present a state diagram of a TM that goes to the right forever. 23
Training Problem 5 Prove or disprove: c. If a language A, is undecidable then its complement is also undecidable. 24
Training Problem 5 Prove: Assume towards a contradiction that is decidable and let M be a TM deciding it. Consider TM M’ which is identical to M except that the accepting and rejecting states of M’ are switched. Clearly M’ accepts (rejects resp. ) if and only if M rejects (accepts resp. ), hence, M’ decides A, a contradiction. QED 25
Training Problem 6 An ordinary Turing machine may either change its current cell or leave it unchanged. A changer is a TM that always changes its current cell. Show that every Turing recognizable language is recognizable by a changer TM. 26
Proof Let L be a Turing recognizable language and let M be a TM recognizing L, namely. Let 27 be M’s alphabet. Define a TM M’ whose alphabet is , where contains all the “barred” elements of. How should M’s transition function be changed in order to keep its functionality?
Training Problem 7 Let Consider the following problem: Show that 28 is Turing recognizable.
Proof Consider the following TM: S=“On input where M, N are TM-s 1. Repeat 1. 1 Run a single step of M on input w. 1. 2 Run a single step of N on input w. 1. 3 if either M or N accept - accept, if both reject - reject. ” 29
Proof We can conclude: QED 30
- Slides: 30