- •Пермский Государственный Технический Университет
- •Тема 1. Логика высказываний
- •1.1. Понятие высказывания
- •1.2. Логические операции
- •1. Отрицание или инверсия ( – не)
- •4. Импликация () “если а, то b”
- •6. Сумма по модулю два
- •7. Штрих Шеффера ( , обратная конъюнкция и – не)
- •8. Стрелка Пирса (, обратная дизъюнкция или – не )
- •1.3. Булевы функции
- •1.3.1. Некоторые определения из теории множеств
- •1.3.2. Булевы функции
- •1.4. Формулы
- •1.5. Равносильные формулы
- •1.6. Подстановка и замена
- •1.7. Формы представления высказываний
- •1.8. Минимизация сложных высказываний методом Квайна
- •1.9. Полные системы функций
- •1.9.1. Система функций {}
- •1.9.2. Замкнутые классы
- •1.9.3. Функциональная полнота
- •Тема 2. Логические исчисления
- •2.1. Интерпретация формул
- •2.2. Примеры тождественно истинных формул высказываний
- •2.3. Формальные теории
- •2.5. Интерпретация формальных теорий
- •2.6. Исчисление высказываний.
- •2.7. Производные правила вывода
- •2.8. Дедукция
- •2.9. Некоторые теоремы теории £
- •Тема 3. Логика и исчисление предикатов
- •3.1. Предикаты
- •3.2. Исчисление предикатов
- •3.3. Интерпретация
- •3.4. Основные равносильности для предикатов
- •3.5. Приведенная форма представления предикатов
- •Тема 4. Автоматическое доказательство теорем
- •4.1. Постановка задачи
- •4.2. Доказательство от противного
- •4.3.Правило резолюции для исчисления высказываний
- •4.4. Правило резолюции для исчисления предикатов
- •4.5. Основные положения мр (выводы)
- •4.6. Логическое программирование
- •Тема 5. Теория алгоритмов
- •5.1. Интуитивное понятие алгоритма
- •5.2. Конкретизация понятия алгоритма
- •5.2.1. Машины Тьюринга
- •5.2.3. Рекурсивные функции
- •5.2.3. Нормальные алгорифмы Маркова
- •5.3. Алгоритмически неразрешимые проблемы
- •5.3.1. Проблема самоприменимости
- •5.3.1.1. Нумерация мт
- •5.3.1.2. Самоприменимость мт
- •5.3.2. Проблема останова
- •5.3.3. Разрешимые и неразрешимые задачи математики
- •5.4. Характеристики сложности вычислений
- •5.5. Классы сложности задач
- •5.5.1. Р задачи
- •5.5.2. NPзадачи
5.2.3. Нормальные алгорифмы Маркова
Алгоритмическая система Маркова строится по тем же принципам, что и МТ, но носит более простой и интуитивно понятный характер.
Нормальные алгорифмы Маркова(НАМ) представляются нормальной схемой подстановок, которая состоит из совокупности подстановок, расположенных в определенном порядке.
Пусть Х – некоторый конечный алфавит, F(X) – слова алфавита,- пустое слово. Если, то выраженияиназываются формулами подстановки в алфавите Х:
- простая подстановка;
- окончательная подстановка.
Символы →и . не принадлежат Х.
Слова pиqмогут быть пустыми.
Строка Rвходит в строкуL, еслиLимеет видL1RL2. Подстановка применима к слову, если строка соответствующая левой части подстановки входит в слово. Применение заключается в замене в преобразующем слове левой строки – правой:
Механизм работы НАМ:
Дано преобразуемое слово – цепочка символов фиксированного алфавита и нормальная схема подстановок, содержащая фиксированную последовательность простых и заключительных подстановок.
1) Слово всегда просматривается слева направо. Схема подстановок просматривается, начиная с первой подстановки, и, если подстановку можно применить, то она применяется к самому левому вхождению этой строки в преобразуемое слово.
2) Работа алгоритма заканчивается если:
ни одна из подстановок не применима,
использована заключительная подстановка.
Может возникнуть ситуация, когда процесс не закончится никогда. В этом случае считают, что алгоритм не применим к слову.
Пример.
Х={x,y,z};
Нормальная схема подстановок:
xx y
xy x
yzy x
zz . z
yy x
Преобразуемое слово:
xxxyyyzzz →yxyyyzzz→yxyyzzz →yxyzzz→yxzzz→yxzz
Пример.
X={А,Б,В,Г,…,Я};
Нормальная схема подстановок:
ХК
МР
КАЛОН
РУ.С
Преобразуемое слово:
МУХАМУКАРУКАРУЛОНСЛОН
Пример 9:
X={a,b};
Нормальная схема подстановок:
a→.e
b→b
Преобразуемое слово:
bbbbbb- схема не применима.
Преобразуемое слово:
abab→bab
Пример.
Х={х,у,х-1,у-1};
Нормальная схема подстановок:
х х-1→е
х-1х→е
у у-1→е
у-1у→е
Преобразуемое слово:
ххухуу-1х-1ух→ ххухх-1ух→ ххуух
Пример 10:
Х={x1, …,xn};
Нормальная схема подстановок:
x1→e
x2→e
…
xn→e
Преобразуемое слово переписывается в пустое.
Пусть RиQнормальные алгорифмы над алфавитом Х иpF(x). Записьозначает, что или оба алгорифмаRиQне применимы к словуp, или оба применимы и.
Два алгорифма RиQназывают эквивалентными относительно алфавита Х, есликаждый раз, когдаpF(x) и хотя бы одно из словR(p) илиQ(p) определено и тоже принадлежитF(x).
Если для всех pF(x), тоRиQназываются полностью эквивалентными.
Пусть X={1}, а. Тогда всякое натуральное числоnможно записать в виде слова в алфавите:
Поставим в соответствие вектору (n1,n2, …nk), гдеn1,n2, …nk– натуральные числа, слово в алфавитевида, которое обозначим. Например, векторусоответствует слово 11111*1*111.
Пусть f:Nk→N– некоторая частичная функция иRfобозначает алгорифм в алфавитетакой, что
тогда и только тогда, когда хотя бы одна из частей равенства определена. При этом считается, что алгорифмRfне применим к словам отличным от вида.
Функция fназывается частично определимой по Маркову, если существует нормальный алгорифмQнадполностью эквивалентныйRf над. Если функция определена полностью, то ее называют просто вычислимой по Маркову.
Теорема:Простейшие функцииO(x)=0,S(x)=x+1 иIm(x1,x2,…,xn)=xmвычислимы по Маркову.
Доказательствосводится к построению соответствующих алгорифмов.
1.Функцию O(x)=0 реализует следующий алгорифмR0:
={1,*}, ;
Нормальная схема подстановок:
*→* (1)
α11→ α1 (2)
α1→.1 (3)
е→ α (4)
Преобразуемое слово:
р=111…11.
Тогда по формуле (4) получаем р= α11…11.
Применим формулу (2) и получим: р= α 11…11→ α 1…11→ α 1.
Применяем формулу (3) и получаем α 1→1.
Так как 1 – это в алфавите Х, тоR0и является искомым алгоритмом.
2. Функцию S(x)=x+1 реализует следующий алгорифмRs:
={1,*}, ;
Нормальная схема подстановок:
*→* (1)
α1→.11 (2)
е→ α (3)
Преобразуемое слово:
р=111…11.
Тогда по формуле (3) получаем р= α 11…11 (nединиц).
Применим формулу (2) и получим: р= 111…11 (n+1 единица). Так как всякое натуральное числоnможно записать в виде слова в алфавите:
, то мы реализовали алгоритмRS(n)=n+1.
Этот алгоритм применим только к тем словам, которые являются натуральными числами.
3. Алгорифм RIимеет более сложную структуру, с ним можно ознакомиться самостоятельно в учебнике «Лекции по дискретной математике», авторы: Капитонова Ю.В. и др.
Теорема:Всякая частично рекурсивная функция частично рекурсивна по Маркову.
Обратная теорема: всякая частично вычислимая по Маркову функция является частично рекурсивной.