谓词演算与消解(归结)原理.ppt

  1. 1、本文档共79页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
谓词演算与消解(归结)原理

第三章 谓词演算与消解(归结)原理 3.1 命题演算 3.1.1 符号和命题 3.1.2 命题演算的语义 3.2 谓词演算 命题演算中,P,Q代表一定的命题,如: P:星期四下雨 而谓词:Weather(X,Y)代表日期与天气的关系 Weather(Tuesday,Rain) 3.2.1 谓词的语法和命题 例: likes (george, kate). likes (X, george). likes (george, susie). likes (X, X). likes (george, sarah, tuesday). friends (bill, richard). friends (bill, george). friends (father (david), father (andrew)) helps (bill, george). helps (richard, bill). 3.2.1 谓词的语法和命题 与谓词相关的一个正整数称为元数或“参数数目”,具有相同的名但元数不同的谓词是不同的。 真值true和false也是原子命题。 任何原子命题都能够用逻辑操作符将其变成谓词演算的命题。用的联结词也和命题演算一样: ∨,∧, ~, = 和=。 当一个变元在一个命题中作为参数出现时,它代表的是域中不特定的对象。谓词演算包括两个符号, 量词?(全称量词)和彐(存在量词), 用于限定包含变元的命题的含义。 3.2.1 谓词的语法和命题 一个量词后面紧跟着一个变元和一个命题。例如: ? X likes (X, ice_cream). 彐Y friends (Y, peter). 3.2.2 谓词演算的语义 谓词演算的语义提供了确定合式表达式真值的形式基础。表达式的真值依赖于常元、变元、谓词、函词到论域中的映射,在论域中的关系的真假决定了相应表达式的真假。 例如: 3.2.2 谓词演算的语义 谓词演算表达式的真值 设有表达式E和在非空论域D上对E的一个解释I,E的真值按以下规律决定: 1)一个常元的值是根据I指派给它的D的一个元素。 2)一个变元的值是根据I指派给它的D的一个元素集合。 3)一个函词的值是根据由I指派给它的参数值计算得到的D的元素。 4)真值符号true的值是T,false的值是F。 5)原子命题的值或者为T,或者为F,取决于解释I。 6)如果一个命题的值为F,则其否定式为T,否则为F。 7)如果… 11)如果对于在解释I下的X的每一个指派,S的值为T,则? X S为T,否则为F。 12)如果在解释I下存在X的一个指派使得S的值为T,则彐X S为T,否则为F。 3.2.2 谓词演算的语义 变元:likes(george,X) 这个变元名可以由任何其他变元名代替,不会改变表达式的意思。 3.2.2 谓词演算的语义 否定与全称量词、存在量词之间的关系 。 对于谓词 P, Q, 变元 X, Y有: ~彐X P(X) = ? X ~P(X) ~ ?X P(X) = 彐X ~P(X) 彐X P(X) = 彐Y P(Y) ?X Q(X) = ?Y Q(Y) ?X (P(X)∧Q(X) ) = ? X P(X)∧ ?Y Q(Y) 彐X (P(X)∨Q(X) ) = 彐X P(X)∨彐Y Q(Y) 3.3 推理规则产生谓词演算表达式 3.3.1 推理规则 推理规则:实际上是一个从其他谓词演算命题产生新的谓词演算命题的机械方法。亦即推理规则产生基于给定逻辑断言的句法形式的新命题。当每个由逻辑表达式集S上的推理规则产生的命题X都是S的逻辑结果,则称该逻辑规则是合理的。 3.3.2 合一 伪代码写的函数 Unify 用于计算两个谓词表达式的最一般合一 3.3.2 合一 function unify (E1, E2) ; begin case … end %end case end 3.3.2 合一 case E1, E2 或者是常元或者是空表: %递归终止。 If E1 = E2 then return { } else return FAIL; E1是一个变元: if E1在E2中出现 then return FAIL else return {E2/E1}; E2是一个变元: if E2在E1中出现 then return FAIL els

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档