Меню

Машина тьюринга определяется следующей функциональной схемой

Лекция № 3. Машины Тьюринга

1. Машины Тьюринга

2. Не распознаваемость самоприменимости машины Тьюринга

Формализация понятия «алгоритм» на основе так называемых машин Тьюринга была предложена английским математиком Аланом Тьюрингом в 1936 году. С тех пор эта абстрактная математическая модель широко применяется в теории алгоритмов для исследования вербальных алгоритмов. Переходя к неформальному описанию машин Тьюринга, отметим следующее. А.Тьюринг

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

Рис. 4. Представление машины Тьюринга.

В ячейку ленты может быть записана буква из алфавита A=, a1, a2, … an>. Для каждой машины Тьюринга этот алфавит, называемый внешним, вообще говоря, свой. Но принято резервировать символ a для обозначения пустой ячейки при определении внешнего алфавита любой машины. Будем также считать, что непустое слово в алфавите A–> воспринимается любой машиной в стандартном положении, если головка находится напротив крайней справа ячейки ленты из тех, в которых записано слово[5] (см. рис. 5).

a a a a a A a a

Рис. 3. Стандартное положение в машине Тьюринга

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

Полагается, что при каждом такте работы машина находится в каком-то состоянии, обозначаемом буквой qi из алфавита внутренних состоянийQ=, q1, q2, ….qm>. Каждая машина Тьюринга имеет свой собственный алфавит внутренних состояний, но принято считать, что символом q в таком алфавите обозначается состояние остановки, а символом q1начальное состояние. Из состояния q1 машина начинает работать, а попав в состояние q, прекращает работу.

Работа любой машины Тьюринга осуществляется по своей собственной программе или в соответствии с функциональной схемой, представляющей собой совокупность выражений T(i, j) (1£i£m, 0£j£n, i,jÎZ), именуемыми командами, каждаяиз которыхможет иметь следующий вид (см. таблицу 1).

Функциональная схема машины Тьюринга (программа) может быть записана в виде последовательности команд или в виде таблицы (см. пример 3.1.1).

Таким образом, та или иная машина Тьюринга полностью определяется:

Читайте также:  Все полноприводные автомобили газ

в) программой (функциональной схемой).

Команды машины Тьюринга
Формат команды Описание команды
qiaj →qkapЛ В ячейке, которую «обозревает» головка, стирается буква aj. Вместо нее в эту ячейку записывается буква ap. Из состояния qi машина переходит в состояние qk. Головка сдвигается на одну ячейку влево (Л).
qiaj →qkapП В ячейке, которую «обозревает» головка, стирается буква aj. Вместо нее в эту ячейку записывается буква ap. Из состояния qi машина переходит в состояние qk. Головка сдвигается на одну ячейку вправо (П).
qiaj qkap В ячейке, которую «обозревает» головка, стирается буква aj. Вместо нее в эту ячейку записывается буква ap. Из состояния qi машина переходит в состояние qk. Головка остается на месте.

Говорят, что слово a перерабатывается машиной Тьюринга в слово b, если от слова a, воспринимаемого в начальном состоянии q1, машина после выполнения конечного числа команд программы приходит к слову b, воспринимаемому в положении остановки.

Пример 3.1.1. Машина Тьюринга определяется функциональной схемой в виде следующей таблицы:

Q A q1 q2 q3
a q3 q1aЛ
q2aЛ q2 q3
* qa q2 q31*П

Слово, воспринимаемое в начальном состоянии q1 имеет вид:

Определим, в какое слово переработает это слово машина.

Так машина находится в состоянии q1, обозревая ячейку в которой находится 1, то первой должна быть выполнена команда, стоящая на пересечении столбца q1 и строки 1 функциональной схемы. Это команда q2aЛ. После ее выполнения машина перейдет в следующее состояние:

После выполнения следующей команды q2*Л (записанной на пересечении столбца q2 и строки 1)машина перейдет в следующее состояние:

На пересечении столбца q2 и строки 1в функциональной схеме машины Тьюринга записана команда q2, выполнение которой приведет к состоянию:

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

Лекция № 3. Машины Тьюринга

Дата добавления: 2013-12-23 ; просмотров: 4036 ; Нарушение авторских прав

Q → D

Q0 → 0Q

Q1 → 1Q

Q Þ l

Q1 → 1Q

Q+ → Q

1→ 11,

10 → 00

THORN; 1

применим к словам:

а) a=00 (M1(00)=00 – в функциональной схеме нет ни одной активной подстановки);

б) a=110 (M1(110)=000 – дважды применяется вторая подстановка);

