第1 5章谓词演算
15.1 动机 命题演算有一些局限性。例如,我们不能表达这样的事实:当移动木块B时,说它就是O N _ B _ C所断言的木块C上的木块。 在命题演算中,原子是没有内部结构的串。在关于木块的命题中, O N _ A _ B和O N _ B _ C是完全不同的。
一种更有用的语言应该是既能指称在这个世界中的事物(像木块),也能指称有关这个世界的命题。 我们需要一种语言,它既有对此进行命题陈述的事物的名称,又有我们要进行陈述的命题的名称。 在玩积木的世界(在此之后,称之为“积木世界”)中,也许应该有像 ON_B_C ¬ C L E A R _ C 这样的命题,其中,C L E A R _ C表示木块C上是空的。 要为每个木块都表达一个这样的事实将需要几个命题公式。假如我们能够用O n ( x,y ) ¬ C l e a r ( y ) 这样简单的陈述就好了,这里x和y是能够指称任何木块的变量。
15.2 谓词演算语言和它的句法 一个对象常量的无限集合,它们是字母数字组成的字符串。本书的对象常量用一个大写字母开始或者用一个数字开始。 例如:A a,1 2 5,1 3 B,Q,J o h n 一个所有“目”的函数常量的无限集合。它们是字母数字组成的字符串,总是以小写字母开头,并且总是以它们的目作为上标。 一个所有“目”的关系常量的无限集合。这些是以大写字母开头的字母数字组成的字符串,并且以它们的目作为上标(有时称一个关系常量为谓词)。 ,
项
合式公式
15.3 语义
15.3.1 世界
15.3.2 解释 对谓词演算中的一个表达式的解释就是一种指派,这种指派把对象常量映射到世界中的对象,把n元函数常项映射到世界中的n元函数,把n元关系常量映射到世界中的n元关系。这些指派被称为它们相应的谓词演算表达式的指称。 受对象常量指派的对象的集合被称为为这种解释的域。
给定一个原子的组成部分的一种解释,当原子的词项指称的那些个体的指称关系能成立时,这个原子就为真。假如这种关系不能成立,这个原子就为假。 非原子合式公式的真值与假值可用与命题演算中同样的真值表来决定。
15.3.3 模型及其相关的概念
15.3.4 知识
15.4 量化
15.5 量词语义学 15.5.1 全称量词 Universal Quantifiers ()() = True () is True for all assignments of to objects in the domain Example: (x)[On(x,C) Clear(C)]? in Figure 15.2 x: A, B, C, Floor investigate each of assignments in turn for each of the interpretations
15.5.2 存在量词 Existential Quantifiers ()() = True () is True for at least one assignments of to objects in the domain
等价公式 Useful Equivalences ()() ()() ()() ()() ()() () ()
推理规则 Rules of Inference Propositional-calculus rules of inference predicate calculus modus ponens Introduction and elimination of Introduction of elimination Resolution Two important rules Universal instantiation (UI) Existential generalization (EG)
谓词演算作为一种表示知识的语言 表示关于一个世界的知识的 第一步是用对象、函数和关系把它概念化。概念化通常包含一种对概念化对象的部分进行创造的行为。常常会有种种关于我们认为什么样的对象会存在于我们的世界中的选择。我们可以自由运用任何我们所希望的方式来概念化这个世界;尽管如此,有些概念化会比另外一些更有用(未必更“精确”)。 下一步,我们构造谓词演算表达式,它要表示的意义包含对象、函数和关系。最后,我们写出在概念化了的世界中得到满足的合式公式。这些合式公式也同样可由别的解释得到满足;我们只是需要关注在某些解释下它们不会得到满足,这些解释是我们关于这个世界的知识水平所能排除的。
15.6.2 举例 “Every package in room 27 is smaller than one of the packages in room 29” Way of stating the arrival time of an object Arrived(x,z) X: arriving object Z: time interval during which it arrived “Package A arrived before Package B” Temporal logic: method of dealing with time in computer science and AI