Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
UchebnoePosobie.doc
Скачиваний:
74
Добавлен:
11.11.2019
Размер:
6.36 Mб
Скачать

5.2.1. Описание машины Тьюринга

Математическая модель машины Тьюринга имеет вид:

Т=<Vt; Q; D; ; ;  ,

где VT = {ai; a2; ... an}

- символы внешней памяти;

Q = {qo, qi; q2; ... qm}

- символы внутренней памяти;

D = {П; Л; С}

- символы перемещения головки;

: Q  Vt => Vt

- функция выхода машины Тьюринга;

: Q  Vt => Q

- функция переходов машины Тьюринга.

: Q  Vt => D

- функция перемещения головки машины Тьюринга.

Описание машины Тьюринга определяется записью всех слов на информационной ленте, положением головки относительно ячеек информационной ленты и текущим состоянием управляющего устройства. Такое описание называют конфигурацией машины Тьюринга:

K =  qi ,

где  — слово, расположенное слева от головки;

 — слово, расположенное справа от головки;

qi — текущее состояние машины Тьюринга.

Символ ‘а’, находящийся в ячейке под считывающей головкой, является первым символом слова , т.е.  = (aj ).

К незаключительной конфигурации может быть применима только одна команда, которая переводит машину в новую конфигурацию. Так реализуется дискретность и детерминизм алгоритмического процесса.

Для удобства анализа вычислительных алгоритмов математик Пост предложил ограничить множество символов внешнего алфавита Vt двумя символами, т.е. Vt = {|; #}, где "|" (палочка) есть символ унарного кода числа, а "#" (диеза или решетка) есть символ пробела между числами. При этом любое целое положительное число может быть представлено на информационной ленте последовательностью палочек, как это представлено в табл. 5.1.

Таблица 5.1

Число в десятичной системе счисления

"Слово" в унарном коде на информационной ленте

0

| =1о

1

||=11+1

2

|||=12+1

i

||| ... |=1i+1

Для упорядочения составления протоколов информационную ленту ограничивают только в одну сторону, т. е. существуют левые и правые полуленты. В зависимости от используемой полуленты приняты различные схемы записи конфигураций машины Тьюринга (табл. 2).

Таблица 5.2

Стандартная

Информационная полулента

конфигурация

правая

левая

Начальная

qn|x 1+1# |x 2+ 1#...#|x n+ 1

|x 1+1# |x 2+ 1#...#|x nqn|

Конечная

qk|y + 1

|yqk|

Работу машины Тьюринга удобно представлять протоколом, таблицей и графом.

При протокольной записи все команды должны быть записаны упорядоченным списком. На заключительном шаге должно быть получено значение заданной функции, т. е. y=f(x1, x2,...xn).

Например,

1) qnai —>qiajD;

2) qiak >qjaiD;

.................................

n) q|am>qkanC.

Таблица 5.3

При табличном описании каждая строка имеет имя текущего состояния машины, а столбец–имя символа внешней памяти. Тогда элементами таблицы являются правые части команд (qjaiD).

Текущее

Символы vt

состояние

аi

ак

...

am

qn

qiajD

...

qi

...

qjaiD

...

...

...

...

...

...

qi

...

...

...

qkanC

Табличная форма описания машины более компактна и позволяет применить матричные методы анализа для оптимизации структуры алгоритма.

При графовом представлении вершинами графа являются состояния машины Тьюринга, а дугами — переходы в те состояния, которые предусмотрены командой. При этом на дуге указывают считываемый символ /записываемый символы в обозреваемой ячейке и команда на перемещение головки (рис. 5.2). Граф машины Тьюринга, реализующей заданный алгоритм, часто называют граф-схемой алгоритма (ГСА).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]