
| (1)否定L,得~L; (2)把~L添加到S中去; (3)把新产生的集合{~L,S}化成子句集; (4)应用消解原理,力图推导出一个表示矛盾的空子句NIL。 |
|
前提:每个储蓄钱的人都获得利息。 结论:如果没有利息,那么就没有人去储蓄钱。 证明:令S(x,y)表示"x储蓄y" |
|
M(x)表示“x是钱” E(x,y)表示“x获得y” |
|
于是上述命题写成下列形式: |
|
|
|
结论: |
|
|
|
用化为子句集的九步法,可把前提和结论化为下列的子句集: |
| S’={~S(x,y)∨~M(y)∨I(f(x)),~S(x,y)∨~M(y)∨E(x,f(x))} |
|
其中,y=f(x)为Skolem函数。而, |
|
~L= |
|
={~I(z),S(a,b),M(b)} |
以下按上述的四个步骤来对问题进行反演求解:
|
(1) 否定L,即有 ~L = {~I(z),S(a,b),M(b)} |
|
(2) 把 face="宋体">~ L添加到S’中去,即 |
|
S’={~L,S’}={~S(x,y)∨~M(y)∨I(f(x)),~S(x,y)∨~M(y)∨ |
|
E(x,f(x)),~I(z),S(a,b),M(b)} |
|
(3) 把新产生的集合S’化成子句集,即 |
|
S’= {~S(x,y)∨~M(y)∨I(f(x)),~S(x,y)∨~M(y)∨ E(x,f(x)), |
|
~I(z), S(a,b), M(b) } |
| (4) 应用消解原理,力图推导出一个表示矛盾的空子句NIL。 |
![]() |
| (1) 把由目标公式的否定产生的每个子句添加到目标公式否定之否定的子句中去。 (2) 按照反演树,执行和以前相同的消解,直至在根部得到某个子句止。 (3) 用根部的子句作为一个回答语句。 |
| ( |
| AT(JOHN,SCHOOL) |
| ( |
| ( |
| ~AT(FIDO,x) |
| (1) 目标公式否定的子句形式为 :~AT(FIDO,x) |
| 把它添加至目标公式的否定之否定的子句中去,得重言式 |
| ~AT(FIDO,x)∨AT(FIDO,x) |
| (2) 用图4.3的反演树进行消解,并在根部得到子句:AT(FIDO,SCHOOL) |
| (3) 从根部求得答案AT(FIDO,SCHOOL),用此子句作为回答语句。因此,子句 |
| AT(FIDO,SCHOOL)就是这个问题的合适答案,见图4.3。 |
|
|
|