- 1、本文档共55页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chapter 3-2的
3.4 谓词逻辑中的归结法 Resolution method in predicate logic 和命题逻辑一样,在谓词逻辑中也具有归结推理规则和归结反演过程。只是由于谓词逻辑中存在量词、个体变元等问题,使得谓词逻辑中的归结问题比命题逻辑中的归结问题复杂很多。下面就来介绍谓词逻辑中的归结法。 想证明 F1?F2…?Fn?G 永真 (注:Fi中可以包含量词、变元) 通过证明 F1?F2…Fn?~G 永假 实现 第一步:求F1?F2…Fn?~G 式的前束合取范式(离散数学中已经讲过) 第二步:求子句和子句集—Skolem标准化去掉量词 第三步:找互补对—置换与合一 第四步:利用归结原理进行归结 Skolem标准化过程 3.4.1 子句型 Clause form 3.4.1 子句型 Clause form 注意: 一个公式可以有几种形式的Skolem标准型。为简单起见,在变换公式为Skolem标准型时应该用尽量简单的Skolem函数代替G中存在量化的变量。即,应该使用变元个数最少的Skolem函数。这意味着,在化为前束标准型时,应该使存在量词尽量向左移。 想证明 F1?F2…?Fn?G 永真 (注:Fi中可以包含量词、变元) 通过证明 F1?F2…Fn?~G 永假 实现 第一步:求F1?F2…Fn?~G 式的前束合取范式(离散数学中已经讲过) 第二步:求子句和子句集—Skolem标准化去掉量词 第三步:找互补对—置换与合一 第四步:利用归结原理进行归结 3.4.2 置换和合一 Substitution and Unification 对命题逻辑应用归结原理的重要步骤是:在一个子句中找出与另一子句中的某个文字互补的文字。对于不含变量的子句是容易做到的。当子句中含有变量时,问题要复杂很多。如研究子句 中没有文字与 中的任何文字互补。但是若 在 中用 置换x,在 中用a置换y,便得出 其中 和 分别是 和 的基例。从上述例子可以看到,用适当的项置换 和 的变量可以产生新子句。 3.4.3 合一算法Unification algorithm 本节将对有限非空可合一的表达式集合给出求取最一般合一置换的合一算法。当集合不可合一时,算法也能给出不可合一的结论,并且结束。 例如:研究集合 ,集合中的两个表达式是不同的,差别是在P(a)中出现a,而在P(x)中出现x。为了求出该集合的合一置换,首先找出两个表达式的不一致之处,然后再试图消除。对P(a)和P(x),不一致之处可用集合{a,x}表示。由于x是变量,可以取 ,于是有 ,即 是 的合一置换。 合一算法Unification algorithm 想证明 F1?F2…?Fn?G 永真 (注:Fi中可以包含量词、变元) 通过证明 F1?F2…Fn?~G 永假 实现 第一步:求F1?F2…Fn?~G 式的前束合取范式(离散数学中已经讲过) 第二步:求子句和子句集—Skolem标准化去掉量词 第三步:找互补对—置换与合一 3.3.4 归结式Resolvent 定义3.11 若由子句C中的两个或多个文字构成的集合存在最一般合一置换 , 则称 为 C的因子(factor)。若 是单位子句,则称它为C的单位因子(Unit factor)。 例3.17 令 由C中前两个文字构成的集合 存在最一般合一置换 ,所以 是C的因子。 3.3.5 利用归结法进行定理证明 To prove theorem using resolution method 归结原理指出了证明子句集不可满足性的方法。对于定理证明,经常见到的形式是: 这里, 是前提条件,而B则是逻辑结论。为了证明B是 的逻辑结论,只需证明 是不可满足的。又根据定理4.3,要证明公式的不可满足性,只要证明其相应子句集的不可满足性即可。所以应用归结原理进行定
文档评论(0)