1第二章2.8设有如下语句,请用相应的谓词公式分别把他们表示出来:(1)有的人喜欢梅花,有的人喜欢菊花,有的人既喜欢梅花又喜欢菊花。解:定义谓词P(x):x是人L(x,y):x喜欢y其中,y的个体域是{梅花,菊花}。将知识用谓词表示为:(x)(P(x)→L(x,梅花)∨L(x,菊花)∨L(x,梅花)∧L(x,菊花))(2)有人每天下午都去打篮球。解:定义谓词P(x):x是人B(x):x打篮球A(y):y是下午将知识用谓词表示为:(x)(y)(A(y)→B(x)∧P(x))(3)新型计算机速度又快,存储容量又大。解:定义谓词NC(x):x是新型计算机F(x):x速度快B(x):x容量大将知识用谓词表示为:(x)(NC(x)→F(x)∧B(x))(4)不是每个计算机系的学生都喜欢在计算机上编程序。解:定义谓词S(x):x是计算机系学生L(x,pragramming):x喜欢编程序U(x,computer):x使用计算机将知识用谓词表示为:¬(x)(S(x)→L(x,pragramming)∧U(x,computer))(5)凡是喜欢编程序的人都喜欢计算机。解:定义谓词P(x):x是人L(x,y):x喜欢y将知识用谓词表示为:(x)(P(x)∧L(x,pragramming)→L(x,computer))2.10用谓词表示法求解农夫、狼、山羊、白菜问题。农夫、狼、山羊、白菜全部放在一条河的左岸,现在要把他们全部送到河的右岸去,农夫有一条船,过河时,除农夫外船上至多能载狼、山羊、白菜中的一种。狼要吃山羊,山羊要吃白菜,除非农夫在那里。似规划出一个确2保全部安全过河的计划。请写出所用谓词的定义,并给出每个谓词的功能及变量的个体域。解:(1)先定义描述状态的谓词要描述这个问题,需要能够说明农夫、狼、羊、白菜和船在什么位置,为简化问题表示,取消船在河中行驶的状态,只描述左岸和右岸的状态。并且,由于左岸和右岸的状态互补,因此可仅对左岸或右岸的状态做直接描述。本题选择对左岸进行直接描述的方法,即定义谓词如下:AL(x):x在左岸其中,x的个体域是{农夫,船,狼,羊,白菜}。对应地,¬AL(x)表示x在右岸。问题的初始状态:AL(农夫)AL(船)AL(狼)AL(羊)AL(白菜)问题的目标状态:¬AL(农夫)¬AL(船)¬AL(狼)¬AL(羊)¬AL(白菜)(2)再定义描述操作的谓词本题需要以下4个描述操作的谓词:L-R:农夫自己划船从左岸到右岸L-R(x):农夫带着x划船从左岸到右岸R-L:农夫自己划船从右岸到左岸R-L(x):农夫带着x划船从右岸到左岸其中,x的个体域是{狼,羊,白菜}。对上述每个操作,都包括条件和动作两部分。它们对应的条件和动作如下:L-R:农夫划船从左岸到右岸条件:AL(船),AL(农夫),¬AL(狼)∨¬AL(羊),¬AL(羊)∨¬AL(白菜)动作:删除表:AL(船),AL(农夫)添加表:¬AL(船),¬AL(农夫)L-R(狼):农夫带着狼划船从左岸到右岸条件:AL(船),AL(农夫),AL(狼),¬AL(羊)动作:删除表:AL(船),AL(农夫),AL(狼)添加表:¬AL(船),¬AL(农夫),¬AL(狼)L-R(羊):农夫带着羊划船从左岸到右岸条件:AL(船),AL(农夫),AL(羊),AL(狼),AL(白菜)或:AL(船),AL(农夫),AL(羊),¬AL(狼),¬AL(白菜)动作:删除表:AL(船),AL(农夫),AL(羊)3添加表:¬AL(船),¬AL(农夫),¬AL(羊)L-R(白菜):农夫带着白菜划船从左岸到右岸条件:AL(船),AL(农夫),AL(白菜),¬AL(狼)动作:删除表:AL(船),AL(农夫),AL(白菜)添加表:¬AL(船),¬AL(农夫),¬AL(白菜)R-L:农夫划船从右岸到左岸条件:¬AL(船),¬AL(农夫),AL(狼)∨AL(羊),AL(羊)∨AL(白菜)或:¬AL(船),¬AL(农夫),¬AL(狼),¬AL(白菜),AL(羊)动作:删除表:¬AL(船),¬AL(农夫)添加表:AL(船),AL(农夫)R-L(羊):农夫带着羊划船从右岸到左岸条件:¬AL(船),¬AL(农夫),¬AL(羊),¬AL(狼),¬AL(羊),AL(白菜)动作:删除表:¬AL(船),¬AL(农夫),¬AL(羊)添加表:AL(船),AL(农夫),AL(羊)(3)问题求解过程AL(农夫)AL(船)AL(狼)AL(羊)AL(白菜)2.18请对下列命题分别写出它们的语义网络:(1)每个学生都有一台计算机。解:L-R(羊)AL(狼)AL(白菜)¬AL(农夫)¬AL(船)¬AL(羊)R-LAL(农夫)AL(船)AL(狼)AL(白菜)¬AL(羊)AL(农夫)AL(船)AL(羊)AL(白菜)¬AL(狼)L-R(狼)R-L(羊)AL(白菜)¬AL(农夫)¬AL(船)¬AL(狼)¬AL(羊)L-R(白菜)AL(羊)¬AL(农夫)¬AL(船)¬AL(白菜)¬AL(狼)R-LAL(农夫)AL(船)AL(羊)¬AL(白菜)¬AL(狼)L-R(羊)¬AL(农夫)¬AL(船)¬AL(羊)¬AL(白菜)¬AL(狼)GSgsoc学生占有权计算机OwnerOwnsFGSgGSgISAISAAKO4(2)高老师从3月到7月给计算机系学生讲《计算机网络》课。解:(3)学习班的学员有男、有女、有研究生、有本科生。解:参例2.14(4)创新公司在科海大街56号,刘洋是该公司的经理,他32岁、硕士学位。解:参例2.10(5)红队与蓝队进行足球比赛,最后以3:2的比分结束。解:2.19请把下列命题用一个语义网络表示出来:(1)树和草都是植物;解:(2)树和草都有叶和根;ISA讲课事件高老师老师Subject计算机系学生Object7月8月StartEnd讲课计算机网络ActionCaurse足球赛比赛AKO红队蓝队3:22Participants1Participants2Outcome植物草树AKOAKO5解:(3)水草是草,且生长在水中;解:(4)果树是树,且会结果;解:(5)梨树是果树中的一种,它会结梨。解:2.26按“师生框架”、“教师框架”、“学生框架”的形式写出一个框架系统的描述。解:师生框架FrameTeachers-StudentsName:Unit(Last-name,First-name)Sex:Area(male,female)Default:maleAge:Unit(Years)Telephone:HomeUnit(Number)MobileUnit(Number)教师框架FrameTeachersAKOTeachers-StudentsMajor:Unit(Major-Name)Lectures:Unit(Course-Name)草树是一种是一种植物叶根HaveHave草水草水中AKOLive植物AKO树果树结果AKOCan植物AKO果树梨树结梨AKOCan树AKO6Field:Unit(Field-Name)Project:Area(National,Provincial,Other)Default:ProvincialPaper:Area(SCI,EI,Core,General)Default:Core学生框架FrameStudentsAKOTeachers-StudentsMajor:Unit(Major-Name)Classes:Unit(Classes-Name)Degree:Area(doctor,mastor,bachelor)Default:bachelor2.37把下列谓词公式化为子句集(1)(x)(y)(P(x,y)∧Q(x,y))(2)(x)(y)(P(x,y)→Q(x,y))(3)(x)(y)(P(x,y)∨(Q(x,y)→R(x,y)))(4)(x)(y)(z)(P(x,y)→Q(x,y)∨R(x,z))解:(1)由于(x)(y)(P(x,y)∧Q(x,y))已经是Skolem标准型,且P(x,y)∧Q(x,y)已经是合取范式,所以可直接消去全称量词、合取词,得{P(x,y),Q(x,y)}再进行变元换名得子句集:S={P(x,y),Q(u,v)}(2)对谓词公式(x)(y)(P(x,y)→Q(x,y)),先消去连接词“→”得:(x)(y)(¬P(x,y)∨Q(x,y))此公式已为Skolem标准型。再消去全称量词得子句集:S={¬P(x,y)∨Q(x,y)}(3)对谓词公式(x)(y)(P(x,y)∨(Q(x,y)→R(x,y))),先消去连接词“→”得:(x)(y)(P(x,y)∨(¬Q(x,y)∨R(x,y)))此公式已为前束范式。再消去存在量词,即用Skolem函数f(x)替换y得:(x)(P(x,f(x))∨¬Q(x,f(x))∨R(x,f(x)))此公式已为Skolem标准型。最后消去全称量词得子句集:S={P(x,f(x))∨¬Q(x,f(x))∨R(x,f(x))}(4)对谓词(x)(y)(z)(P(x,y)→Q(x,y)∨R(x,z)),先消去连接词“→”得:7(x)(y)(z)(¬P(x,y)∨Q(x,y)∨R(x,z))再消去存在量词,即用Skolem函数f(x)替换y得:(x)(y)(¬P(x,y)∨Q(x,y)∨R(x,f(x,y)))此公式已为Skolem标准型。最后消去全称量词得子句集:S={¬P(x,y)∨Q(x,y)∨R(x,f(x,y))}2.41设已知:(1)如果x是y的父亲,y是z的父亲,则x是z的祖父;(2)每个人都有一个父亲。使用归结演绎推理证明:对于某人u,一定存在一个人v,v是u的祖父。解:先定义谓词F(x,y):x是y的父亲GF(x,z):x是z的祖父P(x):x是一个人再用谓词把问题描述出来:已知F1:(x)(y)(z)(F(x,y)∧F(y,z))→GF(x,z))F2:(y)(P(x)→F(x,y))求证结论G:(u)(v)(P(u)→GF(v,u))然后再将F1,F2和¬G化成子句集:①¬F(x,y)∨¬F(y,z)∨GF(x,z)②¬P(r)∨F(s,r)③P(u)④¬GF(v,u))对上述扩充的子句集,其归结推理过程如下:¬F(x,y)∨¬F(y,z)∨GF(x,z)¬GF(v,u)¬F(x,y)∨¬F(y,z)¬P(r)∨F(s,r)¬F(y,z)∨¬P(y)¬P(r)∨F(s,r)¬P(y)∨¬P(z)¬P(y)P(u)NIL8由于导出了空子句,故结论得证。2.42假设张被盗,公安局派出5个人去调查。案情分析时,贞察员A说:“赵与钱中至少有一个人作案”,贞察员B说:“钱与孙中至少有一个人作案”,贞察员C说:“孙与李中至少有一个人作案”,贞察员D说:“赵与孙中至少有一个人与此案无关”,贞察员E说:“钱与李中至少有一个人与此案无关”。如果这5个侦察员的话都是可信的,使用归结演绎推理求出谁是盗窃犯。解:(1)先定义谓词和常量设C(x)表示x作案,Z表示赵,Q表示钱,S表示孙,L表示李(2)将已知事实用谓词公式表示出来赵与钱中至少有一个人作案:C(Z)∨C(Q)钱与孙中至少有一个人作案:C(Q)∨C(S)孙与李中至少有一个人作案:C(S)∨C(L)赵与孙中至少有一个人与此案无关:¬(C(Z)∧C(S)),即¬C(Z)∨¬C(S)钱与李中至少有一个人与此案无关:¬(C(Q)∧C(L)),即¬C(Q)∨¬C(L)(3)将所要求的问题用谓词公式表示出来,并与其否定取析取。设作案者为u,则要求的结论是C(u)。将其与其否)取析取,得:¬C(u)∨C(u)(4)对上述扩充的子句集,按归结原理进行归结,其修改的证明树如下:因此,钱是盗窃犯。实际上,本案的盗窃犯不止一人。根据归结原理还可以得出:C(Z)∨C(Q)¬C(Z)∨¬C(S)C(Q)∨¬C(S)C(Q)∨C(S)C(Q)¬C(u)∨C(u)C(Q)C(S)∨C(L)¬C(Q)∨¬C(L)