1、人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法第三章第三章 归结推理方法归结推理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制 Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法归结推理命题逻辑谓词逻辑Skolem标准形、子句集基本概念谓词逻辑归结原理合一和置换、控制策略数理逻辑命题逻辑归结Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法第三章第三章 归结推理方法归结推理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制人工智能原理人工智能原理第三章第三章 归结
2、推理方法归结推理方法概述概述 归结原理由J.A.Robinson由1965年提出。 与演绎法(deductive inference)完全不同,新的逻辑演算(inductive inference)算法。 一阶逻辑中,至今为止的最有效的半可判定的算法。即,一阶逻辑中任意恒真公式,使用归结原理,总可以在有限步内给以判定。 语义网络、框架表示、产生式规则等等都是以推理方法为前提的。即,有了规则已知条件,顺藤摸瓜找到结果。 而归结方法是自动推理、自动推导证明用的。(“数学定理机器证明”) 本课程只讨论一阶谓词逻辑描述下的归结推理方法,不涉及高阶谓词逻辑问题。 人工智能原理人工智能原理第三章第三章 归
3、结推理方法归结推理方法第三章第三章 归结推理方法归结推理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制 Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法第三章第三章 归结推理方法归结推理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制 Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题例命题例 命题:命题:能判断真假(不是既真又假)的陈述句。简单陈述句描述事实、事物的状态、关系等性质。例如:1 1+1=2 2 雪是黑色的。 3 北京是中国的首都。 4 到冥王星去渡假。 判
4、断一个句子是否是命题,有先要看它是否是陈述句,而后看它的真值是否唯一。以上的例子都是陈述句,第4句的真值现在是假,随着人类科学的发展,有可能变成真,但不管怎样,真值是唯一的。因此,以上4个例子都是命题。而例如:1 快点走吧! 2 到那去? 3 x+y10等等句子,都不是命题。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题表示公式(命题表示公式(1)将陈述句转化成命题公式。如:设“下雨”为p,“骑车上班”为q,1“只要不下雨,我骑自行车上班”。p 是 q的充分条件,因而,可得命题公式: p q2“只有不下雨,我才骑自行车上班”。p 是 q的必要条件,因而,可得命题公式:q p
5、 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题表示公式(命题表示公式(2)例如: 1 “如果我进城我就去看你,除非我很累。”设:p,我进城,q,去看你,r,我很累。则有命题公式:r (p q)。 2“应届高中生,得过数学或物理竞赛的一等 奖,保送上北京大学。” 设:p,应届高中生,q,保送上北京大学上学, r,是得过数学一等奖。t,是得过物理一等奖。 则有命题公式公式:p ( r t ) q。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题逻辑的归结法命题逻辑的归结法 命题逻辑基础: 定义: 合取式:p与q,记做p q 析取式: p或q,记做p q 蕴
6、含式: 如果p则q,记做p q 等价式:p当且仅当q,记做p q。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题逻辑基础命题逻辑基础 定义: 若A无成假赋值,则称A为重言式或永真式; 若A无成真赋值,则称A为矛盾式或永假式; 若A至少有一个成真赋值,则称A为可满足的; 析取范式:仅由有限个简单合取式组成的析取式。 合取范式:仅由有限个简单析取式组成的合取式。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题逻辑基础命题逻辑基础 基本等值式24个(1) 交换率:pq q p ; p q q p 结合率: (pq) r p(q r); (p q) r p (q
7、r) 分配率: p(q r) (pq)(p r) ; p (q r) (p q) (p r) 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题逻辑基础命题逻辑基础 基本等值式(1) 摩根率: (pq) p q ; (p q) p q 吸收率: p(pq ) p ; p (pq ) p 同一律: p0 p ; p1 p 蕴含等值式:p q pq 假言易位式: p q p q 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题逻辑的归结法命题逻辑的归结法 基本单元:简单命题(陈述句)例: 命题: A1、A2、A3 和 B求证: A1A2A3成立,则B成立,即:A1
8、A2A3 B反证法:证明A1A2A3B 是矛盾式 (永假式) 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题逻辑的归结法命题逻辑的归结法建立子句集合取范式:命题、命题和的与, 如:P( PQ)( PQ)子句集S:合取范式形式下的子命题(元素)的集合例:命题公式:P( PQ)( PQ) 子句集 S:S = P, PQ, PQ 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题逻辑的归结法命题逻辑的归结法 归结式消除互补对,求新子句得到归结式。如子句:C1, C2, 归结式:R(C1, C2) = C1C2 注意:C1C2 R(C1, C2) , 反之成立。 人
9、工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题逻辑的归结法命题逻辑的归结法 归结过程 将命题写成合取范式 求出子句集 对子句集使用归结推理规则 归结式作为新子句参加归结 归结式为空子句 ,S是不可满足的(矛盾),原命题成立。 (证明完毕) 谓词的归结:除了有量词和函数以外,其余和命题归结过程一样。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题逻辑归结例题(命题逻辑归结例题(1)例题,证明公式:(P Q) (Q P)证明: (1)根据归结原理,将待证明公式转化成待归结命题公式:(P Q) (Q P)(2)分别将公式前项化为合取范式:P Q P Q结论求后的
10、后项化为合取范式:(Q P) (QP) Q P两项合并后化为合取范式:(P Q)Q P (3)则子句集为: PQ,Q,P人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法命题逻辑归结例题(命题逻辑归结例题(2)子句集为: PQ,Q,P(4)对子句集中的子句进行归结可得: 1. PQ 2. Q 3. P 4. Q,(1,3归结) 5. ,(2,4归结)由上可得原公式成立。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法第三章第三章 归结推理方法归结推理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制 Herbrand定理人工智能原理人工智能原理
11、第三章第三章 归结推理方法归结推理方法第三章第三章 归结推理方法归结推理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制 Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结原理基础谓词归结原理基础一阶逻辑 基本概念 个体词:表示主语的词 谓词:刻画个体性质或个体之间关系的词 量词:表示数量的词人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结原理基础谓词归结原理基础小王是个工程师。8是个自然数。我去买花。小丽和小华是朋友。其中,“小王”、“工程师”、“我”、“花”、“8”、“小丽”、“小华”都是个体词,而“是
12、个工程师”、“是个自然数”、“去买”、“是朋友”都是谓词。显然前两个谓词表示的是事物的性质,第三个谓词“去买”表示的一个动作也表示了主、宾两个个体词的关系,最后一个谓词“是朋友”表示两个个体词之间的关系。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结原理基础谓词归结原理基础一阶逻辑 公式及其解释 个体常量:a,b,c 个体变量:x,y,z 谓词符号:P,Q,R 量词符号: ,人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结原理基础谓词归结原理基础 例如:(1)所有的人都是要死的。 (2) 有的人活到一百岁以上。在个体域D为人类集合时,可符号化为:(
13、1)xP(x),其中P(x)表示x是要死的。(2)x Q(x), 其中Q(x)表示x活到一百岁以上。在个体域D是全总个体域时,引入特殊谓词R(x)表示x是人,可符号化为:(1)x(R(x) P(x)), 其中,R(x)表示x是人;P(x)表示x是要死的。(2)x(R(x) Q(x)),其中,R(x)表示x是人;Q(x)表示x活到一百岁以上。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结原理基础谓词归结原理基础量词否定等值式:( x ) M(x) ( y ) M(y) ( x ) M(x) ( y ) M(y)量词分配等值式: ( x )( P(x) Q(x)) ( x
14、 ) P(x) ( x ) Q(x) ( x )( P(x) Q(x)) ( x ) P(x) ( x ) Q(x)消去量词等值式:设个体域为有穷集合(a1, a2, an) ( x ) P(x) P( a1 ) P( a2 ) P( an ) ( x )P(x) P( a1 ) P( a2 ) P( an )人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结原理基础谓词归结原理基础量词辖域收缩与扩张等值式: ( x )( P(x) Q) ( x ) P(x) Q ( x )( P(x) Q) ( x ) P(x) Q ( x )( P(x) Q) ( x ) P(x) Q
15、 ( x )(Q P(x) ) Q ( x ) P(x) ( x )( P(x) Q) ( x ) P(x) Q ( x )( P(x) Q) ( x ) P(x) Q ( x )( P(x) Q) ( x ) P(x) Q ( x )(Q P(x) ) Q ( x ) P(x)人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结子句形谓词归结子句形( Skolem ( Skolem 标准形标准形) )SKOLEM标准形前束范式定义:说公式A是一个前束范式,如果A中的一切量词都位于该公式的最左边(不含否定词),且这些量词的辖域都延伸到公式的末端。 人工智能原理人工智能原理第三
16、章第三章 归结推理方法归结推理方法谓词归结子句形谓词归结子句形( Skolem ( Skolem 标准形标准形) )即: 把所有的量词都提到前面去,然后消掉所有量词(Q1x1)(Q2x2)(Qnxn)M(x1,x2,xn)约束变项换名规则:(Qx ) M(x) (Qy ) M(y) (Qx ) M(x,z) (Qy ) M(y,z)人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结子句形谓词归结子句形( Skolem ( Skolem 标准形标准形) ) 量词消去原则:消去存在量词“”,略去全程量词“”。注意:左边有全程量词的存在量词,消去时该变量改写成为全程量词的函数;如
17、没有,改写成为常量。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结子句形谓词归结子句形( Skolem ( Skolem 标准形标准形) ) Skolem定理:谓词逻辑的任意公式都可以化为与之等价的前束范式,但其前束范式不唯一。 SKOLEM标准形定义:消去量词后的谓词公式。注意:谓词公式G的SKOLEM标准形同G并不等值。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结子句形谓词归结子句形( Skolem ( Skolem 标准形标准形) )例:将下式化为Skolem标准形:(x)(y)P(a, x, y) (x)(y)Q(y, b)R(x)
18、 解:第一步,消去号,得:(x)(y)P(a, x, y) (x) (y)Q(y, b)R(x) 第二步,深入到量词内部,得:(x)(y)P(a, x, y) (x) (y)Q(y, b)R(x) 第三步,变元易名,得(x)(y)P(a, x, y) (u) ( v)(Q(v, b) R(u) 第四步,存在量词左移,直至所有的量词移到前面,得: (x) (y) (u) ( v)P(a, x, y) (Q(v, b) R(u)由此得到前述范式人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结子句形谓词归结子句形( Skolem ( Skolem 标准形标准形) )第五步,消去
19、“”(存在量词),略去“”全称量词消去(y),因为它左边只有(x),所以使用x的函数f(x)代替之,这样得到:(x)(z)( P(a, x, f(x) Q(z, b)R(x)消去(z),同理使用g(x)代替之,这样得到:(x) ( P(a, x, f(x) Q(g(x), b)R(x)则,略去全称变量,原式的Skolem标准形为: P(a, x, f(x) Q(g(x), b)R(x) 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结子句形谓词归结子句形 子句与子句集 文字:不含任何连接词的谓词公式。 子句:一些文字的析取(谓词的和)。 子句集S的求取: G SKOLEM
20、标准形 消去存在变量 以“,”取代“”,并表示为集合形式 。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结子句形谓词归结子句形 G是不可满足的 S是不可满足的 G与S不等价,但在不可满足得意义下是一致的。 定理:若G是给定的公式,而S是相应的子句集,则G是不可满足的 S是不可满足的。 注意:G真不一定S真,而S真必有G真。即: S = G人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法谓词归结子句形谓词归结子句形 G = G1 G2 G3 Gn 的子句形G的字句集可以分解成几个单独处理。 有 SG = S1 U S2 U S3 U U Sn则SG 与 S1
21、 U S2 U S3 U U Sn在不可满足得意义上是一致的。即SG 不可满足 S1 U S2 U S3 U U Sn不可满足人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法求取子句集例求取子句集例(1)例:对所有的x,y,z来说,如果y是x的父亲,z又是y的父亲,则z是x的祖父。又知每个人都有父亲,试问对某个人来说谁是它的祖父?求:用一阶逻辑表示这个问题,并建立子句集。解:这里我们首先引入谓词:P(x, y) 表示x是y的父亲Q(x, y) 表示x是y的祖父ANS(x) 表示问题的解答人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法求取子句集例求取子句集例(2)对
22、于第一个条件,“如果x是y 的父亲, y又是z 的父亲,则x是z 的祖父”,一阶逻辑表达式如下:A1:(x)(y)(z)(P(x, y)P(y, z)Q(x, z)S A1:P(x ,y)P(y, z)Q(x, z)对于第二个条件:“每个人都有父亲”,一阶逻辑表达式:A2:(y)(x)P(x, y)S A2:P(f(y), y)对于结论:某个人是它的祖父B:(x)(y)Q(x, y)否定后得到子句: ( (x)(y)Q(x, y)) ANS(x)SB:Q(x, y)ANS(x)则得到的相应的子句集为: S A1,S A2,SB 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法第三
23、章第三章 归结推理方法归结推理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制 Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法第三章第三章 归结推理方法归结推理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制 Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法归结原理归结原理 归结原理正确性的根本在于,找到矛盾可以肯定不真。 方法: 和命题逻辑一样。 但由于有函数,所以要考虑合一和置换。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法置换置换 置换:可以简单的
24、理解为是在一个谓词公式中用置换项去置换变量。 定义:置换是形如t1/x1, t2/x2, , tn/xn的有限集合。其中,x1, x2, , xn是互不相同的变量,t1, t2, , tn是不同于xi的项(常量、变量、函数);ti/xi表示用ti置换xi,并且要求ti与xi不能相同,而且xi不能循环地出现在另一个ti中。例如a/x,c/y,f(b)/z是一个置换。g(y)/x,f(x)/y不是一个置换, 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法置换的合成置换的合成 设t1/x1, t2/x2, , tn/xn, u1/y1, u2/y2, , un/yn,是两个置换。 则
25、与的合成也是一个置换,记作。它是从集合t1/x1, t2/x2, , tn/xn, u1/y1, u2/y2, , un/yn 中删去以下两种元素: 当ti=xi时,删去ti/xi (i = 1, 2, , n); 当yix1,x2, , xn时,删去uj/yj (j = 1, 2, , m)最后剩下的元素所构成的集合。 合成即是对ti先做置换然后再做置换,置换xi人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法置换的合成置换的合成 例:设:f(y)/x, z/y,a/x, b/y, y/z,求与的合成。解:先求出集合f(b/y)/x, (y/z)/y, a/x, b/y, y/
26、zf(b)/x, y/y, a/x, b/y, y/z其中,f(b)/x中的f(b)是置换作用于f(y)的结果;y/y中的y是置换作用于z的结果。在该集合中,y/y满足定义中的条件i,需要删除;a/x,b/y满足定义中的条件ii,也需要删除。最后得f(b)/x,y/z人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法合一合一 合一可以简单地理解为“寻找相对变量的置换,使两个谓词公式一致”。 定义:设有公式集FF1,F2,Fn,若存在一个置换,可使F1F2= Fn,则称是F的一个合一。同时称F1,F2,. ,Fn是可合一的。 例:设有公式集FP(x, y, f(y), P(a,g(x
27、),z),则a/x, g(a)/y, f(g(a)/z是它的一个合一。注意:一般说来,一个公式集的合一不是唯一的。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法归结原理归结原理 归结的注意事项:1.谓词的一致性,P()与Q(), 不可以2.常量的一致性,P(a, )与P(b,.), 不可以 变量,P(a, .)与P(x, ), 可以3.变量与函数,P(a, x, .)与P(x, f(x), ),不可以;4.是不能同时消去两个互补对,PQ与PQ的空,不可以5.先进行内部简化(置换、合并) 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法归结原理归结原理 归结的过程
28、写出谓词关系公式 用反演法写出谓词表达式 SKOLEM标准形 子句集S 对S中可归结的子句做归结 归结式仍放入S中,反复归结过程 得到空子句 得证人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法例题例题“快乐学生快乐学生”问题问题假设任何通过计算机考试并获奖的人都是快乐的,任何肯学习或幸运的人都可以通过所有的考试,张不肯学习但他是幸运的,任何幸运的人都能获奖。求证:张是快乐的。 解:先将问题用谓词表示如下:R1:“任何通过计算机考试并获奖的人都是快乐的”(x)(Pass(x, computer)Win(x, prize)Happy(x)R2:“任何肯学习或幸运的人都可以通过所有考
29、试”(x)(y)(Study(x)Lucky(x)Pass(x, y)R3:“张不肯学习但他是幸运的”Study(zhang)Lucky(zhang)R4:“任何幸运的人都能获奖”(x)(Luck(x)Win(x,prize)结论:“张是快乐的”的否定Happy(zhang)人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法例题例题“快乐学生快乐学生”问题问题由R1及逻辑转换公式:PWH = (PW) H ,可得 (1)Pass(x, computer)Win(x, prize)Happy(x)由R2: (2)Study(y)Pass(y,z) (3)Lucky(u)Pass(u,
30、v)由R3: (4)Study(zhang) (5)Lucky(zhang)由R4: (6)Lucky(w)Win(w,prize)由结论:(7)Happy(zhang)(结论的否定)(8)Pass(w, computer)Happy(w)Luck(w) (1)(6),w/x(9)Pass(zhang, computer)Lucky(zhang) (8)(7),zhang/w(10) Pass(zhang, computer) (9)(5)(11) Lucky(zhang) (10)(3),zhang/u, computer/v(12) (11)(5) 人工智能原理人工智能原理第三章第三章 归
31、结推理方法归结推理方法归结原理归结原理 归结法的实质: 归结法是仅有一条推理规则的推理方法。 归结的过程是一个语义树倒塌的过程。 归结法的问题 子句中有等号或不等号时,完备性不成立。 Herbrand定理的不实用性引出了可实用的归结法。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法第三章第三章 归结推理方法归结推理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制 Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法第三章第三章 归结推理方法归结推理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制
32、Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法归结过程的控制策略归结过程的控制策略 要解决的问题: 归结方法的知识爆炸。 控制策略的目的 归结点尽量少 控制策略的原则 给出控制策略,以使仅对选择合适的子句间方可做归结。避免多余的、不必要的归结式出现。或者说,少做些归结仍能导出空子句。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法控制策略的方法控制策略的方法(1)删除策略= 完备 名词解释:归类:设有两个子句C和D,若有置换使得C D成立,则称子句C把子句D归类。由于小的可以代表大的,所以小的吃掉大的了。 若对S使用归结推理过程中,当归结式Cj
33、是重言式(永真式)和Cj被S中子句和子句集的归结式Ci(ij)所归类时,便将Cj删除。这样的推理过程便称做使用了删除策略的归结过程。 主要思想:归结过程在寻找可归结子句时,子句集中的子句越多,需要付出的代价就会越大。如果在归结时能把子句集中无用的子句删除掉,就会缩小搜索范围,减少比较次数,从而提高归结效率。删除策略对阻止不必要的归结式的产生来缩短归结过程是有效的。然而要在归结式Cj产生后方能判别它是否可被删除,这部分计算量是要花费的,只是节省了被删除的子句又生成的归结式。尽管使用删除策略的归结,少做了归结但不影响产生空子句,就是说删除策略的归结推理是完备的。人工智能原理人工智能原理第三章第三章
34、 归结推理方法归结推理方法控制策略的方法控制策略的方法(2)采用支撑集完备 支撑集:设有不可满足子句集S的子集T,如果S-T是可满足的,则T是支持集。 采用支撑集策略时,从开始到得到的整个归结过程中,只选取不同时属于S-T的子句,在其间进行归结。就是说,至少有一个子句来自于支撑集T或由T导出的归结式。 例如:A1A2A3B中的B可以作为支撑集使用。要求每一次参加归结的亲本子句中,只要应该有一个是有目标公式的否定(B)所得到的子句或者它们的后裔。 支撑集策略的归结是完备的,同样,所有可归结的谓词公式都可以用采用支撑集策略达到加快归结速度的目的。问题是如何寻找合适的支撑集。一个最容易找到的支撑集是
35、目标子句的非,即SB。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法ST可满足支撑集示意图人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法控制策略的方法控制策略的方法(3)语义归结 完备 语义归结策略是将子句S按照一定的语义分成两部分,约定每部分内的子句间不允许作归结。同时还引入了文字次序,约定归结时其中的一个子句的被归结文字只能是该子句中“最大”的文字。 语义归结策略的归结是完备的,同样,所有可归结的谓词公式都可以用采用语义归结策略达到加快归结速度的目的。问题是如何寻找合适的语义分类方法,并根据其含义将子句集两个部分中的子句进行排序。 人工智能原理人工智能原理
36、第三章第三章 归结推理方法归结推理方法控制策略的方法控制策略的方法(4)线性归结 完备 线性归结策略首先从子句集中选取一个称作顶子句的子句C0开始作归结。归结过程中所得到的归结式Ci立即同另一子句Bi进行归结得归结式Ci+1。而Bi属于S或是已出现的归结式Cj(j 完备 单元归结策略要求在归结过程中,每次归结都有一个子句是单元子句(只含一个文字的子句)或单元因子。显而易见,词中方法可以简单地削去另一个非单子句中的一个因子,使其长度减少,构成简单化,归结效率较高。 初始子句集中没有单元子句时,单元归结策略无效。所以说“反之不成立”,即此问题不能采用单元归结策略。 人工智能原理人工智能原理第三章第
37、三章 归结推理方法归结推理方法控制策略的方法控制策略的方法(6)输入归结 = 完备 与单元归结策略相似,输入归结策略要求在归结过程中,每一次归结的两个子句中必须有一个是S的原始子句。这样可以避免归结出的不必要的新子句加入归结,造成恶性循环。可以减少不必要的归结次数。 如同单元归结策略,不是所有的可归结谓词公式的最后结论都是可以从原始子句集中的得到的。简单的例子,归结结束时,即最后一个归结式为空子句的条件是,参加归结的双方必须是两个单元子句。原始子句集中没有单元子句的谓词公式一定不能采用输入归结策略。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法第三章第三章 归结推理方法归结推
38、理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制 Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法第三章第三章 归结推理方法归结推理方法 概述 命题逻辑的归结法 谓词归结子句形 归结原理 归结过程的策略控制 Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法HerbrandHerbrand定理定理问题:一阶逻辑公式的永真性(永假性)的判定是否能在有限步内完成?人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法HerbrandHerbrand定理定理 1936年图灵(Turing)和邱吉(C
39、hurch)互相独立地证明了: “没有一般的方法使得在有限步内判定一阶逻辑的公式是否是永真(或永假)。但是如果公式本身是永真(或永假)的,那么就能在有限步内判定它是永真(或永假)。对于非永真(或永假)的公式就不一定能在有限步内得到结论。判定的过程将可能是不停止的。” 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法HerbrandHerbrand定理定理 Herbrand的思想 定义:公式G永真:对于G的所有解释,G都为真。 思想:寻找一个已给的公式是真的解释。然而,如果所给定的公式的确是永假的,就没有这样的解释存在,并且算法在有限步内停止。 人工智能原理人工智能原理第三章第三章
40、 归结推理方法归结推理方法HerbrandHerbrand定理定理 H域 H解释 语义树 结论:Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法HerbrandHerbrand定理定理 H域 H解释 语义树 结论:Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法Herbrand定理定理(H H域)域) 基本方法: 因为量词是任意的,所讨论的个体变量域D是任意的,所以解释的个数是无限、不可数的 。 简化讨论域。建立一个比较简单、特殊的域,使得只要在这个论域上,该公式是不可满足的。 此域称为H域。 ),.,(11niittfHH人
41、工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法D域H域H域与D域关系示意图人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法H H域例题域例题设子句集S = P(x), Q(y,f(z,b),R(a),求H域解:H0 a, b为子句集中出现的常量H1 a, b, f(a,b), f(a,a), f(b,a), f(b,b)H2 a, b, f(a,b), f(a,a), f(b,a), f(b,b),f(a,f(a,b), f(a,f(a,a), f(a, f(b,a), f(a, f(b,b),f(b,f(a,b), f(b,f(a,a), f(b, f(b,a),
42、 f(b,f(b,b),f(f(a,b),f(a,b), f(f(a,b),f(a,a), f(f(a,b), f(b,a), f(f(a,b), f(b,b),f(f(a,a),f(a,b), f(f(a,a),f(a,a), f(f(a,a), f(b,a), f(f(a,a), f(b,b),f(f(b,a),f(a,b), f(f(b,a),f(a,a), f(f(b,a), f(b,a), f(f(b,a), f(b,b),f(f(b,b),f(a,b), f(f(b,b),f(a,a), f(f(b,b), f(b,a), f(f(b,b), f(b,b)H = H1H2H3人工智
43、能原理人工智能原理第三章第三章 归结推理方法归结推理方法Herbrand定理定理(H H域)域) 几个基本概念f(tn):f为子句集S中的所有函数变量。t1, t2, tn为S的H域的元素。通过它们来讨论永真性。 原子集A:谓词套上H域的元素组成的集合。如A = 所有形如 P(t1, t2, tn)的元素即把H中的东西填到S的谓词里去。S中的谓词是有限的,H是可数的,因此,A也是可数的。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法原子集例题原子集例题上例题的原子集为: A = P(a), Q(a, a), R(a), P(b), Q(b, a), Q(b, b), Q(a,
44、b), R(b), P( f(a,b), Q(f(a, b), f(a, b), R(f(a, b), P(f(a,a), P(f(b,a), P(f(b,b),) 一旦原子集内真值确定好(规定好),则S在H上的真值可确定。成为可数问题。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法HerbrandHerbrand定理定理 H域 H解释 语义树 结论:Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法HerbrandHerbrand定理定理 H域 H解释 语义树 结论:Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理
45、方法Herbrand定理定理(H H解释)解释) 解释I:谓词公式G在论域D上任何一组真值的指定称为一个解释。 H解释:子句集S在的H域上的解释称为H解释。 问题: 对于所有的解释,全是假才可判定。因为所有解释代表了所有的情况,如可穷举,问题便可解决 。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法Herbrand定理定理(H H解释)解释) 如下三个定理保证了归结法的正确性: 定理定理1:设I是S的论域D上的解释,存在对应于I的H解释I*,使得若有S|I = T,必有 S|I* = T。 定理定理2 2:子句集S是不可满足的,当且仅当所有的S的H解释下为假。 定理定理3 3:
46、子句集S是不可满足的,当且仅当对每一个解释I下,至少有S的某个子句的某个基例为假。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法Herbrand定理定理(H H解释)解释) 基例S中某子句中所有变元符号均以S的H域中的元素代入时,所得的基子句C称为C的一个基例。 若一个子句为假,则此解释为假。 一般来说,D是无穷不可列的,因此,子句集S也是无穷不可列的。但S确定后H是无穷可列的。不过在H上证明S的不可满足性仍然是不可能的。 解决问题的方法:语义树人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法HerbrandHerbrand定理定理 H域 H解释 语义树 结论:
47、Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法HerbrandHerbrand定理定理 H域 H解释 语义树 结论:Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法Herbrand定理定理(语义树)(语义树) 构成方法原子集中所有元素逐层添加的一棵二叉树。将元素的是与非分别标记在两侧的分枝上(可不完全画完) 。 特点一般情况H是可数集,S的语义树是无限树。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法N0P(a)N12Q(a)P(f(a)N24N31N38无限语义树N11P(a)Q(a)Q(a)Q(a)P(
48、f(a)N21SP(x)Q(x),P(f(y),Q(f(y) 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法Herbrand定理定理(语义树)(语义树) 意义 S H A 语义树可以理解语义树为H域的图形解释。 目的:把每个解释都摊开。语义树中包含原子集的全部元素。因此,语义树是完全的。每一个直到叶子节点的分支对应S的一个解释。可以通过对语义树每一个分支来计算S的真值。如果每个基例都为假,则可认为是不可满足的。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法Herbrand定理定理(语义树)(语义树) 几个概念 失败结点: 当(由上)延伸到点N时,I(N)已表明了
49、S的某子句的某基例假。但N以前尚不能判断这事实。就称N为失败结点。 封闭语义树:如果S的完全语义树的每个分枝上都有一个失败结点,就称它是一棵封闭语义树。人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法N0P(a)N1,2Q(a)P(f(a)N2,4N3,1N3,8N1,1N4,2N4,1N2,1N3,2N2,2N3,6N4,9N4,10N4,13N4,14封闭语义树Q(f(a)SP(x)Q(x),P(f(y),Q(f(y) 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法HerbrandHerbrand定理定理 H域 H解释 语义树 结论:Herbrand定理人工智
50、能原理人工智能原理第三章第三章 归结推理方法归结推理方法HerbrandHerbrand定理定理 H域 H解释 语义树 结论:Herbrand定理人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法Herbrand定理定理(结论)(结论)Herbrand定理:1. 子句集S是不可满足的,当且仅当对应于S的完全语义数是棵有限封闭树。 2. 子句集S是不可满足的,当且仅当存在不可满足的S的有限基例集。 人工智能原理人工智能原理第三章第三章 归结推理方法归结推理方法Herbrand定理定理(结论)(结论) 定理的意义 Herbrand定理已将证明问题转化成了命题逻辑问题。 由此定理保证,可
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。