Машина Пост-Тьюринга

редактировать
В статье Машина Тьюринга дается общее введение в машины Тьюринга, а в этой статье рассматривается конкретный класс машин Тьюринга.

A Машина Пост-Тьюринга - это "программная формулировка" типа машины Тьюринга, включающая вариант Эмиля Поста Эквивалент Тьюринга модель вычисления . Модель Поста и модель Тьюринга, хотя и очень похожи друг на друга, были разработаны независимо. Статья Тьюринга была получена для публикации в мае 1936 года, а в октябре - статья Поста.) Машина Пост-Тьюринга использует двоичный алфавит, бесконечную последовательность двоичных символов. хранилище местоположения и примитивный язык программирования с инструкциями для двунаправленного перемещения между ячейками хранилища и изменения их содержимого по одной за раз. Названия «программа Пост-Тьюринга» и «машина Пост-Тьюринга» использовались Мартином Дэвисом в 1973–1974 гг. (Davis 1973, p. 69ff). Позже, в 1980 году, Дэвис использовал название «программа Тьюринга – Поста» (Дэвис, в Steen, стр. 241).

Содержание
  • 1 1936: Модель Поста
  • 2 1947: Формальное сокращение Постом 5-кортежей Тьюринга до 4-х кортежей
  • 3 1954, 1957: Модель Ванга
  • 4 1974: первая модель Дэвиса
  • 5 1978: вторая модель Дэвиса
  • 6 1994 (2-е издание): программная модель Пост-Тьюринга Дэвиса – Сигала – Вейукера
  • 7 Примеры машины Пост-Тьюринга
    • 7.1 Распыление пятерок Тьюринга в последовательность инструкций Пост-Тьюринга
    • 7.2 Занятый бобер с двумя состояниями
  • 8 Примечания
  • 9 Ссылки
1936: Пост-модель

В своей статье 1936 года «Конечные комбинаторные процессы - формулировка 1», Эмиль Пост описал модель, которая, по его предположениям, «логически эквивалентна рекурсивности ».

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

Модель Поста использует "символ пробел », состоящий из« двусторонней бесконечной последовательности пробелов или квадратов », каждый прямоугольник может находиться в одном из двух возможных состояний, а именно« отмечен »(как одиночный вертикальный штрих) и« немаркирован » "(пусто). Изначально конечно - многие поля отмечены, остальные не отмечены. Затем «рабочий» должен перемещаться между ящиками, находясь внутри и работая только в одном ящике за раз, в соответствии с фиксированным конечным «набором направлений» (инструкции ), которые нумеруются в порядке ( 1,2,3,..., п). Начиная с поля, «выделенного в качестве отправной точки», работник должен следовать набору инструкций по одной, начиная с инструкции 1.

В частности, «направление» (инструкция) i, данное для рабочий должен быть одной из следующих форм:

(A) Выполнить операцию O i[Oi= (a), (b), (c) или (d)], а затем следовать направлению j i,
(B) Выполните операцию (e) и в зависимости от ответа «да» или «нет» следуйте соответственно направлению j i 'или j i ' ',
(C) Стоп.

(Вышеупомянутый текст с отступом и курсивом такие же, как в оригинале.) Пост отмечает, что эта формулировка находится «на начальных стадиях» разработки, и упоминает несколько возможностей «большей гибкости» в ее окончательной «окончательной форме», включая

(1) замена бесконечности блоков конечным расширяемым пространством символов, «расширение примитивных операций для обеспечения необходимого расширения данного конечного пространства символов по мере выполнения процесса»,
(2) используя алфавит из более чем двух символы, «имеющие более одного способа пометить коробку»,
(3) введение конечного числа «физических объектов, служащих указателями, которые работник может идентифицировать и перемещать от коробки к коробке».
1947: Формальное сокращение Постом 5-кортежей Тьюринга до 4-кортежей

Как кратко упоминалось в статье Машина Тьюринга, Пост, в его статье 1947 года (Рекурсивная неразрешимость проблемы of Thue) раздробил 5-кортежи Тьюринга на 4-кортежи:

«Наши четверки - это пятерки в развитии Тьюринга. То есть там, где наша стандартная инструкция заказывает либо печать (наложение), либо движение, влево или вправо, стандартная инструкция Тьюринга всегда заказывает печать и движение вправо, влево или ничего «(сноска 12,« Неразрешимый », стр. 300)

Как и Тьюринг, он определил стирание как печать символа« S0 ». Таким образом, его модель допускала четверные только трех типов (см.« Неразрешимый », стр. 294):

qiSjL q l,
qiSjR q l,
qiSjSkql

В это время он все еще придерживался соглашения о машине состояний Тьюринга - он не формализовал понятие предполагаемого последовательного выполнения шагов до тех пор, пока конкретный тест символа не «разветвил» выполнение в другом месте..

