Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Обчислювані по Т'юрингу функціїСтр 1 из 4Следующая ⇒
Визначення. Функція називається обчислюваною по Т'юрингу, якщо існує машина Т'юринга, що обчислює її, тобто така машина Т'юринга, яка обчислює її значення для тих наборів значень аргументів, для яких функція визначена, і яка працює вічно, якщо функція для цього набору значень аргументів не визначена. Залишається домовитися про деякі умовності для того, щоб це визначення стало до кінця точним. По-перше, нагадаємо, що йдеться про функції (чи можливо про часткові функції, тобто не усюди визначені), задані на безлічі натуральних чисел і які набувають також натуральних значень. По-друге, треба домовитися, як записувати на стрічці машини Тюринга значення х1, х2,..., хп аргументів функції f (х1, х2,..., хп), з якого положення починати переробку початкового слова і, накінець, в якому положенні набувати значення функції. Це можна робити, наприклад, таким чином. Значення х1, х2,..., хп аргументів розташовуватимемо на стрічці у вигляді наступного слова:
Тут корисно ввести наступні позначення. Для натурального х позначаємо:
Додатково вважаємо 0° = 1° = Λ - порожнє слово. Отже на слова 1° = Λ, 11 = 1, 12 = 11, 13 = 111,.. дивитимемося як на "зображення" натуральних чисел 0, 1, 2, 3,..відповідно. Таким чином, попереднє слово можна представити наступним чином: Приведемо програми машин Т'юринга, які правильно обчислюють функції
Приклад 1. S(x) = х + 1. Функція здійснює переведення: q101x0 => q001x+1. Початковий і кінцевий стани повинні знаходитися на нулі зліва. Її програма: q10→q2П, q21→q21П, q20→q31, q31→q31Л, q30→q00.
Перевірити роботу на словах.
Приклад 2. О(х) = 0. Функція О(x) = 0 здійснює переведення: q101x0 => q000x+1. Її програма: q10→q20П, q21→q21П, q20→q30Л, q31→q40, q40→q30Л, q30→q00. Відповідну машину Т'юринга позначили О (онулення).
Перевірити роботу на словах.
Приклад 3. Побудувати машину "ліве зрушення" Б-, з початкового стандартного положення оброблюється слово 01x q 10 в те ж саме слово і зупиняється, оглядаючи найлівішу комірку з нулем q 001x0. Програма машини Б-: q10→ q20Л, q2l → q2lЛ, q20 → q00.
Перевірити роботу на словах.
Приклад 4. Побудувати машину "праве зрушення" Б+ Друга машина з початкового стану, в якому оглядається ліва комірка з нулем, слово q 101x0 переробляє в те ж саме слово і зупиняється, оглядаючи найправішу комірку з нулем 01x q 00. Ясно, що програма машини Б+ виходить з програми Б- машини з заміною символу "Л" символом "П". Написати програму цієї машини, та перевірити роботу на словах.
Приклад 5. Машина Т'юринга називається "транспозицією" і позначається В, здійснює перехід 01 xq 101 y 0 Машина Т'юринга (називається "подвоєння" і позначається Г), здійснює перехід q 101 x 0 (Побудувати самостійно у варіантах)
Date: 2015-09-24; view: 298; Нарушение авторских прав |