Fall 2004COMP 3351 Reducibility
Fall 2004COMP 3352 Problem is reduced to problem If we can solve problem then we can solve problem
Fall 2004COMP 3353 If is undecidable then is undecidable If is decidable then is decidable Problem is reduced to problem
Fall 2004COMP 3354 Example: the halting problem is reduced to the state-entry problem
Fall 2004COMP 3355 The state-entry problem Inputs: Turing Machine State Question: Does String enter state on input ?
Fall 2004COMP 3356 Theorem: The state-entry problem is undecidable Proof: Reduce the halting problem to the state-entry problem
Fall 2004COMP 3357 state-entry problem decider YES NO enters doesn’t enter Suppose we have a Decider for the state-entry algorithm:
Fall 2004COMP 3358 Halting problem decider YES NO halts on doesn’t halt on We want to build a decider for the halting problem:
Fall 2004COMP 3359 State-entry problem decider Halting problem decider YES NO YES NO We want to reduce the halting problem to the state-entry problem:
Fall 2004COMP Halting problem decider YES NO YES NO Convert Inputs ? We need to convert one problem instance to the other problem instance State-entry problem decider
Fall 2004COMP Convert to : Add new state From any halting state of add transitions to halting states Single halt state
Fall 2004COMP halts on input halts on state on input if and only if
Fall 2004COMP Generate Halting problem decider YES NO YES NO State-entry problem decider
Fall 2004COMP Since the halting problem is undecidable, the state-entry problem is undecidable END OF PROOF We reduced the halting problem to the state-entry problem
Fall 2004COMP Another example: the halting problem is reduced to the blank-tape halting problem
Fall 2004COMP The blank-tape halting problem Input:Turing Machine Question:Doeshalt when started with a blank tape?
Fall 2004COMP Theorem: Proof: Reduce the halting problem to the blank-tape halting problem The blank-tape halting problem is undecidable
Fall 2004COMP blank-tape halting problem decider YES NO halts on blank tape doesn’t halt on blank tape Suppose we have a decider for the blank-tape halting problem:
Fall 2004COMP halting problem decider YES NO halts on doesn’t halt on We want to build a decider for the halting problem:
Fall 2004COMP Blank-tape halting problem decider Halting problem decider YES NO YES NO We want to reduce the halting problem to the blank-tape halting problem:
Fall 2004COMP Blank-tape halting problem decider Halting problem decider YES NO YES NO We need to convert one problem instance to the other problem instance Convert Inputs ?
Fall 2004COMP Construct a new machine When started on blank tape, writes Then continues execution like then write step 1step2 if blank tapeexecute with input
Fall 2004COMP halts on input string halts when started with blank tape if and only if
Fall 2004COMP Generate blank-tape halting problem decider Halting problem decider YES NO YES NO
Fall 2004COMP Since the halting problem is undecidable, the blank-tape halting problem is undecidable END OF PROOF We reduced the halting problem to the blank-tape halting problem
Fall 2004COMP Does machine halt on input ? Summary of Undecidable Problems Halting Problem: Membership problem: Does machine accept string ?
Fall 2004COMP Does machine enter state on input ? Does machine halt when starting on blank tape? Blank-tape halting problem: State-entry Problem:
Fall 2004COMP Uncomputable Functions
Fall 2004COMP Uncomputable Functions A function is uncomputable if it cannot be computed for all of its domain Domain Values region
Fall 2004COMP An uncomputable function: maximum number of moves until any Turing machine with states halts when started with the blank tape
Fall 2004COMP Theorem:Function is uncomputable Proof: Then the blank-tape halting problem is decidable Assume for contradiction that is computable
Fall 2004COMP Decider for blank-tape halting problem: Input: machine 1. Count states of : 2. Compute 3. Simulate for steps starting with empty tape If halts then return YES otherwise return NO
Fall 2004COMP Therefore, the blank-tape halting problem is decidable However, the blank-tape halting problem is undecidable Contradiction!!!
Fall 2004COMP Therefore, function in uncomputable END OF PROOF
Fall 2004COMP Undecidable Problems for Recursively Enumerable Languages
Fall 2004COMP is empty? is finite? contains two different strings of the same length? Take a recursively enumerable language Decision problems: All these problems are undecidable
Fall 2004COMP Theorem: For any recursively enumerable language it is undecidable to determine whether is empty Proof: We will reduce the membership problem to this problem
Fall 2004COMP empty language problem decider YES NO Suppose we have a decider for the empty language problem: Let be the TM with empty not empty
Fall 2004COMP membership problem decider YES NO accepts rejects We will build the decider for the membership problem:
Fall 2004COMP YES NO YES Membership problem decider empty language problem decider We want to reduce the membership problem to the empty language problem:
Fall 2004COMP YES NO YES Membership problem decider empty language problem decider We need to convert one problem instance to the other problem instance Convert inputs ?
Fall 2004COMP Construct machine : When enters a final state, compare with Accept only if executes the same as with On arbitrary input string
Fall 2004COMP is not empty if and only if
Fall 2004COMP construct YES NO YES Membership problem decider END OF PROOF empty language problem decider