1954, 1957: Модель Ванга

Для еще большего сокращения - всего до четырех инструкций - модели Ванга, представленной здесь, см. Ван Б-машина.

Ван (1957, но представленный ACM в 1954 г.) часто упоминается (см. Minsky (1967), стр. 200) как источник «программной формулировки» бинарных ленточных машин Тьюринга с использованием пронумерованных инструкций из набора

запись 0
запись 1
перемещение влево
перемещение вправо
при сканировании 0 затем переход к инструкции i
при сканировании 1 тогда Инструкция goto j

Любая машина Тьюринга с двоичной лентой легко конвертируется в эквивалентную «программу Ванга» с помощью приведенных выше инструкций.

1974: первая модель Дэвиса

Мартин Дэвис был студентом у Эмиля Поста. Вместе с Стивеном Клини он защитил докторскую диссертацию по программе Алонзо Черч (Дэвис (2000), 1-я и 2-я сноски, стр. 188).

Следующую модель он представил в серии лекций в Институте Куранта в Нью-Йоркском университете в 1973–1974 годах. Это модель, к которой Дэвис формально применил название «машина Пост-Тьюринга» с ее «языком Пост-Тьюринга». Предполагается, что инструкции выполняются последовательно (Davis 1974, стр. 71):

1978: вторая модель Дэвиса

Следующая модель выглядит как эссе Что такое вычисление? в Стин, страницы 241–267. По какой-то причине Дэвис переименовал свою модель в «машину Тьюринга – Поста» (с одним сдвигом назад на странице 256.)

В следующей модели Дэвис присваивает цифры «1» «знаку / косой черте» Поста. и «0» на пустой квадрат. Процитируем Дэвиса: «Теперь мы готовы представить язык программирования Тьюринга – Поста. В этом языке есть семь видов инструкций:

« PRINT 1
«PRINT 0
» ПЕРЕЙДИТЕ ВПРАВО
«ПЕРЕЙДИТЕ ВЛЕВО
» ПЕРЕЙДИТЕ К ШАГУ i ЕСЛИ 1 СКАНИРОВАНО
«ПЕРЕЙТИ К ШАГУ i ЕСЛИ 0 СКАНИРУЕТСЯ
"STOP

" Тогда программа Тьюринга-Поста представляет собой список инструкций, каждая из которых относится к одному из этих семи типов. Конечно, в реальной программе буква i в шаге пятого или шестого рода должны быть заменены определенным (положительным целым) числом ». (Дэвис в Steen, стр. 247).

1994 (2-е издание): программная модель Пост-Тьюринга Дэвиса – Сигала – Вейукера

«Хотя формулировка Тьюринга, которую мы представили, ближе по духу к той, что была первоначально дана Эмилем Постом, она был проведенный Тьюрингом анализ вычислений, который сделал эту формулировку такой подходящей. Этот язык сыграл фундаментальную роль в теоретической информатике ». (Дэвис и др. (1994) стр. 129)

Эта модель позволяет печатать несколько символов. Модель позволяет использовать B (пусто) вместо S 0. Лента бесконечна в обоих направлениях. Либо голова, либо лента движется, но их определения ВПРАВО и ВЛЕВО всегда указывают один и тот же результат в любом случае (Тьюринг использовал одно и то же соглашение).

PRINT σ; заменить отсканированный символ на σ
IF σ GOTO L; IF отсканированный символ - σ THEN перейти к «первой» инструкции с меткой L
RIGHT; сканировать квадрат сразу справа от квадрат, просканированный в данный момент
LEFT; Сканировать квадрат сразу слева от сканируемого квадрата

Эта модель сокращается до двоичных версий {0, 1}, представленных выше, как показано здесь:

PRINT 0 = ERASE; Заменить отсканированный символ на 0 = B = ПУСТОЙ
ПЕЧАТЬ 1; Заменить отсканированный символ на 1
IF 0 GOTO L; IF отсканированный символ 0 THEN перейти к "первой" инструкции с меткой L
IF 1 GOTO L; IF отсканированный символ равен 1 THEN перейти к "первой" инструкции с меткой L
RIGHT; сканировать квадрат сразу справа от квадрата, сканируемого в данный момент
LEFT; сканировать квадрат непосредственно слева от сканируемого квадрата
Примеры машины Пост-Тьюринга

Распыление пятерок Тьюринга в последовательность инструкций Пост-Тьюринга

Следующая «редукция» (разложение, атомизация) метод - от m 2-символьных 5-кортежей Тьюринга для последовательности 2-символьных инструкций Пост-Тьюринга - можно найти у Мински (1961). Он заявляет, что это сокращение до «программы... последовательности инструкций» находится в духе Хао Ванга B-машины (курсив в оригинале, ср. Minsky (1961)) с. 439).

