Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы по мат логике.doc
Скачиваний:
140
Добавлен:
20.05.2014
Размер:
1.17 Mб
Скачать

20. Метод резолюции для логики предикатов

Поскольку в логике предикатов внутри предикатов содержатся переменные, то алгоритм доказательства несколько изменяется. В этом случае, перед тем как применить описанный алгоритм, будет проведена некоторая подстановка в переменные и вводится понятие унификации с помощью этой подстановки. Унификацию проиллюстрируем следующим простым примером.

Рассмотрим два предиката – L(x) иL(a). Предположим, чтоx – переменная,a ‑ константа. В этих предикатах предикатные символы одинаковы, чего нельзя сказать о самих предикатах. Тем не менее, подстановкойa вx одинаковыми (эта подстановка и называется унификацией).

Целью унификации является обеспечение возможности применения алгоритма доказательства для предикатов. Например, предположим, имеем:

В данном случае L(x) ине находятся в дополнительном отношении. При подстановкеaвместоxбудут получены, соответственно,и, и поскольку эти предикаты отличаются только символами отрицания, то они находятся в дополнительном отношении. Однако, операцию подстановки нельзя проводить при отсутствии каких-либо ограничений.

Подстановку t вxпринято записывать как{t/x}.Поскольку в одной ППФ может находиться более одной переменной, можно оказаться необходимо провести более одной подстановки. Обычно эти подстановки записываются в виде упорядоченных пар{t1/x1, …, tn/xn}.

Условия, допускающие подстановку:

  • xiявляется переменной,

  • ti – терм (константа, переменная, символ, функция) отличный отxi,

  • для любой пары элементов из группы подстановок, например (ti/xi иtj/xj) в правых частях символов / не содержится одинаковых переменных.

21.Стратегии очищения

Применение принципа резолюции без ограничений может привести к слишком большому количеству предложений, чтобы с ним можно было бы работать на практике. Поэтому надо уметь заранее определять, какие выполнять резолюции и какие производить выводы. На этом и основываются стратегии очищения.

1)Стратегия предпочтения одночленов

В стратегии предпочтения одночленов требуется, чтобы на каждом шаге вывода все резолюции, использующие предложения только с одним литералом, вычислялись прежде других резолюций. В общем случае резолюции, использующие короткие предложения, выполняются перед резолюциями с более длинными предложениями. Эта стратегия скорее относится к упорядочиванию, а не к очищению, так как она меняет лишь порядок выполнения, но ни одну из возможных резолюций не исключает из рассмотрения.

2)Факторизация

Размер предложений по длине можно уменьшить, используя подстановки, так что некоторые литералы в предложении становятся одинаковыми. Эта операция называется факторизацией. Например:

C = {A(x, f(k)), A(b, y), A(a, f(x)), A(x, z)}

можно факторизовать подстановкой:

= (b/x, f(k)/y, f(b)/z).

Тогда получим:

C = {A(b, f(k)), A(a, f(b)), A(b, f(b))}.

C называется факториалом предложенияC. Фактор предложения не обязательно единственный. Другой фактор:

= (a/x, f(k)/y, f(a)/z),

C = {A(a, f(k)), A(b, f(k)), A(a, f(a)}.

3)Использование подслучаев

Для любой пары предложений C, D S предложениеCназывается подслучаем предложенияD, если существует такая подстановка, чтоC D. Например:

C = {A(x)},

D = {A(b), P(x)},

то подстановка

= (b/x)

приведет к

C = {A(b)}.

Это означает сокращение литералов.