SD & Turing Enumerable. Lecture 33: Reductions and Undecidability. Lexicographically Enumerable. SD & Turing Enumerable

Similar documents
Decision Problems with TM s. Lecture 31: Halting Problem. Universe of discourse. Semi-decidable. Look at following sets: CSCI 81 Spring, 2012

CS 301. Lecture 18 Decidable languages. Stephen Checkoway. April 2, 2018

Decidability: Reduction Proofs

Computability and Complexity

CSE 105 THEORY OF COMPUTATION

CS154, Lecture 10: Rice s Theorem, Oracle Machines

CSE 105 THEORY OF COMPUTATION

uring Reducibility Dept. of Computer Sc. & Engg., IIT Kharagpur 1 Turing Reducibility

Decidability and Undecidability

The Unsolvability of the Halting Problem. Chapter 19

Decidability. Linz 6 th, Chapter 12: Limits of Algorithmic Computation, page 309ff

CS 21 Decidability and Tractability Winter Solution Set 3

Decidability: Church-Turing Thesis

Turing Machines Part III

Lecture Notes: The Halting Problem; Reductions

6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 8 Nancy Lynch

CS481F01 Solutions 8

V Honors Theory of Computation

UNRESTRICTED GRAMMARS

Computational Models Lecture 9, Spring 2009

CSCE 551: Chin-Tser Huang. University of South Carolina

There are two main techniques for showing that problems are undecidable: diagonalization and reduction

Automata Theory CS S-FR2 Final Review

1 Reducability. CSCC63 Worksheet Reducability. For your reference, A T M is defined to be the language { M, w M accepts w}. Theorem 5.

Computation Histories

CS20a: Turing Machines (Oct 29, 2002)

Turing Machine Recap

Undecidability and Rice s Theorem. Lecture 26, December 3 CS 374, Fall 2015

Computational Models Lecture 8 1

Reductions in Computability Theory

CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY

problem X reduces to Problem Y solving X would be easy, if we knew how to solve Y

Computational Models Lecture 8 1

Mapping Reducibility. Human-aware Robotics. 2017/11/16 Chapter 5.3 in Sipser Ø Announcement:

CS5371 Theory of Computation. Lecture 14: Computability V (Prove by Reduction)

CSE 105 Theory of Computation

Undecidability. We are not so much concerned if you are slow as when you come to a halt. (Chinese Proverb)

Undecidable Problems and Reducibility

1 Showing Recognizability

Lecture 12: Mapping Reductions

Computability and Complexity

Computability Crib Sheet

Turing s thesis: (1930) Any computation carried out by mechanical means can be performed by a Turing Machine

Equivalent Variations of Turing Machines

Computational Models Lecture 8 1

CSCI3390-Assignment 2 Solutions

1 Acceptance, Rejection, and I/O for Turing Machines

Chap. 4,5 Review. Algorithms created in proofs from prior chapters

TURING MAHINES

CS154, Lecture 12: Kolmogorov Complexity: A Universal Theory of Data Compression

Section 14.1 Computability then else

The Turing Machine. Computability. The Church-Turing Thesis (1936) Theory Hall of Fame. Theory Hall of Fame. Undecidability

CSE 105 Theory of Computation

Reducability. Sipser, pages

Turing Machines. Lecture 8

CS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)

Theory of Computation CS3102 Spring 2014 A tale of computers, math, problem solving, life, love and tragic death

Theory of Computation

CS20a: Turing Machines (Oct 29, 2002)

More About Turing Machines. Programming Tricks Restrictions Extensions Closure Properties

Lecture 6: Oracle TMs, Diagonalization Limits, Space Complexity

Functions on languages:

CS5371 Theory of Computation. Lecture 12: Computability III (Decidable Languages relating to DFA, NFA, and CFG)

CSCC63 Worksheet Turing Machines

Lecture 20: conp and Friends, Oracles in Complexity Theory

Decidability. Overview. Preliminaries to Halting Problem. Decidable Problems of Regular Languages. Decidable Problems of Context-Free Languages

Computable Functions

Homework Assignment 6 Answers

THEORY OF COMPUTATION (AUBER) EXAM CRIB SHEET

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY

Homework 8. a b b a b a b. two-way, read/write

CSCE 551: Chin-Tser Huang. University of South Carolina

Turing Machines, diagonalization, the halting problem, reducibility

CPSC 421: Tutorial #1

Theory of Computation

Lecture 23: Rice Theorem and Turing machine behavior properties 21 April 2009

More Turing Machines. CS154 Chris Pollett Mar 15, 2006.

CS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)

17.1 The Halting Problem

Intro to Theory of Computation

CSE 105 THEORY OF COMPUTATION

MA/CSSE 474 Theory of Computation

CSE 555 Homework Three Sample Solutions

2 Computable and Computably Enumerable Sets

Lecture 13: Foundations of Math and Kolmogorov Complexity

CS154, Lecture 17: conp, Oracles again, Space Complexity

Non-emptiness Testing for TMs

Introduction to Turing Machines. Reading: Chapters 8 & 9

On Rice s theorem. Hans Hüttel. October 2001

Introduction to Languages and Computation

CS 125 Section #10 (Un)decidability and Probability November 1, 2016

What languages are Turing-decidable? What languages are not Turing-decidable? Is there a language that isn t even Turingrecognizable?

FORMAL LANGUAGES, AUTOMATA AND COMPUTATION

Testing Emptiness of a CFL. Testing Finiteness of a CFL. Testing Membership in a CFL. CYK Algorithm

Theory of Computation - Module 4

A non-turing-recognizable language

Theory of Computation

CSE 105 THEORY OF COMPUTATION

CSC 5170: Theory of Computational Complexity Lecture 9 The Chinese University of Hong Kong 15 March 2010

