【面向计算机的数理逻辑/软件理论基础笔记】命题逻辑系统的蕴含和自然演绎

基本定义

  • 推理的定义:从一组前提合乎逻辑地推出结果的思维过程。
  • 比如我们有一堆叫做 G 1 , G 2 . . . G n G_1,G_2...G_n G1,G2...Gn的前提,在这些前提均成立的情况下,我们可以得到一个叫做 H H H的结论,这就叫做推理。类似于生活中的,提前:我课前预习,我上课做笔记,我下课及时复习,就可以推出我可以通过期末考试。
  • 而在数学中,我们将 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 \wedge G_2 \wedge ... \wedge G_n G1G2...Gn为真,则公式 H H H的结果也为真,这就叫做数学上的推理。
  • 公式:
    1. 推理公式: G 1 , G 2 . . . G n ⇒ H G_1,G_2...G_n \Rightarrow H G1,G2...GnH
    2. 通常,用集合 Γ \Gamma Γ来表示一组前提,记作 Γ = { G 1 , G 2 . . . G n } \Gamma=\{G_1,G_2...G_n \} Γ={G1,G2...Gn},此时,推理公式也可写成: Γ ⇒ H \Gamma \Rightarrow H ΓH
  • 在这里, ⇒ \Rightarrow 也叫做蕴含,只不过这个蕴含表示的是公式之间的关系,我们之前学的蕴含 → \to 是命题变元的运算符。
  • 有时,我们使用 ⊢ \vdash 代替 ⇒ \Rightarrow 来表示公式之间的蕴含关系,如 Γ ⊢ H \Gamma \vdash H ΓH
  • G 1 , G 2 . . . G n G_1,G_2...G_n G1,G2...Gn能推出 H H H的时候,我们称 G 1 , G 2 . . . G n ⇒ H G_1,G_2...G_n \Rightarrow H G1,G2...GnH为有效的,否则称为无效的。
  • 定理:当且仅当 ( G 1 ∧ G 2 ∧ . . . ∧ G n ) → H (G_1 \wedge G_2 \wedge ... \wedge G_n) \to H (G1G2...Gn)H为永真公式时,前提集合 Γ = { G 1 , G 2 . . . G n } \Gamma=\{G_1,G_2...G_n \} Γ={G1,G2...Gn}的逻辑结果为公式 H H H

永真公式也叫重言式,上述定理中,不管 G 1 , G 2 . . . G n G_1,G_2...G_n G1,G2...Gn H H H如何取值, ( G 1 ∧ G 2 ∧ . . . ∧ G n ) → H (G_1 \wedge G_2 \wedge ... \wedge G_n) \to H (G1G2...Gn)H结果始终为1时,被称为永真公式。

  • 范例:判断推理 P → Q , P ⇒ Q P \to Q,P \Rightarrow Q PQ,PQ是否有效
    \quad
    答案:题目中 P → Q P \to Q PQ P P P是前提,Q是结论 ,询问 P → Q , P ⇒ Q P \to Q,P \Rightarrow Q PQ,PQ是否有效是否有效,其实就是在询问, P 、 Q P、Q PQ取任意值时, ( ( P → Q ) ∧ P → Q ) ((P \to Q) \wedge P \to Q) ((PQ)PQ)的结果是否始终为真。有三种方法来验证:
  1. 画真值表
P P P Q Q Q P → Q P \to Q PQ ( P → Q ) ∧ P (P \to Q )\wedge P (PQ)P ( ( P → Q ) ∧ P ) → Q ((P \to Q )\wedge P) \to Q ((PQ)P)Q
00101
01101
10001
11111

