Вопрос 40: Исчисление предикатов. Правила вывода на основе исчисления предикатов.
Алфавит исчисления предикатов включает в себя:
- знаки пунктуации: {},();
логические (пропозициональные) связки множеств:
кванторы:
переменные:
n -местные функциональные буквы (символы)
n -местные предикатные символы
Обычно для упрощения знаний при обозначении переменных вместо , используются символы w, v, w, х, у, z,... .
При обозначении констант обычно используются a, b, с, d,...; для функцииoнaльныx букв - вместо используются f, g, h.
При обозначении предикатных символов применяются буквы латинского алфавита P, Q, R, S. Из символов алфавита можно строить различные выражения.
Любой символ переменной или константной буквы называется термом. Если - термы, то тоже = терм. Если - предикатная буква, а - термы, то - элементарная формула, или атом. Если А и В - правильно построенные формулы (ППФ), то , В, , , , тоже ППФ. Если А - ППФ, а х - переменная, то () А, () А тоже ППФ и А называется областью действия кванторов и .
Переменная х называется связанной, если она находится в области действия квантора, примененного к этой переменной. В противном случае переменная свободна.
Пример: , х — связанная переменная, у - свободная переменная.
Формула называется замкнутой, если она не содержит свободных переменных.
Пример: категорическое высказывание - .
Для того чтобы придать формуле содержание, ее интерпретируют как утверждение, касающееся предметной области.
Интерпретация - любая система, состоящая из непустого множества ( ), называемого областью интерпретации, и какого-либо соответствия, относящего к каждой предикатной букве некоторое n-местное отношение в D, а каждой функциональной букве некоторую n-местную функцию, отображающую и : .
При заданной интерпретации переменные «пробегают» область интерпретации D и всякой элементарной формуле присваивается значение True или False.
Если термы предикатной буквы, соответсгвующие элементам из системы D, удовлетворяют отношению, определенному данной интерпретацией, то значение элементарной формулы будет True, иначе - False.
Значение неэлементарной формулы вычисляется рекуррентно, исходя из значений составляющих ее формул в соответствии с таблицей истинности.
Для исчисления предикатов первого порядка не существует методов установления общезначимости любой формулы, т. е. исчисление предиката первого порядка неразрешимо. Однако если некоторая формула исчисления предикатов общезначима, то существуют процедуры для проверки её общезначимости, т. е. исчисление предикатов полуразрешимо.
Достоинством использования исчисления предикатов в качестве модели представления знаний является наличие единообразной формальной процедуры доказательства теорем. Существуют различные методы доказательства теорем: метод резолюции, обратный метод. Данные методы поддерживаются мощными процедурами логического вывода.
К недостаткам данного подхода можно отнести следующие:
- сложность использования при доказательстве эвристик, отражающих специфику конкретной предметной области;
- исчисление предикатов является монотонным;
- в исчислении предикатов отсутствуют средства для структурирования используемых элементов;
- в вычислениях предикатов недопустимы противоречия.
Моделью знаний в системах, основанных на исчислении предикатов, является описание решений задачи в виде множества утверждений, построенных на множестве базовых элементов с помощью синтаксических правил. Цель задачи также записывается в виде утверждения, справедливость которого нужно доказать или опровергнуть на основе существующих аксиом и семантических правил вывода. Одним из наиболее мощных средств вывода доказательств в настоящее время является метод резолюций.
Классические правила вывода:
- Правило Modus Ponens: , читается так: если A – выводима и A влечет B, то B – выводимая формула.
- Цепное правило: , читается так: если формулы и выводимы, то выводима и формула .
- Правило подстановки: если формула A(x) выводима, то выводима и формула A(B), в которой все вхождения литерала x заменены формулой B.
- Правило резолюций: если выводимы формулы двух дизьюнктов, имеющих контрарную пару, и , то выводима формула дизьюнкта , полученного из данных двух удалением контрарной пары.