- •Математическая логика
- •Глава 3. Формализация понятие алгоритма 42
- •Математическая логика как наука
- •Глава 1. Исчисление высказываний
- •1.1. Высказывания
- •1.2 Формулы
- •1.3. Выполнимые и общезначимые формулы
- •1.4. Алгебраический подход
- •1.6. Логический вывод
- •1.6.1. Прямой вывод
- •1.5 Дизъюнкты и нормальные формы
- •1.6.2. Доказательство «от противного»
- •1.6.3. Метод резолюций
- •1.6.4. Фразы Хорна
- •1.7. Примеры использования метода резолюций в логике высказываний
- •1.8. Непротиворечивость аксиом
- •1.9. Аксиоматизация логики высказываний
- •Глава 2. Логика предикатов
- •2.1 Предикаты
- •2.2. Применение логических связок
- •2.3. Кванторы
- •2.4. Свободные и связанные переменные
- •2.5. Предикатные формулы
- •2.6. Предварённая нормальная форма
- •2.7. Сколемовская и клаузальная формы
- •2.8. Метод резолюций в логике предикатов
- •2.9. Принцип логического программирования
- •Глава 3. Формализация понятие алгоритма
- •1. Историческая справка
- •2. Общее понятие алгоритма
- •3. Машина Тьюринга
- •4. Нормальные алгорифмы Маркова.
- •Литература
1.6.4. Фразы Хорна
В прямом методе вывод проводился исходя из свойств связок и из того, что предметная область описывалась через импликацию, конъюнкцию, дизъюнкцию и отрицание. Этот способ удобен для представления человеком – специалистом, потому что ему проще выражать свои знания через высказывания ЕСЛИ ТО . ("ЕСЛИ температура >39, слабость и покраснение, ТО необходимо принять лекарство, лечь в постель и пить большое количество воды." Робинсон предложил более удобную форму описания предметной области, позволяющий строить вывод с помощью ЭВМ.
Представим функцию импликации в виде минимальной ДНФ с помощью формулы;
A C A v C
(A1&A2& &AM)B v C, Ей будет соответствовать формула (с учё-том правила де Моргана) A1 vA2 v vAM v B v C. Перенесём положительные литералы вперед и получим B v C v A1 vA2 v vAM. Такую формулу называют фразой Хорна, положительные литералы (B,C) называют альтернативными следствиями, негативные (A1,A2, ,AM )– необходимыми посылками.
Хорновский дизъюнкт называется точным, если он содержит одну позитивную литеру. Если он не содержит позитивных литер, то называется негативным.
Точный дизъюнкт выражает некоторое правило: негативные литеры соответствуют гипотезам (которые представлены высказываниями), а позитивные заключения.
Унитарный позитивный хорновский дизъюнкт представляет собой некоторый факт, т.е. заключение не зависящее от каких-либо гипотез.
Задача состоит в том, что надо проверить некоторую цель логически выведенную из множества фактов и правил.
Алгоритм построения резолюций для множества фраз Хорна упрощается.
Рассмотрим множество S фраз Хорна. Алгоритма построения резолюций:
При условии Ложь S,
выбираем P и с, такие что:
P – унитарный позитивный дизъюнкт из S, C – дизъюнкт из S, содержащий P, вычисляем резольвенту r; заменяем множество S на (S/{C]{r}).
Таким образом, на каждом этапе одна фраза Хорна заменяется другой, и некоторый атом удаляется из одного дизъюнкта. Отсюда следует, что выполнение алгоритма всегда завершается, какая бы стратегия ни была принята при выборе P и с. Если N – число атомов, первоначально присутствующих в S (C учётом повторений), то процедура вычисления резольвенты будет выполняться N раз.
Существует два случая завершения алгоритма: либо порождён пустой дизъюнкт, тогда множество будет не выполнимым, либо получено множество S, не содержащее дизъюнктов для вычисления очередной резольвенты, тогда множество S будет выполнимым.
Показано, что любую предметную область можно представить в виде фраз Хорна. Для этого любую формулу в описании предметной области необходимо преобразовать в КНФ (конъюнктивную нормальную форму – конъюнкцию элементарных дизъюнкций) и далее каждую элементарную дизъюнкцию представить в виде фразы Хорна.
Пример. Пусть предметная область описана в виде {A v (B & D), B C, A v D }. Представим её в виде фраз Хорна.
A v (B & D) (A v B) & (A v D). Этому высказыванию соответствует две фразы Хорна (A v B) и (A v D).
BC B v C .
A v D – является фразой Хорна.
Итак, имеем предметную область, описанную фразами Хорна: {A v B, A v D, B v C, A v D}
