Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 21 Reducibility. Many-one reducibility For two sets A c Σ* and B c Γ*, A ≤ m B if there exists a Turing-computable function f: Σ* → Γ* such that.

Similar presentations


Presentation on theme: "Lecture 21 Reducibility. Many-one reducibility For two sets A c Σ* and B c Γ*, A ≤ m B if there exists a Turing-computable function f: Σ* → Γ* such that."— Presentation transcript:

1 Lecture 21 Reducibility

2 Many-one reducibility For two sets A c Σ* and B c Γ*, A ≤ m B if there exists a Turing-computable function f: Σ* → Γ* such that x ε A iff f(x) ε B

3 Complete in r. e. An r. e. set A is complete in r. e. if for every r. e. set B, B ≤ m A.

4 Halting problem Theorem. K = { | M accepts x } is complete in r. e.. Proof. (1) K is a r. e. set. (2) For any r. e. set A, there exists a DTM M A such that A = L(M A ). For every input x of M A, define f(x) =. Then x ε A iff f(x) ε K.

5 Remark If (1) A is a r. e. set, and (2) K ≤ m A, then A is complete in r. e.

6 Nonempty Nonempty = {M | L(M) ≠ Φ } is complete in r. e. Proof. (1) Nonempty is a r. e. set. Construct a DTM M* as follows: For each M, we may try every input of M, one by one. If M accepts an input, then M is accepted by M*.

7 (2) K ≤ m Nonempty. Suppose M’ is a DTM accepting every input. For each input of K, we define f( ) is a code of the TM M* behave as follows: on an input y, M* carry out the following computation: Step 1. M* simulates M on input x. If M accepts x, then go to Step 2. Step 2. M* simulates M’ on input y

8 Therefore, ε K => M accepts x => M* accepts every input y => f( ) = M* ε Nonempty not in K => M doesn’t halt on x => M* doesn’t halt on y => L(M*) = Φ => f( ) not in Nonempty

9 r. e. –hard A set B is r. e.-hard if for every r. e. set A, A ≤ m B Remark Every complete set is r. e.-hard. However, not every r. e.-hard set is complete. Every r. e.-hard set is not recursive.

10 All = {M | M accepts all inputs} All is r. e. hard. All is not r. e. All is not complete.

11 Empty = {M | L(M) = Φ} Empty is not r. e. We don’t know if Empty is r. e.-hard.

12 r. e. property A subset P of TM codes is called a r. e. property if M ε P and L(M’) = L(M) imply M’ ε P. e.g., Nonempty, Empty, All are r. e. properties. Question: Give an example which is a subsets of TM codes, but not a r. e. property.

13 Nontrivial A r. e. property is trivial if either it is empty or it contains all r. e. set.

14 Rice Theorem 1 Every nontrivial r. e. property is not recursive.

15 Proof Let P be a nontrivial r. e. property. For contradiction. Suppose P is a recursive set. So is its complement. Note that either P or its complement P does not contains the empty set. Without loss of generality, assume that P does not contains the empty set.

16 Since P is nontrivial, P contains a nonempty r. e. set A. Let Ma be a TM accepting A, i.e., A=L(Ma). We want to prove K ≤m P. For each input of K, we define f( ) to be a code of TM M* which behaves as follows. For each input y of M*, M* does the following:

17 Step 1. M* simulates M on input x of M. If M accepts x, then go to Step 2. Step 2. M* simulates Ma on y. If Ma accepts y, then M* accepts y. Therefore, if ε K then L(M*) = L(Ma) = A ε P, and if not in K, then L(M*) = Φ not in P

18 Since K is not recursive and K ≤ m P, we obtain a contradiction. Recursive = {M | L(M) is recursive} is not recursive. RE = {M | L(M) is r. e.} is trivial.

19 Question: Is K an r. e. property? Is every r. e. property complete? Is it true that for any r. e. property, either it or its complement is complete?

20 Rice Theorem 2 A r. e. property P is r. e. iff the following three conditions hold: (1)If A ε P and A c B for some r. e. set B, then B ε P. (2) If A is an infinite set in P, then A has a finite subset in P. (3) The set of finite languages in P is enumerable, in the sense that there is a TM that generates the (possibly) infinite string code1#code2# …, where code i is a code for the ith finite languages in P.

21 The code for the finite language {w 1, w 2, …, w n } is [w 1,w 2,…,w n]. In other words, there exists an r. e. set B that is a subset of codes of finite languages in P such that for every finite language F in P, B contains at least one code of F.

22 Examples All is not r. e. because All does not satisfy condition (2). The complement of ALL is not r. e. because it does not satisfy condition (1). Empty is not r. e. because it does not satisfy (1) Nonempty is r. e. because it satisfies (1), (2) and (3).

23 Given TMs M and M’, is it true that L(M)=L(M’)? A = { | L(M) = L(M’)} is not recursive. Proof. Empty ≤ m A. Let M o be a fixed TM such that L(M o ) = Φ. Define f(M) =. Then, M ε Empty iff ε A.

24


Download ppt "Lecture 21 Reducibility. Many-one reducibility For two sets A c Σ* and B c Γ*, A ≤ m B if there exists a Turing-computable function f: Σ* → Γ* such that."

Similar presentations


Ads by Google