Для того, чтобы обозначить конец слова, введём в данный нам алфавит ещё один символ - c.
1) Построение таблицы
Теку
щее
состо
яние
Символы
a
b
c
#
Комментарий
q0
q0 аП
q0 bП
-
q1 cЛ
Установка символа «c» в конец слова
q1
q1 аЛ
q1 bЛ
-
q2 #П
Переход обратно к началу слова
q2
q3 #П
q4 #П
q7 #Л
-
Определяет букву, над которой находится головка
q3
q3 аП
q3 bП
q3 cП
q5 аЛ
Копирование буквы а
q4
q4 аП
q4 bП
q4 cП
q6 bЛ
Копирование буквы b
q5
q5 аЛ
q5 bЛ
q5 cЛ
q2 аП
Копирование буквы а
q6
q6 аЛ
q6 bЛ
q6 cЛ
q2 bП
Копирование буквы b
q7
q8 #П
q9 #П
-
q11#П
Перенос слова на ячейку вправо
q8
-
-
-
q10 аЛ
Перенос слова на ячейку вправо
q9
-
-
-
q10 bЛ
Перенос слова на ячейку вправо
q10
-
-
-
q7 #Л
Перенос слова на ячейку вправо
q11
qk aС
qk bС
-
q11 #П
Передвижение головки в начало слова
2) Построение протокола
q0 а q0 аП
q0 b q0 bП
q0 # q1 cЛ
q1 а q1 аЛ
q1 b q1 bЛ
q1 # q2 #П
q2 а q3 #П
q2 b q4 #П
q2 c q7 #Л
q3 а q3 аП
q3 b q3 bП
q3 c q3 cП
q3 # q5 аЛ
q4 а q4 аП
q4 b q4 bП
q4 c q4 cП
q4 # q6 bЛ
q5 а q5 аЛ
q5 b q5 bЛ
q5 c q5 cЛ
q5 # q2 аП
q6 а q6 аЛ
q6 b q6 bЛ
q6 c q6 cЛ
q6 # q2 bП
q7 а q8 #П
q7 b q9 #П
q7 # q11 #П
q8 # q10 аЛ
q9 # q10 bЛ
q10 # q7 #Л
q11a qk a C
q11b qk b C
q11 # q11# П
3) Построение графа
Граф представлен на следующей странице
Пусть нам дана последовательность ab, тогда имеем следующий вычислительный процесс:
4) Результаты отладки на эмуляторе
Для начала отмечу, что данный эмулятор Машины Тьюринга — это автомат, который управляется таблицей. Строки в таблице соответствуют символам выбранного алфавита A, а столбцы — состояниям автомата Q={q0,q1,…,qM}. В начале работы машина Тьюринга находится в состоянии q1. Состояние q0 — это конечное состояние: попав в него, автомат заканчивает работу ( именно поэтому в эмуляторе состояний (q) больше, чем в моих таблице, протоколе, графе).
Пусть нам дано входное слово abba, тогда имеем:
Результаты отладки на эмуляторе машины Тьюринга показываю, что вычислительный процесс преобразования исходного слова в заключительное выполняется верно.