Algorithms & Models of Computation CS/ECE 374, Spring 2019 Undecidability II: More problems via reductions Lecture 21 Thursday, April 4, 2019 L A T EXed: December 27, 2018 08:26 Chan, Har-Peled, Hassanieh (UIUC) CS374 1 Spring 2019 1 / 29
Turing machines... TM = Turing machine = program. Chan, Har-Peled, Hassanieh (UIUC) CS374 2 Spring 2019 2 / 29
Reminder: Undecidability Defjnition 1 Chan, Har-Peled, Hassanieh (UIUC) CS374 3 Spring 2019 3 / 29 Language L ⊆ Σ ∗ is undecidable if no program P , given w ∈ Σ ∗ as input, can always stop and output whether w ∈ L or w / ∈ L . (Usually defjned using TM not programs. But equivalent.
Reminder: Undecidability Defjnition 1 Chan, Har-Peled, Hassanieh (UIUC) CS374 3 Spring 2019 3 / 29 Language L ⊆ Σ ∗ is undecidable if no program P , given w ∈ Σ ∗ as input, can always stop and output whether w ∈ L or w / ∈ L . (Usually defjned using TM not programs. But equivalent.
Reminder: Undecidability Defjnition 1 input, can always stop and (Usually defjned using TM not programs. But equivalent. Chan, Har-Peled, Hassanieh (UIUC) CS374 3 Spring 2019 3 / 29 Language L ⊆ Σ ∗ is undecidable if no program P , given w ∈ Σ ∗ as output whether w ∈ L or w / ∈ L .
Reminder: The following language is undecidable Defjnition 2 Spring 2019 4 CS374 Chan, Har-Peled, Hassanieh (UIUC) Theorem 3 Turing proved the following: Decide if given a program M , and an input w , does M accepts w . A decider for a language L , is a program (or a TM ) that always Formally, the corresponding language is 4 / 29 � � � A TM = � M , w � . � � M is a TM and M accepts w stops, and outputs for any input string w ∈ Σ ∗ whether or not w ∈ L . A language that has a decider is decidable . A TM is undecidable.
Reminder: The following language is undecidable Defjnition 2 Spring 2019 4 CS374 Chan, Har-Peled, Hassanieh (UIUC) Theorem 3 Turing proved the following: Decide if given a program M , and an input w , does M accepts w . A decider for a language L , is a program (or a TM ) that always Formally, the corresponding language is 4 / 29 � � � A TM = � M , w � . � � M is a TM and M accepts w stops, and outputs for any input string w ∈ Σ ∗ whether or not w ∈ L . A language that has a decider is decidable . A TM is undecidable.
Reminder: The following language is undecidable Defjnition 2 Spring 2019 4 CS374 Chan, Har-Peled, Hassanieh (UIUC) Theorem 3 Turing proved the following: Decide if given a program M , and an input w , does M accepts w . A decider for a language L , is a program (or a TM ) that always Formally, the corresponding language is 4 / 29 � � � A TM = � M , w � . � � M is a TM and M accepts w stops, and outputs for any input string w ∈ Σ ∗ whether or not w ∈ L . A language that has a decider is decidable . A TM is undecidable.
Part I Reductions Chan, Har-Peled, Hassanieh (UIUC) CS374 5 Spring 2019 5 / 29
Reduction Meta defjnition: Problem A reduces to problem B , if given a Spring 2019 6 CS374 Chan, Har-Peled, Hassanieh (UIUC) A language X reduces to a language Y , if one can construct a TM Defjnition 5 Defjnition 4 oracle ORAC for language L is a function that receives as a word 6 / 29 solution to B , then it implies a solution for A . Namely, we can solve B then we can solve A . We will done this by A = ⇒ B . w , returns TRUE ⇐ ⇒ w ∈ L . decider for X using a given oracle ORAC Y for Y . We will denote this fact by X = ⇒ Y .
Reduction Meta defjnition: Problem A reduces to problem B , if given a Spring 2019 6 CS374 Chan, Har-Peled, Hassanieh (UIUC) A language X reduces to a language Y , if one can construct a TM Defjnition 5 Defjnition 4 oracle ORAC for language L is a function that receives as a word 6 / 29 solution to B , then it implies a solution for A . Namely, we can solve B then we can solve A . We will done this by A = ⇒ B . w , returns TRUE ⇐ ⇒ w ∈ L . decider for X using a given oracle ORAC Y for Y . We will denote this fact by X = ⇒ Y .
Reduction Meta defjnition: Problem A reduces to problem B , if given a Spring 2019 6 CS374 Chan, Har-Peled, Hassanieh (UIUC) A language X reduces to a language Y , if one can construct a TM Defjnition 5 Defjnition 4 oracle ORAC for language L is a function that receives as a word 6 / 29 solution to B , then it implies a solution for A . Namely, we can solve B then we can solve A . We will done this by A = ⇒ B . w , returns TRUE ⇐ ⇒ w ∈ L . decider for X using a given oracle ORAC Y for Y . We will denote this fact by X = ⇒ Y .
Reduction proof technique Result in decider for A (i.e., A TM ). Spring 2019 7 CS374 Chan, Har-Peled, Hassanieh (UIUC) Thus, L must be not decidable. 8 Contradiction A is not decidable. 7 6 1 Create a decider for known undecidable problem A using M . 5 Assume L is decided by TM M . 4 L : language of B . 3 Proof via reduction. Result in a proof by contradiction. 2 B : Problem/language for which we want to prove undecidable. 7 / 29
Reduction proof technique Result in decider for A (i.e., A TM ). Spring 2019 7 CS374 Chan, Har-Peled, Hassanieh (UIUC) Thus, L must be not decidable. 8 Contradiction A is not decidable. 7 6 1 Create a decider for known undecidable problem A using M . 5 Assume L is decided by TM M . 4 L : language of B . 3 Proof via reduction. Result in a proof by contradiction. 2 B : Problem/language for which we want to prove undecidable. 7 / 29
Reduction proof technique Result in decider for A (i.e., A TM ). Spring 2019 7 CS374 Chan, Har-Peled, Hassanieh (UIUC) Thus, L must be not decidable. 8 Contradiction A is not decidable. 7 6 1 Create a decider for known undecidable problem A using M . 5 Assume L is decided by TM M . 4 L : language of B . 3 Proof via reduction. Result in a proof by contradiction. 2 B : Problem/language for which we want to prove undecidable. 7 / 29
Reduction proof technique Result in decider for A (i.e., A TM ). Spring 2019 7 CS374 Chan, Har-Peled, Hassanieh (UIUC) Thus, L must be not decidable. 8 Contradiction A is not decidable. 7 6 1 Create a decider for known undecidable problem A using M . 5 Assume L is decided by TM M . 4 L : language of B . 3 Proof via reduction. Result in a proof by contradiction. 2 B : Problem/language for which we want to prove undecidable. 7 / 29
Reduction proof technique Result in decider for A (i.e., A TM ). Spring 2019 7 CS374 Chan, Har-Peled, Hassanieh (UIUC) Thus, L must be not decidable. 8 Contradiction A is not decidable. 7 6 1 Create a decider for known undecidable problem A using M . 5 Assume L is decided by TM M . 4 L : language of B . 3 Proof via reduction. Result in a proof by contradiction. 2 B : Problem/language for which we want to prove undecidable. 7 / 29
Reduction proof technique Result in decider for A (i.e., A TM ). Spring 2019 7 CS374 Chan, Har-Peled, Hassanieh (UIUC) Thus, L must be not decidable. 8 Contradiction A is not decidable. 7 6 1 Create a decider for known undecidable problem A using M . 5 Assume L is decided by TM M . 4 L : language of B . 3 Proof via reduction. Result in a proof by contradiction. 2 B : Problem/language for which we want to prove undecidable. 7 / 29
Reduction proof technique Result in decider for A (i.e., A TM ). Spring 2019 7 CS374 Chan, Har-Peled, Hassanieh (UIUC) Thus, L must be not decidable. 8 Contradiction A is not decidable. 7 6 1 Create a decider for known undecidable problem A using M . 5 Assume L is decided by TM M . 4 L : language of B . 3 Proof via reduction. Result in a proof by contradiction. 2 B : Problem/language for which we want to prove undecidable. 7 / 29
Reduction proof technique Result in decider for A (i.e., A TM ). Spring 2019 7 CS374 Chan, Har-Peled, Hassanieh (UIUC) Thus, L must be not decidable. 8 Contradiction A is not decidable. 7 6 1 Create a decider for known undecidable problem A using M . 5 Assume L is decided by TM M . 4 L : language of B . 3 Proof via reduction. Result in a proof by contradiction. 2 B : Problem/language for which we want to prove undecidable. 7 / 29
Reduction implies decidability decider and its language is X . Thus X is decidable (or more formally Spring 2019 8 CS374 Chan, Har-Peled, Hassanieh (UIUC) TM decidable). that uses an oracle for Y as a subroutine. We replace the calls to Lemma 6 Let T be a decider for Y (i.e., a program or a TM ). Since X reduces Proof. is decidable then X is decidable. 8 / 29 Let X and Y be two languages, and assume that X = ⇒ Y . If Y to Y , it follows that there is a procedure T X | Y (i.e., decider) for X this oracle in T X | Y by calls to T . The resulting program T X is a
The countrapositive... Lemma 7 is undecidable then Y is undecidable. Chan, Har-Peled, Hassanieh (UIUC) CS374 9 Spring 2019 9 / 29 Let X and Y be two languages, and assume that X = ⇒ Y . If X
Part II Halting Chan, Har-Peled, Hassanieh (UIUC) CS374 10 Spring 2019 10 / 29
The halting problem Similar to language already known to be undecidable: Spring 2019 11 CS374 Chan, Har-Peled, Hassanieh (UIUC) 11 / 29 Language of all pairs � M , w � such that M halts on w : � � � A Halt = � M , w � . � � M is a TM and M stops on w � � � A TM = � M , w � . � � M is a TM and M accepts w
Recommend
More recommend