МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

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


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


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

Композиція машин Т'юринга.

Визначення.Нехай задані машини Т'юринга Θ1 і Θ2, що мають загальний зовнішній алфавіт {a0, a1, …, am} і алфавіти внутрішніх станів {q0, q1, …, qn відповідно. Композицією (чи множенням) машини Θ1 на машину Θ2 називається нова машина Θ з тим же зовнішнім алфавітом {a0, a1, …, am}, внутрішнім алфавітом {q0, q1, …, qn, qn+1, …, qn+t} і програмою, що виходить наступним чином. У всіх командах з Θ2 що містять символ q0, залишаємо незмінними, а всі останні стани на , змінюємо відповідно на qn+i. Сукупність усіх так отриманих команд утворює програму машини-композиції Θ.

Введене поняття є зручним інструментом для конструювання машин Т'юринга. Покажемо це на прикладі.

Приклад 6. Сконструюємо машини Т'юринга, правильно обчислюючі функції-проектори .

Розглянемо спочатку конкретний випадок n = 3, m = 2, тобто функцію . Ми повинні переробити слово в слово . Будемо застосовувати до початкової конфігурації послідовно сконструйовані раніше машини Т'юринга Б+, В, Б- , О:

Таким чином, функція обчислюється слідуючою композицією машин Б+ВБ+ОБ-ОБ- = Б+ВБ+(ОБ-)2.

 

Перевірте самостійно, що функція обчислюється композицією Б+ВОБ-.

 

 
 

Тепер ми можемо уявити собі алгоритм побудови композиції машин Б+, В, Б-, О для обчислення будь-якої функції виду . За допомогою правого зрушення Б+, застосувавши його т-1 раз, треба спочатку досягти масиву :

Потім, рухаючись вліво, транспонувати (за допомогою В) масив з кожним сусіднім ліворуч масивом, поки масив не вийде на перше місце:

 

 

Тепер треба дійти до крайнього правого масиву за допомогою (n - 1) -кратного застосування правого зрушення Б+:

 
 

 


Нарешті, треба стирати послідовно справа наліво усі масиви одиниць, окрім першого:

Отже, цю функцію (правильно) обчислює наступна машина Т'юринга: +)m-1 (В ∙ Б-)m-1+)n-1(О ∙ Б-) n-1.

При n = 3, m = 2 така машина має вигляд:

Б+ВБ-+)2(ОБ-)2 = Б+ВБ+(ОБ-)2

