2.9 设有如下语句,请用相应的谓词公式分别把它们表示出来。
(1)有的人喜欢梅花,有的人喜欢菊花,有的人既喜欢梅花又喜欢菊花。
(2)有的人每天下午都去打篮球。
(3)新型计算机速度又快,存储容量又大。
(4)不是每个计算机系的学生都喜欢在计算机上编程序。
(5)凡是喜欢编程序的人都喜欢计算机。
2.11 用谓词表示法表示农夫、狼、山羊、白菜问题
设农夫、狼、山羊、白菜全部在一条河的左岸,现在要把它们全部送到河的右岸去,农夫有一条船,过河时,除农夫外船上至多能载狼、山羊、白菜中的一种。狼要吃羊,山羊要吃白菜,除农夫在那里。试规划出一个确保全部安全过河的计划。请写出所用谓词的定义,并给出每个谓词的功能及变化的个体域。
解:(1) 先定义描述状态的谓词
要描述这个问题,需要能够说明农夫、狼、羊、白菜和船在什么位置,为简化问题表示,取消船在河中行驶的状态,只描述左岸和右岸的状态。并且,由于左岸和右岸的状态互补,因此可仅对左岸或右岸的状态做直接描述。本题选择对左岸进行直接描述的方法,即定义谓词如下:
AL(x):x在左岸
其中,x的个体域是{农夫,船,狼,羊,白菜}。对应地,¬L(x)表示x在右岸。
问题的初始状态:
L(农夫)
L(船)
L(狼)
L(羊)
L(白菜)
问题的目标状态:
¬L(农夫)
¬L(船)
¬L(狼)
¬L(羊)
¬L(白菜)
(2) 再定义描述操作的谓词
本题需要以下4个描述操作的谓词:
L-R:农夫自己划船从左岸到右岸
L-R(x):农夫带着x划船从左岸到右岸
R-L:农夫自己划船从右岸到左岸
R-L(x) :农夫带着x划船从右岸到左岸
其中,x的个体域是{狼,羊,白菜}。
对上述每个操作,都包括条件和动作两部分。它们对应的条件和动作如下:
L-R:农夫划船从左岸到右岸
条件:L(船),L(农夫),¬L(狼)∨¬L(羊),¬L(羊)∨¬L(白菜)
动作:删除表:L(船),L(农夫)
添加表:¬L(船),¬L(农夫)
L-R(狼):农夫带着狼划船从左岸到右岸
条件:L(船),L(农夫),L(狼),¬L(羊)
动作:删除表:L(船),L(农夫),L(狼)
添加表:¬L(船),¬L(农夫),¬L(狼)
L-R(羊):农夫带着羊划船从左岸到右岸
条件:L(船),L(农夫),L(羊), L(狼),L(白菜)
或:L(船),L(农夫),L(羊),¬L(狼),¬L(白菜)
动作:删除表:L(船),L(农夫),L(羊)
添加表:¬L(船),¬L(农夫),¬L(羊)
L-R(白菜):农夫带着白菜划船从左岸到右岸
条件:L(船),L(农夫),L(白菜),¬L(狼)
动作:删除表:L(船),L(农夫),L(白菜)
添加表:¬L(船),¬L(农夫),¬L(白菜)
R-L:农夫划船从右岸到左岸
条件:¬L(船),¬L(农夫),L(狼)∨L(羊),L(羊)∨L(白菜)
或:¬L(船),¬L(农夫) ,¬L(狼),¬L(白菜),L(羊)
动作:删除表:¬L(船),¬L(农夫)
添加表:L(船),L(农夫)
R-L(羊) :农夫带着羊划船从右岸到左岸
条件:¬L(船),¬L(农夫),¬L(羊) ,¬L(狼),¬L(羊),L(白菜)
动作:删除表:¬L(船),¬L(农夫),¬L(羊)
添加表:L(船),L(农夫),L(羊)
L(农夫) L(狼) L(农夫) L(白菜)
L(船) L(白菜) L(船) ¬L(农夫)
L(狼) L-R(羊) ¬L(农夫) R-L L(狼) L-R(狼) ¬L(船) R-L(羊)
L(羊) →→ ¬L(船)→→ L(白菜)→→ ¬L(狼) →→
L(白菜) ¬L(羊) ¬L(羊) ¬L(羊)
L(农夫) L(羊) L(农夫) ¬L(农夫)
L(船) ¬L(农夫) L(船) ¬L(船)
L(羊) L-R(白菜) ¬L(船) R-L L(羊) L-R(羊) ¬L(羊)
L(白菜) →→ ¬L(白菜) →→ ¬L(白菜) →→ ¬L(白菜)
¬L(狼) ¬L(狼) ¬L(狼) ¬L(狼)
2.16 请对下列命题分别写出它们的语义网络:
(1)每个学生都有一台计算机。
(2)高老师从3月到7月给计算机系学生讲《计算机网络》课。
(3)学习班的学员有男、有女;有研究生,有本科生。
(4)创新公司在科海大街56号,刘洋是该公司的经理,他32岁,硕士学位。
(5)红队与蓝队进行足球比赛,最后以3:2的分结束。
2.17 请把下列命题用一个语义网络表示出来。
(1)树和草都是植物。
(2)树和草都有叶喝根。
(3)水草是草,且生长在水中。
(4)果树是树,且会结果。
(5)梨树是果树中的一种,它会结梨。