离散数学第七课

自然推理系统 P

命题逻辑推理理论

自然推理系统 F
推理的形式结构

定理(基本推理公式) 以下蕴涵式皆为重言式:(重言蕴涵式)

1.A⇒(A∨B) | 附加律 |

2 .(A∧B)⇒A | 化简律 |

3 .(A→B)∧A⇒B | 假言推理 |

4 .(A→B)∧¬B⇒¬A | 拒取式 |

5 .(A∨B)∧¬B⇒A | 析取三段论 |

  1. (A→B)∧(B→C)⇒(A→C) | 假言三段论 |

  2. (A↔B)∧(B↔C)⇒(A↔C) | 等价三段论 |

8 .(A→B)∧(C→D)∧(A∨C)⇒(B∨D) | 构造性二难 |

(A→B)∧(¬A→B)⇒B | 构造性二难(特殊形式) |

  1. (A→B)∧(C→D)∧(¬B∨¬D)⇒(¬A∨¬C) | 破坏性二难 |

注:每个等值式可产生两个推理定律

如,由 A⇔¬¬A 可产生 A⇒¬¬A 和¬¬A ⇒A


练习

写出以下推理的推理形式结构:

  1. 下午马芳或去看电影或去游泳。她没去看电影。所以,她去游泳了。
  2. 若下午气温超过 30℃,则王晓燕必去游泳。若她去游泳了,她就不去看电影了。所以若王晓燕没去看电影,下午气温必超过了 30℃。
  3. 若 a 是奇数,则 a 不能被 2 整除。若 a 是偶数,则 a 能被 2 整除。因此,如果 a 是偶数,则 a 不是奇数。

以下蕴含式哪些是重言式? ABEFG

复制代码
  A        (A∨B)∧¬B→A
复制代码
  B        (A→B)∧¬B→¬A
复制代码
  C      (A→B)∧B→¬A
复制代码
  D         (A→B)∧B→A
复制代码
  E       (A→B)→A
复制代码
  F          (A→B)∧(¬A→B)→B
复制代码
  G         (A→B)∧(B→C)→(A→C)

主要内容:

  • 形式系统的定义与分类
  • 自然推理系统 P
  • 在 P 中构造证明:直接证明法、附加前提证明法、归谬法

要求:

  • 掌握自然推理系统的组成
  • 熟练应用构造推理证明的方法进行推理证明
  • 包括:直接证明法、附加前提法、归谬法

一个形式系统 I 由下面四个部分组成:

  1. 非空的字母表,记作 A (I)
  2. A (I) 中符号构造的合式公式集,记作 E (I)
  3. E (I) 中一些特殊的公式组成的公理集,记作 Aₓ(I)
  4. 推理规则集,记作 R (I)

记 I=<A (I), E (I), Aₓ(I), R (I)>,其中 <A (I), E (I)> 是 I 的形式语言系统 ,<Aₓ(I), R (I)> 是 I 的形式演算系统。

形式系统一般分为两类:(本课程只介绍自然推理系统)

  • 自然推理系统:无公理,即 Aₓ=∅
  • 公理推理系统 :推出的结论是系统中的重言式,称作定理

自然推理系统 P 定义如下:

  1. 字母表
  • (1) 命题变项符号:P,Q,R...
  • (2) 联结词符号:¬, ∧, ∨, →, ↔
  • (3) 括号与逗号:(),

2. 合式公式

用 9 条推理定律和结论引入规则,可以导出以下各条推理规则

3. 推理规则

  • (1) 前提引入规则
  • (2) 结论引入规则
  • (3) 置换规则(子公式等值置换)

推理的形式结构 --- 主要的推理规则

(1) 前提引入规则

在证明的任何步骤上,都可引入前提

(2) 结论引入规则

在证明的任何步骤上,中间所证明的结论都可以作为后续证明的前提

(3) 置换规则

在证明的任何步骤上,命题公式中的任何子命题公式都可以用与之等值的命题公式置换

(4) 假言推理规则

A→B

A


∴ B

(5) 附加规则

A


∴ A∨B

(6) 化简规则

A∧B


∴ A

(7) 拒取式规则

A→B

¬B


∴ ¬A

(8) 假言三段论规则

A→B

B→C


∴ A→C

