Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
162
Добавлен:
11.02.2015
Размер:
278.71 Кб
Скачать
  1. Нумерации машин Тьюринга

  1. Нумерация МТ

Рассмотрим систему предложенную К.Гёулем для нумерации МТ. Эта система такова, что каждая машина получает свой номер и по этому номеру можно однозначно восстановить саму программу.

Нумерация по этой системе проводится в 3 этапа:

1)на этом этапе номера присваиваются символом Л.П.С. N(Л)=2, N(П)=3, N(С)=4, а также символом внешнего и внутреннего алфавита. N(аi)=2i+5; N(qi)=2i+6.

2)на этом этапе каждой команде присваивается номер. Так команда qiаi->ajDjqj получает номер 2N(qi)*3N(ai)*5N(aj)*7N(Dj)*11N(qj).

3)На этом этапе номер присваивается самой программе. Для этого команды программы выписываются в каком-либо порядке: Ком.1, Ком.2, … , Ком.n. После этого программе присваивается номер 2N(ком.1)*3N(ком.2)*5N(ком.3)*…*рnN(ком.n). где pn-n-ое простое число. Здесь также для каждого натурального числа можно определить является ли оно номером программы, и если является, та какой именно. Тогда, просматривая подряд все натуральные числа, мы найдём 1-ое число, которое является номером программы, затем 2-ое и т.д. След-но машин имеется чётное множество.

Зам.: Аналогичную систему нумерации можно ввести и для конфигурации МТ.

  1. Пример алгоритмически неразрешимой проблемы

Df.1.:В предыд. пункте было показано, что каждой МТ можно присвоить свой номер. Этот номер называют ещё ходом МТ. Пусть дана МТ - Т. Пусть N(Т) – её код. Запишем на ленте машины Т её код N(T). Тогда, если машина применима к своему коду , то она называется самоприменимой. Иначе не самоприменимой. Очевидно, каждая машина является самоприменимой, либо не самоприменимой.

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

Имеется ли МТ, которая была бы применима к коду машины и после работы над кодом самоприменимой машины выдавало бы заключительную конфигурацию одного вида, а после работы над кодом не самоприменимой машины заключительную конфигурацию другого вида.Потребуем чтобы в 1-ом случае головка останавливалась у 1, а во втором – у 0.

Теор.1.: Проблема самоприменимости алгоритмически неразрешима.

Док-во: пусть проблема самоприменимости будет алгоритмически разрешима и пусть М – машина, которая «решает» эту проблему. Теперь имея программу машины М, построим новую машину L, которая будет обладать свойствами:

1)L применима к кодам не самоприменимых машин.

2)L не применима к кодам самоприменимых машин. Для этого будем считать, что конечное состояние q0 машины М для машины L конечным не является. Для машины L конечным будет q0 . Для преобразования программы машины М в программу машины L добавим 2 новые команды. q00->0Cq0, q11->1Cq0. Применим машину L к своему коду. Если L является самоприменимой машиной, то по определению она должна останавливаться, что противоречит 1-ому условию.

Следовательно, машину L, а вместе с ней и машину М построить невозможно. Ч.т.д.