一、推理的基本概念
1.1 推理的定义
定义:设A和B是两个命题公式,当蕴含式 A→B 为重言式时,称由A可以推出B,或称B是前提A的有效结论,记作 A⇒B。
要点:
- 推理是由给定的前提推出想要的结论
- 推理过程中需要用到推理规则
- 前提可以有多个:A1,A2,⋯,An⇒B
1.2 证明推理有效性的方法
证明B是A的有效结论有三种方法:
| 方法 | 说明 |
|---|
| 真值表法 | 列真值表,验证 A→B 恒为真 |
| 等值演算法 | 用等值式将 A→B 化简为1 |
| 推理规则证明法 | 在自然推理系统P中用推理规则证明(考试重点) |
二、演绎
2.1 演绎的定义
定义:设S是一个命题公式的集合(前提集合)。从S推出公式G的一个演绎是公式的一个有限序列:G1,G2,⋯,Gk。其中,Gi 或者属于S,或者是某些 Gj(j<i)的逻辑结果。并且 Gk 就是G。我们称公式G为此演绎的逻辑结果,或称从S演绎出G,记作 S⇒G。
示例:设 S={P∨Q,Q→R,P→M,¬M},则下面的公式序列:
¬M,P→M,¬P,P∨Q,Q,Q→R,R
就是从S推出R的一个演绎。
2.2 基本蕴涵式
必须熟记以下基本蕴涵式:
| 序号 | 蕴含式 | 说明 |
|---|
| 1 | P∧Q⇒P | 化简 |
| 2 | P∧Q⇒Q | 化简 |
| 3 | P⇒P∨Q | 附加 |
| 4 | Q⇒P∨Q | 附加 |
| 5 | ¬P⇒P→Q | 因为 P→Q⇔¬P∨Q |
| 6 | Q⇒P→Q | 因为 P→Q⇔¬P∨Q |
| 7 | ¬(P→Q)⇒P | 由 P→Q⇔¬P∨Q |
| 8 | ¬(P→Q)⇒¬Q | 由 P→Q⇔¬P∨Q |
推理中常用的蕴含式:
| 序号 | 蕴含式 | 说明 |
|---|
| 1 | ¬(P→Q)⇒¬Q | 拒取式的变体 |
| 2 | P,Q⇒P∧Q | 合取引入 |
| 3 | ¬P,P∨Q⇒Q | 析取三段论 |
| 4 | P,P→Q⇒Q | 假言推理 |
| 5 | ¬Q,P→Q⇒¬P | 拒取式 |
| 6 | P→Q,Q→R⇒P→R | 假言三段论 |
| 7 | P∨Q,P→R,Q→R⇒R | 构造性二难 |
2.3 形式演绎法
定义:根据基本等价式和基本蕴涵式,从前提集合S出发,演绎出结论G。
三条基本规则:
P规则(前提引入规则)
在演绎过程中可以随便使用前提集合中任一公式。
说明:前提可以在证明的任何步骤中引入使用。
T规则(逻辑结果引入规则)
在演绎过程中可以随便使用前面演绎出的某些公式的逻辑结果。
说明:如果前面已经推出了 A 和 A→B,则可以推出 B。
CP规则(附加前提规则)
如果需要演绎出的公式是 P→Q 的形式,则可以将P作为附加前提使用,设法演绎出Q。
说明:当结论是蕴含式时,将前件作为附加前提,证明后件成立。
2.4 证明的三种方法
| 方法 | 说明 |
|---|
| 真值表法 | 列真值表验证 |
| 直接证法 | 使用P规则和T规则直接推导 |
| 间接证法 | 使用CP规则或反证法 |
三、基本推理规则
3.1 十大推理规则
必须熟记以下推理规则的公式和名称:
规则1:化简规则(化简律)
P∧Q⊢P
说明:有前提P∧Q,可以推出P成立(也可以推出Q成立)。
规则2:附加规则
P⊢P∨Q
说明:有前提P,可以推出P∨Q成立。
规则3:假言推理
P, P→Q⊢Q
说明:P成立,且"如果P则Q"成立,那么Q成立。这是最常用的推理规则。
规则4:拒取式
P→Q, ¬Q⊢¬P
说明:如果P则Q,现在Q不成立,那么P一定不成立。
规则5:析取三段论
P∨Q, ¬P⊢Q
说明:P或Q成立,现在P不成立,那么Q一定成立。
规则6:合取式
P, Q⊢P∧Q
说明:P成立且Q成立,那么P∧Q成立。
规则7:假言三段论
P→Q, Q→R⊢P→R
说明:如果P则Q,如果Q则R,那么如果P则R。
规则8:等价三段论
P↔Q, Q↔R⊢P↔R
说明:P当且仅当Q,Q当且仅当R,那么P当且仅当R。
规则9:构造性二难
P→Q, R→S, P∨R⊢Q∨S
说明:如果P则Q,如果R则S,现在P或R成立,那么Q或S成立。
规则10:归谬解释(破坏性二难)
P∨Q, ¬P∨R⊢Q∨R
说明:既有P又有¬P,P肯定不成立,所以Q或R成立。
3.2 推理规则速查表
| 序号 | 名称 | 公式 |
|---|
| 1 | 化简规则 | P∧Q⊢P |
| 2 | 附加规则 | P⊢P∨Q |
| 3 | 假言推理 | P, P→Q⊢Q |
| 4 | 拒取式 | P→Q, ¬Q⊢¬P |
| 5 | 析取三段论 | P∨Q, ¬P⊢Q |
| 6 | 合取式 | P, Q⊢P∧Q |
| 7 | 假言三段论 | P→Q, Q→R⊢P→R |
| 8 | 等价三段论 | P↔Q, Q↔R⊢P↔R |
| 9 | 构造性二难 | P→Q, R→S, P∨R⊢Q∨S |
| 10 | 归谬解释 | P∨Q, ¬P∨R⊢Q∨R |
四、证明方法
4.1 直接证明法
思路:由前提直接推导结论。
步骤:
- 列出所有前提
- 利用推理规则逐步推导
- 最终得到结论
形式证明的格式:
每一步包含三部分:
- 步骤号:序号
- 公式:当前步骤的命题公式
- 理由:前提引入 / 置换规则 / 某推理规则(由第X步…得到)
4.2 归谬法(反证法)
思路:将结论的否定作为附加前提,推出矛盾。
步骤:
- 将结论的否定作为附加前提引入
- 利用推理规则推导
- 得到矛盾(如 S∧¬S)
- 说明原结论成立
4.3 附加前提证明法
适用条件:当要证明的结论是蕴含式 S→R 时使用。
思路:将结论的前件S作为附加前提,证明后件R成立。
步骤:
- 将结论的前件S作为附加前提引入
- 利用推理规则推导
- 证明后件R成立
五、形式证明示例
5.1 例题一:直接证明法
题目:已知前提 P∨Q、P↔R、Q→S,证明 S∨R。
分析:
- P∨Q⇔¬P→Q
- 由 ¬P→Q 和 Q→S,用假言三段论得 ¬P→S
- P↔R⇒P→R
- ¬P→S⇔¬S→P
- 由 ¬S→P 和 P→R,用假言三段论得 ¬S→R⇔S∨R
证明:
| 步骤 | 公式 | 理由 |
|---|
| 1 | P∨Q | 前提引入 |
| 2 | ¬P→Q | 由1,置换规则 |
| 3 | Q→S | 前提引入 |
| 4 | ¬P→S | 由2、3,假言三段论 |
| 5 | ¬S→P | 由4,置换规则 |
| 6 | P↔R | 前提引入 |
| 7 | (P→R)∧(R→P) | 由6,置换规则 |
| 8 | P→R | 由7,化简规则 |
| 9 | ¬S→R | 由5、8,假言三段论 |
| 10 | S∨R | 由9,置换规则 |
5.2 例题二:自然语言翻译 + 直接证明
题目:如果马会飞或羊吃草,则母鸡就会变飞鸟;如果母鸡变飞鸟,那么烤熟的鸭子还会跑;烤熟的鸭子不会跑。所以羊儿不吃草。
翻译:
- 令P:马会飞
- 令Q:羊吃草
- 令R:母鸡变飞鸟
- 令S:烤熟的鸭子会跑
前提:(P∨Q)→R,R→S,¬S
结论:¬Q
证明:
| 步骤 | 公式 | 理由 |
|---|
| 1 | ¬S | 前提引入 |
| 2 | R→S | 前提引入 |
| 3 | ¬R | 由1、2,拒取式 |
| 4 | (P∨Q)→R | 前提引入 |
| 5 | ¬(P∨Q) | 由3、4,拒取式 |
| 6 | ¬P∧¬Q | 由5,置换规则(德摩根律) |
| 7 | ¬Q | 由6,化简规则 |
5.3 例题三:归谬法(反证法)
题目:同例题二,用归谬法证明。
证明:
| 步骤 | 公式 | 理由 |
|---|
| 1 | ¬(¬Q) | 附加前提引入(结论的否定) |
| 2 | Q | 由1,置换规则(双否律) |
| 3 | P∨Q | 由2,附加规则 |
| 4 | (P∨Q)→R | 前提引入 |
| 5 | R | 由3、4,假言推理 |
| 6 | R→S | 前提引入 |
| 7 | S | 由5、6,假言推理 |
| 8 | ¬S | 前提引入 |
| 9 | S∧¬S | 由7、8,合取式 |
| 10 | 矛盾 | 由9 |
| 11 | ¬Q | 故原结论成立 |
5.4 例题四:附加前提证明法
题目:如果小张和小王去看电影,则小李也去看电影;小赵不去看电影或小张去看电影;小王去看电影。所以,当小赵去看电影时,小李也去看电影。
翻译:
- 令P:小张去看电影
- 令Q:小王去看电影
- 令R:小李去看电影
- 令S:小赵去看电影
前提:(P∧Q)→R,¬S∨P,Q
结论:S→R
证明(附加前提证明法):
| 步骤 | 公式 | 理由 |
|---|
| 1 | S | 附加前提引入 |
| 2 | ¬S∨P | 前提引入 |
| 3 | P | 由1、2,析取三段论 |
| 4 | Q | 前提引入 |
| 5 | P∧Q | 由3、4,合取式 |
| 6 | (P∧Q)→R | 前提引入 |
| 7 | R | 由5、6,假言推理 |
结论:S→R 成立。
六、证明技巧总结
6.1 翻译步骤
对于自然语言推理问题:
- 找出所有原子命题
- 用符号表示每个原子命题
- 逐句翻译为命题公式
- 明确前提和结论
6.2 证明策略
分析阶段(草稿纸):
- 观察前提的形式
- 思考如何利用推理规则连接前提和结论
- 可以用等值式先做变换
正式证明:
- 每一步都要写清楚:步骤号、公式、理由
- 理由要写明:由第几步、利用什么规则
- 注意区分"前提引入"和"附加前提引入"
6.3 常用等值变换
在推理过程中,常需要先做等值变换:
- P∨Q⇔¬P→Q(析取变蕴含)
- P→Q⇔¬P∨Q(蕴含变析取)
- P↔Q⇔(P→Q)∧(Q→P)(等价变合取)
- ¬(P∨Q)⇔¬P∧¬Q(德摩根律)
本节小结
- 推理的定义:当 A→B 为重言式时,B是A的有效结论
- 演绎的定义:从前提集合S推出公式G的有限公式序列
- 基本蕴涵式:必须熟记常用蕴含式
- 三大规则:P规则(前提引入)、T规则(逻辑结果引入)、CP规则(附加前提)
- 三大证明方法:直接证明法、归谬法(反证法)、附加前提证明法
- 十大推理规则:化简规则、附加规则、假言推理、拒取式、析取三段论、合取式、假言三段论、等价三段论、构造性二难、归谬解释
- 形式证明格式:每步写明公式和理由
- 翻译技巧:先找原子命题,再逐句翻译
- 附加前提证明法:适用于结论为蕴含式的情况
练习题
练习1:自然语言推理(直接证明法)
题目:如果交通阻塞迟到了,那么小张迟到了;如果小张迟到了,那么他就不能评优;小张没有评优是不对的(即小张评优了)。所以交通没有阻塞且小张没有迟到。
翻译:设 P:交通阻塞,Q:小张迟到,R:小张评优。
前提:P→Q,Q→¬R,R
结论:¬P∧¬Q
证明:
| 步骤 | 公式 | 理由 |
|---|
| 1 | R | 前提引入 |
| 2 | Q→¬R | 前提引入 |
| 3 | ¬Q | 由1、2,拒取式 |
| 4 | P→Q | 前提引入 |
| 5 | ¬P | 由3、4,拒取式 |
| 6 | ¬P∧¬Q | 由3、5,合取式 |
练习2:自然语言推理(归谬法)
题目:同练习1,用归谬法证明。
证明:
| 步骤 | 公式 | 理由 |
|---|
| 1 | ¬(¬P∧¬Q) | 附加前提引入(结论的否定) |
| 2 | P∨Q | 由1,置换规则(德摩根律) |
| 3 | R | 前提引入 |
| 4 | Q→¬R | 前提引入 |
| 5 | ¬Q | 由3、4,拒取式 |
| 6 | P | 由2、5,析取三段论 |
| 7 | P→Q | 前提引入 |
| 8 | Q | 由6、7,假言推理 |
| 9 | Q∧¬Q | 由5、8,合取式 |
| 10 | 矛盾 | 由9 |
| 11 | ¬P∧¬Q | 故原结论成立 |
练习3:附加前提证明法
题目:前提:¬S∨P,Q,(P∧Q)→R。结论:S→R。
证明(CP规则):
| 步骤 | 公式 | 理由 |
|---|
| 1 | S | 附加前提引入 |
| 2 | ¬S∨P | 前提引入 |
| 3 | P | 由1、2,析取三段论 |
| 4 | Q | 前提引入 |
| 5 | P∧Q | 由3、4,合取式 |
| 6 | (P∧Q)→R | 前提引入 |
| 7 | R | 由5、6,假言推理 |
结论:S→R 成立。
练习4:综合推理
题目:前提:P∨Q,P→R,Q→S。结论:R∨S。
证明:
| 步骤 | 公式 | 理由 |
|---|
| 1 | P∨Q | 前提引入 |
| 2 | P→R | 前提引入 |
| 3 | Q→S | 前提引入 |
| 4 | R∨S | 由1、2、3,构造性二难 |
关键术语速查
| 术语 | 定义 |
|---|
| 推理 | 由前提推出结论的过程 |
| 有效结论 | 当 A→B 为重言式时,B是A的有效结论 |
| 前提 | 推理中已知的命题公式 |
| 结论 | 推理中要证明的命题公式 |
| 演绎 | 从前提集合S推出公式G的有限公式序列 |
| P规则 | 前提引入规则,可随便使用前提 |
| T规则 | 逻辑结果引入规则,可使用前面演绎出的公式的逻辑结果 |
| CP规则 | 附加前提规则,将蕴含式结论的前件作为附加前提 |
| 化简规则 | P∧Q⊢P |
| 附加规则 | P⊢P∨Q |
| 假言推理 | P, P→Q⊢Q |
| 拒取式 | P→Q, ¬Q⊢¬P |
| 析取三段论 | P∨Q, ¬P⊢Q |
| 合取式 | P, Q⊢P∧Q |
| 假言三段论 | P→Q, Q→R⊢P→R |
| 等价三段论 | P↔Q, Q↔R⊢P↔R |
| 构造性二难 | P→Q, R→S, P∨R⊢Q∨S |
| 归谬解释 | P∨Q, ¬P∨R⊢Q∨R |
| 直接证明法 | 由前提直接推导结论 |
| 归谬法 | 将结论否定作为附加前提,推出矛盾 |
| 附加前提证明法 | 将蕴含式结论的前件作为附加前提,证明后件 |
| 前提引入 | 直接使用已知前提 |
| 置换规则 | 用等值式对公式进行等价变换 |
| 附加前提引入 | 将结论的否定或前件作为额外前提引入 |