我们可以看到 ( ( P → Q ) ∧ P ) → Q ((P \to Q )\wedge P) \to Q ((PQ)P)Q的值始终为1,所以 P → Q , P ⇒ Q P \to Q,P \Rightarrow Q PQ,PQ有效。

  1. 公式转换
    ( ( P → Q ) ∧ P → Q ) ((P \to Q) \wedge P \to Q) ((PQ)PQ)
    = ¬ ( ( ¬ P ∨ Q ) ∧ P ) ∨ Q =\neg((\neg P \vee Q) \wedge P) \vee Q =¬((¬PQ)P)Q
    = ( ¬ ( ¬ P ∨ Q ) ∨ ¬ P ) ∨ Q =(\neg(\neg P \vee Q) \vee \neg P) \vee Q =(¬(¬PQ)¬P)Q
    = ¬ ( ¬ P ∨ Q ) ∨ ¬ P ∨ Q =\neg(\neg P \vee Q) \vee \neg P \vee Q =¬(¬PQ)¬PQ
    = ¬ ( ¬ P ∨ Q ) ∨ ( ¬ P ∨ Q ) =\neg(\neg P \vee Q) \vee (\neg P \vee Q) =¬(¬PQ)(¬PQ)
    = 1 =1 =1
    因为公式可以转换为1,所以不管 P , Q P,Q P,Q取何值,公式始终为永真公式,也因此 P → Q , P ⇒ Q P \to Q,P \Rightarrow Q PQ,PQ有效。
  2. 主析取范式
    ( ( P → Q ) ∧ P → Q ) ((P \to Q) \wedge P \to Q) ((PQ)PQ)
    = ¬ ( ( ¬ P ∨ Q ) ∧ P ) ∨ Q =\neg((\neg P \vee Q) \wedge P) \vee Q =¬((¬PQ)P)Q
    = ¬ ( ¬ P ∨ Q ) ∨ ¬ P ∨ Q =\neg(\neg P \vee Q) \vee \neg P \vee Q =¬(¬PQ)¬PQ
    = ( P ∨ ¬ Q ) ∨ ¬ P ∨ Q =(P \vee \neg Q)\vee \neg P \vee Q =(P¬Q)¬PQ
    = ( P ∨ ¬ Q ) ∨ ( ¬ P ) ∨ ( Q ) =(P \vee \neg Q)\vee (\neg P) \vee (Q) =(P¬Q)(¬P)(Q)
    = ( P ∨ ¬ Q ) ∨ ( ¬ P ∧ ( ¬ Q ∨ Q ) ) ∨ ( ( ¬ P ∨ P ) ∧ Q ) =(P \vee \neg Q) \vee (\neg P \wedge (\neg Q \vee Q)) \vee ((\neg P \vee P) \wedge Q) =(P¬Q)(¬P(¬QQ))((¬PP)Q)
    = ( ¬ P ∧ ¬ Q ) ∨ ( ¬ P ∧ Q ) ∨ ( P ∧ ¬ Q ) ∨ ( P ∧ Q ) =(\neg P \wedge \neg Q) \vee (\neg P \wedge Q)\vee (P \wedge \neg Q)\vee (P \wedge Q) =(¬P¬Q)(¬PQ)(P¬Q)(PQ)
    此公式包含了所有的析取项,所以此公式为永真公式,因此 P → Q , P ⇒ Q P \to Q,P \Rightarrow Q PQ,PQ有效。

( ¬ P ∧ ¬ Q ) ∨ ( ¬ P ∧ Q ) ∨ ( P ∧ ¬ Q ) ∨ ( P ∧ Q ) (\neg P \wedge \neg Q) \vee (\neg P \wedge Q)\vee (P \wedge \neg Q)\vee (P \wedge Q) (¬P¬Q)(¬PQ)(P¬Q)(PQ)格式为: m 0 ∨ m 1 ∨ m 2 ∨ m 3 m_0\vee m_1\vee m_2\vee m_3 m0m1m2m3符合永真公式的条件。