(Сведение Мински к тому, что он называет «подпрограммой», приводит к 5, а не 7 инструкциям Пост-Тьюринга. Он не атомизировал Wi0: «Записать символ Si0; перейти в новое состояние Mi0», и Wi1 : «Записать символ Si1; перейти в новое состояние Mi1». Следующий метод дополнительно атомизирует Wi0 и Wi1; во всех остальных отношениях методы идентичны.)

Это сокращение 5-кортежей Тьюринга до инструкций Пост-Тьюринга может не привести к "эффективной" программе Пост-Тьюринга, но она будет верна исходной программе Тьюринга.

В следующем примере каждый 5-кортеж Тьюринга из 2-state busy beaver преобразуется в

(i) начальный условный "переход" (goto, branch), за которым следует на
(ii) 2 инструкции по действиям на магнитной ленте для случая «0» - «Печать» или «Стереть» или «Нет», затем «Влево», «Вправо» или «Нет», за которыми следует
(iii) безусловное " перейти "для случая" 0 "к его следующей инструкции
(iv) 2 инструкции действия с лентой для случая" 1 "- Печать или Стереть или Нет, за которыми следует Влево или Вправо или Нет, за которыми следует
(v) безусловный «переход» для случая «1» к его следующей инструкции

, всего 1 + 2 + 1 + 2 + 1 = 7 инструкций на состояние Тьюринга.

Например, тьюринговое состояние «А» занятого бобра с двумя состояниями, записанное в виде двух строк по 5 кортежей, это:

Начальная m-конфигурация (состояние Тьюринга)Символ лентыОперация печатиДвижение лентыОкончательная m-конфигурация (состояние Тьюринга)
A0PRB
A1PLB

Таблица представляет только одну «инструкцию» Тьюринга, но мы видим, что он состоит из двух строк по 5 кортежей, одна для случая «символ ленты под заголовком = 1», другая для случая «символ ленты под заголовком = 0». Тьюринг заметил (Undecidable, p. 119), что два левых столбца - «m-конфигурация» и «символ» - представляют текущую «конфигурацию» машины - ее состояние, включая ленту и таблицу в этот момент, - и последние три столбца. являются его последующим «поведением». Поскольку машина не может находиться в двух «состояниях» одновременно, машина должна «перейти» либо к одной конфигурации, либо к другой:

Исходная m-конфигурация и символ SОперация печатиДвижение лентыОкончательная m-конфигурация
S = 0 ->P ->R ->B
->A<
S = 1 ->P ->L ->B

После «ветви конфигурации» (J1 xxx) или (J0 xxx) машина следует за одним из два последующих «поведения». Мы перечисляем эти два поведения в одной строке и пронумеровываем (или маркируем) их последовательно (однозначно). Под каждым переходом (переходом, переходом) мы помещаем его «номер» перехода (адрес, местоположение):

Начальная m-конфигурация и символ SОперация печатиДвижение лентыОкончательный случай m-конфигурации S = ​​0Операция печатиДвижение лентыОкончательный случай m-конфигурации S = ​​1
Если S = 0, то:PRB
--->A<
Если S = ​​1, то:PLB
инструкция №1234567
Инструкция Пост-ТьюрингаJ1PRJPLJ
инструкция перехода №5BB

Пер. Согласно соглашениям машины Пост-Тьюринга каждая из инструкций «Печать», «Стирание», «Влево» и «Вправо» состоит из двух действий:

(i) Действие ленты: {P, E, L, R}, затем
( ii) Действие таблицы: перейти к следующей инструкции в последовательности

И согласно соглашениям машины Пост-Тьюринга условные "переходы" J0xxx, J1xxx состоят из двух действий:

(i) Действие ленты: посмотрите на символ на ленте под заголовок
(ii) Действие таблицы: Если символ равен 0 (1) и J0 (J1), то перейти к xxx, иначе перейти к следующей инструкции в последовательности

И согласно соглашениям машины Пост-Тьюринга безусловный "джум p "Jxxx состоит из одного действия, или, если мы хотим упорядочить последовательность из двух действий:

(i) Действие ленты: посмотрите на символ на ленте под заголовком
(ii) Действие таблицы: Если символ 0, перейдите к xxx, иначе, если символ 1, перейдите к xxx.

Какие и сколько прыжков необходимы? Безусловный переход J xxx - это просто J0, за которым сразу следует J1 (или наоборот). Ван (1957) также показывает, что требуется только один условный переход, то есть либо J0 xxx, либо J1 xxx. Однако из-за этого ограничения на машине становится сложно писать инструкции. Часто используются только два, т.е.

(i) {J0 xxx, J1 xxx}
(ii) {J1 xxx, J xxx}
(iii) {J0 xxx, J xxx},