в) a=010 (M1(010)=1 – применяется заключительная подстановка.

Этот же алгорифм не применим к словам: a=01; a=1; a=11 и т.д.

Читайте также:  Схема газораспределения дизельного двигателя

Вот еще два примера, заимствованных нами из [ ].

Пример 2.2.1. Алгорифм M2 вычисления суммы чисел, записанных в унарной системе счисления в алфавите A1= в виде 11+1 или 111+11+1 и т.п., работающий в алфавите A2=A1È, определяется следующей функциональной схемой:

l → Q.

Пример 2.2.2. Алгорифм M3, работающий над алфавитом A1= в алфавите A2=A1È и прибавляющий 1 к двоичному числу, имеет следующую функциональную схему:

1D → D0

0D Þ 1

D Þ 1

l → Q.

1. Машины Тьюринга

2. Не распознаваемость самоприменимости машины Тьюринга

Формализация понятия «алгоритм» на основе так называемых машин Тьюринга была предложена английским математиком Аланом Тьюрингом в 1936 году. С тех пор эта абстрактная математическая модель широко применяется в теории алгоритмов для исследования вербальных алгоритмов. Переходя к неформальному описанию машин Тьюринга, отметим следующее. А.Тьюринг

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

Рис. 4. Представление машины Тьюринга.

В ячейку ленты может быть записана буква из алфавита A=, a1, a2, … an>. Для каждой машины Тьюринга этот алфавит, называемый внешним, вообще говоря, свой. Но принято резервировать символ a для обозначения пустой ячейки при определении внешнего алфавита любой машины. Будем также считать, что непустое слово в алфавите A–> воспринимается любой машиной в стандартном положении, если головка находится напротив крайней справа ячейки ленты из тех, в которых записано слово[5] (см. рис. 5).

a a a a a A a a

Рис. 3. Стандартное положение в машине Тьюринга

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

Полагается, что при каждом такте работы машина находится в каком-то состоянии, обозначаемом буквой qi из алфавита внутренних состоянийQ=, q1, q2, ….qm>. Каждая машина Тьюринга имеет свой собственный алфавит внутренних состояний, но принято считать, что символом q в таком алфавите обозначается состояние остановки, а символом q1начальное состояние. Из состояния q1 машина начинает работать, а попав в состояние q, прекращает работу.

Читайте также:  Подогреватель антифриза дизельных двигателей

Работа любой машины Тьюринга осуществляется по своей собственной программе или в соответствии с функциональной схемой, представляющей собой совокупность выражений T(i, j) (1£i£m, 0£j£n, i,jÎZ), именуемыми командами, каждаяиз которыхможет иметь следующий вид (см. таблицу 1).

Функциональная схема машины Тьюринга (программа) может быть записана в виде последовательности команд или в виде таблицы (см. пример 3.1.1).

Таким образом, та или иная машина Тьюринга полностью определяется:

в) программой (функциональной схемой).

Команды машины Тьюринга
Формат команды Описание команды
qiaj →qkapЛ В ячейке, которую «обозревает» головка, стирается буква aj. Вместо нее в эту ячейку записывается буква ap. Из состояния qi машина переходит в состояние qk. Головка сдвигается на одну ячейку влево (Л).
qiaj →qkapП В ячейке, которую «обозревает» головка, стирается буква aj. Вместо нее в эту ячейку записывается буква ap. Из состояния qi машина переходит в состояние qk. Головка сдвигается на одну ячейку вправо (П).
qiaj qkap В ячейке, которую «обозревает» головка, стирается буква aj. Вместо нее в эту ячейку записывается буква ap. Из состояния qi машина переходит в состояние qk. Головка остается на месте.

Говорят, что слово a перерабатывается машиной Тьюринга в слово b, если от слова a, воспринимаемого в начальном состоянии q1, машина после выполнения конечного числа команд программы приходит к слову b, воспринимаемому в положении остановки.

Пример 3.1.1. Машина Тьюринга определяется функциональной схемой в виде следующей таблицы:

Q A q1 q2 q3
a q3 q1aЛ
q2aЛ q2 q3
* qa q2 q31*П

Слово, воспринимаемое в начальном состоянии q1 имеет вид:

Определим, в какое слово переработает это слово машина.

Так машина находится в состоянии q1, обозревая ячейку в которой находится 1, то первой должна быть выполнена команда, стоящая на пересечении столбца q1 и строки 1 функциональной схемы. Это команда q2aЛ. После ее выполнения машина перейдет в следующее состояние:

После выполнения следующей команды q2*Л (записанной на пересечении столбца q2 и строки 1)машина перейдет в следующее состояние:

На пересечении столбца q2 и строки 1в функциональной схеме машины Тьюринга записана команда q2, выполнение которой приведет к состоянию:

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

Adblock
detector