информационно-новостной портал
Главная / Статьи / Информатика / Программирование /

Алгоритм перевода в СКНФ. Метод резолюции и правило факторизации

Пусть имеются формулы A1,..Am и B. Требуется доказать, что  из

формул A1,..Am можно вывести B. Т.к. ØA1ÚÚØAmÚB(следствие из теоремы о полноте). Обр-я теорема: A1ÙÙAmÙØB. Для этого сначала

приводят к сколемовской конъюнктивной нормальной форме:

1)ограничение свободных перем-х. Если х1,..xn – свободные перем-е,

содержащ. в А, то преобразуется к виду $x1.. $x, A.

2)переимен. перем-х, чтобы различн. перем-е имели разные имена.

3)удаление символа É. AÉB заменить формулой ØAÚB.

4)перемещение символа Ø внутрь формул с символами Ù,Ú,",$ пока Ø

не станет относится к атомам. Для этого используем правило:

Ø(AÙB)-> ØAÚØB

Ø(AÚB)-> ØAÙØB

Ø ØA->A

Ø " xA-> $xØ A

Ø $ xA-> "xØ A

5)удаление символа $. Все переем-е, связанные с квантором $, замен.

сколемовскими константами или функ-ми. Если переем-я введена вне

области действия квантора ", то она заменяется константой. В против-

ном случае переем-я заменяется функ-ей от значений введенных квантором " перем-х, в области дей-я которых она была введена.

 $x"y"z$u P(x,y,z,u) -> "y"z P(a,y,zf(y,z))

6)перемещение символов " вперед и отбрасывание ". Все свободные

перем-е считаются введенными квантором ".

7)перемещение символа Ú относительно Ù. Используя правило

ÙВ)ÚС -> (AÚC)Ù(BÚC)

8)hhhhразделение формул на набор дизъюнктов(предложений).

9)минимизация. Атом с Ø или без Ø называется литералом. Удаля-

ются повторяющиеся литералы. Удаляются предложения, литералы которых  взаимно отрицают друг друга.

A1ÚÚAmÚØB1ÚÚØBm представ. в форме клаузы A1…Am->B1…Bm.

Предложение с m=1 и n=0 соответствует факту в Прологе.

Предложение с m=1 и n>=1 соответствует правилу в Прологе.

Предложение с m=0 и n>=1 соответствует запросу в Прологе.

Метод резолюций: 

Пусть есть 2 предлож-я C1=A1ÚÚAmÚD и С2=B1ÚÚBnÚØD. Резольвентой этих предл-ий явл-ся C=A1ÚÚAmÚB1ÚÚBn. Если литералы D и ØD не равны, но существует унификатор, делающий их

равными, то наиболее общий унификатор для D и ØD применяется к предложениям C1 и C2, а затем вычисляется резольвента. Если резол.

С пуста, то это указывает на невыполниость исходной формулы.

В случае нехорновских дизъюнктов метод резолюции необходимо дополнить правилом факторизации, которое удаляет повторяющиеся

литералы в одном предложении. Если литералы не равны, то также выполняется их унификация.

Просмотров: 1317 | Дата добавления: 08.02.2016