но использование всех трех {J0 xxx, J1 xxx, J xxx} исключает лишние инструкции. В примере с 2 состояниями Busy Beaver мы используем только {J1 xxx, J xxx}.

занятый бобер с 2 состояниями

Задача занятого бобра - напечатать как можно больше бобров перед остановкой. Команда «Печать» записывает 1, команда «Стереть» (не используется в этом примере) записывает 0 (т. Е. То же самое, что и P0). Лента движется «влево» или «вправо» (т.е. «голова» неподвижна).

Таблица состояний для машины Тьюринга с 2 состояниями занятый бобер :

Символ лентыТекущее состояние AТекущее состояние B
Символ записиПереместить лентуСледующее состояниеЗаписать символПереместить лентуСледующее состояние
01RB1LA
11LB1NH

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

Инструкция №123456789101112131415
ИнструкцияJ1PRJPLJJ1PLJPNJH
Перейти к #58812115
Метка состояния ТьюрингаABH

В качестве альтернативы мы могли бы записать таблицу в виде строки. Использование «разделителей параметров» «:» и разделителей инструкций «,» является полностью нашим выбором и не используется в модели. Условий нет (но см. Бут (1967), стр. 374, и Булос и Джеффри (1974, 1999), стр. 23), где можно найти некоторые полезные идеи о том, как комбинировать условные обозначения диаграммы состояний с инструкциями, т. Е. Использовать стрелки для обозначения место назначения прыжков). В приведенном ниже примере инструкции идут последовательно, начиная с "1", а параметры / "операнды" считаются частью их инструкций / "кодов операций":

J1: 5, P, R, J: 8, P, L, J: 8, J1: 12, P, L, J1: 1, P, N, J: 15, H

Диаграмма состояний занятого бобра с двумя состояниями (маленький рисунок, правый угол) преобразуется в эквивалентную машину Пост-Тьюринга с заменой 7 инструкций Пост-Тьюринга на каждое состояние «Тьюринга». Инструкция HALT добавляет 15-е состояние:

Работа Busy Beaver с 2 состояниями на машине P – T

Показан "запуск" занятого бобра с двумя состояниями со всеми промежуточными этапами машины Пост-Тьюринга:

Работа Busy Beaver с 2 состояниями на машине P – T
Примечания
Ссылки
  • Стивен К. Клини, Введение в мета-математику, издательство North-Holland Publishing Company, Нью-Йорк, 10-е издание, 1991 г., впервые опубликовано в 1952 г. Глава XIII - превосходное описание машин Тьюринга; Клини использует в своем описании модель, похожую на Пост, и допускает, что модель Тьюринга может быть еще более атомизирована, см. Сноску 1.
  • Мартин Дэвис, редактор: Неразрешаемые, основные статьи о неразрешимых предложениях, неразрешимых проблемах и вычислимых функциях, Raven Press, New York, 1965. Статьи включают статьи Гёделя, Черча, Россера, Клини и Поста.
  • Мартин Дэвис, «Что такое вычисления», в «Математике сегодня», Линн Артур Стин, Vintage Books (Random House), 1980. Замечательная маленькая статья, возможно, лучшая из когда-либо написанных о машинах Тьюринга. Дэвис сводит машину Тьюринга к гораздо более простой модели, основанной на модели вычислений Поста. Включает небольшую биографию Эмиля Поста.
  • Мартин Дэвис, Вычислимость: с примечаниями Барри Джейкобса, Курантский институт математических наук, Нью-Йоркский университет, 1974.
  • Мартин Дэвис, Элейн Дж. Вейкер, (1994) Вычислимость, сложность и языки: основы теоретической информатики - 2-е издание, Academic Press: Harcourt, Brace Company, Сан-Диего, 1994 ISBN 0 -12-206382-1 (Первое издание, 1983 г.).
  • , Введение в вычислимость, Аддисон – Уэсли, 1977 г.
  • Марвин Мински, (1961), Рекурсивная неразрешимость теории Поста проблема «тега» и другие разделы теории машин Тьюринга, Annals of Mathematics, Vol. 74, No. 3, ноябрь 1961 г.
  • Роджер Пенроуз, Новый разум императора: о компьютерах, умах и законах физики, Oxford University Press, Oxford England, 1990 (с исправлениями). Ср. Глава 2, «Алгоритмы и машины Тьюринга». Сверхсложное изложение (см. Статью Дэвиса для лучшей модели), но полное изложение машин Тьюринга и проблемы остановки, а также лямбда-исчисления Черча.
  • Хао Ван (1957): «Вариант теории вычислительных машин Тьюринга», Журнал Ассоциации вычислительной техники (JACM) 4, 63–92.
Последняя правка сделана 2021-06-02 12:42:21
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте