
- •Пояснительная записка
- •Содержание.
- •Практическая работа № 1. Выполнение операций над множествами.
- •1 Цель работы
- •2 Теоретическая часть
- •3 Практическая часть
- •4 Практические задания
- •5 Контрольные вопросы
- •Практическая работа № 2. Нахождение таблиц истинности алгебры высказываний.
- •1 Цель работы
- •2 Теоретическая часть
- •3 Практическая часть
- •Практическая работа № 3. Упрощение формул алгебры высказываний.
- •3 Практическая часть
- •Практическая работа № 4. Решение задач логического характера.
- •4 Практическое задание
- •5 Контрольные вопросы
- •Практическая работа № 5. Нахождение нормальных форм формул алгебры высказываний.
- •1 Цель работы
- •2 Теоретическая часть
- •3 Практическая часть
- •Практическая работа № 6. Минимизация алгебраических преобразований.
- •3 Практическая часть
- •4 Практическое задание
- •5 Контрольные вопросы
- •Практическая работа № 7. Выполнение анализа релейно-контактных схем.
- •1 Цель работы
- •2 Теоретическая часть
- •3 Практическая часть
- •4 Практическое задание
- •4.1 Выполнить анализ схем.
- •5 Контрольные вопросы
- •Практическая работа № 8. Выполнение синтеза релейно-контактных схем.
- •1 Цель работы
- •2 Теоретическая часть
- •3 Практическая часть
- •4 Практическое задание
- •4.1 Построить логическую схему для заданной формулы, преобразовав действия импликации и эквивалентности. Построить логическую схему для днф заданной формулы.
- •5 Контрольные вопросы
- •Практическая работа № 9. Нахождение полинома Жегалкина.
- •1 Цель работы
- •3 Практическая часть
- •Практическая работа № 10. Определение полноты системы булевых функций.
- •3 Практическая часть
- •Практическая работа № 11. Выполнение операций над предикатами.
- •3 Практическая часть
- •4 Практическое задание
- •5 Контрольные вопросы
- •Практическая работа №12 Выполнение равносильных преобразований формул алгебры предикатов.
- •1 Цель работы
- •2 Теоретическая часть
- •3 Практическая часть
- •4 Практическое задание
- •5 Контрольные вопросы
- •Практическая работа №13. Применение и конструирование машин Тьюринга.
- •1 Цель работы
- •2 Теоретическая часть
- •3 Практическая часть
- •4 Практическое задание
- •5 Контрольные вопросы
- •Практическая работа № 14. Применение рекурсивных функций при построении алгоритма.
- •1 Цель работы
- •2 Теоретическая часть
- •3 Практическая часть
- •4 Практическое задание
- •5 Контрольные вопросы
- •Практическая работа №15. Применение марковских подстановок и нормальных алгоритмов к словам.
- •1 Цель работы
- •2 Теоретическая часть
- •3 Практическая часть
- •4 Практическое задание
- •5 Контрольные вопросы
3 Практическая часть
Задача 3.1 Выяснить, применима ли машина Тьюринга T к слову P. Если применима, то выписать результат T(P) применения машины Тьюринга T к слову P.
q1 1 q1 0 R
q1 0 q3 0 L
T: q2 0 q2 1 L
q3 1 q2 1 R
q3 0 q3 1 E
P=11111001
Предполагается, что начальный момент Машина Тьюринга обозревает самую левую единицу слова.
Решение. По определению команд машины Тьюринга получаем последовательность конфигураций
q1 11111001
q1 1111001
q1 111001
q1 11001
q1 1001
q1 001
q3 0001
q3 1001
1 q2 001
q2 1101
Так как команда, начинающаяся символами q2 1 в программе отсутствует, то последняя конфигурация является заключительной. Следовательно, машина Тьюринга применима к слову P и T(P)=1101
Задача 3.2 Требуется построить машину Тьюринга, которая прибавляет единицу к числу на ленте. Входное слово состоит из цифр целого десятичного числа, записанных в последовательные ячейки на ленте. В начальный момент машина находится против самой правой цифры числа.
Решение. Машина должна прибавить единицу к последней цифре числа. Если последняя цифра равна 9, то ее заменить на 0 и прибавить единицу к предыдущей цифре. Программа для данной машины Тьюринга может выглядеть так:
|
|
0 |
1 |
2 |
3 |
4 |
… |
7 |
8 |
9 |
|
1 H
|
1 H |
2 H |
3 H |
4 H |
5 H |
… |
8 H |
9 H |
0 Л |
В этой машине Тьюринга q1 — состояние изменения цифры, q0 — состояние останова. Если в состоянии ql автомат видит цифру 0..8, то он заменяет ее на 1..9 соответственно и переходит в состояние q0, т.е. машина останавливается. Если же он видит цифру 9, то заменяет ее на 0, сдвигается влево, оставаясь в состоянии ql. Так продолжается до тех пор, пока автомат не встретит цифру меньше 9. Если же все цифры были равны 9, то он заменит их нулями, запишет 0 на месте старшей цифры, сдвинется влево и в пустой клетке запишет 1. Затем перейдет в состояние q0, т.е. остановится.
4 Практическое задание
4.1 Выяснить, применима ли машина Тьюринга T к слову P. Если применима, то выписать результат T(P) применения машины Тьюринга T к слову P. Предполагается, что начальный момент Машина Тьюринга обозревает самую левую единицу слова.
-
вариант
а)
б)
1
q1 1 q1 0 R
q1 0 q3 1 R
T: q2 1 q3 1 R
q2 0 q2 1 E
q3 0 q2 1 R
P=10010111
q1 0 q1 0 R
q1 1 q2 1 R
T: q2 1 q3 1 R
q2 0 q2 1 E
q3 0 q2 1 R
P=10011111
2
q1 1 q1 0 R
q1 1 q3 1 R
T: q2 0 q2 1 R
q2 0 q2 1 E
q3 0 q1 1 R
P=11010111
q1 1 q1 0 R
q1 0 q3 1 R
T: q2 1 q3 1 R
q2 0 q2 1 E
q3 0 q2 1 R
P=10011111
3
q1 1 q1 0 R
q1 0 q3 1 R
T: q2 1 q3 1 R
q2 0 q2 1 E
q3 0 q2 1 R
P=10010001
q1 1 q1 0 R
q1 1 q3 1 R
T: q2 1 q3 1 R
q2 0 q2 1 E
q3 0 q2 1 R
P=10110110
4
q1 1 q1 0 R
q0 0 q3 1 R
T: q2 1 q3 1 R
q2 0 q2 1 E
q3 0 q2 0 R
P=10010111
q1 1 q1 0 R
q2 0 q3 1 R
T: q2 1 q3 1 R
q1 0 q2 1 E
q3 0 q2 1 R
P=10010111
4.2 Решить задачу
вариант |
задача |
1 |
На ленте машины Тьюринга содержится последовательность символов “+”. Напишите программу для машины Тьюринга, которая каждый второй символ “+” заменит на “–”. Замена начинается с правого конца последовательности. Автомат в состоянии q1 обозревает один из символов указанной последовательности. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии. |
2 |
Дано число n в восьмеричной системе счисления. Разработать машину Тьюринга, которая увеличивала бы заданное число n на 1. Автомат в состоянии q1 обозревает некую цифру входного слова. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии. |
3 |
Дана десятичная запись натурального числа n > 1. Разработать машину Тьюринга, которая уменьшала бы заданное число n на 1. Автомат в состоянии q1 обозревает правую цифру числа. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии. |
4 |
Дано натуральное число n > 1. Разработать машину Тьюринга, которая уменьшала бы заданное число n на 1, при этом в выходном слове старшая цифра не должна быть 0. Например, если входным словом было “100”, то выходным словом должно быть “99”, а не “099”. Автомат в состоянии q1 обозревает правую цифру числа. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии. |