CSCI 2670 Introduction to Theory of Computing November 4, 2004.

Slides:



Advertisements
Similar presentations
Introduction to Computability Theory
Advertisements

Turing -Recognizable vs. -Decidable
1 CSC3130 Formal Languages and Automata Theory Tutorial 9 Undecidable Problem KN Hung SHB 1026.
1 Introduction to Computability Theory Lecture14: Recap Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture12: Decidable Languages Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
Mapping Reducibility Sipser 5.3 (pages ).
1 Introduction to Computability Theory Lecture13: Mapping Reductions Prof. Amos Israeli.
Mapping Reducibility Sipser 5.3 (pages ). CS 311 Fall Computable functions Definition 5.17: A function f:Σ*→Σ* is a computable function.
CSCI 2670 Introduction to Theory of Computing October 19, 2005.
Reducibility A reduction is a way of converting one problem into another problem in such a way that a solution to the second problem can be used to solve.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
Decidability. Why study un-solvability? When a problem is algorithmically unsolvable, we realize that the problem must be simplified or altered before.
CHAPTER 4 Decidability Contents Decidable Languages
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture 6 Decidability Jan Maluszynski, IDA, 2007
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 5 Reducibility Contents Undecidable Problems from Language Theory.
Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)
Prof. Busch - LSU1 Undecidable Problems (unsolvable problems)
1 Introduction to Computability Theory Lecture11: The Halting Problem Prof. Amos Israeli.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
MA/CSSE 474 Theory of Computation More Reduction Examples Non-SD Reductions.
The Halting Problem – Undecidable Languages Lecture 31 Section 4.2 Wed, Oct 31, 2007.
CSCI 2670 Introduction to Theory of Computing November 23, 2004.
CSCI 2670 Introduction to Theory of Computing November 29, 2005.
Decidable languages Section 4.1 CSC 4170 Theory of Computation.
CSCI 2670 Introduction to Theory of Computing October 12, 2005.
 2005 SDU Lecture13 Reducibility — A methodology for proving un- decidability.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
D E C I D A B I L I T Y 1. 2 Objectives To investigate the power of algorithms to solve problems. To explore the limits of algorithmic solvability. To.
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture 7 Undecidability cont. Jan Maluszynski, IDA, 2007
Turing -Recognizable vs. -Decidable
CSCI 2670 Introduction to Theory of Computing October 13, 2005.
Overview of the theory of computation Episode 3 0 Turing machines The traditional concepts of computability, decidability and recursive enumerability.
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 4 Decidability Some slides are in courtesy.
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 5 Reducibility Some slides are in courtesy.
Sofya Raskhodnikova Intro to Theory of Computation L ECTURE 20 Last time Mapping reductions Computation history method Today Computation history method.
 2005 SDU Lecture14 Mapping Reducibility, Complexity.
The Acceptance Problem for TMs
CSCI 2670 Introduction to Theory of Computing
CSCI 2670 Introduction to Theory of Computing
Theory of Computability
Busch Complexity Lectures: Reductions
CSCI 2670 Introduction to Theory of Computing
Reductions Costas Busch - LSU.
Theory of Computability
CSC 4170 Theory of Computation Turing reducibility Section 6.3.
Reducibility The Chinese University of Hong Kong Fall 2010
CSCI 2670 Introduction to Theory of Computing
CSCI 2670 Introduction to Theory of Computing
Intro to Theory of Computation
CS154, Lecture 8: Undecidability, Mapping Reductions
CS154, Lecture 8: Undecidability, Mapping Reductions
CSE 105 theory of computation
CSCI 2670 Introduction to Theory of Computing
CSCI 2670 Introduction to Theory of Computing
CSCI 2670 Introduction to Theory of Computing
CSC 4170 Theory of Computation Mapping Reducibility Section 5.3.
CSCI 2670 Introduction to Theory of Computing
CSCI 2670 Introduction to Theory of Computing
Do not hand in your homework until the end of class
CSCI 2670 Introduction to Theory of Computing
Theory of Computability
CSE 105 theory of computation
Theory of Computability
CSC 4170 Theory of Computation Mapping Reducibility Section 5.3.
CSCI 2670 Introduction to Theory of Computing
Theory of Computability
Intro to Theory of Computation
CSE 105 theory of computation
Presentation transcript:

