800 likes | 1k Views
第2章 谓词逻辑. 在命题逻辑中,我们把命题分解到原子命题为止,认为原子命题是不能再分解的,仅仅研究以原子命题为基本单位的复合命题之间的逻辑关系和推理。 实际上,简单命题还可以进行分解,例如,“王平是大学生”这一简单命题可以分解为主语(王平)和谓语(是大学生),命题逻辑反映不出这一特点。 其次,如下两个简单命题“王平是大学生”和“李明是大学生”,有一个共同特点——是大学生,这一共性在命题逻辑中也表示不出来。因此,有必要推广命题逻辑。. 第 2 章 谓词逻辑.
E N D
在命题逻辑中,我们把命题分解到原子命题为止,认为原子命题是不能再分解的,仅仅研究以原子命题为基本单位的复合命题之间的逻辑关系和推理。 • 实际上,简单命题还可以进行分解,例如,“王平是大学生”这一简单命题可以分解为主语(王平)和谓语(是大学生),命题逻辑反映不出这一特点。 • 其次,如下两个简单命题“王平是大学生”和“李明是大学生”,有一个共同特点——是大学生,这一共性在命题逻辑中也表示不出来。因此,有必要推广命题逻辑。 第 2 章 谓词逻辑
第三,有些简单而正确的推理过程在命题演算里不能得到证明。例如著名的苏格拉底三段论: • “人都是要死的,苏格拉底是人,所以苏格拉底是要死的。” • 在命题逻辑中,三个原子命题分别用P,Q,R表示,现在要证明PQR,即证明PQR是重言式,但这在命题逻辑中是不可能的。因此从推理的角度看,也有必要推广命题逻辑。 • 谓词逻辑就是命题逻辑的自然推广。本章介绍的谓词逻辑内容仅限于一阶谓词逻辑或狭义谓词逻辑,即谓词中的变元不再是谓词变元。 第 2 章 谓词逻辑
本章内容提要: • 1.个体、谓词和量词的概念 • 2.谓词演算公式 • 3.谓词演算的等值公式 • 4.前束范式 • 5.推理理论 • 6.谓词逻辑在计算机科学中的应用 第 2 章 谓词逻辑
定义2.1可以独立存在的物体称为个体,它可以是一个具体的事物,也可以是一个抽象的概念。 • 如王平,李明,计算机,离散数学,精神等都可以作为个体。 • 定义2.2 将表示具体的或确定的个体称为个体常元,而将表示抽象的或泛指的(或者说取值不确定的)个体称为个体变元。 • 个体常元一般用小写英文字母a,b,c…或带下标的ai,bi,ci…表示,个体变元一般用小写英文字母x,y,z…或带下标的xi,yi,zi…表示。 2.1.1 个体 2.1 个体 、谓词和量词
定义2.3 个体变元的取值范围称为个体域或论域,把宇宙间一切事物组成的个体域称为全总个体域。 • 个体域可以是有穷集合,例如{1,2,3,4,5},{a,b,c}等,也可以是无穷集合,例如自然数集,实数集等。同时约定,本书在论述或推理中如无指明所采用的个体域,则都是使用全总个体域。 2.1.1 个体 2.1 个体 、谓词和量词
定义2.4 表示单个个体的性质或两个以上个体关系的词叫谓词。 • 定义2.5 表示具体性质或关系的谓词称为谓词常元,表示抽象的或泛指的性质或关系的谓词称为谓词变元。 • 无论是谓词常元或变元都用大写英文字母P,Q,R…或带下标的Pi,Qi,Ri…表示,要根据上下文区分。 2.1.2 谓词 2.1 个体 、谓词和量词
定义2.6由一个谓词(如P)和n个个体变元(如x1,x2,…,xn)组成的P(x1,x2,…,xn),称它为n元原子谓词或n元命题函数,简称n元谓词。 • 当n=1时,称一元谓词;当n=2时,称为二元谓词,…。特别地,当n=0,称为零元谓词,即不带个体变元的谓词为零元谓词。零元谓词是命题,这样命题与谓词就得到了统一,因而可将命题看成特殊的谓词。 2.1.2 谓词 2.1 个体 、谓词和量词
例2.1 分析下列命题的个体与谓词。 • (1)5是质数。 • 解 “5”是个体常元,“…是质数”是谓词,记为P。这里的谓词是一元谓词,属于谓词常元。 2.1.2 谓词 2.1 个体 、谓词和量词
(2)张三与李四是同学。 • 解“张三”与“李四”是个体常元,分别记为a,b,“…与…是同学”是谓词,记为Q。这里的谓词是二元谓词,属于谓词常元。 • (3)x与y具有关系R。 • 解 “x”与“y”是个体变元,谓词为R。这里的谓词是二元谓词,属于谓词变元。 2.1.2 谓词 2.1 个体 、谓词和量词
例2.2 用个体,谓词表示下列命题。 • (1)张华是大学生。 • 解 令a:张华; S(x):x是大学生。整个命题可表示为:S(a)。 • 说明: • ①若x的个体域为某大学计算机系的全体学生,则S(a)为真; • ②若x的个体域为某中学的全体学生,则S(a)为假; • ③若x的个体域为某电影院中的观众,则S(a)真值不确定。所以个体变元在哪些个体域取特定的值,对命题的真值极有影响。 2.1.2 谓词 2.1 个体 、谓词和量词
(2)武汉位于重庆和上海之间。 • 解 令a:武汉; b:重庆; c:上海; P(x,y,z):x位于y和z之间。整个命题可表示为P(a,b,c)。 • 说明:显然P(a,b,c)为真,但P(b,a,c)为假。所以个体变元的顺序影响命题真值,不能随意改动。 2.1.2 谓词 2.1 个体 、谓词和量词
定义2.7 表示个体常元或变元之间数量关系的词叫量词;表示“全部”,“所有的”,“一切的”,“每一个”,“任意的”等数量关系的词叫全称量词,用符号“”表示;表示“存在一些”,“有一些”,“至少有一个”等数量关系的词叫存在量词,用符号“”表示;表示“存在惟一”,“恰有一个”等数量关系的词叫存在惟一量词,用符号“!”表示。 2.1.3 量词 2.1 个体 、谓词和量词
注意:量词的优先级高于任何联结词,所以(x)P(x1,x2,…,xn)、(x)P(x1,x2,…,xn)、可分别写成xP(x1,x2,…,xn)、xP(x1,x2,…,xn),但要注意明确量词的辖域(辖域将在下一节讨论)。注意:量词的优先级高于任何联结词,所以(x)P(x1,x2,…,xn)、(x)P(x1,x2,…,xn)、可分别写成xP(x1,x2,…,xn)、xP(x1,x2,…,xn),但要注意明确量词的辖域(辖域将在下一节讨论)。 2.1.3 量词 2.1 个体 、谓词和量词
例2.3 符号化下列命题(设个体域为整数集合)。 • (1)所有的整数都是有理数。 • (2)有些整数是奇数。 • (3)存在着惟一的偶素数。 • 解 (1)令P(x):x是有理数,则命题可表示为:xP(x)。 • (2)令Q(x):x是奇数,则命题可表示为:xQ(x)。 • (3)令R(x):x是偶数,S(x):x是素数,则命题可表示为!x(R(x)S(x))。 2.1.3 量词 2.1 个体 、谓词和量词
定义2.8 若一个谓词P(x)是用来限制个体变元的取值范围,那么称谓词P(x)为特性谓词。 • 在使用全总个体域时,对个体变化的真正取值范围,用特性谓词加以限制。一般地,对全称量词,将特性谓词作蕴含的前件;对存在量词,将特性谓词作合取项。 2.1.3 量词 2.1 个体 、谓词和量词
例2.4 用全总个体域对例2.3中的所有命题进行符号化。 • 解 在例2.3的基础上增加一个特性谓词I(x):x是整数。则各命题可表示为: • (1)x(I(x)P(x)) • (2)x(I(x)Q(x)) • (3)!x(I(x)R(x)S(x)) 2.1.3 量词 2.1 个体 、谓词和量词
练习 将下列命题符号化。 • (1)天下乌鸦一般黑。 • (2)任何金属都可以溶解在某种液体中。 2.1.3 量词 2.1 个体 、谓词和量词
在谓词前加上量词,称为谓词的量化。若一个谓词中所有个体变元都量化了,则该谓词就变成了命题。这是因为在谓词被量化后,可以在整个个体域中考虑命题的真值了。这如同数学中的函数f(x), • 的值是不确定的,但 • 可确定其值。 2.1.3 量词 2.1 个体 、谓词和量词
定义2.9 由n元谓词P和n个个体变元x1,x2,…,xn所构成的不含命题联结词和量词的谓词表达式P(x1,x2,…,xn)称为谓词逻辑中的原子谓词公式,简称原子公式。 • 由定义可知,一个命题或一个命题变元也称为原子公式,也就是说,当n=0时,P(x1,x2,…,xn)为原子命题P。 2.2.1 谓词公式与翻译 2.2 谓词 公式
定义2.10 谓词公式归纳定义如下: • (1)原子公式是谓词公式; • (2)如果α是谓词公式,则α也是谓词公式; • (3)如果α和β是谓词公式,则αβ,αβ,β→α和αβ也都是谓词公式; • (4)如果α是谓词公式,x是个体变元,则xα(x),xα(x)和!xα(x)也都是谓词公式; • (5)只有有限次地应用(1)~(4)构成的符号串才是谓词公式。 2.2.1 谓词公式与翻译 2.2 谓词 公式
由定义可知,谓词公式是由原子公式、命题联结词、量词以及圆括号按照上述规则组成的一个符号串。因此,命题逻辑中的命题公式是谓词公式的一个特例。 • 为叙述方便,我们下面讨论只含“x”和“x”的谓词公式,事实上,量词“!x”可以通过量词“x”和“x”来表示。 2.2.1 谓词公式与翻译 2.2 谓词 公式
一般来说,将自然语言翻译成谓词公式主要有以下几个步骤: • (1)确定个体域,如无特别说明,一般使用全总个体域; • (2)根据个体域,分析命题中的个体、个体性质以及各个个体间的关系,确定谓词; • (3)根据表示数量的词确定量词; • (4)利用联结词将整个命题符号化。 2.2.1 谓词公式与翻译 2.2 谓词 公式
例2.5将下列命题符号化。 • (1)教室里有同学在讲话。 • 解 因为题中没有特别指明个体域,所以这里采用全总个体域。 • 令S(x):x是同学, R(x):x在教室里,T(x):x在讲话,则命题可符号化为:x(S(x)R(x)T(x))。 2.2.1 谓词公式与翻译 2.2 谓词 公式
(2)在我们班中,并非所有同学都能取得优秀成绩。 (2)在我们班中,并非所有同学都能取得优秀成绩。 • 解令S(x):x是同学, C(x):x在我们班中, E(x):x能取得优秀成绩,则命题可符号化为:x((S(x)C(x))E(x))。或者,此命题也可以理解为“在我们班中存在不能取得优秀成绩的同学”,则该命题也可符号化为:x(S(x)C(x)E(x))。 2.2.1 谓词公式与翻译 2.2 谓词 公式
(3)没有最大的自然数。 • 解命题中“没有最大的”显然是对所有的自然数而言,所以可理解为“对任意的自然数x,存在着比x更大的自然数”。令N(x):x是自然数, G(x,y):x大于y,则命题可符号化为:x(N(x)y(N(y)G(y,x)))。 2.2.1 谓词公式与翻译 2.2 谓词 公式
(4)今天有雨雪,有些人会跌跤。 • 解令R:今天下雨, S:今天下雪,M(x):x是人,F(x):x会跌跤,则命题可符号化为:(RS)x(M(x)F(x))。 2.2.1 谓词公式与翻译 2.2 谓词 公式
定义2.11设α是谓词公式,β是α中连续的符号串且也是谓词公式,则称β是α的子公式。定义2.11设α是谓词公式,β是α中连续的符号串且也是谓词公式,则称β是α的子公式。 • 例如,α=x(P(x)y(Q(y)R(x,y))),β=y(Q(y)R(x,y)),则β是α的子公式。而P(x)y不是谓词公式,因而也不是α的子公式。 2.2.1 谓词公式与翻译 2.2 谓词 公式
定义2.11 设α是一个谓词公式,xβ(x)和xγ(x)是α的子公式,则称xβ(x)与xγ(x)是α的约束部分,x称为是约束出现的。约束出现的变元称为约束变元,不是约束出现的变元称为自由变元。β(x)称为是x在α中的辖域(或作用域),γ(x)称为是x在α中的辖域。 2.2.2 自由变元与约束变元 2.2 谓词 公式
确定一个量词的辖域即是找出位于该量词之后的相邻接的子公式,具体地讲: • ① 若量词后有括号,则括号内的子公式就是该量词的辖域; • ② 若量词后无括号,则与量词邻接的子公式为该量词的辖域。 • 另外,当多个量词连续出现,它们之间无括号分隔时,后面的量词在前面量词的辖域之中,且量词对变元的约束与量词的次序有关,一般不能随意调动。 2.2.2 自由变元与约束变元 2.2 谓词 公式
例2.6指出下列谓词公式中的自由变元和约束变元,并指明量词的辖域。例2.6指出下列谓词公式中的自由变元和约束变元,并指明量词的辖域。 • (1)x(P(x)y(Q(y)R(x,y))) • (2)x(P(x)Q(y))yR(x,y) • 解 (1)量词x的辖域是P(x)y(Q(y)R(x,y)),y的辖域是Q(y)R(x,y);x和y的所有出现都是约束出现。 • (2)量词x的辖域是P(x)Q(y),这里的x是约束变元,y是自由变元;y的辖域是R(x,y),这里的x是自由变元,y是约束变元。 2.2.2 自由变元与约束变元 2.2 谓词 公式
从上面的例子中可以看出,一个个体变元在谓词公式中既可以自由出现,又可以约束出现。但是,在一个公式里每个变元最好以一种形式出现。这就需要对谓词公式进行改名和代入。 • 所谓改名就是把一变元改为另一变元,并要求改名后的式子与原式同真假。 • 所谓代入就是把一变元代以公式(公式的值的变域应与变元的变域相同),并要求代入后的公式为原式的特例。 2.2.2 自由变元与约束变元 2.2 谓词 公式
改名的规则如下: • (1)改名只对约束变元进行,不对自由变元进行; • (2)改名必须处处进行,即对某量词约束的变元改名时,必须对原式中该变元的一切受该量词约束的约束出现改名; • (3)对受某量词约束的变元改名时新名决不能与该量词的辖域中的其它自由变元同名; • (4)改名前与改名后的约束关系保持不变。 • 总之,正确的改名结果是每个变元只以一种形式出现,最多只受一个量词约束。 2.2.2 自由变元与约束变元 2.2 谓词 公式
例2.7对公式x(P(x,y)∧yQ(y)∧M(x,y))∧(xR(x)Q(x))中的约束变元进行改名。使每个变元在公式中只以一种形式出现(即约束出现或自由出现)。例2.7对公式x(P(x,y)∧yQ(y)∧M(x,y))∧(xR(x)Q(x))中的约束变元进行改名。使每个变元在公式中只以一种形式出现(即约束出现或自由出现)。 • 解 在该公式中,将P(x,y)和M(x,y)中的约束变元x改名为z,R(x)中的x改名为S,Q(y)中的y改名为t,改名后为: • z(P(z,y)tQ(t)M(z,y))(SR(S) • Q(x))。 2.2.2 自由变元与约束变元 2.2 谓词 公式
代入的规则如下: • (1)代入只对自由变元进行; • (2)代入必须处处进行,即对某自由变元施行代入时,必须对该自由变元的一切自由出现施行代入; • (3)代入前后的约束关系保持不变; • (4)代入前先对原式改名,使原式中所有约束变元名与代入式中所有变元名互不相同,然后施行代入; • (5)对命题变元和谓词变元也可施行代入,但必须保持代入前后约束关系不变。 2.2.2 自由变元与约束变元 2.2 谓词 公式
例2.8对公式(yA(x,y)(xB(x,z)C(x,y,z)))xzC (x,y,z)中的自由变元进行代入, 使每个变元在公式中只以一种形式出现(即约束出现或自由出现)。 • 解 将该公式中的自由变元x用t代入,y用u代入,z用v代入,代入后为: • (yA(t,y)(xB(x,v)C(t,u,v))) • xzC(x,u,z)。 2.2.2 自由变元与约束变元 2.2 谓词 公式
定义2.12 设有一谓词公式α,其自由个体变元为x1,x2,…,xh;命题变元为P1,P2,…,Pk,则我们把α表示为: • α(x1,x2,…,xh;P1,P2,…,Pk) • 如果对个体域指定以D,对x1,x2,…,xh在个体域上分别指派以个体a1,a2,…,ah;对P1,P2,…,Pk分别指派以P1*,P2*,…,Pk*(其中Pi*或为0,或为1,i=1,2,…,k),则称对α作了一个个体域D上的指派,记为α(a1,a2,…,ah; P1*,P2*,…,Pk*)。如果该值为真,则该指派为α的成真指派;如果该值为假,则该指派称为α的成假指派。 2.2.3 谓词公式的分类 2.2 谓词 公式
例2.9求公式α=x(P(x)Q(x,y))R的成真指派和成假指派,其中P(x)表示“x是偶数”,Q(x,y)表示“y能整除x”,α的个体域D={3,4},R是命题变元。例2.9求公式α=x(P(x)Q(x,y))R的成真指派和成假指派,其中P(x)表示“x是偶数”,Q(x,y)表示“y能整除x”,α的个体域D={3,4},R是命题变元。 • 解 2.2.3 谓词公式的分类 2.2 谓词 公式
定义2.13 如果公式α对个体域D中任何指派均取得真值,则称α为D中的永真式;如果均取得假值,则称α为D中的永假式;如果至少有一个指派取得真值,则称α为D中的可满足式。 2.2.3 谓词公式的分类 2.2 谓词 公式
例2.10判断下列公式的类型。 • (1)xyG(x-y,x+y)(QQ) • (2)G(x-y,x+y) • (3)xy(G(x,y)G(x,y))Q • 其中x,y的个体域为整数集I,Q为命题变元, G(x,y)表示xy。 2.2.3 谓词公式的分类 2.2 谓词 公式
解(1)无论对Q指派何种命题常元,QQ的真值总为1,而在I中对任意的x,总存在y=1使x-1x+1成立,所以xyG(x-y,x+y)在I中总为真,因此xyG(x-,x+y)(QQ)对任意的指派总为真,是永真式。解(1)无论对Q指派何种命题常元,QQ的真值总为1,而在I中对任意的x,总存在y=1使x-1x+1成立,所以xyG(x-y,x+y)在I中总为真,因此xyG(x-,x+y)(QQ)对任意的指派总为真,是永真式。 2.2.3 谓词公式的分类 2.2 谓词 公式
(2)因为x-yx+y在I中的真值不确定,当指派x=1,y=1时,02,即x-yx+y取值为真;当指派x=1,y=-1时,20不成立,即x-yx+y取值为假,所以,公式G(x-y,x+y)是可满足式。 (2)因为x-yx+y在I中的真值不确定,当指派x=1,y=1时,02,即x-yx+y取值为真;当指派x=1,y=-1时,20不成立,即x-yx+y取值为假,所以,公式G(x-y,x+y)是可满足式。 • (3)无论在个体域I中对x,y指派什么个体常元,G(x,y)G(x,y)总为假,从而xy(G(x,y)G(x,y))Q总为假,所以该公式是永假式。 2.2.3 谓词公式的分类 2.2 谓词 公式
定义2.14 设α,β为任意两个谓词公式,它们有共同的个体域D,若在D中αβ为永真式,则称公式α和β在D上等值,记为αβ,称αβ为等值式。 2.3.1 等值式的基本概念 2.3 等值演算
1. 由命题公式推广的等值式 • 利用代入定理将命题演算中的等值公式推广而得到谓词演算中的等值公式。 • 例如,在命题演算中有公式:PQPQ,可推广而得:P(x)Q(x)P(x)Q(x), • xP(x)xQ(x)xP(x)xQ(x)等等。 • 利用以上方法,可得一类公式。 2.3.2 常用等值式及等值演算 2.3 等值演算
2. 关于量词与联结词的一元谓词等值式 • 1)消去量词等值式 • 设个体域为有限集D={a1,a2,…,an},则有 • (1)xA(x)A(a1)A(a2)…A(an) • (2)xA(x)A(a1)A(a2)…A(an) • 2)量词转换律 • (1)xA(x)xA(x) • (2)xA(x)xA(x) 2.3.2 常用等值式及等值演算 2.3 等值演算
3)量词辖域的收缩与扩张律(下述等值式中,变元x不在B中出现)3)量词辖域的收缩与扩张律(下述等值式中,变元x不在B中出现) • (1)x(A(x)B)xA(x)B • (2)x(A(x)B)xA(x)B • (3)x(A(x)B)xA(x)B • (4)x(BA(x))BxA(x) • (5)x(A(x)B)xA(x)B • (6)x(A(x)B)xA(x)B • (7)x(A(x)B)xA(x)B • (8)x(BA(x))BxA(x) 2.3.2 常用等值式及等值演算 2.3 等值演算
4)量词分配律 • (1)x(A(x)B(x))xA(x)xB(x) • (2)x(A(x)B(x))xA(x)xB(x) • 要特别注意的是,量词分配律中的“”和“”联结词不要记错。 2.3.2 常用等值式及等值演算 2.3 等值演算
例2.11证明x(A(x)B(x))xA(x)xB(x) • 证明 令个体域为D,设在任一指派下,左式T,则在D中存在一个个体c使得A(c)B(c)T,从而A(c)T或B(c)T,因此有xA(x)T或xB(x)T,所以xA(x)xB(x)T。 • 反之,设在任一指派下,右式T,则xA(x)T或xB(x)T,即在D中存在两个个体c,d使得A(c)T或B(d)T,从而在D中存在一个个体c或d(不妨设c)使得A(c)B(c)T,所以x(A(x)B(x))T。 • 由以上两方面知等值式成立。 2.3.2 常用等值式及等值演算 2.3 等值演算
思考 判断以下两个式子是否成立? • (1)xA(x)∧xB(x)x(A(x)∧B(x)) • (2)xA(x)∨xB(x)x(A(x)∨B(x)) 2.3.2 常用等值式及等值演算 2.3 等值演算
3. 关于二元谓词的等值式 • 在上一节我们曾指出,量词出现的次序直接关系到命题的意义,但也有例外,相同量词间的次序是可以任意调动的,不同量词间的次序则不能随意调动。因此有下面两个等值式成立。 • (1)xy(A(x,y))yx(A(x,y)) • (2)xy(A(x,y))yx(A(x,y)) 2.3.2 常用等值式及等值演算 2.3 等值演算