(9) 析取三段论规则

A∨B

¬B


∴ A

(10) 构造性二难推理规则

A→B

C→D

A∨C


∴ B∨D

(11) 破坏性二难推理规则

A→B

C→D

¬B∨¬D


∴ ¬A∨¬C

(12) 合取引入规则

A

B


∴ A∧B


例:构造下面推理的证明(重点!!!!!!!!!!其实这里符号最好用小写)

若明天是星期一或星期三,我明天就有课。若我明天有课,今天必备课。我今天没备课。所以,明天不是星期一、也不是星期三。

解:

(1) 设命题并符号化

  • 设 P:明天是星期一
  • Q:明天是星期三
  • R:我明天有课
  • S:我今天备课

(2) 写出证明的形式结构

  • 前提:(P∨Q)→R, R→S, ¬S
  • 结论:¬P∧¬Q

(3) 证明(证明时每一个前提都要用):

① ¬S ------ 前提引入

② R→S ------ 前提引入

③ ¬R ------ ①②拒取式

④ (P∨Q)→R ------ 前提引入

⑤ ¬(P∨Q) ------ ③④拒取式

⑥ ¬P∧¬Q ------ ⑤置换


例:构造下列推理的论证

  • 前提:P∨Q, P→¬R, S→T, ¬S→R
  • 结论:Q

证明:

(1) S→T ------ 前提引入

(2) ¬T ------ 前提引入

(3) ¬S ------ (1)(2) 拒取式

(4) ¬S→R ------ 前提引入

(5) R ------ (3)(4) 假言推理

(6) P→¬R ------ 前提引入

(7) ¬P ------ (5)(6) 拒取式

(8) P∨Q ------ 前提引入

(9) Q ------ (7)(8) 析取三段论

推理正确

附加前提证明法(适用于结论为蕴涵式)

欲证 等价地证明
前提:A₁, A₂, ..., Aₖ 前提:A₁, A₂, ..., Aₖ, C
结论:C→B 结论:B

理由:

(A₁∧A₂∧...∧Aₖ)→(C→B)

⇔ ¬(A₁∧A₂∧...∧Aₖ)∨(¬C∨B)

⇔ ¬(A₁∧A₂∧...∧Aₖ∧C)∨B

⇔ (A₁∧A₂∧...∧Aₖ∧C)→B


例:构造下面推理的证明

2 是素数或合数。若 2 是素数,则√2 是无理数。若√2 是无理数,则 4 不是素数。所以,如果 4 是素数,则 2 是合数。

解:用附加前提证明法构造证明

(1) 设 P:2 是素数,Q:2 是合数,R:√2 是无理数,S:4 是素数

(2) 推理的形式结构

  • 前提:P∨Q, P→R, R→¬S
  • 结论:S→Q

(3) 证明:

① S ------ 附加前提引入

② P→R ------ 前提引入

③ R→¬S ------ 前提引入

④ P→¬S ------ ②③假言三段论

⑤ ¬P ------ ①④拒取式

⑥ P∨Q ------ 前提引入

⑦ Q ------ ⑤⑥析取三段论

eg:


在自然推理系统 P 中使用附加前提证明法构造下面推理的证明

  • 前提:¬P∨(Q→R), ¬S∨P, Q
  • 结论:S→R

归谬法(反证法)

欲证:

  • 前提:A₁, A₂, ..., Aₖ
  • 结论:B

做法: 在前提中加入 ¬B,推出矛盾

理由:

A₁∧A₂∧...∧Aₖ→B

⇔ ¬(A₁∧A₂∧...∧Aₖ)∨B

⇔ ¬(A₁∧A₂∧...∧Aₖ∧¬B)

⇔ ¬(A₁∧A₂∧...∧Aₖ∧¬B)∨0

⇔ A₁∧A₂∧...∧Aₖ∧¬B→0

例:

  • 前提:(P∧Q)∨R, R→S, ¬S, P
  • 结论:¬Q

证明:用归谬法

① Q ------ 结论否定引入

② ¬S ------ 前提引入

③ R→S ------ 前提引入

④ ¬R ------ ②③拒取式

⑤ (P∧Q)∨R ------ 前提引入

⑥ ¬(P∧Q) ------ ④⑤析取三段论

