- •Введение
- •1. Алгебра (логика) высказываний
- •1.1. Высказывания и операции над ними
- •Отрицание (логическая связка «не»)
- •Логическое умножение (конъюнкция)
- •Логическое сложение (дизъюнкция)
- •Логическое следование (импликация)
- •Логическое тождество (эквиваленция)
- •Исключающее «или» (неравнозначность)
- •1.2. Формулы алгебры высказываний
- •Примеры
- •1.3. Логические функции высказываний
- •Пример
- •1.4. Равносильность формул
- •Пример
- •1.5. Полные системы логических функций
- •1.6. Тавтологии. Выполнимые формулы
- •Примеры
- •1.7. Нормальные формы для формул
- •Примеры
- •1.8. Проблема разрешения и методы ее решения
- •Примеры
- •1.9. Гипотезы и следствия в алгебре высказываний
- •Примеры
- •1.10. Основные схемы логически правильных умозаключений
- •2. Логика предикатов
- •2.1. Предикаты
- •Примеры
- •2.2. Кванторы
- •Примеры
- •2.3. Формулы логики предикатов
- •Примеры
- •2.4. Основные равносильности, содержащие кванторы
- •2.5. Предваренная нормальная форма
- •Примеры
- •2.6. Тавтологии логики предикатов
- •Примеры
- •3. Теория алгоритмов
- •3.1. Машина Тьюринга
- •Пример
- •Примеры
- •Универсальная кодировка машины Тьюринга
- •Пример
- •3.2. Алгоритмически неразрешимые проблемы
- •3.3. Рекурсивные функции. Тезис Чёрча
- •Операция суперпозиции
- •Примеры
- •Операция примитивной рекурсии
- •Операция минимизации
- •Пример
- •Рекомендуемая литература
Теперь представим коды команд с помощью алфавита {1, }:
13 110 13 110 12 13 18 15 110 14 15 110 15 110 14 15 18 1 18 12,
где 1k есть единица, повторенная k раз.
3.2. Алгоритмически неразрешимые проблемы
Пусть алфавит машины Тьюринга содержит символы 1 и . В этом случае можно предложить машине в качестве исходной записи на ленте ее код. Если при работе над собственным кодом машина Тьюринга M останавливается, то она называется самоприменимой. Если она не останавливается, она называется неса-
моприменимой.
Возникает вопрос: существует ли машина MS , которая по коду любой машины M определяет, самоприменима ли она?
Если она существует, она должна быть применима к коду любой машины M и должна останавливаться на клетке с 1 в случае самоприменимости M , и на клетке с 0 в противном слу-
чае. Ответ на поставленный вопрос дает следующая теорема.
Теорема. MS не существует, то есть проблема самоприменимости алгоритмически неразрешима.
Доказательство. Пусть машина Тьюринга S решает проблему самоприменимости, т. е., начав работу с кода машины T , приходит в состояние
q01 |
, |
(*) |
если машина T самоприменима, и в состояние |
|
|
q00 |
, |
(**) |
если T несамоприменима. |
|
|
70