
- •Министерство образования и науки Российской Федерации
- •Волгодонский инженерно-технический институт – филиал нияу мифи курс лекций
- •230201 «Информационные системы и технологии»
- •220301 «Автоматизация технологических процессов и производств»
- •Волгодонск
- •1. Алгебра множеств
- •1.1. Понятие множества. Обозначение принадлежности
- •1.2. Способы задания множеств
- •1.3. Множество подмножеств. Включение
- •1.5. Свойства операций над множествами
- •Основные свойства операций над множествами
- •1.6. Декартово произведение множеств
- •2. Отношения
- •Бинарные отношения
- •Способы задания бинарных отношений
- •Области определения и значений
- •Сечения
- •Симметризация отношения
- •2.6 Композиция отношений
- •2.7. Свойства бинарных отношений
- •3. Функциональные отношения
- •3.2. Мощность множества
- •3.3. Образы и прообразы
- •3.4. Подстановки как отображения
- •4. Отношение эквивалентности
- •4.1. Эквивалентность. Классы эквивалентности
- •4.2. Система представителей.
- •4.3. Классы вычетов по модулю т.
- •4.4. Матрица и граф отношения эквивалентности
- •5. Отношение порядка
- •5.1. Упорядоченность
- •5.2. Отношение строгого порядка
- •5.3. Весовые функции
- •5.4. Квазипорядок
- •5.5. Комплексный показатель качества
- •5.6. Структура упорядоченных множеств
- •5.7. Матрицы отношений порядка
- •5.8. Графы отношений порядка
- •6. Законы композиции
- •6.1. Композиция объектов. Таблица Кэли.
- •6.2. Законы композиции на множестве.
- •6.3. Свойства внутреннего закона композиции.
- •6.4. Регулярный, нейтральный и симметричный элементы.
- •6.5. Аддитивные и мультипликативные обозначения.
- •6.6. Алгебраические системы.
- •6.7. Подсистемы.
- •6.8. Делители нуля.
- •Примеры алгебраических систем
- •Группы подстановок
- •7.2. Кольцо многочленов
- •7.3. Кольцо множеств
- •7.4. Множество классов вычетов по модулю т
- •7.5. Поле комплексных чисел
- •7.6. Тело кватернионов
- •8. Пространства
- •Метрические пространства
- •8.2. Топологические пространства
- •8.3. Линейные пространства
- •8.4. Нормированные пространства
- •9. Логические функции
- •9.1. Основные определения
- •9.2. Табличное задание функции
- •9.3. Булевы функции
- •9.4. Зависимость между булевыми функциями
- •10. Алгебра логики
- •10.1.Булева алгебра
- •10.2. Двойственность формул булевой алгебры
- •10.3. Нормальные формы
- •10.4. Совершенные нормальные формы
- •10.5. Проблема разрешимости
- •10.6. Конституенты и представление функций
- •10.7. Алгебра Жегалкина
- •10.8. Канонические многочлены
- •10.9. Типы булевых функций
- •10.10. Функциональная полнота
- •11. Контактные схемы
- •12. Логические схемы
- •13. Минимизация булевых функций
- •14. Конечные автоматы
- •14.1 Основные определения
- •14.2 Состояния
- •14.3 Типы конечных автоматов
- •14.4 Представления конечных автоматов
- •14.5 Анализ конечных автоматов
- •14.6 Минимизация автоматов
- •14.7. Эквивалентное разбиение
- •15. Машины тьюринга
- •15.1 Алфавит, буквы, слова. Операции над словами. Запись слов на бесконечной ленте
- •15.2. Машина Тьюринга. Описание. Примеры машин
- •15.3. Сочетания машин Тьюринга: композиция и объединение. Машины с полулентами, разветвление и итерация машин
- •15.4. Алгоритмически разрешимые и неразрешимые проблемы
- •15.5. Универсальная машина Тьюринга
15.5. Универсальная машина Тьюринга
В заключение опишем, что такое универсальная машина Тьюринга. В обычной машине Тьюринга программа «зашита» в устройство управления, а входная информации (условия задачи) записывается на бесконечной ленте. В универсальной машине в устройстве управления записана программа, реализующая алгоритм подражания, т. е. программную реализацию правил работы любой машины (см. п.15.2), вернее, правила обращения с ее программой. Тогда входной информацией для универсальной машины является пара - слово ит, стандартно кодирующее машину-алгоритм, решающий данный класс задач Z; и слово vz, кодирующее условие задачи . Универсальная машина, используя ит, перерабатывает vz в T(vz).
Ясно, что для построения универсальной машины потребуется использование техники машин с полулентами и универсального алфавита. Эта машина будет работать очень «вяло», теряя очень много времени на переходы от обрабатываемого слова к программе и обратно, однако ясно, что справедлива следующая теорема.
Теорема 15.11 Универсальная машина Тьюринга существует.
Программирование для машин Тьюринга (после приобретения некоторых навыков) достаточно полезное занятие, как требует лишь алгоритмических навыков, а не удержания в голове стандартных конструкций, характерных для программирования на алгоритмических языках высокого уровня. Здесь нет фактически программистских проблем, а есть только алгоритмические проблемы. Решение задач по программированию для машин Тьюринга позволяет выработать и развить приемы алгоритмизации.