⑦ ¬P∨¬Q ------ ⑥置换

⑧ P ------ 前提引入

⑨ ¬Q ------ ⑦⑧析取三段论

⑩ P∧¬P ------ ⑧⑨合取

结果是矛盾


在自然推理系统 P 中使用归谬法构造下面推理的证明

  • 前提:P→¬Q, ¬Q∨R, ¬R
  • 结论:¬P
  • 自己写

要求:

理解并记住推理形式结构的两种形式

  1. (A₁∧A₂∧...∧Aₖ)→B
    1. 前提:A₁, A₂, ..., Aₖ;结论:B
  1. 熟练掌握判断推理是否正确的不同方法(如真值表法、等值演算法、主析取范式法等)
  2. 牢记 P 系统中各条推理规则
  3. 熟练掌握构造证明的直接证明法、附加前提证明法和归谬法
  4. 会解决实际中的简单推理问题

1. 判断下面推理是否正确

(1) 前提:¬P→Q,¬Q;

结论:¬P

推理的形式结构:(¬P→Q)∧¬Q→P

解:

方法一:等值演算法

(¬P→Q)∧¬Q→P

⇔ ¬((P∨Q)∧¬Q)∨¬P

⇔ (¬P∧¬Q)∨Q∨¬P

⇔...

⇔¬ P∨Q

易知 10 是成假赋值,不是重言式,所以推理不正确。

方法二:主析取范式法

(¬P→Q)∧¬Q→¬P

⇔...

⇔¬ P∨Q

⇔ M₂

⇔ m₀∨m₁∨m₃

未含 m₂,不是重言式,推理不正确。

方法三:真值表法

| P | Q | ¬P→Q | (¬P→Q)∧¬Q | (¬P→Q)∧¬Q→¬P |

0 0 0 0 1

0 1 1 0 1

1 0 1 1 0

1 1 1 0 1

不是重言式,推理不正确。

方法四: 直接观察出 10 是成假赋值

(2) 前提:q→r, p→¬r

结论:q→¬p

解 推理的形式结构:

(q→r)∧(p→¬r)→(q→¬p)

用等值演算法:

(q→r)∧(p→¬r)→(q→¬p)

⇔ (¬q∨r)∧(¬p∨¬r)→(¬q∨¬p)

⇔ ¬((¬q∨r)∧(¬p∨¬r))∨(¬q∨¬p)

⇔ ¬((q∧¬r)∨(p∧r))∨(¬q∨¬p)

⇔ ((¬q∨r)∧(¬p∨¬r))∨(¬q∨¬p)

⇔ 1

推理正确


  1. 在系统 P 中构造下面推理的证明:
    如果今天是周六,我们就到颐和园或圆明园玩。如果颐和园游人太多,就不去颐和园。今天是周六,并且颐和园游人太多。所以,我们去圆明园或动物园玩。

证明:

(1) 设

p:今天是周六

q:到颐和园玩

r:到圆明园玩

s:颐和园游人太多

t:到动物园玩

(2) 前提:p→(q∨r), s→¬q, p, s

结论:r∨t

(3) 证明:

① p→(q∨r) 前提引入

② p 前提引入

③ q∨r ①②假言推理

④ s→¬q 前提引入

⑤ s 前提引入

⑥ ¬q ④⑤假言推理

⑦ r ③⑥析取三段论

⑧ r∨t ⑦附加

相关推荐
迪丽热爱2 小时前
多媒体应用31-914(计算机硬件与体系结构)
学习
dadaobusi3 小时前
学习:BPU
学习
ab1237683 小时前
OpenCV 学习笔记
笔记·opencv·学习
磁场转动100万匹4 小时前
Hive 学习第一天:搞懂它是什么,并搭好可用的环境
hive·hadoop·学习
dadaobusi4 小时前
RDMA最新进展
学习
我命由我123454 小时前
金融租赁极简理解
经验分享·学习·职场和发展·金融·求职招聘·职场发展·学习方法
辣知4 小时前
辣知·化智75 道德经带给现代人的智慧
学习
小黄人软件5 小时前
aipy 智能体学习2:源码运行执行轨径主干
学习
JWASX5 小时前
Java 转 go 学习 - dubbo-go(1)
学习·golang