谓词逻辑
谓词引入
命题逻辑的局限性
- 有些简单句子从语义上可以推理,但无法通过变元和公式准确描述
- 又如含变量的语句(数学式子等)也无法用命题变元描述
👉为了研究简单命题句子内部的逻辑关系,我们需要对简单命题进行分解,利用个体词、谓词和量词来描述它们,并研究个体与总体的内在联系和数量关系,这就是谓词逻辑或一阶逻辑。
谓词逻辑&命题逻辑
我们如何来理解所谓的“谓词逻辑”和“命题逻辑”?
- 其实,所谓的谓词逻辑和命题逻辑都是一个逻辑系统,或者应该说是形式系统。
- 其中,应当包括基础单元+公式+由定理构成的证明系统。
🙂理解形式系统就能对上述提出的问题有了答案了。下附命题逻辑和谓词逻辑的Wiki百科链接及部分摘要,可以参考深入理解。
形式系统
- 链接:形式系统-Wiki
- 摘要:
在逻辑与数学中,一个形式系统(英语:Formal system)是由两个部分组成的,一个形式语言加上一个推理规则或转换规则的集合。大卫·希尔伯特在1921年推动以形式系统来描述数学知识。 一个形式系统也许是纯粹抽象地制定出来,只是为了研究其自身。另一方面,也可能是为了描述真实现象或客观现实的领域而设计的。命题逻辑是最简单的形式系统。
命题逻辑的Wiki解释
- 链接:命题逻辑-Wiki
- 系统内容:
- 命题(原子命题+复合命题)
- 命题之间的关系
- 基于它们的论证的构建
- 部分摘要:
命题逻辑是逻辑学的一个分支。它也称为命题演算、句子演算、句子逻辑,有时也称为零阶逻辑。它涉及命题(可以是真或假)和命题之间的关系,包括基于它们的论证的构建。复合命题是通过逻辑连接词连接命题而形成的。不包含逻辑连接词的命题称为原子命题。 与一阶逻辑不同,命题逻辑不处理非逻辑对象、以及关于它们的谓词或量词。然而,命题逻辑的所有机制都包含在一阶逻辑和高阶逻辑中。从这个意义上说,命题逻辑是一阶逻辑和高阶逻辑的基础。
在逻辑和数学里, 命题逻辑是一个形式系统, 有可以由以逻辑运算符结合原子命题来构成代表“命题”的公式,以及允许某些公式建构成“定理”的一套形式“证明规则”。
谓词逻辑的Wiki解释
- 链接:谓词逻辑/一阶逻辑-Wiki
- 部分摘要:
一阶逻辑是使用于数学、哲学、语言学及计算机科学中的一种形式系统,也可以称为:一阶断言演算、低端断言演算、量化理论或谓词逻辑。一阶逻辑和命题逻辑的不同之处在于,一阶逻辑包含量词。
高阶逻辑和一阶逻辑不同之处在于,高阶逻辑的断言符号可以有断言符号或函数符号当做引数,且容许断言量词或函数量词。在一阶逻辑的语义中,断言被解释为关系。而高阶逻辑的语义里,断言则会被解释为集合的集合。
在通常的语义下,一阶逻辑是可靠(所有可证的叙述皆为真)且完备(所有为真的叙述皆可证)的。虽然一阶逻辑的逻辑归结只是半可判定性的,但还是有许多用于一阶逻辑上的自动定理证明。一阶逻辑也符合一些使其能通过证明论分析的元逻辑定理,如勒文海姆–斯科伦定理及紧致性定理。
个体词和谓词
简单命题分解
- 命题是具有真假意义的陈述句,从语法上分析,一个陈述句由主语和谓语两部分组成。
个体词和谓词
- 在原子命题中,可以独立存在的客体(句子中的主语、宾语等),称为个体词。而用以刻画客体的性质(是xxx)或客体之间的关系(不等或等量关系等)即是谓词。
个体词
- 个体词可分为两种:个体常量和个体变量,均在个体域内取值。
- 个体常量:表示具体或特定的个体词。一般用带或不带下标的小写英文字母 a , b , c , . . . , a 1 , b 1 , c 1 , . . . . a,b,c,...,a_1,b_1,c_1,.... a,b,c,...,a1,b1,c1,....等表示。
- 个体变量:表示抽象的或泛指的个体词。一般用带或不带下标的小写英文字母 x , y , z , . . . , x 1 , y 1 , z 1 , . . . x,y,z,...,x_1,y_1,z_1,... x,y,z,...,x1,y1,z1,...等表示。
- 个体词的取值范围称为个体域(或论域),常用D表示。
- 宇宙间的所有个体域聚集在一起所构成的个体域称为全总个体域。若无特别说明,均使用全总个体域。
谓词
- 设 D D D为非空的个体域,定义在 D n D^n Dn(表示 n n n个个体都在个体域 D D D上取值)上取值于{0,1}上的 n n n元函数,称为 n n n元命题函数或 n n n元谓词,记为 P ( x 1 , x 2 , . . . , x n ) P(x_1,x_2,...,x_n) P(x1,x2,...,xn)。其中,个体变量 x 1 , x 2 , . . . , x n ∈ D x_1,x_2,...,x_n \in D x1,x2,...,xn∈D 。
- 谓词均使用大写英文字母 P , Q , R , . . . , F , G , H , . . . P,Q,R,...,F,G,H,... P,Q,R,...,F,G,H,...来表示。
- 谓词分为两种:
- 谓词常量:表示具体性质或关系的谓词。
- 比如:关系 P P P表示 x = y + 3 x=y+3 x=y+3。
- 谓词变量:表示抽象的或泛指的性质或关系的谓词。
- 比如: x x x和 y y y之间存在关系 L L L。
- 谓词常量:表示具体性质或关系的谓词。
🙂说明:
- 谓词中个体词的顺序十分重要,不能随意变更。
- 就像往函数里面传参数不能瞎填一样。
- 一元谓词用以描述某一个个体的某种特性(性质类),而 n n n元谓词( n ≥ 2 n \geq 2 n≥2)则用以描述 n n n个个体词之间的关系。
- 谓词 P ( x 1 , x 2 , . . . , x n ) P(x_1,x_2,...,x_n) P(x1,x2,...,xn)包含了个体变量,因而本身并不是命题(对于变量无法判断真值结果),只有用谓词常量取代 P P P,用个体常量取代 P P P,用个体常量取代 x 1 , x 2 , . . . , x n x_1,x_2,...,x_n x1,x2,...,xn后才会成为命题。
- 一般将没有任何个体变量的谓词称为0元谓词,如
F
(
a
)
,
G
(
a
,
b
)
,
H
(
a
1
,
a
2
,
.
.
.
,
a
n
)
F(a),G(a,b),H(a_1,a_2,...,a_n)
F(a),G(a,b),H(a1,a2,...,an)等。当
F
,
G
,
H
F,G,H
F,G,H为谓词常量时,0元谓词就成为了命题。(谓词看字面义是词,是noun属性,实际上是函数的意思)
- 此时,命题逻辑中的所有命题都可以表示成为0元谓词。
复合命题的谓词符号化
例题
- 小明爷爷不多管闲事,所以他活了103岁。
- 设 G ( x ) G(x) G(x): x x x 不多管闲事; F ( x ) F(x) F(x): x x x活了103岁; a a a:小明爷爷
- 则该命题符号化为: G ( a ) → F ( a ) G(a)\to F(a) G(a)→F(a)。
量词引入
引入
- 对于有些命题,谓词和个体词不能够准确描述。
- 含量词的表述里,名词是个体域而非个体词。
量词
定义
- 全称量词( ∀ x \forall x ∀x):所有的 x x x;任意的 x x x;一切的 x x x;每一个 x x x;…
- 存在量词( ∃ x \exists x ∃x):有些 x x x;至少有一个 x x x;某一些 x x x;存在 x x x;…
- 其中的 x x x称为作用变量。
- 一般将其量词加在其谓词之前,记为 ( ∀ x ) F ( x ) , ( ∃ x ) F ( x ) (\forall x)F(x),(\exists x)F(x) (∀x)F(x),(∃x)F(x)。
- 此时,
F
(
x
)
F(x)
F(x)称为全称量词和存在量词的辖域。
- 量词的管辖领域
示例
- 每一个大学生都会说英语:
- P ( x ) P(x) P(x): x x x 会说英语。
- ( ∀ x ) P ( x ) , x ∈ { 大学生 } (\forall x) P(x), x\in \{大学生\} (∀x)P(x),x∈{大学生}
💭但是对于复合命题而言,上面特别标注出个体域这种方式多有不便。
- 对于复合命题,如果有多个个体域,那就要一一注明
- 于是就引入了下述表达方式
更准确的表达
核心逻辑:
- 将原先的个体域变成谓词表达
- 比如:老虎 → \to → x x x 是老虎
举例:
- 有一些人登上过月球;
- H ( x ) H(x) H(x): x x x是人, R ( x ) R(x) R(x): x x x登上过月球
- ( ∃ ) ( H ( x ) ∧ R ( x ) ) (\exists) (H(x)\land R(x)) (∃)(H(x)∧R(x))
- 所有的老虎都要吃人;
- T ( x ) T(x) T(x): x x x是老虎, P ( x ) P(x) P(x): x x x要吃人
- ( ∀ x ) ( T ( x ) → P ( x ) ) (\forall x)(T(x)\to P(x)) (∀x)(T(x)→P(x))
谓词逻辑符号化的两条规则:
- 统一个体域为全总个体域,而对每一个句子中个体变量的变化范围用一元特性谓词刻画之。
- 特性谓词:限定客体变元变化范围的谓词
- 大多数情况下采用全总个体域可以简化表达,但如果能够用特定个体域表述且更方便时,也没必要死守规矩
- 这种特性谓词在加入到命题函数中时必定遵循如下原则:
- 对于全称量词:刻画其对应个体域的特性谓词作为蕴含式之前件加入
- 对于存在量词:刻画其对应个体域的特性谓词作为合取式之合取项加入
量词真值确定
- 首先,量词顺序不能随意更换(在表述中是有一定逻辑顺序的,具体情况具体分析,例子可以往下看)
- 其次,对于全称量词:
- 全1才出1,有0则为0
- 对于存在量词:
- 有1即出1,全0才出0
我们发现,对个体域属于有限集合时, ( ∀ x ) G ( x ) (\forall x)G(x) (∀x)G(x)和 ( ∃ x ) G ( x ) (\exists x)G(x) (∃x)G(x)的真值可以用与之等价的命题公式来进行表示:
- ( ∀ x ) G ( x ) = G ( x 0 ) ∧ G ( x 1 ) ∧ . . . ∧ G ( x n ) (\forall x)G(x)=G(x_0)\land G(x_1)\land ... \land G(x_n) (∀x)G(x)=G(x0)∧G(x1)∧...∧G(xn)
- ( ∃ x ) G ( x ) = G ( x 0 ) ∨ G ( x 1 ) ∨ . . . G ( x n ) (\exists x)G(x) = G(x_0)\lor G(x_1)\lor ... G(x_n) (∃x)G(x)=G(x0)∨G(x1)∨...G(xn)
谓词符号化
例子
-
解释
- 否定有人登上木星;任意一个人都没有登上木星
- 不是 任意一个在美国留学的学生都是亚洲人;存在 有人在美国留学但不是亚洲人
- 尽管……但:合取
- 尽管,意味着满足条件A;但,意味着满足条件B。AB都满足那就是合取
- (存在,有人,很聪明),同时,(不是,所有人都聪明)
-
解释
- 中译中:所有的乌鸦都是一样黑
→
\to
→ 任意两只乌鸦都是一般黑
- 任意两只乌鸦,都是一般黑
- 不存在两只乌鸦不是一般黑
- (对于任意的)(实数,(都存在另一个实数,比它大))
- 中译中:所有的乌鸦都是一样黑
→
\to
→ 任意两只乌鸦都是一般黑
💭量词对变元的约束往往与量词的次序有关。不同的量词次序,可以产生不同的真值。因此当多个量词同时出现时,不能随意颠倒它们的顺序,否则会改变原有的含义。
- 解释
- 没有大鸟以蜜为生:不存在一只鸟,以蜜为生
谓词合式公式
四类符号
- 对于个体词:
- 常量符号:
- 指所属个体域 D D D中的某个元素。
- 🤔就是确切已知的元素
- 用带或不带下标的小写英文字母 a , b , c , . . . , a 1 , b 1 , c 1 , . . . a,b,c,...,a_1,b_1,c_1,... a,b,c,...,a1,b1,c1,...来表示
- 变量符号:
- 指所属个体域 D D D中的任意元素。
- 🤔变量:代数,盛放元素的容器
- 用带或不带下标的小写英文字母 f , g , h , . . . , f 1 , g 1 , h 1 , . . . f,g,h,...,f_1,g_1,h_1,... f,g,h,...,f1,g1,h1,...来表示
- 常量符号:
- 对于个体的转换:
- 函数符号:
- n n n元函数符号 f ( x 1 , x 2 , . . . , x n ) f(x_1,x_2,...,x_n) f(x1,x2,...,xn)可以是所属个体域集合 D n → D D^n \to D Dn→D的任意一个函数。
- 🤔不管扔进函数几个个体,出来的只能是一个个体。加工出厂的产品只能是个体
- 用带或不带下标的小写英文字母 f , g , h , . . . , f 1 , g 1 , h 1 , . . . f,g,h,...,f_1,g_1,h_1,... f,g,h,...,f1,g1,h1,... 来表示
- 函数符号:
- 谓词符号:
-
n
n
n元谓词符号
P
(
x
1
,
x
2
,
.
.
.
,
x
n
)
P(x_1,x_2,...,x_n)
P(x1,x2,...,xn)可以是所属个体域集合
D
n
→
{
0
,
1
}
D^n \to \{0,1\}
Dn→{0,1}的任意一个谓词
- [[离散数学#谓词|谓词]]:命题函数。和[[离散数学#真值函数/命题公式|真值函数/命题公式]]的区别是:
- 谓词:描述属性(一元),是什么;描述关系(多元)
- 命题公式就是解释后能得到真假的陈述句
- 🥲建议对比定义多看看
- [[离散数学#谓词|谓词]]:命题函数。和[[离散数学#真值函数/命题公式|真值函数/命题公式]]的区别是:
- 用带或不带下标的大写英文字母
P
,
Q
,
R
,
.
.
.
,
P
1
,
Q
1
,
R
1
,
.
.
.
P,Q,R,...,P_1,Q_1,R_1,...
P,Q,R,...,P1,Q1,R1,...来表示
👉为何需要函数符号?
例如:小明的母亲是教授。
-
n
n
n元谓词符号
P
(
x
1
,
x
2
,
.
.
.
,
x
n
)
P(x_1,x_2,...,x_n)
P(x1,x2,...,xn)可以是所属个体域集合
D
n
→
{
0
,
1
}
D^n \to \{0,1\}
Dn→{0,1}的任意一个谓词
- 若令
f
(
x
)
f(x)
f(x):
x
x
x的母亲;
P
(
x
)
P(x)
P(x):
x
x
x是教授;
a
a
a:小明
- 则该命题符号化为 P ( f ( a ) ) P(f(a)) P(f(a))
- 若令
F
(
x
,
y
)
F(x,y)
F(x,y):
x
x
x是
y
y
y的母亲;
P
(
x
)
P(x)
P(x):
x
x
x是教授;
a
a
a:小明
- 则该命题符号化为
(
∀
x
)
(
F
(
x
,
a
)
→
P
(
x
)
)
(\forall x)(F(x,a)\to P(x))
(∀x)(F(x,a)→P(x))
- 任意一个个体,只要这个个体是小明的母亲,就是教授
- 则该命题符号化为
(
∀
x
)
(
F
(
x
,
a
)
→
P
(
x
)
)
(\forall x)(F(x,a)\to P(x))
(∀x)(F(x,a)→P(x))
🙂利用函数符号就可以方便表示个体词之间的转换关系。
项
项的定义
谓词逻辑中的项(Term)被递归地定义为:
- 任意的常量符号或任意的变量符号是项;(基本元是项
- 若 f ( x 1 , x 2 , . . . , x n ) f(x_1,x_2,...,x_n) f(x1,x2,...,xn)是 n n n元函数符号, t 1 , t 2 , . . . , t n t_1,t_2,...,t_n t1,t2,...,tn是项,则 f ( t 1 , t 2 , . . . , t n ) f(t_1,t_2,...,t_n) f(t1,t2,...,tn)是项;(递归或者说递推,递推更好理解吧
- 仅由有限次使用以上两个规则产生的符号串才是项。
(避免堆栈溢出
合式公式
回顾命题公式
概念对比理解:
离散数学笔记(二)|命题逻辑
原子公式
- 若 P ( x 1 , x 2 , . . . , x n ) P(x_1,x_2,...,x_n) P(x1,x2,...,xn)是 n n n元谓词, t 1 , t 2 , . . . , t n t_1,t_2,...,t_n t1,t2,...,tn是项,则称 P ( t 1 , t 2 , . . . , t n ) P(t_1,t_2,...,t_n) P(t1,t2,...,tn)为原子谓词公式,简称原子公式。
- 项作为参数,调用一个函数
合式公式
- 满足下列条件的表达式,称为合式公式(well-formed formula/wff),简称公式。
- 原子公式是合式公式;(基本单位,最小单位
- 若 G , H G,H G,H是合式公式,则 ( ¬ G ) , ( ¬ H ) , ( G ∨ H ) , ( G ∧ H ) , ( G → H ) , ( G ↔ H ) (\neg G),(\neg H),(G\lor H),(G\land H),(G\to H),(G\leftrightarrow H) (¬G),(¬H),(G∨H),(G∧H),(G→H),(G↔H) 也是合式公式;(利用联结词合起来
- 若 G G G是合式公式, x x x是个体变量,则 ( ∀ x ) G 、 ( ∃ x ) G (\forall x)G、(\exists x)G (∀x)G、(∃x)G也是合式公式;(添加量词还是合式公式
- 由有限次使用以上三个规则产生的表达式才是合式公式
合式公式的括号省略
一句话概括:合理准确无歧义
- 公式的最外层括号可以省略;
- 量词后面的括号省略方式为:一个量词的辖域中仅出现一个原子公式,则此辖域外层括号可省略,否则不能省略;
- 一个个体词只能受一个量词的约束,否则没有意义
自由变元和约束变元
合式公式何时成为命题?
- 所有变元用个体常量赋值或用量词约束时才成为命题。
自由变元与约束变元的定义
具体定义
- 给定一个合式公式 G G G,若变元 x x x出现在使用变元的量词的辖域之内,则称变元 x x x的出现为约束出现,此时的变元 x x x称为约束变元。
- 若 x x x的出现不是约束出现,则称它为自由出现,此时的变元 x x x为自由变元。
🤔:
- 有辖域,被管束
- 无辖域,真自由
量词辖域的确定
- 若量词后有括号,则括号内的子公式就是该量词的辖域;
- 若量词后无括号,则与量词邻接的子公式为该量词的辖域。
变元改名规则
- 有些变元虽然同名,但是一个是自由变元一个是约束变元,这样这两个变元也是不一样的。
- 变元的改名遵循以下两条规则。(但是事实上就是一个核心关键:不更改原义)
- 规则1:约束变元的改名规则
- 将量词中的变元以及该量词辖域中此变量之所有约束出现都用新的个体变元替换;
- 新的变元一定要有别于改名辖域中的所有其他变量
- 规则2:自由变元的代入规则
- 将公式中出现该自由变元的每一处都用新的个体变元替换
- 新的变元不允许在原公式中以任何约束形式出现。也可以用个体常量代入
- 😆:
- 不同辖域的变元即使同名也不是同一个变元
- 这就像不同名字空间(namespace)的变量名字可以重复一样
- 规则1:约束变元的改名规则
闭式
闭式的定义
- 设
G
G
G是任意一个公式,若
G
G
G中无自由出现的个体变元,则称
G
G
G为封闭的合式公式,简称闭式。
💡显然,闭式是一个命题,不是闭式就不是命题。
公式解释和分类
公式的解释
谓词逻辑中公式 G G G的每一个解释 I I I由如下四部分组成:
- 非空的个体域集合 D D D
- G G G中的每个常量符号,指定为 D D D中的某个特定元素
- G G G中的每个 n n n元函数符号,指定为 D n D^n Dn到 D D D中的某个特定的函数
- G G G中的每个 n n n元谓词符号,指定为 D n D^n Dn到 { 0 , 1 } \{0,1\} {0,1}中的某个特定的谓词
👉规定:公式中无自由变元(闭式),或将自由变元看成是常量符号。
- 公式要有所解释,就不应该有自由变元。
公式的分类
谓词公式不像命题可以列出真值表,但有些公式可以推断出逻辑真值。
- 如果公式 G G G在它所有的解释下都取值为真,则称 G G G为有效公式(valid formula)。
- 如果公式 G G G在它所有的解释下都取值为假,则称 G G G为矛盾公式(contradictory formula)。
- 如果至少有一种解释使得公式 G G G取值为真,则称 G G G为可满足公式(satisfiable formula)。
公式的判定问题
👉是否每个公式都能判断其类别呢?
- 在命题逻辑的学习中,我们知道所谓的可判定性就是指有一个通用的手段完成对任意公式的判定。比如说在命题逻辑系统中,我们可以采用真值表法实现对任意命题公式的判定。(命题变元是有限的,可列出所有可能性)
- 一般意义上,谓词逻辑是不可判定的;
- 尽管谓词逻辑中合式公式的构造依然是有限步,但个体域可能是无穷的。
- 以下说明可判定的情况,可倒推理解为什么说一般认为谓词逻辑不可判定。
- 但是有些情况下可判定:
- 个体域有穷时的谓词公式是可判定的;
- 可以枚举每一种解释
- 只含有一元谓词变项的公式是可判定的;
- 结构简单,便于判定
- 如以下形式的公式,若
P
P
P中无量词和其他自由变元时,可以判定
-
(
∀
x
1
)
(
∀
x
2
)
.
.
.
(
∀
x
n
)
P
(
x
1
,
x
2
,
.
.
.
,
x
n
)
(\forall x_1)(\forall x_2)...(\forall x_n)P(x_1,x_2,...,x_n)
(∀x1)(∀x2)...(∀xn)P(x1,x2,...,xn)(全称量化公式)
- 解释:这个公式表示对任意变量的组合都要满足谓词 P P P
- 判定方法:对于有限个体域而言只要穷举即可完成判定,而对于无限域来说一般需要数学证明。
-
(
∃
x
1
)
(
∃
x
2
)
.
.
.
(
∃
x
n
)
P
(
x
1
,
x
2
,
.
.
.
,
x
n
)
(\exists x_1)(\exists x_2)...(\exists x_n)P(x_1,x_2,...,x_n)
(∃x1)(∃x2)...(∃xn)P(x1,x2,...,xn)(存在量化公式)
- 解释:只要存在一组可能组合满足谓词 P P P即可
- 判定方法:找到一组成立的可能组合;或者证明为假
-
(
∀
x
1
)
(
∀
x
2
)
.
.
.
(
∀
x
n
)
P
(
x
1
,
x
2
,
.
.
.
,
x
n
)
(\forall x_1)(\forall x_2)...(\forall x_n)P(x_1,x_2,...,x_n)
(∀x1)(∀x2)...(∀xn)P(x1,x2,...,xn)(全称量化公式)
- 个体域有穷时的谓词公式是可判定的;
🤔
- 其实个体域有穷应当是最关键的一点,对于有限域完全可以使用穷举法判定
- 对于无限域来说,就会比较麻烦,但是结构简单的情况下,证明会相对容易一点
- 具体情况具体分析,毕竟无论什么证明都不应该是死板地依靠一个框架去解决问题。
公式的等价关系
等价关系
等价
- 如果公式 G ↔ H G\leftrightarrow H G↔H是有效公式,则公式 G , H G,H G,H称为等价的,记为 G = H G=H G=H。
代入实例
- 设 G ( P 1 , P 2 , . . . , P n ) G(P_1,P_2,...,P_n) G(P1,P2,...,Pn)是命题演算中的命题公式, P 1 , P 2 , . . . , P n P_1,P_2,...,P_n P1,P2,...,Pn是出现在 G G G中的命题变元,当用任意的谓词公式 G i ( 1 ≤ i ≤ n ) G_i(1\leq i \leq n) Gi(1≤i≤n)分别代入 P i P_i Pi后,得到的新谓词公式 G ( G i , G 2 , . . . , G n ) G(G_i,G_2,...,G_n) G(Gi,G2,...,Gn)称为原公式的代入实例。
定理
- 永真公式的任意一个代入实例必为有效公式。
👉命题演算中的基本等价公式 E 1 − E 24 E_1-E_{24} E1−E24在谓词演算中仍然成立。
谓词演算中的基本等价公式
- 由于谓词公式相比于命题于公式还引入了个体词,于是就有了谓词公式特有的等价公式:👇
假设 G ( x ) , H ( x ) G(x),H(x) G(x),H(x)是只含自由变元 x x x的公式, S S S是不含 x x x的公式,则在全总个体域中,有:
- 改名规则
- E 25 : ( ∃ x ) G ( x ) = ( ∃ y ) G ( y ) E_{25}:(\exists x)G(x) = (\exists y)G(y) E25:(∃x)G(x)=(∃y)G(y)
- E 26 : ( ∀ x ) G ( x ) = ( ∀ y ) G ( y ) E_{26}:(\forall x)G(x) = (\forall y)G(y) E26:(∀x)G(x)=(∀y)G(y)
- 量词转换律/量词否定等价式
- E 27 : ¬ ( ∃ x ) G ( x ) = ( ∀ x ) ¬ G ( x ) E_{27}:\neg (\exists x)G(x)=(\forall x)\neg G(x) E27:¬(∃x)G(x)=(∀x)¬G(x)
- E 28 : ¬ ( ∀ x ) G ( x ) = ( ∃ x ) ¬ G ( x ) E_{28}:\neg (\forall x)G(x) = (\exists x)\neg G(x) E28:¬(∀x)G(x)=(∃x)¬G(x)
- 量词辖域的扩张与收缩律
- E 29 : ( ∀ x ) ( G ( x ) ∨ S ) = ( ∀ x ) G ( x ) ∨ S E_{29}:(\forall x)(G(x)\lor S)=(\forall x)G(x)\lor S E29:(∀x)(G(x)∨S)=(∀x)G(x)∨S
- E 30 : ( ∀ x ) ( G ( x ) ∧ S ) = ( ∀ x ) G ( x ) ∧ S E_{30}:(\forall x)(G(x)\land S)=(\forall x)G(x)\land S E30:(∀x)(G(x)∧S)=(∀x)G(x)∧S
- E 31 : ( ∃ x ) ( G ( x ) ∨ S ) = ( ∃ x ) G ( x ) ∨ S E_{31}:(\exists x)(G(x)\lor S)=(\exists x)G(x)\lor S E31:(∃x)(G(x)∨S)=(∃x)G(x)∨S
- E 32 : ( ∃ x ) ( G ( x ) ∧ S ) = ( ∃ x ) G ( x ) ∧ S E_{32}:(\exists x)(G(x)\land S) = (\exists x)G(x)\land S E32:(∃x)(G(x)∧S)=(∃x)G(x)∧S
- 量词分配律
-
E
33
:
(
∀
x
)
(
G
(
x
)
∧
H
(
x
)
)
=
(
∀
x
)
G
(
x
)
∧
(
∀
x
)
H
(
x
)
E_{33}:(\forall x)(G(x)\land H(x))=(\forall x)G(x)\land (\forall x)H(x)
E33:(∀x)(G(x)∧H(x))=(∀x)G(x)∧(∀x)H(x)
- 全称量词对合取有分配律
- 任意 x x x, G , H G,H G,H都成立 ⇔ \Leftrightarrow ⇔任意 x x x, G G G成立, H H H也成立
-
E
34
:
(
∃
x
)
(
G
(
x
)
∨
H
(
x
)
)
=
(
∃
x
)
G
(
x
)
∨
(
∃
x
)
H
(
x
)
E_{34}:(\exists x)(G(x)\lor H(x))=(\exists x)G(x)\lor (\exists x)H(x)
E34:(∃x)(G(x)∨H(x))=(∃x)G(x)∨(∃x)H(x)
- 存在量词对析取有分配律
- 存在 x x x, G G G成立或 H H H成立 ⇔ \Leftrightarrow ⇔存在 x x x, G G G成立 或 存在 x x x, H H H成立
-
E
33
:
(
∀
x
)
(
G
(
x
)
∧
H
(
x
)
)
=
(
∀
x
)
G
(
x
)
∧
(
∀
x
)
H
(
x
)
E_{33}:(\forall x)(G(x)\land H(x))=(\forall x)G(x)\land (\forall x)H(x)
E33:(∀x)(G(x)∧H(x))=(∀x)G(x)∧(∀x)H(x)
- (改名合并)
-
E
35
:
(
∀
x
)
G
(
x
)
∨
(
∀
x
)
H
(
x
)
=
(
∀
x
)
(
∀
y
)
(
G
(
x
)
∧
H
(
y
)
)
E_{35}:(\forall x)G(x)\lor (\forall x)H(x) = (\forall x)(\forall y)(G(x)\land H(y))
E35:(∀x)G(x)∨(∀x)H(x)=(∀x)(∀y)(G(x)∧H(y))
- 要对全称量词使用析取则必须改名
-
E
36
:
(
∃
x
)
G
(
x
)
∧
(
∃
x
)
H
(
x
)
=
(
∃
x
)
(
∃
y
)
(
G
(
x
)
∧
H
(
y
)
)
E_{36}:(\exists x)G(x)\land (\exists x)H(x) = (\exists x)(\exists y)(G(x)\land H(y))
E36:(∃x)G(x)∧(∃x)H(x)=(∃x)(∃y)(G(x)∧H(y))
- 要对存在量词使用合取则必须改名
-
E
35
:
(
∀
x
)
G
(
x
)
∨
(
∀
x
)
H
(
x
)
=
(
∀
x
)
(
∀
y
)
(
G
(
x
)
∧
H
(
y
)
)
E_{35}:(\forall x)G(x)\lor (\forall x)H(x) = (\forall x)(\forall y)(G(x)\land H(y))
E35:(∀x)G(x)∨(∀x)H(x)=(∀x)(∀y)(G(x)∧H(y))
- 对于多个量词的公式,设
G
(
x
,
y
)
G(x,y)
G(x,y)是含有自由变元
x
,
y
x,y
x,y的谓词公式,则有次序可交换
- E 37 : ( ∀ x ) ( ∀ y ) G ( x , y ) = ( ∀ y ) ( ∀ x ) G ( x , y ) E_{37}:(\forall x)(\forall y)G(x,y)=(\forall y)(\forall x)G(x,y) E37:(∀x)(∀y)G(x,y)=(∀y)(∀x)G(x,y)
- E 38 : ( ∃ x ) ( ∃ y ) G ( x , y ) = ( ∃ y ) ( ∃ x ) G ( x , y ) E_{38}:(\exists x)(\exists y)G(x,y)=(\exists y)(\exists x)G(x,y) E38:(∃x)(∃y)G(x,y)=(∃y)(∃x)G(x,y)
前束范式
谓词逻辑系统中的范式有两种:
- 前束范式:与原公式等价
- SKOLEM范式:不与原公式等价
前束范式的定义
回顾范式
- 在命题逻辑里,每一公式都有与之等值的范式,范式是一种统一的表达形式。
- 当研究一个公式的特点时(如永真、永假),范式起着重要作用。(合取全1永真,析取全0永假)
- 谓词逻辑的公式也有范式,其中前束范式与原公式等值,其他范式与原公式只有较弱的关系。
前束范式的定义
- 如果公式 G G G中的一切量词都位于该公式的最前端(不含否定词)且这些量词的辖域都延伸到公式的末端,则称公式 G G G是一个前束范式。
- 标准形式如下: ( Q 1 x 1 ) ( Q 2 x 2 ) . . . ( Q n x n ) M ( x 1 , x 2 , . . . , x n ) (Q_1x_1)(Q_2x_2)...(Q_nx_n)M(x_1,x_2,...,x_n) (Q1x1)(Q2x2)...(Qnxn)M(x1,x2,...,xn)
- 其中 Q i Q_i Qi为量词 ∀ \forall ∀或 ∃ \exists ∃, ( i = 1 , . . . , n ) (i=1,...,n) (i=1,...,n)
- M M M称作公式 G G G的母式(基式),不含有量词
🙂所谓前束范式就是在前面进行约束的意思啦。
前束范式的求解步骤
- 消去公式中的联结词:
→
\to
→、
↔
\leftrightarrow
↔
- G → H = ¬ G ∨ H G\to H = \neg G \lor H G→H=¬G∨H
- G ↔ H = ( ¬ G ∨ H ) ∧ ( ¬ H ∨ G ) G\leftrightarrow H = (\neg G \lor H)\land (\neg H \lor G) G↔H=(¬G∨H)∧(¬H∨G)
- 反复运用量词转换律,德摩根律和双重否定律,直到将所有的”
¬
\neg
¬“从量子前端都内移到原子谓词公式的前端
- 量词转换律:
- ¬ ( ∃ x ) G ( x ) = ( ∀ x ) ¬ G ( x ) \neg(\exists x)G(x)=(\forall x)\neg G(x) ¬(∃x)G(x)=(∀x)¬G(x)
- ¬ ( ∀ x ) G ( x ) = ( ∃ ) ¬ G ( x ) \neg(\forall x)G(x)=(\exists)\neg G(x) ¬(∀x)G(x)=(∃)¬G(x)
- 量词转换律:
- 使用谓词的等价公式将所有的量词提到公式的最前端并保证其辖域直到公式的末端
- 改名规则:
- ( ∃ x ) G ( x ) = ( ∃ y ) G ( y ) (\exists x)G(x)=(\exists y)G(y) (∃x)G(x)=(∃y)G(y)
- ( ∀ x ) G ( x ) = ( ∀ y ) G ( y ) (\forall x)G(x)=(\forall y)G(y) (∀x)G(x)=(∀y)G(y)
- 量词分配律:
- ( ∀ x ) ( G ( x ) ∧ H ( x ) ) = ( ∀ x ) G ( x ) ∧ ( ∀ x ) H ( x ) (\forall x)(G(x)\land H(x))=(\forall x)G(x)\land (\forall x)H(x) (∀x)(G(x)∧H(x))=(∀x)G(x)∧(∀x)H(x)
- ( ∃ x ) ( G ( x ) ∨ H ( x ) ) = ( ∃ x ) G ( x ) ∨ ( ∃ x ) H ( x ) (\exists x)(G(x)\lor H(x)) = (\exists x)G(x)\lor (\exists x)H(x) (∃x)(G(x)∨H(x))=(∃x)G(x)∨(∃x)H(x)
- ( ∀ x ) G ( x ) ∨ ( ∀ x ) H ( x ) = ( ∀ x ) ( ∀ y ) ( G ( x ) ∨ H ( y ) ) (\forall x)G(x)\lor (\forall x)H(x)=(\forall x)(\forall y)(G(x)\lor H(y)) (∀x)G(x)∨(∀x)H(x)=(∀x)(∀y)(G(x)∨H(y))
- ( ∃ x ) G ( x ) ∧ ( ∃ x ) H ( x ) = ( ∃ x ) ( ∃ y ) ( G ( x ) ∧ H ( y ) ) (\exists x)G(x)\land (\exists x)H(x) = (\exists x)(\exists y)(G(x)\land H(y)) (∃x)G(x)∧(∃x)H(x)=(∃x)(∃y)(G(x)∧H(y))
- 量词辖域的扩张与收缩律(主要在于扩张)
- ( ∀ x ) ( G ( x ) ∨ S ) = ( ∀ x ) G ( x ) ∨ S (\forall x)(G(x)\lor S)= (\forall x)G(x)\lor S (∀x)(G(x)∨S)=(∀x)G(x)∨S
- ( ∀ x ) ( G ( x ) ∧ S ) = ( ∀ x ) G ( x ) ∧ S (\forall x)(G(x)\land S)=(\forall x)G(x)\land S (∀x)(G(x)∧S)=(∀x)G(x)∧S
- ( ∃ x ) ( G ( x ) ∨ S ) = ( ∃ x ) G ( x ) ∨ S (\exists x)(G(x)\lor S)=(\exists x)G(x)\lor S (∃x)(G(x)∨S)=(∃x)G(x)∨S
- ( ∃ x ) ( G ( x ) ∧ S ) = ( ∃ x ) G ( x ) ∧ S (\exists x)(G(x)\land S)=(\exists x)G(x)\land S (∃x)(G(x)∧S)=(∃x)G(x)∧S
- 改名规则:
推理形式和推理规则
推理形式
定义
- 设 G 1 , G 2 , . . . , G n , H G_1,G_2,...,G_n,H G1,G2,...,Gn,H是公式,称 H H H是 G 1 , G 2 , . . . , G n G_1,G_2,...,G_n G1,G2,...,Gn的逻辑结果(或称 G 1 , G 2 , . . . G n G_1,G_2,...G_n G1,G2,...Gn共同蕴涵 H H H)
- 当且仅当对任意解释 I I I,若 I I I同时满足 G 1 , G 2 , . . . , G n G_1,G_2,...,G_n G1,G2,...,Gn,则 I I I满足 H H H
- 记为 G 1 , G 2 , . . . , G n ⇒ H G_1,G_2,...,G_n \Rightarrow H G1,G2,...,Gn⇒H
- 此时称 G 1 , G 2 , . . . , G n ⇒ H G_1,G_2,...,G_n\Rightarrow H G1,G2,...,Gn⇒H 是有效的,否则称为无效的。
- G 1 , G 2 , . . . , G n G_1,G_2,...,G_n G1,G2,...,Gn称为一组前提(premise),有时用集合 Γ \Gamma Γ来表示,记 Γ = { G 1 , G 2 , . . . , G n } \Gamma = \{G_1, G_2,...,G_n\} Γ={G1,G2,...,Gn}
- H H H 称为结论(conclusion),又称 H H H是前提集合 Γ \Gamma Γ的逻辑结果,记为 Γ ⇒ H \Gamma \Rightarrow H Γ⇒H
判定定理
- 设 G 1 , G 2 , . . . , G n , H G_1,G_2,...,G_n,H G1,G2,...,Gn,H是公式,公式 H H H是前提集合 Γ = { G 1 , G 2 , . . . , G n } \Gamma = \{G_1, G_2,...,G_n\} Γ={G1,G2,...,Gn}的逻辑结果当且仅当 G 1 ∧ G 2 ∧ . . . ∧ G n → H G_1 \land G_2 \land ... \land G_n \to H G1∧G2∧...∧Gn→H 为有效公式。
👉回顾[[离散数学#基本推理形式和蕴涵关系|命题逻辑中的基本推理形式和蕴涵关系]]
👉根据[[离散数学#代入实例|代入实例]]的特性,命题演算中的基本蕴含公式
I
1
−
I
11
I_1 - I_{11}
I1−I11在谓词演算中仍然成立。
推理规律
假设 G ( x ) , H ( x ) G(x),H(x) G(x),H(x)是只含自由变元 x x x的公式,则在全总个体域中,有:
- 任意蕴涵存在
- I 12 : ( ∀ x ) G ( x ) ⇒ ( ∃ x ) G ( x ) I_{12}:(\forall x) G(x) \Rightarrow (\exists x)G(x) I12:(∀x)G(x)⇒(∃x)G(x)
- 量词辖域变更
-
I
13
:
(
∀
x
)
G
(
x
)
∨
(
∀
x
)
H
(
x
)
⇒
(
∀
x
)
(
G
(
x
)
∨
H
(
x
)
)
I_{13}:(\forall x)G(x)\lor (\forall x)H(x) \Rightarrow (\forall x)(G(x)\lor H(x))
I13:(∀x)G(x)∨(∀x)H(x)⇒(∀x)(G(x)∨H(x))
- 任意变元都满足 G G G 或任意变元都满足 H H H ,从而任意变元一定满足 G G G 或 H H H 。
-
I
14
:
(
∃
x
)
(
G
(
x
)
∧
H
(
x
)
)
⇒
(
∃
x
)
G
(
x
)
∧
(
∃
x
)
H
(
x
)
I_{14}:(\exists x)(G(x)\land H(x)) \Rightarrow (\exists x)G(x)\land (\exists x)H(x)
I14:(∃x)(G(x)∧H(x))⇒(∃x)G(x)∧(∃x)H(x)
- 存在一个变元同时满足 G G G 和 H H H,因此一定能找到一个变元满足 G G G ,也能找到变元满足 H H H
-
I
13
:
(
∀
x
)
G
(
x
)
∨
(
∀
x
)
H
(
x
)
⇒
(
∀
x
)
(
G
(
x
)
∨
H
(
x
)
)
I_{13}:(\forall x)G(x)\lor (\forall x)H(x) \Rightarrow (\forall x)(G(x)\lor H(x))
I13:(∀x)G(x)∨(∀x)H(x)⇒(∀x)(G(x)∨H(x))
- 蕴含运算的蕴含关系式
-
I
15
:
(
∀
x
)
(
G
(
x
)
→
H
(
x
)
)
⇒
(
∀
x
)
G
(
x
)
→
(
∀
x
)
H
(
x
)
I_{15}:(\forall x)(G(x)\to H(x)) \Rightarrow (\forall x)G(x)\to (\forall x)H(x)
I15:(∀x)(G(x)→H(x))⇒(∀x)G(x)→(∀x)H(x)
- 对于任意 x x x,如果 G ( x ) G(x) G(x)为真,则 H ( x ) H(x) H(x)一定为真。(由前提条件可知)
- 那么对于结论中:
- 如果前件为真,即任意 x x x有 G ( x ) G(x) G(x)为真
- 在前件为真的条件下,根据前提条件可得到 H ( x ) H(x) H(x)对任意 x x x也一定为真
-
I
16
:
(
∀
x
)
(
G
(
x
)
→
H
(
x
)
)
⇒
(
∃
x
)
G
(
x
)
→
(
∃
x
)
H
(
x
)
I_{16}:(\forall x)(G(x)\to H(x))\Rightarrow (\exists x)G(x)\to (\exists x)H(x)
I16:(∀x)(G(x)→H(x))⇒(∃x)G(x)→(∃x)H(x)
- 条件:对于任意 x x x,在 G ( x ) G(x) G(x)为真的时候, H ( x ) H(x) H(x)也一定为真。
- 结论:
- 存在 x x x, G ( x ) G(x) G(x)为真,由条件可知这个 x x x也能使得 H ( x ) H(x) H(x)为真
- 于是,也存在
x
x
x能够满足
H
(
x
)
H(x)
H(x)为真
对于多个量词的公式,设 G ( x , y ) G(x,y) G(x,y)是含有自由变元 x , y x,y x,y 的谓词公式,则有:
-
I
15
:
(
∀
x
)
(
G
(
x
)
→
H
(
x
)
)
⇒
(
∀
x
)
G
(
x
)
→
(
∀
x
)
H
(
x
)
I_{15}:(\forall x)(G(x)\to H(x)) \Rightarrow (\forall x)G(x)\to (\forall x)H(x)
I15:(∀x)(G(x)→H(x))⇒(∀x)G(x)→(∀x)H(x)
- 量词变换顺序
-
I
17
:
(
∃
x
)
(
∀
y
)
G
(
x
,
y
)
⇒
(
∀
y
)
(
∃
x
)
G
(
x
,
y
)
I_{17}:(\exists x)(\forall y)G(x,y)\Rightarrow (\forall y)(\exists x)G(x,y)
I17:(∃x)(∀y)G(x,y)⇒(∀y)(∃x)G(x,y)
- 存在 x x x对任意 y y y都满足某个关系;
- 则对任意 y y y,一定存在 x x x满足关系。
-
I
18
:
(
∀
x
)
(
∀
y
)
G
(
x
,
y
)
⇒
(
∃
y
)
(
∃
x
)
G
(
x
,
y
)
I_{18}:(\forall x)(\forall y)G(x,y)\Rightarrow (\exists y)(\exists x)G(x,y)
I18:(∀x)(∀y)G(x,y)⇒(∃y)(∃x)G(x,y)
- 对于任意 x x x,都有任意的 y y y满足某个关系;(确定一个 x x x了, y y y可以任意)
- 则对某个 y y y而言,也一定存在一个 x x x使得关系成立。(其实任意 x x x那也同样成立,就是 I 19 I_{19} I19
-
I
19
:
(
∀
y
)
(
∀
x
)
G
(
x
,
y
)
⇒
(
∃
x
)
(
∀
y
)
G
(
x
,
y
)
I_{19}:(\forall y)(\forall x)G(x,y)\Rightarrow (\exists x)(\forall y)G(x,y)
I19:(∀y)(∀x)G(x,y)⇒(∃x)(∀y)G(x,y)
- 任意 y y y,都有任意 x x x满足关系;
- 则对特定的 x x x,任意的 y y y都能满足关系。
-
I
20
:
(
∃
y
)
(
∀
x
)
G
(
x
,
y
)
⇒
(
∀
x
)
(
∃
y
)
G
(
x
,
y
)
I_{20}:(\exists y)(\forall x)G(x,y)\Rightarrow (\forall x)(\exists y)G(x,y)
I20:(∃y)(∀x)G(x,y)⇒(∀x)(∃y)G(x,y)
- 存在一个 y y y可以使得任意的 x x x都满足关系;
- 则对于任意的 x x x,必然存在一个 y y y使得关系成立。(前提里的 y y y都可以)
-
I
21
:
(
∀
x
)
(
∃
y
)
G
(
x
,
y
)
⇒
(
∃
y
)
(
∃
x
)
G
(
x
,
y
)
I_{21}:(\forall x)(\exists y)G(x,y)\Rightarrow (\exists y)(\exists x)G(x,y)
I21:(∀x)(∃y)G(x,y)⇒(∃y)(∃x)G(x,y)
- 对于任意的 x x x都能存在一个 y y y满足关系;
- 也就存在某些 y y y都能存在特定的 x x x满足关系。
-
I
22
:
(
∀
y
)
(
∃
x
)
G
(
x
,
y
)
⇒
(
∃
x
)
(
∃
y
)
G
(
x
,
y
)
I_{22}:(\forall y)(\exists x)G(x,y)\Rightarrow (\exists x)(\exists y) G(x,y)
I22:(∀y)(∃x)G(x,y)⇒(∃x)(∃y)G(x,y)
- I 21 I_{21} I21的变元名称交换一下而已。
-
I
17
:
(
∃
x
)
(
∀
y
)
G
(
x
,
y
)
⇒
(
∀
y
)
(
∃
x
)
G
(
x
,
y
)
I_{17}:(\exists x)(\forall y)G(x,y)\Rightarrow (\forall y)(\exists x)G(x,y)
I17:(∃x)(∀y)G(x,y)⇒(∀y)(∃x)G(x,y)
推理规则
- 需要量词存在和不需要量词之间的转换规则。
- 谓词公式带大量量词,能带量词直接计算的公式少
- 在整体和个体描述之间转换
US(全称特指规则)
- 全称量词的消去规则
( ∀ x ) G ( x ) ⇒ G ( y ) , y 不在 G ( x ) 中约束出现 (\forall x)G(x)\Rightarrow G(y),\quad y不在G(x)中约束出现 (∀x)G(x)⇒G(y),y不在G(x)中约束出现
或 ( ∀ x ) G ( x ) ⇒ G ( c ) , c 为任意个体常量 (\forall x)G(x) \Rightarrow G(c),\quad c为任意个体常量 (∀x)G(x)⇒G(c),c为任意个体常量 - y y y不在 G ( y ) G(y) G(y)中约束出现的意思是: G ( x ) G(x) G(x)中没有名字为 y y y的变元,即不能重名引起歧义
- 示例:
ES(存在特指规则)
- 存在量词的消去规则 ( ∃ x ) G ( x ) ⇒ G ( c ) , c 为使得 G ( c ) 为真的特定的个体常量 (\exists x)G(x)\Rightarrow G(c), \quad c为使得G(c)为真的特定的个体常量 (∃x)G(x)⇒G(c),c为使得G(c)为真的特定的个体常量
- 当 G ( x ) G(x) G(x)中还有除 x x x之外的自由变元,则必须使用关于这些变元的函数符号来取代 c c c。
- 示例:
UG(全称推广规则)
-
全称量词的添加规则 G ( y ) ⇒ ( ∀ x ) G ( x ) , G ( y ) 中无变元 x G(y)\Rightarrow (\forall x)G(x), \quad G(y)中无变元x G(y)⇒(∀x)G(x),G(y)中无变元x
-
示例:
-
当然,上述 z z z替换成 x x x也行,只是又变回去了而已。
EG(存在推广规则)
- 存在量词的添加规则
G
(
c
)
⇒
(
∃
x
)
G
(
x
)
,
c
为特定个体常量
G(c) \Rightarrow (\exists x)G(x), \quad c 为特定个体常量
G(c)⇒(∃x)G(x),c为特定个体常量
或 G ( y ) ⇒ ( ∃ x ) G ( x ) , G ( y ) 中无变元 x G(y)\Rightarrow (\exists x)G(x),\quad G(y)中无变元x G(y)⇒(∃x)G(x),G(y)中无变元x - 示例:
谓词演算的综合推理方法
- 前置知识:
- 基本等价公式
- 基本蕴涵公式
- 推理规则:US ES UG EG
综合推理方法
假定推导过程都是在相同的个体域内进行的(通常是全总个体域)。
- 推导过程中可以引用命题演算中的规则
P
P
P 和规则
T
T
T;
- 前提引用规则和逻辑结果引用规则:使用前提规则和使用中间结论规则
- 如果结论是以条件形式或析取形式给出的,则可使用规则
C
P
CP
CP;
- 附加前提规则:将结论中的前件作为条件使用来推导后件
- 若需消去量词,可以引用规则 U S US US 和规则 E S ES ES;
- 当所求结论需定量时,可引用规则 U G UG UG 和规则 E G EG EG 引入量词;
- 证明时可采用如命题演算中的直接证明方法和间接证明方法;
- 在推导过程中,对消去量词的公式或公式中不含量词的子公式,可以引用命题演算中的基本等价公式和基本蕴涵公式;
- 在推导过程中,对含有量词的公式可以引用谓词中的基本等价公式和基本蕴涵公式。
谓词演绎推理示例
举例一、苏格拉底三段论
👉根据假言推理规则: G → H , G ⇒ H G\to H, G \Rightarrow H G→H,G⇒H,因此利用 U S US US 的时候需要代入常量而不是使用变元。
举例二、三步走策略
👉步骤(4)是由(3)得到的,而这一过程的 a a a和(2)中的 a a a不能等同。
举例三、CP规则证明法
思路:
- 要证析取式,先转为蕴含式 ( 9 ) → ( 8 ) (9)\to(8) (9)→(8)
- 则前件可以作为附加前提引入 ( 1 ) (1) (1),目标是得到后件 ( 7 ) (7) (7)
- 要有 ( 7 ) (7) (7),显然要有 ( 6 ) (6) (6)
- 回到条件,我们需要先去掉量词, ( 1 ) (1) (1)在去掉量词前先调整否定得到 ( 2 ) (2) (2)
- ( 2 ) (2) (2)消去量词使用 E S ES ES,原先条件消去量词使用 U S US US,应当先 E S ES ES再 U S US US,从而有 ( 2 ) − ( 5 ) (2)-(5) (2)−(5)
举例四、反证法
思路:
- 使用反证法,则需要把结论的非作为附加前提去推导一个矛盾式
- 首先将结论的非作为附加前提引入 ( 1 ) (1) (1)
- 利用德摩根律得到 ( 2 ) (2) (2)
- 根据简化规则得到 ( 3 ) ( 4 ) (3)(4) (3)(4)
- 再依次对 ( 3 ) ( 4 ) (3)(4) (3)(4)进行否定后移和量词消去,从而有了 ( 6 ) ( 8 ) (6)(8) (6)(8)
- 合取 ( 6 ) ( 8 ) (6)(8) (6)(8)可得 ( 9 ) (9) (9),再利用德摩根律得到 ( 10 ) (10) (10)
- 消去条件里的量词得到 ( 12 ) (12) (12)
- 得到矛盾式 ( 13 ) (13) (13),从而推导出原式成立
推理总结
- 在推导过程中,如既要使用规则 U S US US又要使用规则 E S ES ES 消去量词,而且选用的个体是同一个符号,则必须先使用规则 E S ES ES,再使用规则 U S US US。然后再使用命题演算中的推理规则,最后使用规则 U G UG UG 或规则 E G EG EG 引入量词,得到所求结论。
- 如一个变量是使用规则 E S ES ES 消去量词,则对该变量在添加量词时,则只能使用规则 E G EG EG;如使用规则 U S US US 消去量词,对该变量在添加量词时,则可使用规则 E G EG EG 和规则 U G UG UG。
- 在使用规则 U S US US 和规则 E S ES ES 消去量词时,此量词必须位于整个公式的最前端,且辖域为其后的整个公式。
- 在添加量词 ( ∀ x ) (\forall x) (∀x) 和 ( ∃ x ) (\exists x) (∃x)时,所选用的 x x x不能在公式 G ( y ) G(y) G(y) 或 G ( c ) G(c) G(c)中出现。
谓词逻辑推理的应用
思路:
- 要证明合取式 ( 11 ) (11) (11),首先量词消去得到 ( 10 ) (10) (10)
- 要证明 ( 10 ) (10) (10),既需要得到 ( 9 ) (9) (9)也要得到 ( 6 ) (6) (6)
- 处理条件,即 ( 1 ) − ( 4 ) (1)-(4) (1)−(4),到这里已经能得到 ( 6 ) (6) (6)了,同时还有 ( 5 ) (5) (5)
- 再处理另一条件,消去量词即得 ( 8 ) (8) (8),结合 ( 5 ) (5) (5)得到了 ( 9 ) (9) (9)。证毕。