CSE 105—Theory of Computability Fall, 2006 Lecture 15—November 9 Undecidability Instructor: Neil Rhodes Outline Relationship between decidable and Turing-recognizable classes Identifying a non-decidable language Some languages are not Turing-recognizable � Non-constructive proof � Constructive proof 2
Hierarchy of languages Turing-unrecognizable Turing-recognizable r e c u Decidable r s i v e l Context-Free recursive y e n u m e r a b Regular l e ( r . e , ) 3 Complement of a Turing-decidable Turing-recognizable recursively enumerable (r.e,) language is Turing-decidable Decidable Context-Free r e c u r s i v e Regular If a language, L, is Turing-decidable (recursive), its complement, L C , is: 4
Definition of co- language class If L is in language class , its complement is in co-language class � If L is regular L C is ______________ � If L is context-free, L C is _______________ � If L is deterministic context-free, L C is _______________ 5 Complement of non-decidable Turing-recognizable language is not Turing-recognizable L is decidable iff L and L C are both Turing-recognizable 6
Turing-recognizable � co-Turing-recognizable 7 Outline Relationship between decidable and Turing-recognizable classes Identifying a non-decidable language Some languages are not Turing-recognizable � Non-constructive proof � Constructive proof 8
Barber paradox The only barber in town shaves everyone (and only those) who don’t shave themselves. � Who shaves the barber? 9 Diagonalization The set of real numbers is uncountable (no bijection with the natural numbers) 10
The acceptance problem is undecidable Does Turing Machine M accept input w? A TM ={<M,w>|M is a TM and M accepts w} 11 Explicit diagonalization in proof that the acceptance problem is undecidable Encode Turing machines as integers � Any integer describing an invalid Turing machine we’ll interpret as a TM that halts and rejects � TM i = Turing Machine described by integer i Make table 1 2 3 4 5 6 7 8 � Columns are i th binary string TM 1 � Rows are j th Turing machine � Each entry ( i, j ) is: TM 2 – 1 if TM j accepts input i – 0 if TM j doesn’t accept input i TM 3 TM 4 L D = opposite of (i, i) for each i � Diagonalization language not TM 5 recognized by any TM TM 6 TM 7 TM 8 12
Outline Relationship between decidable and Turing-recognizable classes Identifying a non-decidable language Some languages are not Turing-recognizable � Non-constructive proof � Constructive proof 13 There are many languages which have no TM (not recursively enumerable) How large is set of TMs? How large is set of languages? Bijection possible? 14
Outline Relationship between decidable and Turing-recognizable classes Identifying a non-decidable language Some languages are not Turing-recognizable � Non-constructive proof � Constructive proof 15 A TMC is not Turing-recognizable Assume A TMC is Turing-recognizable A TM is Turing-recognizable Since both A TM and A TMC are Turing-recognizable, ______________________________________ But, we’ve already shown that ____________________________ So, A TMC is not Turing-recognizable 16
Recommend
More recommend