Exercise 01

Examine the formal definition of a Turing Machine to answer the following questions, and explain your reasoning.

  1. Can a Turing machine ever write the blank symbol on its tape?

    • Yes, a Turing machine can write the blank symbol on its tape as part of its operation.
  2. Can the tape alphabet be the same as the input alphabet ?

    • No, the tape alphabet must include the blank symbol while doesn’t.
  3. Can a β€œplain vanilla” Turing machine’s head ever be in the same location in two successive steps?

    • No, because β€œplain vanilla” cannot stay in one place, it has to move left or right.
  4. Can a Turing machine contain just a single state?

    • No, a Turing machine needs at least two states (initial state and accept/reject).

Exercise 02

For the following Turing Machine, complete the questions below:

Turing Machine From Sipser

  1. Work out the complete sequence of configurations which would result if the input were 000
  1. Check: did you end in ?
  • Yes, we did.

Exercise 03

Given some Turing machine, , we observe that configuration yields configuration . Give the piece of the transition function, , which makes this possible.

How about the case where configuration yields ?

How about the case where yields ?


Exercise 04

Given the Turing machine shown in Sipser ITTTOC Example 3.9, write the complete sequence of configurations that formally describes the computation on the following inputs:

Turing Machine Sipser 3.

  1. 01#01

Transisitons q1 01#01 β†’ x q3 1#01 β†’ x1 q3 #01 β†’ x1# q5 01 β†’ x1# q6 x1 β†’ x1 q7 #x1 β†’ x q7 1#x1 β†’ x q1 1#x1 β†’ xx q3 #x1 β†’ xx# q5 x1 β†’ xx# q6 xx β†’ xx q7 #xx β†’ x q7 x#xx β†’ x q8 x#xx β†’ xx# q_accept xx

Accept

  1. 00#10

Transisitons

q1 00#10 β†’ x q3 0#10 β†’ x0 q3 #10 β†’ x0# q5 10 β†’

x0# q6 x0 β†’ x0 q7 #x0 β†’ x q7 0#x0 β†’ x q1 0#x0 β†’

xx q3 #x0 β†’ xx# q5 x0 β†’ xx# q6 xx β†’ xx q7 #xx β†’

x q7 x#xx β†’ q7 xx#xx β†’ q_reject xx#xx

Reject

Which of these halt in the accept state, and which halt in the reject state?

We can see that the first input halts in the accept state, while the second input halts in the reject state.