into The only way the language can be nonempty is if accepts Weve forced to

# Into the only way the language can be nonempty is if

• Notes
• 164

This preview shows page 68 - 71 out of 164 pages.

? into ? . The only way the language can be nonempty is if ? accepts ? . We’ve forced ? to give us the answer we’re looking for, i.e., we’ve converted acceptance into emptiness problem. Now we’re ready to write out the proof. ? =“On input ?, ? , 1. Construct ? ? =“ignore input. (a) Run ? on ? . (b) Accept if ? accepts.” 2. Run ? on ? ? . 3. Give opposite answer. ( ? is a decider. If ? accepts ? ? , then ? ? ’s language is empty, so ? did not accept ? , so reject.) This machine decides ? TM , which is a contradiction. Hence our assumption was incorrect; ? TM is undecidable. 68
Lecture 9 Notes on Theory of Computation S 2 Mapping reducibility We gave a general notion of reducibility, but not a specific definition. In this section we introduce a specific method called mapping reducibility. Definition 9.6: Let ? and ? be languages. We say that ? is mapping reducible to ? , and write 7 ? ? ? if there is a computable function ? : Σ * Σ * and for all ? , ? ? iff ? ( ? ) ? . We say ? : Σ * Σ * is computable if some TM ? halts with ? ( ? ) on the tape when started on input ? . Why is mapping reducibility useful? Suppose we have a decider for ? , and we have ? , computed by a decider. We can use the two deciders together to decide whether a string is in ? ! Proposition 9.7: pr:map-reduce If ? ? ? and ? is decidable (recognizable) so is ? . Proof. Say ? decides ? . Let ? =“On ? , 1. Compute ? ( ? ). 2. Accept if ? ( ? ) ? . Reject otherwise.” For ? recognizable, just remove the last line “reject if ? ( ? ) ̸∈ ? .” (We don’t know that ? halts.) Think of ? as a “transformer”: it transforms a problem in ? to a problem in ? . If ? is reducible to ? , and ? is not decidable, then neither is ? . This will also help us prove a problem is non-T-recognizable. Let’s recast our previous results in the language of mapping reducibility. In the proof of Theorem 9.5 we showed that ? ?? ? ? ?? . We converted a problem about ? ?? to a problem about ? ?? . Given ?, ? ⟩ ∈ ? ?? , let ? map it to ? ? . We have ?, ? ⟩ ∈ ? ?? iff ? ? ̸∈ ? ?? . 7 Think of the notation as saying ? is “easier” than ? 69
Lecture 9 Notes on Theory of Computation A useful fact is that ? ? ? ⇐⇒ ? ? ? ; by using the same ? . We make one more observation, then prove another theorem. We actually have the following strengthened version of Theorem 9.5. Theorem 9.8: thm:etm2 ? ?? is not recognizable. Proof. We showed ? ?? ? ? ?? , so ? ?? ? ? ?? . Since ? ?? is not recognizable, ? TM is not recognizable. We’ll now use mapping reducibility to give an example of a language such that neither it nor its complement is recognizable. We will prove this by reduction from ? ?? . Theorem 9.9: EQTM ?? ?? and ?? ?? are both ? -unrecognizable. Recall that the equality problem is that given 2 Turing machines, we want to know whether they recognize the same language. Proof. We show that 1. ? ?? ? ?? ?? , or equivalently, ? ?? ? ?? ?? . We have to give a function ? : ?, ? ⟩ ↦→ ⟨ ? 1 , ? 2 . We let ? 2 be the machine that always rejects. Let ? 1 = ? ? , the machine that simulates ? on ? . If ? accepts/rejects ? then the first will accept/reject everything and ? 2 will reject everything, so ?, ? ⟩ ∈ ? ?? iff ? 1 , ? 2 ⟩ ∈ ??