2.规则的应用 在一个逆向演绎系统中,规则具有形式:W→L,其中W是任意形式的与或形,L是单文字,它表示L可以由W推导出。其中的变量受全称量词约束,如果有存在量词,则将其Skolem化,消去存在量词。 逆向系统中的B规则限制为W→L的形式,其中前项W是任意形式的与或形公式,后项L是单文字,蕴涵式的任何变量都受全称量词约束。当B规则为W→L1∧L2时,则可化简为两条规则W→L1和W→L2来处理。 在逆向系统中,事实表达式限定为是文字的合取,并且进行了普通的Skolem化简,变量受全称量词约束。 逆向系统演绎过程的结束条件是生成的与或图含有事实表达式,而事实表达式限制为文字的合取形式。当事实表达式有一个文字同与或图中某一个端节点所标记的文字(子目标)匹配上时,就可以通过匹配弧把事实文字加到图上。这样当最后得到的与或图包含一个结束在事实节点上的一致解图时,系统便结束演绎,一个一致解图是解图中匹配弧置换集具有合一复合置换的那个解图。和正向系统类似,B规则可以多次调用,事实文字也可以重复多次匹配,但每次匹配都要进行变量改名。 图4.27 逆向系统的一致解图 图4.27是一个逆向系统的例子。同在正向系统中一样,空心的箭头是匹配弧,它表示与或图中的一个节点与某规则的结论部分相匹配。同样,箭头的方向并不代表合一的"方向",合一完全按照通常的合一原则进行。如图中左边CAT(x)与规则5的CAT(x5)合一,图中的置换是{x/x5},该置换作用于规则5的前提部分,MEOWS(x5)变换为MEOWS(x)。由于x和x5都是变量,所以置换也可以是{x5/x}。该置换作用于规则5的前提部分,MEOWS(x5)保持不变。在MEOWS(x5)与事实MEOWS(MYRTLE)匹配时,置换变成了{MYRTLE/x5}。此时由于MYRTLE是常量,置换只能是{MYRTLE/x5}。该局部图如下图所示。 由于置换不一样了,该局部图与原图有所变化,但是最终得到的合一复合是一样的。 图4.27给出这个问题逆向求解的一个一致解图,图中事实节点由双框线标记,规则的应用由规则编号标记。解图中的所有匹配弧的置换集是 |