谓词逻辑和命题逻辑之间最主要的区别是,前者处理量词,而后者不处理量词。因为量词的存在,就给谓词逻辑推演带来了困难。那么,如果在谓词推论时,先销去量词,得到结论后再加上量词,这样谓词推论在很大程度上就还原为命题推论了。这就是谓词逻辑自然演绎系统的基本思想。这样,证明一个谓词推论的一般步骤是:
i)根据有关规则销去量词。
ii)求得不带量词的结论。
iii)根据需要,根据有关规则再给结论加上量词。
一。命题推演规则和量词转换规则
前面提到,谓词逻辑是把命题逻辑作为子系统包含在内的,命题逻辑的二十条推演规则均属于谓词逻辑的推演规则。
前面博客罗列了命题逻辑的二十条推演规则,包括八条整推规则,十条置换规则,再加上条件证明(用于结论为蕴含式)和间接证明(反证法)。罗列在前面博客:
逻辑学学习.6— 命题逻辑(四):推演的简单规则
除了命题逻辑的二十条推演规则外,谓词逻辑还包含了一些关于量词的推演规则。在本系统中引进了五条量词的推演规则,其中一条是关于量词的置换规则,另外四条是关于量词的整推规则。这总共二十五条规则足够我们进行有效的谓词推论证明。
量词的置换规则: 量词属性反向,量词前后的否定号也反向。
∀ x
Ψ
\Psi
Ψ(x) ↔ ¬ ∃ x ¬
Ψ
\Psi
Ψ(x)
∃ x
Ψ
\Psi
Ψ(x) ↔ ¬ ∀ x ¬
Ψ
\Psi
Ψ(x)
在多重量化一节,逻辑学学习.11 — 谓词逻辑(三):命题的多重量化
我们还提到一个量词的移置规则:只有量词在蕴含式的前件,移入移出才需要改变量词的属性,其余情况,量词不变:
(∃ x
Ψ
\Psi
Ψ(x)→ P )↔ ∀ x(
Ψ
\Psi
Ψ(x)→ P )
(∀ x
Ψ
\Psi
Ψ(x)→ P )↔ ∃ x(
Ψ
\Psi
Ψ(x)→ P )
量词转换规则既可以用于整个命题,也可以用于命题的一部分。
二。全称量词的整推规则
1)全称示例规则(销去全称量词)
从一个全称命题可以推得它的一个替换例子。这个规则是由一般推特别,很好理解。也没有什么特别限制。
∀ x
Ψ
\Psi
Ψ(x)
∴
Ψ
\Psi
Ψ(a / x)
这里的x和a都属于元变项。x是个体变项,取x,y,z中的任何一个。a是一个个体常项,取a,b,c…w中的任何一个。用 Ψ \Psi Ψ(a / x)表示 Ψ \Psi Ψ(x)的一个替换例子。即用 a 替换 Ψ \Psi Ψ(x)中 x 的每一次出现所得到的那个命题,a 叫做 ”例示常项“。
需要注意:除了前面第一条量词转换规则外,其余的四条量词推演规则都属于整推规则,只能应用于整个命题,不能只应用于命题的某一部分。均属于整推规则。
总之,应用量词推论规则销去或引入的量词必须处于公式的前端,并且其辖域延续到公式的末端。
2)全称概括规则(恢复全称量词)
从一个全称命题的一个替换例子可以推出这个全称命题。
Ψ
\Psi
Ψ(a / x)
∴ ∀ x
Ψ
\Psi
Ψ(x)
显然,这个规则是由特殊推一般,这里必须有前提条件。
i)示例常项 a 不在任何前提中或者尚未撤除的的假设中出现。
ii)示例常项 a 不在结论中出现。
[例1]
[推论1]
所有鸟都是有翅膀的;
没有一个有翅膀的没有羽毛;
所以,所有鸟都有羽毛。
分析:
全称命题的一般结构:
∀x (S(x)→ (…))
存在命题的一般结构:
∃x (S(x)∧ (…))
谓词和常项:
N(x) 表示 :x是鸟
B(x) 表示 :x有翅膀
M(x) 表示 :x有羽毛
符号化成:
∀x (N(x)→ B(x))
¬ ∃x (B(x)∧ ¬ M(x))
∴ ∀x (N(x)→ M(x))
[证明]
| (1) | ∀x (N(x)→ B(x)) | 前提 | |
| (2) | ¬ ∃x (B(x)∧ ¬ M(x)) | 前提 | |
| (3) | ∀x ¬(B(x)∧ ¬ M(x)) | (2)量词转换 | |
| (4) | N(a)→ B(a) | (1),全称示例 | |
| (5) | ¬(B(a)∧ ¬ M(a)) | (3),全称示例 | |
| (6) | (¬B(a)∧ ¬¬ M(a)) | (5),德摩根 | |
| (7) | ¬B(a)∧ M(a) | (6),双否 | |
| (8) | B(a)→ M(a) | (7),析取转蕴含 | |
| (9) | N(a)→ M(a) | (4),(8),三段论 | |
| (10) | ∀x (N(x)→ M(x)) | (9),全称概括 |
[例2]
[推论2]
任何科学家不是研究自然科学就是研究社会科学;
凡对人性不感兴趣的科学家不研究社会科学;
所以,凡对人性不感兴趣的科学家研究自然科学。
分析:
全称命题的一般结构:
∀x (S(x)→ (…))
存在命题的一般结构:
∃x (S(x)∧ (…))
谓词和常项:
UD:{科学家}
Z(x) 表示 :x研究自然科学
S(x) 表示 :x研究社会科学
R(x) 表示 :x对人性感兴趣
符号化成:
∀x (Z(x)∨ S(x))
∀x (¬ R(x)→ ¬ S(x))
∴ ∀x (¬ R(x)→ Z(x))
[证明]
证明方法一:
| (1) | ∀x (Z(x)∨ S(x)) | 前提 | |
| (2) | ∀x (¬ R(x)→ ¬ S(x)) | 前提 | |
| (3) | ∀x (¬ Z(x)→ S(x)) | (1)析取转蕴含 | |
| (4) | ∀x (¬ S(x)→ Z(x)) | (3) 假言易位 | |
| (5) | ∀x (¬ R(x)→ Z(x)) | (2),(4),三段论 |
证明方法二:
| (1) | ∀x (Z(x)∨ S(x)) | 前提 | |
| (2) | ∀x (¬ R(x)→ ¬ S(x)) | 前提 | |
| (3) | ┌ | ¬ R(b) | 条件假设 |
| (4) | | | ¬ R(b)→ ¬ S(b) | (2) 全称示例 |
| (5) | | | ¬ S(b) | (4) 肯定前件 |
| (6) | | | Z(b)∨ S(b) | (1) 全称示例 |
| (7) | └ | Z(b) | (5),(6)否定析取支 |
| (8) | ¬ R(b) → Z(b) | (3),(7) 条件证明 | |
| (9) | ∀x(¬ R(x) → Z(x)) | (8) 全称概括 |
三。存在量词的整推规则
1)存在示例规则(销去存在量词):新名假设
从上面一段我们看到,销去全称量词使用的是示例的方法,从全称命题推出单称命题是顺理成章的,因为这是一个从普遍到特殊。而从存在命题推出单称命题一般是不合理的。例如,我们不能从”有人会游泳“推出”爱因斯坦会游泳“,但是既然前提中已经断定了会游泳的人一定存在,我们可以根据这一断定合理引入一个假设:”a会游泳“。只要我们规定,a并不特指某个已知对象,而仅仅指那个会游泳的人,而无论他是谁。我们把这样的个体常项叫做”新名“,把含有新名的假设叫做”新名假设“。
存在示例规则可以表述为:如果由一个存在命题和它的一个含有新名的替换例子可以推出一个不合新名的命题,那么,仅由这个存在命题可以推得这个不含新名的命题。
还是以 Ψ \Psi Ψ(x)代表含有唯一自由个体变项x的任何一个开语句, Ψ \Psi Ψ(a / x)表示 Ψ \Psi Ψ(x)的一个替换例子,存在示例用符号表述为:
∃x
Ψ
\Psi
Ψ( x)
┌
Ψ
\Psi
Ψ(a / x)
┃ …
└ P
∴ P
此规则的限制条件:
i) a 不出现在任何前提和尚未撤除的假设中
ii) a 不出现在∃x
Ψ
\Psi
Ψ( x)中
iii)a 不出现在 P 中
2)存在概括规则(恢复存在量词)
存在概括规则比较容易实现,没任何限制条件。
存在概括规则表述为:从一个存在命题的一个替换例子可以推出这个存在命题。
Ψ
\Psi
Ψ(a / x)
∴ ∃ x
Ψ
\Psi
Ψ(x)
[例3]
[推论3]
所有乌鸦是黑的;
有些动物是乌鸦;
所以,有些动物是黑的 。
分析:
全称命题的一般结构:
∀x (S(x)→ (…))
存在命题的一般结构:
∃x (S(x)∧ (…))
谓词和常项:
W(x) 表示 :x是乌鸦
H(x) 表示 :x是黑的
D(x) 表示 :x是动物
符号化成:
∀ x (W(x)→ H(x))
∃ x ( D(x)∧ W(x))
∴ ∃ x ( D(x)∧ H(x))
[证明]
| (1) | ∀ x (W(x)→ H(x)) | 前提 | |
| (2) | ∃ x (D(x)∧ W(x)) | 前提 | |
| (3) | ┌ | D(a)∧ W(a) | (2) 存在示例(新名假设) |
| (4) | | | W(a)→ H(a) | (1) 全称示例 |
| (5) | | | D(a) | (3)化简 |
| (6) | | | W(a) | (3)化简 |
| (7) | | | H(a) | (4)肯前 |
| (8) | | | D(a)∧ H(a) | (5),(7)合取 |
| (9) | └ | ∃ x(D(x)∧ H(x)) | (8)存在概括 |
| (10) | ∃ x(D(x)∧ H(x)) | (3)–(9) 存在示例 |
推演策略:最好先做新名假设(存在示例),然后再做全称示例。
四。谓词推论证明示例
[例4]
[推论4]
∀x(R(x,a)→ S(a,x))
∃x ∀y R(x,y)
∴ ∃z S(a,z)
[证明]
| (1) | ∀ x (R(x,a)→ S(a,x)) | 前提 | |
| (2) | ∃ x ∀ y R(x ,y) | 前提 | |
| (3) | ┌ | ∀ y R(e ,y) | (2) 存在示例(新名假设),x = e,e 为过渡常项 |
| (4) | | | R(e ,a) | (3) 全称示例,y = a |
| (5) | | | R(e,a)→ S(a,e) | (1)全称示例 ,x = e |
| (6) | | | S(a,e) | (5)肯前 |
| (7) | └ | ∃ z S(a,z) | (6)存在概括 ,e = z ,消去过渡常项 e |
| (8) | ∃ z S(a,z) | (3)–(7)存在示例 |
[例5]
[推论5]
所有甲班同学都不熟悉任何合唱队队员;
所有甲班同学熟悉所有的田径队队员;
所以,所有田径队队员都不是合唱队队员。
分析:
全称命题的一般结构:
∀x (S(x)→ (…))
存在命题的一般结构:
∃x (S(x)∧ (…))
谓词和常项:
J(x) 表示 :x是甲班同学
H(x) 表示 :x是合唱队队员
T(x) 表示 :x是田径队队员
F(x,y)表示:x 熟悉 y
符号化成:
∀ x (J(x)→ ∀ y(H(y)→ ¬ F(x,y)))
∃ x ( J(x)∧ ∀ y(T(y)→ F(x,y)))
∴ ∀ x ( T(x) → ¬ H(x))
[证明]
| (1) | ∀ x ( J(x)→ ∀ y(H(y)→ ¬ F(x,y)) ) | 前提 | |
| (2) | ∃ x ( J(x)∧ ∀ y(T(y)→ F(x,y)) ) | 前提 | |
| (3) | ┌ | J(a)∧ ∀ y(T(y)→ F(a,y)) | (2) 存在示例(新名假设),x = a,a 为过渡常项 |
| (4) | | | J(a)∧ (T(b)→ F(a,b)) | (3) 全称示例,y = b |
| (5) | | | J(a)→ ∀ y(H(y)→ ¬ F(a,y)) | (1)全称示例 ,x = a |
| (6) | | | J(a)→ (H(b)→ ¬ F(a,b)) | (5)全称示例 ,y = b |
| (7) | | | J(a) | (4) 化简 |
| (8) | | | T(b)→ F(a,b) | (4) 化简 |
| (9) | | | H(b)→ ¬ F(a,b) | (7),(6)肯定前件 |
| (10) | | | F(a,b) → H(b) | (9) 假言易位 |
| (11) | └ | T(b) → H(b) | (8) ,(10) 三段论 |
| (12) | T(b) → H(b) | (3) —(11) 存在示例 | |
| (13) | ∀ y ( T(y) → ¬ H(y)) | (12) 全称概括 ,b = y | |
| (14) | ∀ x ( T(x) → ¬ H(x)) | (13) 个体变项用x表示 |
[例6]
[推论6]
∃x ∀y K(x,x,y)
∃y ∃z (H(z,y)∧ J(y))
∀z ∀x (K(z,z,x)∧ J(x)→ D(z))
∴ ∃z D(z)
[证明]
| (1) | ∃x ∀y K(x,x,y) | 前提 | |||
| (2) | ∃y ∃z (H(z,y)∧ J(y)) | 前提 | |||
| (3) | ∀z ∀x (K(z,z,x)∧ J(x)→ D(z)) | 前提 | |||
| (4) | ┌ | ∀y K(a,a,y) | (1) 存在示例(新名假设),x = a,a 为过渡常项 | ||
| (5) | | | ┌ | ∃z (H(z,b)∧ J(b)) | (2) 存在示例(新名假设),y = b,b 为过渡常项 | |
| (6) | | | | | ┌ | (H(c,b)∧ J(b)) | (5) 存在示例(新名假设),z = c,c 为过渡常项 |
| (7) | | | | | | | K(a,a,b) | (3) 全称示例,y = b |
| (8) | | | | | | | ∀x (K(a,a,x)∧ J(x)→ D(a)) | (3) 全称示例,z = a |
| (9) | | | | | | | K(a,a,b)∧ J(b)→ D(a) | (8) 全称示例,x = b |
| (10) | | | | | | | J(b) | (6) 化简 |
| (11) | | | | | | | K(a,a,b)∧ J(b) | (7),(10) 合并 |
| (12) | | | | | | | D(a) | (9) 肯前 |
| (13) | | | | | └ | ∃z D(z) | (12) 存在概括,a = z |
| (14) | | | └ | ∃z D(z) | (6),(13) 存在示例 | |
| (15) | └ | ∃z D(z) | (5),(14) 存在示例 | ||
| (16) | ∃z D(z) | (4),(15) 存在示例 |
[例7] 证明普遍有效式
[普遍命题]
∃x F(x)∨ ∃x G(x) → ∃x (F(x)∨ G(x))
分析:证明一个普遍有效式,就如果证明重言式一样,就是给出该命题的一个无前题证明。考虑到该命题是一个蕴含式,可以使用条件证明规则。再考虑到该命题是无前题普遍有效式,可以运用间接证明。间接证明其实就是反证法,就是假设结论不成立,推出矛盾。
[证明]
| (1) | ┌ | ∃x F(x)∨ ∃x G(x) | 命题是蕴含式,可以使用条件证明,假设前题成立 | ||
| (2) | | | ┌ | ¬ ∃x (F(x)∨ G(x)) | 命题是普遍有效式,可以使用间接证明,假设蕴含式后件不成立 | |
| (3) | | | | | ∀x ¬(F(x)∨ G(x)) | (2)量词转换 | |
| (4) | | | | | ∀x (¬F(x)∧ ¬G(x)) | (3) 德摩根 | |
| (5) | | | | | (¬F(a)∧ ¬G(a)) | (4) 全称示例,x = a | |
| (6) | | | | | ¬F(a) | (5) 化简 | |
| (7) | | | | | ∀x ¬F(x) | (6) 全称概括 | |
| (8) | | | | | ¬∃x F(x) | (7) 量词转换 | |
| (9) | | | | | ∃x G(x) | (1) 否定析取支 | |
| (10) | | | | | ¬G(a) | (5) 化简 | |
| (11) | | | | | ∀x ¬G(x) | (10) 全称概括 | |
| (12) | | | | | ¬∃x G(x) | (11) 量词转换 | |
| (13) | | | └ | ∃x G(x)∧ ¬∃x G(x) | (9) 和 (12) 合并,得出矛盾,所以假设不成立 | |
| (14) | └ | ∃x (F(x)∨ G(x)) | (2) 到 (13) 间接证明 | ||
| (15) | ∃x F(x)∨ ∃x G(x) → ∃x (F(x)∨ G(x)) | (1) 到 (14) 条件证明 |
参考资料
《自然演绎逻辑导论》 陈晓平
本文详细介绍了谓词逻辑的推演规则,包括命题推演规则、全称量词和存在量词的整推规则,如全称示例规则、存在示例规则等,并通过示例展示了如何在推演过程中销去和恢复量词。此外,还讨论了量词的置换和移置规则及其应用条件。

被折叠的 条评论
为什么被折叠?



