- •Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «тюменский государственный нефтегазовый университет»
- •Теория алгоритмов
- •Содержание
- •Пояснительная записка
- •Общие требования к выполнению и оформлению практических занятий Допуск студентов к выполнению практических занятий
- •Порядок выполнения практических занятий
- •Требования к структуре, содержанию и оформлению отчетов по лабораторным работам
- •Порядок защиты практических занятий
- •Порядок оценивания практического занятия
- •Практическое занятие №1 "Разработка алгоритмов для конкретных задач"
- •Теоретический материал:
- •Ход работы и задания:
- •Контрольные вопросы и задания:
- •Практическое занятие №2 "Арифметизация машин Тьюринга и частичная рекурсивность функций, вычислимых по Тьюрингу. Нормальные алгоритмы. Нумерация алгоритмов различными методами"
- •Теоретический материал:
- •Задания:
- •Примеры решения Машины Тьюринга:
- •Контрольные вопросы и задания:
- •Практическое занятие №3 "Построение алгоритмов различными методами"
- •Теоретический материал:
- •Ход работы и задания:
- •Контрольные вопросы:
- •Практическое занятие №4 "Вычисление сложности работы алгоритмов различными методами"
- •Теоретические сведения
- •Задание:
- •Контрольные вопросы:
- •Список литературы
- •Основная литература
- •Дополнительная литература
- •Шарафутдинова Светлана Анатольевна теория алгоритмов
- •625000, Тюмень, ул. Володарского, 38.
- •6 25039, Тюмень, ул. Киевская, 52
Задания:
Составить машину Тьюринга, перерабатывающую слово A в слово B. При этом считается, что начальное положение каретки – крайнее левое, а конечное – крайнее правое. Рядом с командами изобразите конфигурации, получающиеся после их выполнения.
A
B
0110011101
1010101010
Машина Тьюринга с внешним алфавитом A = {a0, 1} и алфавитом внешних состояний Q = {q0, q1, ... , q13} определяется следующей функциональной схемой:
Q |
A |
|
a0 |
1 |
|
q1 |
q2a0L |
q01 |
q2 |
q5a0 |
q3 a0 |
q3 |
q4a0L |
q01 |
q4 |
q51 |
q41L |
q5 |
q0a0 |
q61L |
q6 |
q0a0 |
q7a0 |
q7 |
q8a0R |
q01 |
q8 |
q91 |
q81R |
q9 |
q0a0 |
q101L |
q10 |
q0a0 |
q11a0 |
q11 |
q12a0L |
q01 |
q12 |
q131 |
q121L |
q13 |
q0a0 |
q01 |
Изображая на каждом такте работы машины получающуюся конфигурацию, определите, в какое слово перерабатывает машина следующие слова (в начальный момент времени машина находится в состоянии q1 и обозревает крайнюю правую ячейку, в которой записан пустой символ a0 , в следующей слева ячейке уже записан символ a01 a0111 a0.
Примеры решения Машины Тьюринга:
Составить машину Тьюринга, перерабатывающую слово A в слово B. При этом считается, что начальное положение каретки – крайнее левое, а конечное – крайнее правое. Рядом с командами изобразите конфигурации, получающиеся после их выполнения.
A |
B |
1011101111 |
1100111001 |
Решение:
Программа машины Тьюринга:
1q1 1q1П
0q1 1q2П
1q2 0q2П
1q3 0q4П
1q4 0q4П
0q4 1q5П
1q5 1q6П
1q6 0q7П
1q7 0q8П
1q8 1q0Н
Проверка работы машины:
q110111011111q101110111111q211101111110q311011111100q4101111
11001q401111110011q511111100111q611111001110q711
110011100q811100111001q0
2. Машина Тьюринга с внешним алфавитом A = {a0, 1} и алфавитом внешних состояний Q = {q0, q1, ... , q13} определяется следующей функциональной схемой:
Q |
A |
|
a0 |
1 |
|
q1 |
q2a0L |
q01 |
q2 |
q5a0 |
q3 a0 |
q3 |
q4a0L |
q01 |
q4 |
q51 |
q41L |
q5 |
q0a0 |
q61L |
q6 |
q0a0 |
q7a0 |
q7 |
q8a0R |
q01 |
q8 |
q91 |
q81R |
q9 |
q0a0 |
q101L |
q10 |
q0a0 |
q11a0 |
q11 |
q12a0L |
q01 |
q12 |
q131 |
q121L |
q13 |
q0a0 |
q01 |
Изображая на каждом такте работы машины получающуюся конфигурацию, определите, в какое слово перерабатывает машина следующие слова (в начальный момент времени машина находится в состоянии q1 и обозревает крайнюю правую ячейку, в которой записан пустой символ a0 , в следующей слева ячейке уже записан символ a011 a01111 a0.
Решение:
a011 a01111 a0
a011 a01111 a0 q1 a011 a01111 q2 a0 a011 a0111 a0 q3 a0 a011 a0111 q4 a0a0 a011 a011 q4 1a0a0 a011 a01 q4 11a0a0 a011 a0 q4 111a0a0
a011 1 q5 111a0a0 a011 q6 1111a0a0 a01 a0 q7 1111a0a0 a01 a0 1 q8111a0a0 a01 a0 11q811a0a0 a01 a0 111q81a0a0 a01 a0 1111q8a0a0
a01 a0 1111a0q8a0 a01 a0 11111q9a0 a01 a0 1111q101a0 a01 a0 111 a0q111a0 a01 a0 111 q12 a01a0 a01 a0 11 q12 1a01a0 a01 a0 1 q12 11a01a0
a01 a0 q12 111a01a0 a01 1 q13 111a01a0 a01 1 q0 111a01a0
Получаем слово: a01 1 q0 111a01a0