CSCI 2670 Introduction to Theory of Computing November 4, 2004

2 Agenda Yesterday –Reductions (Section 5.3) Today –Section 6.3 –We will not be covering section 6.4 I will discuss some basic issues of this section when covering chapter 7

November 4, Announcement Revised homework assignment for next Tuesday –5.4, 5.5, 5.7, 5.9, 6.3 I will hold extended office hours next week –Tuesday & Wednesday 3:00 – 5:00

November 4, Mapping reducibility Definition: Language A is mapping reducible to language B, written A  m B, if there is a computable function f:  * →  *, where for every w, w  A iff f(w)  B f f

November 4, Using mapping reductions Test whether w  A by finding a mapping reduction f from A to be and determining whether f(w)  B Example –ALL DFA = { | A is a DFA with L(A)=  * } –Let D = {B | B is a DFA} and let f:D → D where f(A) = Ā –Then A  ALL DFA iff Ā  E DFA Use membership of Ā in E DFA to determine membership of A in ALL DFA

November 4, Mapping reductions & decidability Theorem: If A  m B and B is decidable, then A is decidable. Proof: Let M be a decider for B and let f be a reduction from A to B. Consider the following TM, N: N = “On input w: 1.Compute f(w) 2.Run M on f(w) and report M’s output” Then N decides A

November 4, Mapping reductions & undecidability Corollary: If A  m B and A is undecidable, then B is undecidable. We have been using this corollary implicitly already –E.g., we showed A TM  m HALT TM and concluded HALT TM is undecidable

November 4, Example Let EV = { | A is a DFA all strings in L(A) have an even number of 1’s} –How can we prove EV is decidable using a mapping reduction? Consider the following DFA B 1 1  \{1} L(B) = {w  * | w has an even number of 1’s}

November 4, Mapping reduction of L Use EQ DFA = { | A and B are DFA’s with L(A) = L(B)} Mapping from L to EQ DFA –f( ) = A has an even number of 1’s if and only if L(A) = L(A  B) –I.e., A  EV iff f(A)  EQ DFA

November 4, Reductions & TM-recognizability Theorem: If A  m B and B is Turing- recognizable, then A is Turing- recognizable. Proof: (same as decidable proof) Let M be a recognizer for B and let f be a reduction from A to B. Consider the following TM, N: N = “On input w: 1.Compute f(w) 2.Run M on f(w) and report M’s output” Then N recognizeses A

November 4, Reductions & non-TM-recognizability Theorem: If A  m B and A is not Turing-recognizable, then B is not Turing-recognizable. Question: Which language have we seen that is not Turing- recognizable? Answer: A TM

November 4, Proving non-Turing-recognizability Question: If A  m U is Ā  m Ū? Answer: Yes since x  A iff f(x)  U (Use this fact when doing homework problem 5.5) How can we use the to prove non- Turing-recognizability? Prove A TM  m U or prove A TM  m Ū

November 4, Is mapping reducibility enough? Mapping reducibility does not completely capture our intuition about reductions –Example: A TM and A TM are not mapping reducible A TM is Turing-recognizable and A TM isn’t –A solution to A TM would also provide a solution to A TM

November 4, Oracle An oracle for a language B is an external device that is capable of reporting whether any string w is a member of B –We are not concerned how the oracle determines membership An oracle Turing machine is a Turing machine that can query an oracle –The machine M B can query an oracle for the language B

November 4, Example An oracle Turing machine with an oracle for EQ TM can decide E TM T EQ-TM = “On input 1.Create TM M 1 such that L(M 1 ) =  M 1 has a transition from start state to reject state for every element of  2.Call the EQ TM oracle on input 3.If it accepts, accept; if it rejects, reject” T EQ-TM decides E TM E TM is decidable relative to EQ TM

November 4, Turing reducibility A language A is Turing reducible to a language B, written A  T B, if A is decidable relative to B Previous slide shows E TM is Turing reducible to EQ TM Whenever A is mapping reducible to B, then A is Turing reducible to B –The function in the mapping reducibility could be replaced by an oracle

November 4, Applications If A  T B and B is decidable, then A is decidable If A  T B and A is undecidable, then B is undecidable If A  T B and B is Turing-recognizable, then A is Turing-recognizable If A  T B and A is non-Turing- recognizable, then B is non-Turing- recognizable

November 4,