Mapping Reductions. Mapping Reductions. Introduction to Computability. Theory. Mapping Reductions. Lecture13: Mapping. Reductions

Transcription:

SD & Turing Lecture 33: Reductions and Undecidability CSCI 81 Spring, 2012 Kim Bruce Theorem: A language is SD iff it is Turing enumerable. Proof: Spose L is Turing enumerable. Show L is SD. Let w be input. Start enumerating L. Every time enter state p, check to see if contents of tape is w. If yes then halt and stop. Otherwise keep going. Obvious proof in other direction not work! SD & Turing Theorem: A language is in SD iff it is Turing enumerable. Proof (cont): Spose L is in SD. Show L can be enumerated. Enumerate all w Σ* lexicographically: ε, a, b, aa, ab, ba, bb,... As each w i is enumerated, start a copy of M to check with w i as input. Execute one step of each M with w i started, excluding those that have halted Whenever an M accepts a w i, output w i. Lexicographically M lexicographica"y enumerates L iff M enumerates the elements of L in lexicographic order. A language L is lexicographica"y Turingenumerable iff there is a Turing machine that lexicographically enumerates it. Called dove-tailing

Lexicographically Theorem: A language is in D iff it is lexicographically enumerable. Proof: Spose L is in D. Show L can be enumerated lexicographically. Enumerate all w Σ* lexicographically: ε, a, b, aa, ab, ba, bb,... As each w i is enumerated, run M deciding L on w i as input. If M accepts a w i, output w i. Otherwise go to next. Easier here because M always halts Lexicographically Theorem: A language is in D iff it is lexicographically enumerable. Proof: Spose L can be enumerated lexicographically. Show L is in D. To determine if w in L: Start enumerating all elts of L lexicographically If w is enumerated, then accept. If go past w in lexicographic order, then reject If halts before getting to w, then also reject. Oops! Second part of proof has a hole. Suppose M lexicographically enumerates L = {a,ba,aba} by enumerating three elements and then continuing forever without ever enumerating another element. If w comes after last element, then won t know if in or not! The Problem View Undecidable Problems The Language View Does TM M halt on w? H = {<M, w> : M halts on w} Does TM M not halt on w? H = {<M, w> : M does not halt on w} Does TM M halt on the empty tape? H ε = {<M> : M halts on ε} Can only happen if L is finite. But all finite languages are decidable. Is there any string on which TM M halts? Does TM M accept all strings? H ANY = {<M> : there exists at least one string on which TM M halts } A ALL = {<M> : L(M) = Σ*} Fixes proof But don t necessarily know whether L is finite!! Do TMs M a and M b accept the same languages? EqTMs = {<M a, M b > : L(M a ) = L(M b )} Is the language that TM M accepts regular? TMreg = {<M>:L(M) is regular}

Text Reduction Example Theorem: There exists no general procedure to solve the following problem: Given an angle A, divide A into sixths using only a straightedge and a compass. Proof: Suppose that there were such a procedure, call it sixth. Then we could trisect an arbitrary angle using that procedure as follows...... but know can t trisect an angle. Therefore sixth cannot exist. Reductions A reduction R from L1 to L2 is one or more Turing machines such that: If there exists a Turing machine Oracle that decides (or semidecides) L 2, then the Turing machines in R can be composed with Oracle to build a deciding (or a semideciding) Turing machine for L 1. I.e., a solution to L 2 gives a solution to L 1 Write L 1 L 2. (L 1 is easier than L 2) Last time showed reduction from H TM to L ε0 Using Reductions How to use reduction If R is a reduction from L 1 to L 2 and L 2 is in D, then L 1 is in D If R is a reduction from L 1 to L 2 and L 1 is not in D, then L 2 is not in D Because H TM not decidable, neither is L ε0 Showing that L2 is not in D: L1 (known not to be in D) L1 in D But L1 not in D ( ( R L2 (new language whose if L2 in D decidability we are trying to determine) So L2 not in D

To show L 2 undecidable Mapping Reductions Choose a language L 1 : that is already known not to be in D, and that can be reduced to L 2. Suppose some Oracle solves L 2 Use Oracle as subroutine in TM M to solve L 1. Ensure that if x L1, then M(x) accepts, and If x L1, then M(x) rejects. L1 is mapping reducible to L2 (L 1 M L 2 ) iff there exists some computable function f such that: x Σ* (x L1 f(x) L2). To decide whether x is in L 1, we transform it, using f, into a new object and ask whether that object is in L 2. Mapping Reductions Equality of TM s L1 is mapping reducible to L2 (L 1 M L 2 ) iff there exists some computable function f such that: x Σ* (x L1 f(x) L2). Example: H TM M H ε where H ε = {<M> M halts on empty tape} Take <M,w>, build new machine M w that writes w on tape and then simulates M. Then <M,w> H TM iff <M w> H ε Showed a few lectures back that E TM ={M M is a TM and L(M)= } is undecidable. Use this to show Eq TM = {<M 1,M 2 > L(M 1 ) = L(M 2 ) } is undecidable. Show E TM Eq TM

Reduction Consequences To find if <M> E TM : Let M be a TM that never accepts anything: L(M ) =. Suppose Oracle solves EQ TM. I.e., Oracle(<M,M >) always halts and accepts iff L(M) = L(M ). Then <M> E TM iff <M, M > accepted by Oracle. Thus EQ TM is undecidable. If f and g are computable functions, then cannot decide if f = g. If V is program for virus, then cannot tell if suspicious program V is equivalent. Showed E TM M Eq TM via f(m) = <M,M > Is everything undecidable? L = {<M> M s program has less than 20 transitions } L = {<M> M halts in exactly 47 steps }