基本公式

  • G , H , I G,H,I G,H,I为任意的命题公式
  • 简化规则:
    • I 1 : G ∧ H ⇒ G I_{1}:G \wedge H \Rightarrow G I1:GHG

    I 1 I_{1} I1解释:比如G是我不会飞,H是羊不会飞, G ∧ H G \wedge H GH表示我和羊都不会飞,那么根据 G ∧ H G \wedge H GH可以知道,羊是不会飞的,因此 G ∧ H ⇒ G G \wedge H \Rightarrow G GHG

    • I 2 : G ∧ H ⇒ H I_{2}:G \wedge H \Rightarrow H I2:GHH
  • 添加规则
    • I 3 : G ⇒ G ∨ H I_{3}:G \Rightarrow G \vee H I3:GGH
    • I 4 : H ⇒ G ∨ H I_{4}:H\Rightarrow G \vee H I4:HGH
  • 合取引入规则
    • I 5 : G , H ⇒ G ∧ H I_{5}:G,H \Rightarrow G \wedge H I5:G,HGH
  • 选言三段论
    • I 6 : G ∨ H , ¬ G ⇒ H I_{6}:G \vee H,\neg G \Rightarrow H I6:GH,¬GH

    I 6 I_{6} I6解释:比如 G G G是我可以飞, H H H是鸟可以飞, G ∨ H G \vee H GH表示我可以飞或鸟可以飞或我和鸟都可以飞, ¬ G \neg G ¬G表示我不可以飞,在 G ∨ H , ¬ G G \vee H,\neg G GH,¬G公式中,因为必须有一个可以飞,而我不可以飞,可以得出,鸟是可以飞的,也就是 H H H,因此 G ∨ H , ¬ G ⇒ H G \vee H,\neg G \Rightarrow H GH,¬GH

    • I 7 : G ∨ H , ¬ H ⇒ G I_{7}:G \vee H,\neg H \Rightarrow G I7:GH,¬HG
  • 假言推理规则
    • I 8 : G → H , G ⇒ H I_{8}:G \to H,G \Rightarrow H I8:GH,GH
  • 否定后件式
    • I 9 : G → H , ¬ H ⇒ ¬ G I_{9}:G \to H, \neg H \Rightarrow \neg G I9:GH,¬H¬G
  • 假言三段论
    • I 10 : G → H , H → I ⇒ G → I I_{10}:G \to H,H \to I \Rightarrow G \to I I10:GH,HIGI
  • 二难推论
    • I 11 : G ∨ H , G → I , H → I ⇒ I I_{11}:G \vee H,G \to I ,H \to I \Rightarrow I I11:GH,GI,HII

I 11 I_{11} I11解释: G ∨ H G \vee H GH表示 G G G H H H有一个成立, G → I G \to I GI表示 G G G蕴含 I I I G G G成立则 I I I也成立, H → I H \to I HI表示 H H H蕴含 I I I H H H成立则 I I I也成立。因此,可以通过 G ∨ H , G → I , H → I G \vee H,G \to I ,H \to I GH,GI,HI成立,得到 I I I也成立。

蕴含关系范例

  • 如果 a 是偶数,则 a 能被 2 整除;a 是偶数。所以,a 能被 2 整除。
    可描述为: P → Q , P ⇒ Q P \to Q, P \Rightarrow Q PQ,PQ 假言推理规则
  • 如果一个人是单身汉,则他不幸福;如果一个人不幸福,则他死得早。所以,单身汉死得早。
    可描述为: P → Q , Q → R ⇒ P → R P \to Q, Q \to R \Rightarrow P \to R PQ,QRPR假言三段论
  • 若你发电子邮件告诉我密码,则我将完成程序的编写;我没有完成程序的编写。所以,你没
    有发电子邮件告诉我密码。
    可描述为: P → Q , ¬ Q ⇒ ¬ P P \to Q, \neg Q \Rightarrow \neg P PQ,¬Q¬P 否定后件式
  • 这个案件的凶手肯定是王某或陈某;经过调查,王某不是凶手。所以,陈某是凶手。
    可描述为: P ∨ Q , ¬ P ⇒ Q P \vee Q,\neg P \Rightarrow Q PQ,¬PQ 选言三段论

