Машина Тьюринга
Машина Тьюринга(Turing machine) — одна из основных конструкций, которые были предложены для уточнения, или адекватной формализации, общего интуитивного понятия алгоритма.
Недетерминированной машиной Тьюринга (сокращенно НМT или просто МT) называется семерка
, где
(1) — конечное множество состояний управляющего
устройства;
(2) — конечное множество символов на ленте;
(3) — множество входных символов,
;
(4) — пустой символ,
;
(5) — начальное состояние,
;
(6) — заключительное (или допускающее)
состояние,
;
(7) — так называемая функция перехода — отображение множества
в множество подмножеств в
, где
означает сдвиг головки по ленте влево,
— вправо,
— головка
остается на месте.
Машина Тьюринга работает на неограниченной с обеих сторон ленте, разделяемой на ячейки, одну из которых обозревает головка. В любой момент времени все ячейки, кроме конечного числа, заняты
пустыми символами. Конфигурацией (или мгновенным описанием) машины Тьюринга называется слово вида
, где
— непустая часть ленты, а
— текущее состояние управляющего устройства (головка на ленте обозревает символ,
стоящий справа от
).
Начальной конфигурацией называется конфигурация вида
, где
. Заключительная конфигурация — это конфигурация вида
.
Tакт работы машины Тьюринга представляется в виде
бинарного отношения
, определенного на конфигурациях,
для которого
в одном из трех следующих
случаев:
(1) для некоторых
;
(2) для некоторых
;
(3) для некоторых
.
допускает цепочку
, если
, где
- некоторая заключительная конфигурация с пустой лентой, так называемая допускающая конфигурация. Языком, допускаемым
(обозначается
), называют множество всех цепочек, допускаемых
.
Таким образом, подобно конечному автомату машина Тьюринга состоит из ленты, головки и управляющего устройства с конечным числом состояний.
Однако в машине Тьюринга лента неограниченно простирается вправо и влево, а головка не только читает, но и пишет. В силу этого лента в машине Тьюринга играет роль не только входной ленты в конечном и магазинном автоматах, но и бесконечной вспомогательной памяти последнего, причем без присущих МП-автомату ограничений на "магазинный" характер ее использования.
Поэтому не случайно, что машины Тьюринга обладают большей вычислительной мощностью, чем МП- автоматы, определяющие класс КС-языков. Известно, что язык порождается грамматикой составляющих тогда и только тогда, когда он допускается машиной Тьюринга.
В дополнение к естественной интерпретации машины Тьюринга как распознавателя, допускающего тот или иной язык, ее можно рассматривать как устройство, которое вычисляет некоторую функцию . Аргументы этой функции кодируются на ленте в виде слова
со специальным символом (маркером), отделяющим их друг от друга. Если машина Тьюринга останавливается с заключительной конфигурацией
, то слово
рассматривается как код значения функции
, т.е.
.
Машина Тьюринга называется детерминированной (сокращенно ДМT), если для любых
и
множество
содержит не более одного элемента.
Литература
- Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. — М.: Мир, 1979.
- Касьянов В.Н. Лекции по теории формальных языков, автоматов и сложности вычислений. —
Новосибирск: НГУ, 1995.