Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Матлог_лекции.doc
Скачиваний:
3
Добавлен:
01.03.2025
Размер:
731 Кб
Скачать
☆

Кодировка машин Тьюринга.

Кодом машины Тьюринга называется запись набора её команд в алфавите {*,1}, позволяющая однозначно восстанавливать каждую команду. T=(A,S,,μ,); Покажем, что любую машину можно закодировать:

A={a1,... an};

S={s0,s1...sm};

N(П)=1;

N(Л)=12;

N{Н}=13;

N(s0)=14;

N(s1)=15;

...

N(sn)=1n+4;

N(a1)=1n+5;

...

N(am)=1n+m+4.

(si, ak)( aj, D, sp), где D – управляющий символ, aj – что печатать, sp – следующее состояние.

N(si, ak)= N(si)*N(ak)* N(aj)*N(D)*N(sp) – код команды.

N(T)= N(s1, a1)**N(s2, a1)**..**N(sn, am).

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

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

Проблема самоприменимости:

  • Существует ли алгоритм, который для любой машины Тьюринга позволяет выяснить, является ли эта машина самоприменимой или нет.

  • Существует ли такая машина Тьюринга L, применимая к коду N(T) произвольной машины, что в своем заключительном состоянии L зависает над 0, если T – несамоприменима, и над 1 – если она самоприменима

Теорема (об алгоритмической неразрешимости проблемы самоприменимости): не существует такой машины L, которая решала бы проблему самоприменимости.

Док-во: Допустим, что машина L существует. На базе L составим машину L такую, что в L войдут все команды из L, но вводится новое состояние s0, которое и будет заключительным состоянием L. В список команд введем еще две: (s0,)(s0,Н,) и (s0,1)(s0,Н,1).

Мы получили машину L, которая обладает следующими свойствами:

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

  2. применима к коду несамоприменимых машин.

Запустим L на собств. кодом N(L):

Если L остановится, значит L самоприменима  L применима к коду самоприменимых машин, возникает противоречие.

Если L не остановится значит L несамоприменима  L неприменима к коду несамоприменимых машин, возникает противоречие.

Таким образом, не существует машины, решающей задачу самоприменимости. ч.т.д.

Проблема применимости.

Проблема применимости:

  • Существует ли алгоритм, который для любых машины Тьюринга Т и слова β позволяет выяснить, является ли эта машина применимой к β или нет.

  • Существует ли машина L, применимая ко всем словам вида N(T)λβ, где N(T) – код произвольной машины Т, а β – произвольное слово, такая, что в своем заключительном состоянии L зависает над 0, если T – не применима к β, и над 1 – если она применима к β.

Напишем программу работы машины T1, которая применима к любому слову вида x1, x2,…, xn, и дублирует это слово через λ: x1, x2,…, xn λ x1, x2,…, xn, а по окончании работы возвращается в начало.

1

2

3

4

5

6

7

λ

λ Л 7

λ П 3

a Л 4

λ Л 4

λ П 6

b Л 4

λ П 0

a

a П 2

a П 2

a П 3

a Л 4

a П 5

a П 6

a Л 7

b

b П 5

b П 2

b П 3

b Л 4

b П 5

a П 6

b Л 7

a

a П 1

b

b П 1

Проверим для слова aba.

a ba

a b a

a b a

a b a λ

a b a λ λ

a b a λ a

a b a λ a...

a b a λ a

1

2

2

2

2

4

4

4

a b a λ a

a b a λ a

a b a λ a

a b a λ a

a b a λ a λ

a b a λ a b

aba λ ab...

a b a λ a b

1

5

5

6

6

4

4

4

a b a λ a b

a b a λ ab

a b a λ a b

a b a λ a b

abaλ a b λ

abaλaba...

ab a λaba

a b a λ aba

1

2

3

3

3

4

4

1

a b a λ aba

a b a λ aba

a b a λ aba

λ abaλaba

a baλaba

7

7

7

7

0

Теорема (об алгоритмической неразрешимости проблемы применимости): не существует такой машины L, которая решала бы проблему применимости.

Док-во: Пусть существует машина L, которая решает проблему применимости. Построим машину L такую, что она будет включать в себя все команды L и Т1: L= Т1 ºL – т.е. с начла работает Т1, а затем L.

Напишем на ленте код N(T1) и запустим L: N(T1)→ N(T1) λ N(T1). Мы получили, что L решает проблему самоприменимости, что противоречит теореме об алгоритмической неразрешимости проблемы самоприменимости. Таким образом, предположение, что существует машина L – неверно. ч.т.д.