Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
main_ta.doc
Скачиваний:
19
Добавлен:
16.09.2019
Размер:
2.29 Mб
Скачать

5

а1

а2

аі

ап

#

5

Яі

Яз

д', а', [Ь, Е]

Ят

Зліва записуються всі стани, крім кінцевого ду, з множини станів

Я = {5,Яі, ...,Яз,.. .,Ят ,Яу }

в яких може знаходитися керуючий пристрій МТ. Зверху - всі букви з алфавіту А (серед яких обов'язково є #), які головка МТ може аналі­зувати на стрічці. На перетених рядків і стовпців таблиці вказуються ті такти, котрі повинен виконувати керуючий пристрій, знаходячись в відповідному стані і аналізуючи відповідну букву на стрічці.

Підсумовуючи все вище сказане, машина Тюрінґа може бути ви­значена як п'ятірка МТ = (Я,А,5,з,д^), де Я - скінченна множина станів, А - скінченний алфавіт, 5 - фукція переходів, з Є Я - поча­тковий стан, д^ Є Я - кінцевий стан.

Вияснимо, як машина працює на вхідному слові ш, до якого буде застосована програма роботи МТ. Вхідне слово - це скінченна послі­довність букв з алфавіту X С А, записаних зліва направо по одній в кожній клітинці. Всередині вхідного слова порожніх клітинок немає. Всі клітинки зліва і справа від клітинок, заповнених буквами вхі­дного слова ш, вважаються порожніми і в них знаходиться символ Якщо вхідне слово порожнє, то на стрічці всі клітинки заповнені порожнім символом

Для того, щоб пояснити як машина Тюрінґа працює з вхідним словом ш, визначимо поняття конфігурації МТ. Припустимо, що на деякому етапі роботи МТ перебуває в стані д, її стрічка містить сим­воли ... ###жіх2 ... хт### ..., де Хі Є А, і = 1,... ,т, і головка аналізує букву Хк. В випадку, коли к < т, ми будемо писати:

(д, ХіХ2 . . . Хк-іХкХк+1 . . . Хт),

щоб позначити цю конфігурацію. Якщо ж к > т, то позначимо цю конфігурацію наступним чином:

(д,Хі Х2 . ..Хт ## . . . #).

к-т

Таким чином, конфігурація - це пара (д, ш) Є Я х А1. Конфігу­рація (д,х1 х2 ... Хк-1 ХкХк+1... хт), позначає той факт, що машина перебуває в стані д, її стрічка містить слово х1 х2 ... Хк-1 ХкХк+1 ... хт і головка аналізує букву Хк.

Вживаючи ці позначення, результат кожного руху МТ можна описати наступним чином:

  • якщо 5(д,Хк) = (р,а,К), то після одного такту, конфігура­ція (д, х1 х2 ... Хк Хк+1 ... хт) МТ змінюється на конфігурацію (р,Х1 Х2 ... аХк+1 ...Хт);

  • якщо 5(д,хт) = (р,а,К), то після одного такту конфігурація (д, х1 х2 ... хт) МТ змінюється на (р, х1 х2 ... а#);

5

а

6

#

з

з, 0, Д

41, 1,Д

42,

41

42, 0,Д

41,1,Д

4/, 0,£

42

42, 0,Д

42, 1,Д

42, 0,Д


Початкова конфігурація МТ на вхідному слові аа6а6а матиме вигляд (з, аа6а6а). Починаючи з цієї конфігурації, робота МТ на слові аа6а6а може бути описана наступним чином:

(з,аа6а6а) ^ (з, 0а6а6а) ^ (з, 006а6а) ^ (д1, 001а6а) ^ (д2, 00106а) ^ (^, 00101а) ^ (^2, 001010#) ^ (д2, 0010100#) ^ (^2, 001010... 0#)

Таким чином, МТ ніколи не вийде зі стану д2 і її головка нескін­ченно рухатиметься праворуч, міняючи при цьому порожні символи на 0. Іншими словами МТ в стані д2 зациклюється на вхідному слові аа6а6а і дане слово не розпізнається МТ.

На вхідному слові аааа66 МТ працює іншим чином: (з,аааа66) ^ (з, 0ааа66) ^ (з, 00аа66) ^ (з, 000а66) ^ (з, 000066) ^ (^1, 000016) ^ (^1, 000011#) ^ (/, 0000110).

Оскільки МТ перейшла в стан /, то вона зупиняє свою роботу. Вхідне слово аааа66 розпізнається МТ. Вихідним словом є 0000110.

Для зручності МТ зображують поміченим орієнтованим графом С(МТ). Вершинами даного графа є стани автомата. Кожна стріл­ка графа має позначку виду "а/6; Д"або "а/6; £". Якщо 5(д, а) = (р, 6, Д) (5(д, а) = (р, 6, X)), то граф містить стрілку з позначкою "а/6; ^"(відповідно "а/6; £"), початком якої є вершина д, а кінцем - вершина р. При цьому, якщо стрілка містить дві позначки виду "а/6; Д"і "с/6; Д "(відповідно "а/6; £"і "с/6; X"), то ми для компактно­сті запису пишемо позначку "а, с/6; Д"(відповідно "а, с/6; £"). Напри­клад, граф МТ з прикладу 1.1 має вигляд:

Ь/1;К

Мовою Ь1 (МТ), що розпізнається машиною Тюрінґа, називає­ться множина всіх слів, які розпізнаються МТ, тобто

Ь1 (МТ) = {ш Є А* : ш розпізнається МТ}.

Легко бачити, що в прикладі 1.1 мова, що розпізнається машиною Тюрінґа Ь1 (МТ) =тЬп : т > 0,п > 1}.

Кажемо, що деяка мова Ь розпізнається машиною Тюрінґа, якщо існує така МТ, що Ь = Ь(МТ).

Мовою Ь2(МТ), що породжується машиною Тюрінґа, називає­ться множина всіх вихідних слів, які утворюються з вхідних слів мови (МТ), що розпізнається машиною Тюрінґа. Наприклад, в прикладі 1.1 мова, що породжується машиною Тюрінґа Ь2 (МТ) = {0т 1п0 : т > 0, п > 1}.

Вправи до лекції 1.

1.1. Нехай машина Тюрінґа задана як п'ятірка: МТ = А, 5, з, д^), де Я = {з, Яї}, А = {0,1, #}, а програма роботи 5 задана у вигляді таблиці:

5

0

1

#

з

з, 1,Е

і, 0,Е

з, #,П


Виписуючи на кожному такті роботи МТ одержану конфігура­цію, визначте в яке слово перетворює МТ кожне з наступних вхідних слів:

а) 100; в) 0010;

б) 001; г) 0000.

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

  2. В чому полягає робота машини Тюрінґа МТ = , А, 5, з, /), де ^ = {з, /}, А = {0,1, #}, а програма роботи 5 задана у вигляді таблиці:

5

0

1

#

з

з, 0, К

Я/, 1,К

Я/, 1,ь


1.4. Нехай машина Тюрінґа задана як п'ятірка: МТ = А, 5, з, /), де ^ = {з, д, /}, А = {0,1, #}, а програма роботи 5 задана у вигляді таблиці:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]