自然演绎法推理

  • 推理规则:
    • 规则P:称为前提引用规则,在推导过程中,可随时引入前提集合中的任意一个前提
    • 规则T:称为逻辑结果引用规则,在推导的过程中,可以随时引入公式 S,该公式 S 是由其前的一个或多个公式推导出来的逻辑结果
    • 规则CP:(称为附加前提规则):如果能从给定的前提集合 Γ \Gamma Γ与公式P推导出S,则能从此前提集合 Γ \Gamma Γ推导出P → \to S
  • 演绎:从前提集合 Γ \Gamma Γ推出结论 H H H的一个演绎是构造命题公式的一个有限序列:
    H 1 , H 2 , H 3 . . . H n − 1 , H n H_1,H_2,H_3...H_{n-1},H_n H1,H2,H3...Hn1,Hn
    在序列中,总共分为三部分
    • 第一部分是题目中给出的公式,我们叫做前提,他们在题目中通常以 Γ = { P ∨ Q , ¬ S , P → S } \Gamma=\{P \vee Q , \neg S,P \to S\} Γ={PQ,¬S,PS}等形式给出,这里面总共由三个前提,可以用 H 1 = P ∨ Q , H 2 = ¬ S , H 3 = P → S H_1 = P \vee Q,H_2 = \neg S,H_3 = P \to S H1=PQ,H2=¬S,H3=PS表示。
    • 第二部分是有效结论,由题目中前提和上文中提到的一些列基本公式 ( I 1 , I 2 . . . I 11 ) (I_1,I_2...I_{11}) (I1,I2...I11)推到出来的公式,比如我们可以通过 H 2 H_2 H2 H 3 H_3 H3推导出 H 4 = ¬ P H_4 = \neg P H4=¬P
    • 第三部分是结论,通常 H n H_n Hn就是我们要推导出的结论,也写作 H H H
  • 演绎-直接证明法范例:
    • 例题一:设前提集合 Γ = P ∨ Q , Q → R , P → S , ¬ S \Gamma = {P \vee Q, Q \to R, P \to S, \neg S} Γ=PQ,QR,PS,¬S,结论 H = R ∧ ( P ∨ Q ) H = R \wedge (P \vee Q) H=R(PQ)。证明: Γ ⇒ H \Gamma \Rightarrow H ΓH
      • 答案:
        ( 1 ) P → S P ( 2 ) ¬ S P ( 3 ) ¬ P T , ( 1 ) , ( 2 ) ( 4 ) P ∨ Q T , ( 1 ) , ( 2 ) ( 5 ) Q T , ( 3 ) , ( 4 ) , I ( 6 ) Q → R P ( 7 ) R T , ( 5 ) , ( 6 ) , I ( 8 ) R ∧ ( P ∨ Q ) T , ( 4 ) , ( 7 ) , I \begin{aligned} &(1)P \to S & P \\ &(2)\neg S& P \\ &(3)\neg P & T,(1),(2) \\ &(4)P \vee Q & T,(1),(2) \\ &(5)Q & T,(3),(4),I \\ &(6)Q \to R & P \\ &(7) R & T,(5),(6),I \\ &(8)R \wedge (P \vee Q) & T,(4),(7),I \\ \end{aligned} (1)PS(2)¬S(3)¬P(4)PQ(5)Q(6)QR(7)R(8)R(PQ)PPT,(1),(2)T,(1),(2)T,(3),(4),IPT,(5),(6),IT,(4),(7),I
  • 公式右边标记符号解释:
    • P P P指推理规则 P P P,标记上 P P P的公式,表示该公式都是题目中给定的前提;
    • T T T指推理规则 T T T,标记上 T , ( 1 ) , ( 2 ) T,(1),(2) T,(1),(2)的公式,表示左边的公式是根据第1和第2条公式推出的有效结论, T , ( 1 ) , ( 2 ) T,(1),(2) T,(1),(2)有时也写作 T 1 , 2 T_{1,2} T1,2
    • I I I指基本公式,标记上 I I I的公式,表示左边的公式是根据上文提到的 ( I 1 , I 2 . . . I 11 ) (I_1,I_2...I_{11}) (I1,I2...I11)中的一条或多条公式推出的有效结论。
  • 每一个公式前面依次有一个序号,最后的序号表示这个证明的推演长度。
  • 例题二:设前提集合 Γ = P → ( Q → S ) , ¬ R ∨ P , Q \Gamma = {P \to( Q \to S), \neg R \vee P,Q} Γ=P(QS),¬RP,Q,结论 H = R → S H = R \to S H=RS。证明: Γ ⇒ H \Gamma \Rightarrow H ΓH
    • 答案:

( 1 ) R P ( 附 加 前 提 ) ( 2 ) ¬ R ∨ P P ( 3 ) P T , ( 1 ) , ( 2 ) , I ( 4 ) P → ( Q → S ) P ( 5 ) Q → S T , ( 3 ) , ( 4 ) , I ( 6 ) Q P ( 7 ) S T , ( 5 ) , ( 6 ) , I ( 8 ) R → S C P , ( 1 ) , ( 7 ) \begin{aligned} &(1) R & P(附加前提) \\ &(2) \neg R \vee P & P \\ &(3) P & T,(1),(2), I \\ &(4) P \to (Q \to S) & P \\ &(5) Q \to S & T,(3),(4), I \\ &(6) Q & P \\ &(7) S & T,(5),(6), I \\ &(8) R \to S & CP,(1),(7) \\ \end{aligned} (1)R(2)¬RP(3)P(4)P(QS)(5)QS(6)Q(7)S(8)RSP()PT,(1),(2),IPT,(3),(4),IPT,(5),(6),ICP,(1),(7)

