Skip to main content

03 Deduction

这篇笔记包含lecture7,Deduction ppt 中的内容。上一个ppt(The Application of Propositional Logic)介绍了SAT的具体使用,跳过。

对应教材《数理逻辑与集合论》中1.6、2.5、2.7~2.10。

Deduction

现有两个公式 AABB ,如果 AA 为真时 BB 必定为真,则 AA 重言蕴含 BBA    BA \implies B)。

相关公式:

  • If A    BA \implies B, A is a tautology, then B is a tautology.
  • If A    BA \implies B, B    AB \implies A, then A=BA = B.
  • If A    BA \implies B, B    CB \implies C, then A    CA \implies C.
  • If A    BA \implies B, A    CA \implies C, then A    BCA \implies B \land C.
  • If A    CA \implies C, B    CB \implies C, then AB    CA \lor B \implies C.

下面是一个deduction的例子:

deduction

相关规则:

  • 代入规则(Substitution Rule):对于永真式 AA 中的任何命题变量 PP ,用另一个公式替换 AA 中的所有 PP 得到新公式 BB ,则 BB 也是永真式。
  • 置换规则(Replacement Rule):对于公式 AA 中的某个命题变量 PP ,将其全部替换为某个公式得到新公式 BB ,两公式 AABB 具有相同的真值表。
  • 条件证明规则:AB    CA \lor B \implies C iff A    BCA \implies B \rightarrow C

归结推理法

对于公式 C1=LC1C_1 = L \lor C_1^\primeC2=¬LC2C_2 = \neg L \lor C_2^\primeR(C1,C2)=C1C2primeR(C_1, C_2) = C_1^\prime \lor C_2^primeC1C_1C2C_2 的归结式。

要证明 A    BA \implies B ,也就是证明 A¬BA \land \neg B 是永假式。归结推理法就是将原式转为 A¬BA \land \neg B 的形式,再转化为CNF,找出归结式并寻找矛盾。

举例,先要证明 ((PQ)(QR))    (PR)((P \rightarrow Q) \land (Q \rightarrow R)) \implies (P \rightarrow R)

将其转化为 (¬PQ)(¬QR)P¬R(\neg P \lor Q) \land (\neg Q \lor R) \land P \land \neg R

前提引入:

¬PQ¬QRP¬R\begin{align} &\neg P \lor Q \\& \neg Q \lor R \\& P \\& \neg R \end{align}

(1)(1)(2)(2) 归结,得到

¬PR\begin{align} \neg P \lor R \end{align}

(3)(3)(5)(5) 归结,得到

R\begin{align} R \end{align}

(4)(4)(6)(6) 归结,矛盾,得证。

对偶式

对于公式 AA ,将 AA 中的 \lor\landTTFF 对应换为 \land\lorFFTT ,得到公式 AA^* ,则 AAAA^* 互为对偶式。例如, (PQ)T(P \land Q) \lor T(PQ)F(P \lor Q) \land F 互为对偶式。

对于对偶式,有如下规则:

  • A=A(P1,...,Pn),A=A(¬P1,...,¬Pn)A = A(P_1, ..., P_n), A^- = A(\neg P_1, ..., \neg P_n)
    • ¬(A)=(¬A),¬(A)=(¬A)\neg (A^*) = (\neg A)^*, \neg (A^-) = (\neg A)^-
    • (A)=A,(A)=A(A^*)^* = A, (A^-)^- = A
    • ¬A=(A)\neg A = (A^*)^-
  • If A=BA = B, then A=B.A^* = B^*.
  • 如果 ABA \rightarrow B 是永真式,则 BAB^* \rightarrow A^* 是永真式。
  • AAAA^- 的永真性、可满足性相同。
  • ¬A\neg AAA^* 的永真性、可满足性相同。

Polish Notation

前文中的WFF是中缀表达式。相应的,还有前缀式(波兰式)和后缀式(逆波兰式),与这里的转换普通前中后缀转换相同。

简单来说,对于一个WFF,将其写成二叉树的形式。则这棵树的前序遍历、中序遍历、后序遍历分别是前中后缀表达式。