事实:
F1: DOG(FIDO);狗的名字叫 Fido
F2: ~BARKS(FIDO);Fido是不叫的
F3: WAGS TAIL(FIDO);Fido摇尾巴
F4: MEOWS(MYRTLE);猫咪的名字叫Myrtle
规则:
R1: [WAGS TAIL(x1)∧DOG(x1)] FRIENDLY(x1);摇尾巴的狗是温顺的狗
R2: [FRIENDLY(x2)∧~BARKS(x2)]~AFRAID(y2,x2);温顺而又不叫的东西是不值得害怕的
R3: DOG(x3) ANIMAL(x3);狗为动物
R4: CAT(x4) ANIMAL(x4);猫为动物
R5: MEOWS(x5) CAT(x5);猫咪是猫
问题:是否存在这样的一只猫和一条狗,使得这只猫不怕这条狗?
用目标表达式表示此问题为:
(

x)(

y)[CAT(x)∧DOG(y)∧
~AFRAID(x,y)]
图4.8表示出这个问题的一致解图。图中,用双线框表示事实节点,用规则编号R1、R2和R5等来标记所应用的规则。此解图中有八条匹配弧,每条匹配弧上都有一个置换。这些置换为{x/x5},{MYRTLE/x},{FIDO/y},{x/y2,y/x2},{FIDO/y}({FIDO/y}重复使用四次)。由图4.8可见,终止在事实节点前的置换为{MYRTLE/x}和{FIDO/y}。把它应用到目标表达式,我们就得到该问题的回答语句如下:
[CAT(MYRTLE)∧DOG(FIDO)∧~AFRAID(MYRTLE,FIDO)]