Глава 34. Машина Тьюринга

Порождение цепочек символов можно рассматривать как результат работы некоторого гипотетического устройства. Рассмотрим работу гипотетического устройства называемого Машиной Тьюринга (рис.9.3).

Рис. 9.3

Вдоль бесконечной ленты, разделенной на клетки, перемещается управляющая головка (УГ). Заданы внешний алфавит М = {M1, M2, ..., Mn}, внутренний алфавит S = {S0, S1, ..., Sr}, и алфавит перемещений D = {П, Л, Н}. Все клетки ленты заполнены символами из M.

Управляющая головка может находиться в тех или иных состояниях, характеризуемых символами из S. Состояние S0 особое. Если УГ находится в состоянии S0, то машина не производит никакой работы (выключена). Предполагается, что в конце работы машина всегда переходит в состояние S0. В процессе работы машины УГ может перемешаться в дискретные такты времени вдоль ленты. Перемещение происходит либо на одну клетку вправо (П), Либо на одну клетку влево (Л). Перемещение УГ в данный такт работы может отсутствовать (Н).

В каждый такт работы УГ совершает следующие действия:

1) считывает символ Mi, находящийся в клетке ленты, которую в этом такте видит УГ;

2) в соответствии со считанным символом Mi, и своим состоя­нием Sj записывает символ Mk в эту клетку;

3) движется (не движется) вдоль ленты;

4) переходит в следующее состояние Sp.

Всю работу машины можно задать с помощью функциональной таблицы Т, в клетках которой стоят тройки вида Mk, Sp, di, где Di Î D — символ, определяющий перемещение. Таким образом, функциональная таблица определяет отображение M´S в M´S´D. Содержательный смысл отображения (Mi, Sj) ® (Mk, Sp, di) состоит в том, что, находясь в состоянии Sj и считывая из клетки символ Mi, УГ записывает в данную клетку ленты символ Mk, пе­реходит в состояние Sp и производит движение, определяемое сим­волом Di. Условимся, что функциональная таблица всегда устрое­на так, что имеет место отображение (Mi, S0) ® (Mi, S0, H). Это означает, что в выключенном состоянии машина не работает.

До начала функционирования машины (если это необходимо) надо заполнить некоторые клетки ленты символами, отличными от M0, перевести УГ в состояние, отличное от S0, и задать исход­ное положение УГ относительно ленты. После этого машина будет функционировать в соответствии с таблицей Т. Функционирова­ние машины можно задать с помощью графа, вершины которого взаимно однозначно соответствуют состояниям этого устройства, дуги – переходам из одного состояния в другое, при этом каж­дая дуга (Si, Sp) взвешена парой (Mi, Mkdl).

© 2011-2024 Контрольные работы по математике и другим предметам!