第一个公式后面标记为“ P P P(附加前提)”,是因为我们想要证明 Γ ⇒ H \Gamma \Rightarrow H ΓH,虽然 R R R不在 Γ \Gamma Γ中,但当结论 H = R → S H = R \to S H=RS成立时, R R R必须也要成立,所以假设 R R R是前提,这就叫做附加前提。使用附加前提的公式,要标记上 C P CP CP和引用的公式序号。

命题演绎举例

  • 符号化下面的语句,并使用演绎法证明
  • 例题一:若数 a 是实数,则它不是有理数就是无理数。若 a 不能表示成分数,则它不是有理数。a 是实数且它不能表示成分数。所以,a 是无理数。
    • 答案:
      • 设命题
        P : a P : a P:a 是实数;
        Q : a Q : a Q:a 是有理数;
        R : a R : a R:a 是无理数;
        S : a S : a S:a 能表示成分数。
      • 推理符号化成:
        P → ( Q ∨ R ) , ¬ S → ¬ Q , P ∧ ¬ S ⇒ R P \to (Q \vee R), \neg S \to \neg Q, P \wedge \neg S \Rightarrow R P(QR),¬S¬Q,P¬SR
      • 推理过程:
        ( 1 ) R P ( 附 加 前 提 ) ( 2 ) ¬ R ∨ P P ( 3 ) P T , ( 1 ) , ( 2 ) , I ( 4 ) P → ( Q → S ) P ( 5 ) Q → S T , ( 3 ) , ( 4 ) , I ( 6 ) Q P ( 7 ) S T , ( 5 ) , ( 6 ) , I ( 8 ) R → S C P , ( 1 ) , ( 7 ) \begin{aligned} &(1) R & P(附加前提) \\ &(2) \neg R \vee P & P \\ &(3) P & T,(1),(2), I \\ &(4) P \to (Q \to S) & P \\ &(5) Q \to S & T,(3),(4), I \\ &(6) Q & P \\ &(7) S & T,(5),(6), I \\ &(8) R \to S & CP,(1),(7) \\ \end{aligned} (1)R(2)¬RP(3)P(4)P(QS)(5)QS(6)Q(7)S(8)RSP()PT,(1),(2),IPT,(3),(4),IPT,(5),(6),ICP,(1),(7)
  • 例题二:如果马会飞或羊吃草,则母鸡就会是飞鸟;如果母鸡是飞鸟,那么烤熟的鸭子还会跑;烤熟的鸭子不会跑。所以羊不吃草。

这段语句的前提和结论与我们日常生活中的认识有所不同,但不影响我们进行推理。

  • 答案:
    • 设命题
      P : P : P: 马会飞;
      Q : Q : Q: 羊吃草;
      R : R : R: 母鸡是飞鸟;
      S : S : S: 烤熟的鸭子会跑。
    • 推理符号化成:
      ( P ∨ Q ) → R , R → S , ¬ S ⇒ ¬ Q (P \vee Q) \to R, R \to S, \neg S \Rightarrow \neg Q (PQ)R,RS,¬S¬Q
    • 推理过程:
      ( 1 ) ¬ S P ( 2 ) R → S P ( 3 ) ¬ R T , ( 1 ) , ( 2 ) , I ( 4 ) ( P ∨ Q ) → R P ( 5 ) ¬ ( P ∨ Q ) T , ( 3 ) , ( 4 ) , I ( 6 ) ¬ P ∧ ¬ Q T , ( 5 ) , E ( 7 ) ¬ Q T , ( 6 ) , I \begin{aligned} &(1) \neg S & P \\ &(2)R \to S & P \\ &(3)\neg R &T,(1),(2), I \\ &(4) (P \vee Q) \to R & P \\ &(5)\neg (P \vee Q) & T,(3),(4), I \\ &(6) \neg P \wedge \neg Q & T,(5), E \\ &(7) \neg Q & T,(6), I \\ \end{aligned} (1)¬S(2)RS(3)¬R(4)(PQ)R(5)¬(PQ)(6)¬P¬Q(7)¬QPPT,(1),(2),IPT,(3),(4),IT,(5),ET,(6),I
  • E E E指等价公式,标记上 E E E的公式,表示公式是根据等价公式转换过来的。
  • 等价公式有幂等律、交换律等。
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

print_Hyon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值