本文属于「离散数学」系列文章之一。这一系列着重于离散数学的学习和应用。由于内容随时可能发生更新变动,欢迎关注和收藏离散数学系列文章汇总目录一文以作备忘。此外,在本系列学习文章中,为了透彻理解数学知识,本人参考了诸多博客、教程、文档、书籍等资料。以下是本文的不完全参考目录,在后续学习中还会逐渐补充:
- 离散数学及其应用 第七版
Discrete Mathematics and Its Applications 7th
,作者是Kenneth H.Rosen
- 离散数学 第二版,武波等编著,西安电子科技大学出版社
数理逻辑的显著特征就是符号化和形式化:
- 符号化:把逻辑所涉及到的“概念、判断、推理”用符号来表示——涵盖【离散数学】数理逻辑 第一章 命题逻辑(1) 命题和联结词和【离散数学】数理逻辑 第一章 命题逻辑(2) 命题公式及其符号化、命题公式的赋值两节。
- 形式化:用公理体系和形式推演来刻画推理过程的一般规律——涵盖【离散数学】数理逻辑 第一章 命题逻辑(3) 逻辑等价与蕴含和本节内容。
7. 命题逻辑的推理理论
在现实生活和科学研究中,经常要进行推理 reasoning
,即从某些假设 hypothesis
或者前提 premises
出发,使用某些公认的规则和已知的公理 axiom
、定理 theorem
、引理 lemma
、推论 corollary
等进行逻辑推演,从而形成结论 conclusion
。少数推理很简单,但大多数结论需要经过复杂的推演过程才能得到。
名词释义:
- 定义
Definition
——a precise and unambiguous description of the meaning of a mathematical term. It characterizes the meaning of a word by giving all the properties and only those properties that must be true.- 定理
Theorem
, 本身是一个大result ——a mathematical statement that is proved using rigorous mathematical reasoning. In a mathematical paper, the term theorem is often reserved for the most important results.- 引理
Lemma
,证明定理之前用的一个result——a minor result whose sole purpose is to help in proving a theorem. It is a stepping stone on the path to proving a theorem. Very occasionally lemmas can take on a life of their own (Zorn’s lemma, Urysohn’s lemma, Burnside’s lemma,Sperner’s lemma).- 推论
Corollary
,可以从定理中直接deduce/prove出来的result——-a result in which the (usually short) proof relies heavily on a given theorem (we often say that \this is a corollary of Theorem A").- 命题
Proposition
,一个还无法大到变成定理的小result(当作小定理),算是比较简单的定理的一种称呼——-a proved and often interesting result, but generally less important than a theorem.- 猜想
Conjecture
——a statement that is unproved, but is believed to be true (Collatz conjecture, Goldbach conjecture, twin prime conjecture).- 断言
Claim
,证明时先论述一个结果再作证明,让看的人比较轻松——-an assertion that is then proved. It is often used like an informal lemma.- 公理/假定
Axiom/Postulate
——a statement that is assumed to be true without proof. These are the basic building blocks from which all theorems are proved (Eu-clid’s ve postulates, Zermelo-Frankel axioms, Peano axioms).- 恒等式
Identity
——-a mathematical expression giving the equality of two (often variable) quantities (trigonometric identities, Euler’s identity).- 悖论
Paradox
——a statement that can be shown, using a given set of axioms and de nitions, to be both true and false. Paradoxes are often used to show the inconsistencies in a awed theory (Russell’s paradox). The term paradox is often used informally to describe a surprising or counterintuitive result that follows from a given set of rules (Banach-Tarski paradox, Alabama paradox, Gabriel’s horn).
它们的作用:
- 首先,定义和公理是任何理论的基础,定义解决了概念的范畴,公理使得理论能够被人的理性所接受。
- 其次,定理和命题是在定义和公理的基础上,通过理性的加工得到的理论的再延伸。区别主要在于,定理的理论高度比命题高些,定理主要描述各定义(范畴)间的逻辑关系,命题一般描述的是某种对应关系(非范畴性的)。推论则是某一定理的附属品,是该定理的简单应用。
- 最后,引理就是在证明某一定理时,所必须用到的其它定理。而在一般情况下,(如前面所提到的)定理的证明是依赖于定义和公理的。
如果为了论证一个问题,但是在论证前需要证明若干个小问题,那么这若干个小问题的结论就是引理,该问题的论证需要用到前面的引理,结论就是定理。即引理是为定理作准备的,文中的定理才是需要说明的主要问题或者目的。
我们应该根据文章目的的不同来区分引理和定理,同样的论点在这篇文章可以是引理,在那篇文章则可以是定理。
定义7.1 设
H
1
,
H
2
,
…
,
H
n
H_1, H_2, \dots, H_n
H1,H2,…,Hn ,
C
C
C 是命题公式,若
H
1
∧
H
2
∧
⋯
∧
H
n
⇒
C
H_1 \land H_2 \land \dots \land H_n \Rightarrow C
H1∧H2∧⋯∧Hn⇒C(或简写为
H
1
,
H
2
,
…
,
H
n
⇒
C
H_1, H_2, \dots, H_n \Rightarrow C
H1,H2,…,Hn⇒C),则称
C
C
C 是一组前提 premises
H
1
,
H
2
,
…
,
H
n
H_1, H_2, \dots, H_n
H1,H2,…,Hn 的有效结论 valid conclusion
,或称
C
C
C 可由前提
H
1
,
H
2
,
…
,
H
n
H_1, H_2, \dots, H_n
H1,H2,…,Hn 逻辑推出。从前提
H
1
,
H
2
,
…
,
H
n
H_1, H_2, \dots, H_n
H1,H2,…,Hn 推出结论的过程,称为推理 reasoning
、论证 argument
或证明 proof
。
要注意的是,如果 H 1 ∧ H 2 ∧ ⋯ ∧ H n ⇒ C H_1 \land H_2 \land \dots \land H_n \Rightarrow C H1∧H2∧⋯∧Hn⇒C ,说明 H 1 , H 2 , … , H n H_1, H_2, \dots, H_n H1,H2,…,Hn 可以逻辑推出 C C C ,即推理是正确的,但是推理正确不保证结论 C C C 一定正确!更准确的说,结论的真假取决于前提 H 1 ∧ H 2 ∧ ⋯ ∧ H n H_1 \land H_2 \land \dots \land H_n H1∧H2∧⋯∧Hn 的真假——前提为真时结论 C C C 为真,前提为假时结论 C C C 可能为真、可能为假。
7.1 重要推理规则
在【离散数学】数理逻辑 第一章 命题逻辑(3) 逻辑等价与蕴含中列出的等价公式和蕴含公式,都可以作为推理规则使用。此外在推理中,还有两条常用的重要推理规则:
- P规则:在推理过程中,前提可以在任何步骤引入;
- T规则:在推理过程中,如果由已经推出的一个或多个公式蕴含(或等价于) S S S ,则公式 S S S 可以引入到推理过程中
判断结论是否有效有多种不同的方法,下面介绍一些常用的证明方法:
- 方法1:无义证明法。(利用条件联结词的特性)如果能够证明 P P P 恒为假,则有 P → Q P \to Q P→Q 恒为真,即 P ⇒ Q P \Rightarrow Q P⇒Q 。
- 方法2:平凡证明法。(利用条件联结词的特性)如果能够证明 Q Q Q 恒为真,则有 P → Q P \to Q P→Q 恒为真,即 P ⇒ Q P \Rightarrow Q P⇒Q 。
- 方法3:直接证明法。从一组前提出发,利用公认的推理规则(列出的等价公式、蕴含公式、它们具有的替换规则和传递规则、P规则、T规则),逻辑演绎得到有效结论。将在后文详细介绍。
- 方法4:归谬法,又称反证法。将在后文详细介绍(有点类似证明永真蕴含式的否定后件法)。
- 方法5:CP规则法,又称附加规则法。将在后文详细介绍。
无义证明法和平凡证明法应用的次数较少,但
对有限的或特殊的情况,它们常常是重要的。下面重点讲解直接证明法、归谬法和CP规则法。
7.2 直接证明法
采用直接证明法证明 H 1 , H 2 , … , H n ⇒ C H_1, H_2, \dots, H_n\Rightarrow C H1,H2,…,Hn⇒C 的过程,等价于构造一个公式序列 A 1 , A 2 , … , A m A_1, A_2, \dots, A_m A1,A2,…,Am ,使其满足:
- A m = C A_m = C Am=C ;
- 对每个 A i ( i = 1 , 2 , … , m ) A_i\ (i = 1, 2, \dots, m) Ai (i=1,2,…,m) ,或者 A i = H j ( 1 ≤ j ≤ n ) A_i = H_j\ (1\le j \le n) Ai=Hj (1≤j≤n),即由P规则得到;或者存在 A i 1 , A i 2 , … , A i k ( 1 ≤ i 1 < i 2 < ⋯ < i k ≤ i − 1 ) A_{i_1}, A_{i_2}, \dots, A_{i_k}\ (1 \le i_1 \lt i2 \lt \dots \lt i_k \le i - 1) Ai1,Ai2,…,Aik (1≤i1<i2<⋯<ik≤i−1) 、且 A i 1 ∧ A i 2 ∧ ⋯ ∧ A i k ⇒ A i A_{i_1} \land A_{i_2} \land \dots \land A_{i_k} \Rightarrow A_i Ai1∧Ai2∧⋯∧Aik⇒Ai(运用常见的永真蕴含式)或 A i 1 ∧ A i 2 ∧ ⋯ ∧ A i k ⇔ A i A_{i_1} \land A_{i_2} \land \dots \land A_{i_k} \Leftrightarrow A_i Ai1∧Ai2∧⋯∧Aik⇔Ai(运用常见的逻辑等价式),即由T规则得到。
在后文中我们会看到,直接证明法是归谬法和CP规则法的基础,归谬法只不过是使用了结论的否定作为假设前提,CP规则法则使用结论的前件作为附加前提,实际证明过程还是要用直接证明法。
有直接证明法就有间接证明法。利用逆反律,要证明 P ⇒ Q P \Rightarrow Q P⇒Q ,可以间接证明 ¬ Q ⇒ ¬ P \lnot Q \Rightarrow \lnot P ¬Q⇒¬P 。这一证明方法常用于直接证明较为困难的时候,正难则反。
例1:证明
(
P
∨
Q
)
∧
(
P
→
R
)
∧
(
Q
→
S
)
⇒
S
∨
R
(P \lor Q) \land (P \to R) \land (Q \to S) \Rightarrow S \lor R
(P∨Q)∧(P→R)∧(Q→S)⇒S∨R(构造性二难推理)。
解答:
(
1
)
P
∨
Q
P
(
2
)
¬
P
→
Q
T
,
(
1
)
,
蕴
含
律
(
3
)
Q
→
S
P
(
4
)
¬
P
→
S
T
,
(
2
)
,
(
3
)
,
前
提
三
段
论
(
5
)
¬
S
→
P
T
,
(
4
)
,
逆
反
律
(
6
)
P
→
R
P
(
7
)
¬
S
→
R
T
,
(
5
)
,
(
6
)
,
前
提
三
段
论
(
8
)
S
∨
R
T
,
(
7
)
,
蕴
含
律
\begin{aligned} &(1)\ P \lor Q &\quad P\\ &(2)\ \lnot P \to Q &\quad T, (1), \mathtt{蕴含律}\\ &(3)\ Q \to S &\quad P \\ &(4)\ \lnot P \to S &\quad T, (2),(3),\mathtt{前提三段论}\\ &(5)\ \lnot S\to P &\quad T, (4), \mathtt{逆反律}\\ &(6)\ P \to R &\quad P\\ &(7)\ \lnot S \to R &\quad T,(5),(6),前提三段论\\ &(8)\ S \lor R &\quad T, (7), 蕴含律 \end{aligned}
(1) P∨Q(2) ¬P→Q(3) Q→S(4) ¬P→S(5) ¬S→P(6) P→R(7) ¬S→R(8) S∨RPT,(1),蕴含律PT,(2),(3),前提三段论T,(4),逆反律PT,(5),(6),前提三段论T,(7),蕴含律
例2:侦查员在调查了某珠宝店的珠宝失窃案现场以及询问了人证后,得到以下事实:
(a)是营业员甲或营业员乙作案。
(b)若是甲作案,则案发在非营业时间。
(c)若乙提供的证词可信,则案发时货柜未上锁。
(d)若乙提供的证词不可信,则案发在营业时间。
(e)货柜在案发时上锁了。
侦查员推理出是营业员乙作案,请判定该判断是否正确。
解答:设
P
P
P:是营业员甲作的案,
Q
Q
Q:是营业员乙作的案,
R
R
R:案发在营业时间,
S
S
S:乙提供的证词可信,
H
H
H:货柜在案发时上锁了。于是问题等价于,验证
(
P
∨
Q
)
∧
(
P
→
¬
R
)
∧
(
S
→
¬
H
)
∧
(
¬
S
→
R
)
∧
H
⇒
Q
(P\lor Q) \land (P \to \lnot R) \land (S \to \lnot H) \land (\lnot S \to R) \land H \Rightarrow Q
(P∨Q)∧(P→¬R)∧(S→¬H)∧(¬S→R)∧H⇒Q 是否成立。形式推理过程如下:
(
1
)
¬
S
→
R
P
(
2
)
¬
R
→
S
T
,
(
1
)
,
逆
反
律
(
3
)
P
→
¬
R
P
(
4
)
P
→
S
T
,
(
2
)
,
(
3
)
,
前
提
三
段
论
(
5
)
S
→
¬
H
P
(
6
)
H
→
¬
S
T
,
(
5
)
,
前
提
三
段
论
(
7
)
H
P
(
8
)
¬
S
T
,
(
6
)
,
(
7
)
,
假
言
推
理
(
9
)
¬
S
→
¬
P
T
,
(
4
)
,
逆
反
律
(
10
)
¬
P
T
,
(
8
)
,
(
9
)
,
假
言
推
理
(
11
)
P
∨
Q
P
(
12
)
Q
T
,
(
10
)
,
(
11
)
,
析
取
三
段
论
\begin{aligned} &(1)\ \lnot S \to R &\quad P \\ &(2)\ \lnot R \to S &\quad T, (1), 逆反律\\ &(3)\ P \to \lnot R &\quad P\\ &(4)\ P \to S &\quad T, (2), (3), 前提三段论 \\ &(5)\ S \to \lnot H &\quad P \\ &(6)\ H \to \lnot S &\quad T, (5), 前提三段论 \\ &(7)\ H &\quad P \\ &(8)\ \lnot S &\quad T, (6), (7), 假言推理 \\ &(9)\ \lnot S \to \lnot P &\quad T, (4), 逆反律\\ &(10)\ \lnot P &\quad T, (8), (9), 假言推理\\ &(11)\ P \lor Q &\quad P\\ &(12)\ Q &\quad T, (10), (11), 析取三段论 \end{aligned}
(1) ¬S→R(2) ¬R→S(3) P→¬R(4) P→S(5) S→¬H(6) H→¬S(7) H(8) ¬S(9) ¬S→¬P(10) ¬P(11) P∨Q(12) QPT,(1),逆反律PT,(2),(3),前提三段论PT,(5),前提三段论PT,(6),(7),假言推理T,(4),逆反律T,(8),(9),假言推理PT,(10),(11),析取三段论
因此侦查员的推理是正确的。
7.3 归谬法(假设前提)
定义7.2 设 P 1 , P 2 , … , P n P_1, P_2, \dots, P_n P1,P2,…,Pn 是命题公式 H 1 , H 2 , … , H m H_1, H_2, \dots, H_m H1,H2,…,Hm 中的所有命题变元,如果存在 P 1 , P 2 , … , P n P_1, P_2, \dots, P_n P1,P2,…,Pn 的一种赋值,使得 H 1 ∧ H 2 ∧ ⋯ ∧ H m H_1 \land H_2 \land \dots \land H_m H1∧H2∧⋯∧Hm 的真值为 T T T ,则称命题公式集合 { H 1 , H 2 , … , H m } \{ H_1, H_2, \dots, H_m\} {H1,H2,…,Hm} 是一致的或相容的,否则称为不一致的或不相容的。
因为当 { H 1 , H 2 , … , H m } \{ H_1, H_2, \dots, H_m \} {H1,H2,…,Hm} 不相容时, H 1 ∧ H 2 ∧ ⋯ ∧ H m H_1\land H_2 \land \dots \land H_m H1∧H2∧⋯∧Hm 的真值恒为 F F F ,所以定义7.2等价于:设 H 1 , H 2 , … , H m H_1, H_2, \dots, H_m H1,H2,…,Hm 是公式,若存在公式 R R R 使得 H 1 , H 2 , … , H m ⇒ R ∧ ¬ R ( ⇒ F ) H_1, H_2, \dots, H_m \Rightarrow R \land \lnot R\ (\Rightarrow F) H1,H2,…,Hm⇒R∧¬R (⇒F) ,则称命题公式集合 { H 1 , H 2 , … , H m } \{ H_1, H_2, \dots, H_m\} {H1,H2,…,Hm} 是不一致的或不相同的,否则称为一致的或相容的。
定理7.1 H 1 , H 2 , … , H m , C H_1, H_2, \dots, H_m, C H1,H2,…,Hm,C 是公式,如果存在公式 R R R 使得 H 1 , H 2 , … , H m , ¬ C ⇒ R ∧ ¬ R H_1, H_2, \dots, H_m, \lnot C \Rightarrow R \land \lnot R H1,H2,…,Hm,¬C⇒R∧¬R ,则有 H 1 , H 2 , … , H m ⇒ C H1, H2, \dots, H_m \Rightarrow C H1,H2,…,Hm⇒C 。
证明:设 H 1 , H 2 , … , H m , ¬ C ⇒ R ∧ ¬ R H_1, H_2, \dots, H_m, \lnot C \Rightarrow R \land \lnot R H1,H2,…,Hm,¬C⇒R∧¬R(即为永假式),则 { H 1 , H 2 , … , H m , ¬ C } \{ H_1, H_2, \dots, H_m, \lnot C\} {H1,H2,…,Hm,¬C} 是不一致的。根据不一致的定义(和肯定前件法),设 H 1 ∧ H 2 ∧ ⋯ ∧ H m H_1 \land H_2 \land \dots \land H_m H1∧H2∧⋯∧Hm 为真,由于在任何使 H 1 ∧ H 2 ∧ ⋯ ∧ H m H_1 \land H_2 \land \dots \land H_m H1∧H2∧⋯∧Hm 为真的赋值下,均有 ¬ C \lnot C ¬C 为假,即 C C C 为真,所以 H 1 ∧ H 2 ⋯ ∧ H m → C H_1 \land H_2 \dots \land H_m \to C H1∧H2⋯∧Hm→C 为重言式,故有 H 1 ∧ H 2 ∧ … H m ⇒ C H_1 \land H_2 \land \dots H_m \Rightarrow C H1∧H2∧…Hm⇒C 。因此 H 1 , H 2 , … , H m ⇒ C H_1, H_2, \dots , H_m \Rightarrow C H1,H2,…,Hm⇒C 。
这一定理说明,为了从一组前提
H
1
,
H
2
,
…
,
H
m
H_1, H_2, \dots, H_m
H1,H2,…,Hm 推出结论
C
C
C ,将结论
C
C
C 加以否定,把
H
1
,
H
2
,
…
,
H
m
,
¬
C
H_1, H_2, \dots, H_m, \lnot C
H1,H2,…,Hm,¬C 作为前提,利用直接证明法推出矛盾,比如
R
∧
¬
R
R \land \lnot R
R∧¬R ,即可得证
C
C
C 。这种证明方法被称为归谬法或反证法 proof by contradiction
,其中
¬
C
\lnot C
¬C 是假设前提。
例3:证明
A
→
B
,
¬
(
B
∨
C
)
A \to B,\ \lnot (B \lor C)
A→B, ¬(B∨C) 可推出
¬
A
\lnot A
¬A 。
解答:
(
1
)
A
P
(
假
设
前
提
)
(
2
)
A
→
B
P
(
3
)
B
T
,
(
1
)
,
(
2
)
,
假
言
推
理
(
4
)
¬
(
B
∨
C
)
P
(
5
)
¬
B
∧
¬
C
T
,
(
4
)
,
德
摩
根
律
(
6
)
¬
B
T
,
(
5
)
,
化
简
式
(
7
)
B
∧
¬
B
(
矛
盾
)
T
,
(
3
)
,
(
6
)
,
直
推
式
\begin{aligned} &(1)\ A &\quad P(假设前提)\\ &(2)\ A \to B &\quad P\\ &(3)\ B &\quad T,(1),(2), 假言推理 \\ &(4)\ \lnot (B \lor C) &\quad P\\ &(5)\ \lnot B\land \lnot C &\quad T, (4), 德摩根律\\ &(6)\ \lnot B &\quad T, (5), 化简式\\ &(7)\ B\land \lnot B(矛盾) &\quad T,(3), (6), 直推式\\ \end{aligned}
(1) A(2) A→B(3) B(4) ¬(B∨C)(5) ¬B∧¬C(6) ¬B(7) B∧¬B(矛盾)P(假设前提)PT,(1),(2),假言推理PT,(4),德摩根律T,(5),化简式T,(3),(6),直推式
例4:证明
(
P
∨
Q
)
∧
(
P
→
R
)
∧
(
Q
→
S
)
⇒
S
∨
R
(P \lor Q) \land (P \to R) \land (Q\to S) \Rightarrow S \lor R
(P∨Q)∧(P→R)∧(Q→S)⇒S∨R(构造性二难推理)。
解答:
(
1
)
¬
(
S
∨
R
)
P
(
假
设
前
提
)
(
2
)
¬
S
∧
¬
R
T
,
(
1
)
,
德
摩
根
律
(
3
)
¬
S
T
,
(
2
)
,
化
简
式
(
4
)
Q
→
S
P
(
5
)
¬
Q
T
,
(
3
)
,
(
4
)
,
拒
取
式
(
6
)
¬
R
T
,
(
2
)
,
化
简
式
(
7
)
P
→
R
P
(
8
)
¬
P
T
,
(
6
)
,
(
7
)
,
拒
取
式
(
9
)
¬
P
∧
¬
Q
T
,
(
5
)
,
(
8
)
,
直
推
式
(
10
)
¬
(
P
∨
Q
)
T
,
(
9
)
,
德
摩
根
律
(
11
)
P
∨
Q
P
(
12
)
(
P
∨
Q
)
∧
¬
(
P
∨
Q
)
(
矛
盾
)
T
,
(
10
)
,
(
11
)
,
直
推
式
\begin{aligned} &(1)\ \lnot (S \lor R) &\quad P(假设前提)\\ &(2)\ \lnot S \land \lnot R &\quad T,(1),德摩根律 \\ &(3)\ \lnot S &\quad T,(2),化简式\\ &(4)\ Q \to S &\quad P \\ &(5)\ \lnot Q &\quad T, (3), (4),拒取式 \\ &(6)\ \lnot R &\quad T,(2), 化简式 \\ &(7)\ P\to R &\quad P\\ &(8)\ \lnot P &\quad T, (6),(7),拒取式\\ &(9)\ \lnot P \land \lnot Q &\quad T,(5),(8),直推式 \\ &(10)\ \lnot (P \lor Q) &\quad T, (9), 德摩根律\\ &(11)\ P\lor Q &\quad P \\ &(12)\ (P \lor Q) \land \lnot (P \lor Q)(矛盾) &\quad T, (10), (11), 直推式\\ \end{aligned}
(1) ¬(S∨R)(2) ¬S∧¬R(3) ¬S(4) Q→S(5) ¬Q(6) ¬R(7) P→R(8) ¬P(9) ¬P∧¬Q(10) ¬(P∨Q)(11) P∨Q(12) (P∨Q)∧¬(P∨Q)(矛盾)P(假设前提)T,(1),德摩根律T,(2),化简式PT,(3),(4),拒取式T,(2),化简式PT,(6),(7),拒取式T,(5),(8),直推式T,(9),德摩根律PT,(10),(11),直推式
7.4 CP规则法(附加前提)
设
H
1
,
H
2
,
…
,
H
m
,
R
,
C
H_1, H_2, \dots, H_m, R, C
H1,H2,…,Hm,R,C 是命题公式,根据输出律
E
22
E_{22}
E22 可知:
(
H
1
∧
H
2
∧
⋯
∧
H
m
∧
R
)
→
C
⇔
(
H
1
∧
H
2
∧
⋯
∧
H
m
)
→
(
R
→
C
)
(H_1 \land H_2 \land \dots \land H_m \land R) \to C \Leftrightarrow (H_1 \land H_2 \land \dots \land H_m) \to (R \to C)
(H1∧H2∧⋯∧Hm∧R)→C⇔(H1∧H2∧⋯∧Hm)→(R→C)
因此,如果能证明 H 1 , H 2 , … , H m , R ⇒ C H_1, H_2, \dots, H_m, R \Rightarrow C H1,H2,…,Hm,R⇒C ,则有 H 1 , H 2 , … , H m ⇒ R → C H_1, H_2, \dots, H_m \Rightarrow R \to C H1,H2,…,Hm⇒R→C 成立。
于是,为了证明 H 1 ∧ H 2 ∧ ⋯ ∧ H m ⇒ R → C H_1 \land H_2 \land \dots \land H_m \Rightarrow R \to C H1∧H2∧⋯∧Hm⇒R→C ,可以使用间接的方法——将结论的前件 R R R 作为附加前提,通过直接证明 H 1 ∧ H 2 ∧ ⋯ ∧ H m ∧ R ⇒ C H_1 \land H_2 \land \dots \land H_m \land R \Rightarrow C H1∧H2∧⋯∧Hm∧R⇒C ,就能得到 H 1 ∧ H 2 ∧ ⋯ ∧ H m ⇒ R → C H_1 \land H_2 \land \dots \land H_m \Rightarrow R \to C H1∧H2∧⋯∧Hm⇒R→C 。这种证明方法被称为CP规则,其中 R R R 是附加前提。
例5:证明
A
→
(
B
→
C
)
,
¬
D
∨
A
,
B
A \to (B\to C),\ \lnot D \lor A,\ B
A→(B→C), ¬D∨A, B 可推出
D
→
C
D \to C
D→C 。
解答:应用CP规则法:
(
1
)
D
P
(
附
加
前
提
)
(
2
)
¬
D
∨
A
P
(
3
)
A
T
,
(
1
)
,
(
2
)
,
析
取
三
段
论
(
4
)
A
→
(
B
→
C
)
P
(
5
)
B
→
C
T
,
(
3
)
,
(
4
)
,
假
言
推
理
(
6
)
B
P
(
7
)
C
T
,
(
5
)
,
(
6
)
,
假
言
推
理
(
8
)
D
→
C
C
P
规
则
\begin{aligned} &(1)\ D &\quad P(附加前提)\\ &(2)\ \lnot D \lor A &\quad P\\ &(3)\ A &\quad T, (1), (2), 析取三段论\\ &(4)\ A \to (B \to C) &\quad P\\ &(5)\ B\to C &\quad T, (3), (4), 假言推理\\ &(6)\ B&\quad P \\ &(7)\ C &\quad T,(5), (6), 假言推理\\ &(8)\ D \to C &\quad CP规则 \end{aligned}
(1) D(2) ¬D∨A(3) A(4) A→(B→C)(5) B→C(6) B(7) C(8) D→CP(附加前提)PT,(1),(2),析取三段论PT,(3),(4),假言推理PT,(5),(6),假言推理CP规则
例6:用CP规则法证明
(
P
∨
Q
)
∧
(
P
→
R
)
∧
(
Q
→
S
)
⇒
S
∨
R
(P \lor Q) \land (P \to R) \land (Q \to S) \Rightarrow S \lor R
(P∨Q)∧(P→R)∧(Q→S)⇒S∨R(构造性二难推理)。
解答:将原式转化为证明:
(
P
∨
Q
)
∧
(
P
→
R
)
∧
(
Q
→
S
)
⇒
¬
S
→
R
(P \lor Q) \land (P \to R) \land (Q \to S) \Rightarrow \lnot S\to R
(P∨Q)∧(P→R)∧(Q→S)⇒¬S→R
应用CP规则法:
(
1
)
¬
S
P
(
附
加
前
提
)
(
2
)
Q
→
S
P
(
3
)
¬
Q
T
,
(
1
)
,
(
2
)
,
拒
取
式
(
4
)
P
∨
Q
P
(
5
)
P
T
,
(
3
)
,
(
4
)
,
析
取
三
段
论
(
6
)
P
→
R
P
(
7
)
R
T
,
(
5
)
,
(
6
)
,
假
言
推
理
(
8
)
¬
S
→
R
C
P
规
则
\begin{aligned} &(1)\ \lnot S &\quad P(附加前提)\\ &(2)\ Q\to S &\quad P \\ &(3)\ \lnot Q &\quad T, (1), (2), 拒取式\\ &(4)\ P\lor Q &\quad P\\ &(5)\ P &\quad T, (3), (4), 析取三段论 \\ &(6)\ P \to R &\quad P\\ &(7)\ R &\quad T, (5), (6), 假言推理 \\ &(8)\ \lnot S \to R &\quad CP规则\\ \end{aligned}
(1) ¬S(2) Q→S(3) ¬Q(4) P∨Q(5) P(6) P→R(7) R(8) ¬S→RP(附加前提)PT,(1),(2),拒取式PT,(3),(4),析取三段论PT,(5),(6),假言推理CP规则
例7:设有下列情况,证明结论是有效的。
前提:如果A参加球赛,那么B或C也将参加球赛;如果B参加球赛,那么A不参加球赛;如果D参加球赛,那么C不参加球赛。
结论:如果A参加球赛,那么D不参加球赛。
解答:设命题
A
A
A:A参加球赛,
B
B
B:B参加球赛,
C
C
C:C参加球赛,
D
D
D:D参加球赛。要证明从
A
→
(
B
∨
C
)
,
B
→
¬
A
,
D
→
¬
C
A \to (B \lor C), B \to \lnot A, D \to \lnot C
A→(B∨C),B→¬A,D→¬C 可推出
A
→
¬
D
A \to \lnot D
A→¬D 。应用CP规则法进行证明:
(
1
)
A
P
(
附
加
前
提
)
(
2
)
A
→
(
B
∨
C
)
P
(
3
)
B
∨
C
T
,
(
1
)
,
(
2
)
,
假
言
推
理
(
4
)
B
→
¬
A
P
(
5
)
¬
B
T
,
(
1
)
,
(
4
)
,
拒
取
式
(
6
)
C
T
,
(
3
)
,
(
5
)
,
析
取
三
段
论
(
7
)
D
→
¬
C
P
(
8
)
¬
D
T
,
(
6
)
,
(
7
)
,
拒
取
式
(
9
)
A
→
¬
D
C
P
规
则
\begin{aligned} &(1)\ A &\quad P(附加前提)\\ &(2)\ A \to (B \lor C) &\quad P \\ &(3)\ B \lor C &\quad T, (1), (2), 假言推理\\ &(4)\ B \to \lnot A &\quad P\\ &(5)\ \lnot B &\quad T, (1), (4),拒取式 \\ &(6)\ C &\quad T,(3),(5),析取三段论 \\ &(7)\ D\to \lnot C &\quad P \\ &(8)\ \lnot D &\quad T, (6),(7),拒取式 \\ &(9)\ A\to \lnot D &\quad CP规则\\ \end{aligned}
(1) A(2) A→(B∨C)(3) B∨C(4) B→¬A(5) ¬B(6) C(7) D→¬C(8) ¬D(9) A→¬DP(附加前提)PT,(1),(2),假言推理PT,(1),(4),拒取式T,(3),(5),析取三段论PT,(6),(7),拒取式CP规则
本题还可以用反证法进行证明,直接证明法也行。