Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

State whether the problem is decidable or undecidable . If you claim the problem

ID: 3831456 • Letter: S

Question

State whether the problem is decidable or undecidable.

If you claim the problem is decidable, then give a high-level, English description of an algorithm to solve the problem.

If you claim the problem is undecidable, then describe a proof-by-reduction to verify your claim. If your proof involves some kind of transformation of M into M’ , then provide a high-level, English description of your transformation. Be sure to specify precisely for each “box” in your proof, what are the inputs to that “box” (i.e., to that program) and what is The output of that “box”.

You are given, as input, some Turing Machine M and some string w. The problem is to determine whether the machine M, when executed on the input string w, ever moves its read-head to the left for three delta rules in a row.

Thanks a lot for your help!10

Explanation / Answer

Define M' as a turing machine that takes a pair (M,w) as input, where M is a turing machine encoded in some form recognized by M' and w is the input to M.

M' stops and accepts (M,w) whenever the head of the simulated machine M moves to the left while processing input w

For a particular input to M' (M,w), construct the turing machine P as follows:

We have reduced the Universal Turing Machine U to P. Since we know that L(U) is not decidable, we conclude that L(P) is not decidable. Consequently, M' is not decidable.

The proof is by contradiction. Assume that this problem is decidable, then we will show that ATM (the acceptance problem) is also decidable: ATM = { | M is a TM and M accepts w}. Let R be a Turing machine that decides the LEFTMOST problem. That is, R decides the language

LEFTMOST = { | M on input w ever attempts to move its head left when it's head is on the left-most tape cell }.

Now, the idea is to construct a Turing machine S that decides ATM in such a way that it uses R. We can do it as follows: On input , S first modifies machine M to M´, so that M´ moves its head to the left from the left-most cell only when M accepts its input. To ensure that during its computation M´ doesn't move the head left from the left-most position, machine M´ first shifts the input w one position to the right, and places a special symbol on the left-most tape cell. The computation of M´ starts with the head on the second tape cell. If during its computation M´ ever attempts to move its head to the left-most tape cell, M´ finds out that it did so by reading the special symbol and then puts the head back to the second cell, and continues its execution. If M would enter an accept state, then M´ enters a loop that forces the head to move always to the left.

After S has constructed M´ it runs the decider R on input < M´; w>. If R accepts then S accepts, otherwise if R rejects then S rejects. Therefore, ATM is decidable, which is a contradiction.

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote