Моя простая машина Тьюринга

Я пытаюсь понять и реализовать простейшую машину Тьюринга и хотел бы получить отзывы, если у меня есть смысл.

У нас есть бесконечная лента (скажем, массив с именем T с указателем в 0 в начале) и таблица инструкций:

( S , R , W , D , N )

S->STEP (Start at step 1)
R->READ (0 or 1)
W->WRITE (0 or 1)
D->DIRECTION (0=LEFT 1=RIGHT)
N->NEXTSTEP (Non existing step is HALT)

Насколько я понимаю, простейшая машина - это 2-значная машина с 3 состояниями. 3 состояния, я не понимаю. 2 символа, потому что для ЧТЕНИЯ / ЗАПИСИ мы используем 0 и 1.

Например:

(1,0,1,1,2)
(1,1,0,1,2)

Начиная с шага 1, если Чтение равно 0, то {Запишите 1, Двигайтесь вправо) иначе {Запишите 0, Двигайтесь вправо), а затем перейдите к шагу 2, который не существует и останавливает программу.

Что означает 3-состояние? Эта машина проходит как машину Тьюринга? Можем ли мы упростить еще больше?

5
задан Yehonatan 22 September 2010 в 07:49
поделиться