Computer Science Stack Exchange is a question and answer site for students, researchers and practitioners of computer science. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

If we limit a turing machine so that it is not allowed to write the symbol that it reads would it reduce its power?

For example: $( State, A, State, Z, DIRECTION)$

$A$ cannot be the same symbol as $Z$.

share|cite|improve this question
up vote 15 down vote accepted

If you give me a standard Turing Machine, I can build a must-write-different Turing Machine that does the same thing.

I'll take the original alphabet and double it -- so for symbol $a$, I create two symbols $a_1$ and $a_2$, and for symbol $b$, I create $b_1$ and $b_2$.

Now I treat both $a_1$ and $a_2$ in the exact same way as the old TM treated $a$, except when I'm supposed to write an $a$ back onto an $a$, I check if the current symbol is $a_1$ or $a_2$ and write the other one.

We could verify that this construction will indeed mimic the behavior of the original TM (no matter what it was), so must-write-different TMs are equally powerful.

(If this is not clear, please let me know so I can explain further!)

share|cite|improve this answer
perfect, that is a great explanation, thanks for that – user3115 Dec 4 '12 at 23:17

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.