тобто співпадає з побудованою вище машиною. При n = 2, m = 2 ця машина має вигляд: Б+(ВБ-+(ОБ-) = Б+ВОБ-, тобто також співпадає з відповідною розглянутою вище машиною Т'юринга.

 

Приклад 7. Побудуйте машину Т'юринга, що переводить слово 01x01y01z0 в слово 01z01x01y0, причому в початковому положенні оглядається комірка з 0 між наборами з у і z одиниць, а в кінцевому положенні оглядається комірка з 0 між наборами з z і х одиниць. (Ця машина називається "Циклічне зрушення" і позначається Ц.)

Рішення. Перевіримо, що таке переведення станеться в результаті послідовного застосування (композиції) раніше побудованих машин В, Б- і В.

Обчислюємо:

01x01yq101z0

В: 01x01zq01y0

Б-: 01xq01z01y0

B: 01zq001x01y0.

 

Тобто Ц = ВБ-В

 

Приклад 8. Побудуйте машину Т'юринга, що переробляє слово 01x01y в слово 01x01y01x01y, причому в початковому положенні оглядається найлівіша комірка, а в кінцевому - комірка, в якій записаний 0, який знаходиться між масивами 1x01y і 1x01y. (Машина називається "копіювання" і позначається К2.)

Рішення. Перевіримо, що таке переведення станеться в результаті послідовного застосування (композиції) раніше побудованих машин.

q101x01y 01xq001y01x01y

 

Обчислюємо:

q101x01y

Б+: 01xq01y

Г : 01xq01y01y0

Б-: q01x01y01y0

Г : q01x01x01y01y0

Б+: 01xq01x01y01y0

Б+: 01x01xq01y01y0

В : 01x01yq01x01y0

Б-: 01xq01y01x01y0

 

К2 = Б+ГБ-Г(Б+)2ВБ-.

Індивідуальні завдання.

Виберіть індивідуальне завдання відповідно варіанту.

Завдання 1. Доведіть що задана функція обчислювана по Т’юрингу, для чого побудуйте машину Т’юринга яка її обчислює.

 

№ варіанту Завдання 1 Завдання 2
1. f(x, y) = x + y. Побудувати машину Т'юринга яка називається "транспозицією" і позначається В, та здійснює переведення 01xq101y0 01yq001x0.
2. , початковий стан на нулику зліва від одиниць, кінцевий стан на тій же комірці, що й початковий, наприклад: q10 1x 0=> q0000. Побудувати машину Т'юринга яка називається "подвоєння" і позначається Г, та здійснює переведення q101x0 q001x01x0.
3. f(x) = x+2. Побудуйте машину Т'юринга яка називається "Перенесення нуля" і позначається А, що здійснює переведення слова q1001x10 q001х00.
4. , початковий стан на нулику зліва від одиниць, кінцевий стан на тій же комірці, що й початковий, наприклад: q101x 0=> q0010 Побудувати машину Т'юринга яка називається "транспозицією" і позначається В, та здійснює переведення 01xq101y0 01yq001x0.
5. Побудувати машину Т'юринга яка називається "подвоєння" і позначається Г, та здійснює переведення q101x0 q001x01x0.
6. . Побудуйте машину Т'юринга яка називається "Перенесення нуля" і позначається А, що здійснює переведення слова q1001x10 q001х00.  
7. f(x, y) = x – y (xy). Побудувати машину Т'юринга яка називається "транспозицією" і позначається В, та здійснює переведення 01xq101y0 01yq001x0.
8. Побудувати машину Т'юринга яка називається "подвоєння" і позначається Г, та здійснює переведення q101x0 q001x01x0.
9. - ціла частина числа . Побудуйте машину Т'юринга яка називається "Перенесення нуля" і позначається А, що здійснює переведення слова q1001x10 q001х00.  
10. . Побудувати машину Т'юринга яка називається "транспозицією" і позначається В, та здійснює переведення 01xq101y0 01yq001x0.
11. . Побудувати машину Т'юринга яка називається "подвоєння" і позначається Г, та здійснює переведення q101x0 q001x01x0.
12. . Побудуйте машину Т'юринга яка називається "Перенесення нуля" і позначається А, що здійснює переведення слова q1001x10 q001х00.  
13. Побудувати машину Т'юринга яка називається "транспозицією" і позначається В, та здійснює переведення 01xq101y0 01yq001x0.
14. . Побудувати машину Т'юринга яка називається "подвоєння" і позначається Г, та здійснює переведення q101x0 q001x01x0.
15. . Побудуйте машину Т'юринга яка називається "Перенесення нуля" і позначається А, що здійснює переведення слова q1001x10 q001х00.
16. Побудувати машину Т'юринга яка називається "транспозицією" і позначається В, та здійснює переведення 01xq101y0 01yq001x0.
17. Побудувати машину Т'юринга яка називається "подвоєння" і позначається Г, та здійснює переведення q101x0 q001x01x0.
18. Побудуйте машину Т'юринга яка називається "Перенесення нуля" і позначається А, що здійснює переведення слова q1001x10 q001х00.
19. Побудувати машину Т'юринга яка називається "транспозицією" і позначається В, та здійснює переведення 01xq101y0 01yq001x0.
20. f(x, y) = x – y (xy) Побудувати машину Т'юринга яка називається "подвоєння" і позначається Г, та здійснює переведення q101x0 q001x01x0.
21. - ціла частина числа . Побудуйте машину Т'юринга яка називається "Перенесення нуля" і позначається А, що здійснює переведення слова q1001x10 q001х00.
22. . Побудувати машину Т'юринга яка називається "транспозицією" і позначається В, та здійснює переведення 01xq101y0 01yq001x0.
23. Побудувати машину Т'юринга яка називається "подвоєння" і позначається Г, та здійснює переведення q101x0 q001x01x0.
24. . Побудуйте машину Т'юринга яка називається "Перенесення нуля" і позначається А, що здійснює переведення слова q1001x10 q001х00.
25. Побудувати машину Т'юринга яка називається "транспозицією" і позначається В, та здійснює переведення 01xq101y0 01yq001x0.
26. , початковий стан на нулику зліва від одиниць, кінцевий стан на тій же комірці, що й початковий, наприклад: q10 1x 0=> q0000. Побудувати машину Т'юринга яка називається "подвоєння" і позначається Г, та здійснює переведення q101x0 q001x01x0.
27. . Побудуйте машину Т'юринга яка називається "Перенесення нуля" і позначається А, що здійснює переведення слова q1001x10 q001х00.
28. Побудувати машину Т'юринга яка називається "транспозицією" і позначається В, та здійснює переведення 01xq101y0 01yq001x0.
29. Побудувати машину Т'юринга яка називається "подвоєння" і позначається Г, та здійснює переведення q101x0 q001x01x0.
30. Побудуйте машину Т'юринга яка називається "Перенесення нуля" і позначається А, що здійснює переведення слова q1001x10 q001х00.

 





©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.