逻辑学探幽 Part1

逻辑表达式的等价定义和正规化

为了进一步地简化逻辑表达式, 我们需要研究它的等价定义和正规化.


1. 逻辑表达式的等价

如日常生活中一样, 我们可以用不同的逻辑表达式对同一个命题进行等价描述. 下面, 我们对逻辑表达式的等价进行简要的研究.

1.1 语义等价 (Semantic Equivalence)

定义1.1 语义学等价

当且仅当对任何赋值 v v v, 谓词公式 A , B A, B A,B 的解释 (intepretation) 一致, 称 A , B A, B A,B 语义学等价, 记为 A ≡ B A \equiv B AB.

注:

  1. 特别地, 在布尔语义下, 若两个谓词公式共享同一个真值表, 即可称其语义学等价.
  2. A ≡ B A \equiv B AB, 我们也称 A A A B B B 逻辑意义上相等.
  3. 在布尔语义下使用真值表法判断两个谓词公式语义学等价时, 真值表內必须包含组成这两个谓词公式的所有子式!
  4. 通过使用真值表法, 不难得知: ¬ A ∨ B ≡ A → B . \neg A \vee B \equiv A \rightarrow B. ¬ABAB.

更进一步地, 通过使用同样的方法, 我们可以证明更为复杂的谓词公式在布尔语义下的等价性. 在构造真值表时, 下面的替代定理有助于我们的判断:


1.2 命题变量的替代

定理1.1 基本语义等价定理

公式性质
¬ ¬ P ≡ P \neg \neg P \equiv P ¬¬PP双否定性
P ∧ P ≡ P P \wedge P \equiv P PPP幂等性
P ∨ P ≡ P P \vee P \equiv P PPP幂等性
P ∧ Q ≡ Q ∧ P P \wedge Q \equiv Q \wedge P PQQP交换律
P ∨ Q ≡ Q ∨ P P \vee Q \equiv Q \vee P PQQP交换律
P ∧ ( Q ∧ R ) ≡ ( P ∧ Q ) ∧ R P \wedge (Q \wedge R) \equiv (P \wedge Q) \wedge R P(QR)(PQ)R结合律
P ∨ ( Q ∨ R ) ≡ ( P ∨ Q ) ∨ R P \vee (Q \vee R) \equiv (P \vee Q) \vee R P(QR)(PQ)R结合律
P ∧ ( Q ∨ R ) ≡ ( P ∧ Q ) ∨ ( P ∧ R ) P \wedge (Q \vee R) \equiv (P \wedge Q)\vee(P \wedge R) P(QR)(PQ)(PR)分配律
P ∨ ( Q ∧ R ) ≡ ( P ∨ Q ) ∧ ( P ∨ R ) P \vee (Q \wedge R) \equiv (P \vee Q)\wedge(P \vee R) P(QR)(PQ)(PR)分配律
P ∧ ( P ∨ Q ) ≡ P P \wedge (P \vee Q) \equiv P P(PQ)P吸收性
P ∨ ( P ∧ Q ) ≡ P P \vee (P \wedge Q) \equiv P P(PQ)P吸收性
¬ ( P ∧ Q ) ≡ ¬ P ∨ ¬ Q \neg(P \wedge Q) \equiv \neg P \vee \neg Q ¬(PQ)¬P¬QDe Morgan
¬ ( P ∨ Q ) ≡ ¬ P ∧ ¬ Q \neg(P \vee Q) \equiv \neg P \wedge \neg Q ¬(PQ)¬P¬QDe Morgan
P → Q ≡ ¬ P ∨ Q P \rightarrow Q \equiv \neg P \vee Q PQ¬PQ逆否性
P → Q ≡ ¬ ( P ∧ ¬ Q ) P \rightarrow Q \equiv \neg(P \wedge \neg Q) PQ¬(P¬Q)逆否性
P → Q ≡ ¬ Q → ¬ P P \rightarrow Q \equiv \neg Q \rightarrow \neg P PQ¬Q¬P逆否性
P ↔ Q ≡ ( P → Q ) ∧ ( Q → P ) P \leftrightarrow Q \equiv (P \rightarrow Q) \wedge (Q \rightarrow P) PQ(PQ)(QP)逆否性
P ↔ Q ≡ ( ¬ P ∨ Q ) ∧ ( P ∨ ¬ Q ) P \leftrightarrow Q \equiv (\neg P \vee Q) \wedge (P \vee \neg Q) PQ(¬PQ)(P¬Q)逆否性
P ↔ Q ≡ ( P ∧ Q ) ∨ ( ¬ P ∧ ¬ Q ) P \leftrightarrow Q \equiv (P \wedge Q) \vee (\neg P \wedge \neg Q) PQ(PQ)(¬P¬Q)逆否性

注意: A ≡ B A \equiv B AB 指语义学等价, 这是谓词公式的一个性质, 也是一个超逻辑概念, “ ≡ ” “\equiv” 不是逻辑联结词; 而 ↔ \leftrightarrow 属于谓词逻辑语言中的符号, 二者在定义上有着本质的区别, 切勿混淆. 下面的定理揭示了它们之间的关系:

定理1.2

A ≡ B A \equiv B AB 当且仅当 A ↔ B A \leftrightarrow B AB 为重言式.


语义学替换 (Substitution) 是一种规范化的, 作用于整个谓词公式的谓词变量替换方法:

若我们要使用语义学替换, 将某个谓词公式中的谓词变量 A A A 替换为与其在语义学上等价的谓词变量 B B B, 则我们要将 在谓词公式中所有出现的 A A A 全部替换为 B B B.

更一般地,我们还可以将谓词变量替换为具有相同真值的谓词公式:


定义1.2 语义学替换定理

A , B A, B A,B 为任两个谓词公式. 若

A ( P 1 , P 2 , ⋯   , P n ) ≡ B ( P 1 , P 2 , ⋯   , P n ) A(P_1, P_2, \cdots, P_n) \equiv B(P_1, P_2, \cdots, P_n) A(P1,P2,,Pn)B(P1,P2,,Pn)

C 1 , C 2 , ⋯   , C n C_1, C_2, \cdots, C_n C1,C2,,Cn谓词公式, 则有

A ( C 1 , C 2 , ⋯   , C n ) ≡ B ( C 1 , C 2 , ⋯   , C n ) . A(C_1, C_2, \cdots, C_n) \equiv B(C_1, C_2, \cdots, C_n). A(C1,C2,,Cn)B(C1,C2,,Cn).


定理1.3 一般化的基本语义等价定理

公式性质
¬ ¬ A ≡ A \neg \neg A \equiv A ¬¬AA双否定性
A ∧ A ≡ A A \wedge A \equiv A AAA幂等性
A ∨ A ≡ A A \vee A \equiv A AAA幂等性
A ∧ B ≡ B ∧ A A \wedge B \equiv B \wedge A ABBA交换律
A ∨ B ≡ B ∨ A A \vee B \equiv B \vee A ABBA交换律
A ∧ ( B ∧ R ) ≡ ( A ∧ B ) ∧ R A \wedge (B \wedge R) \equiv (A \wedge B) \wedge R A(BR)(AB)R结合律
A ∨ ( B ∨ R ) ≡ ( A ∨ B ) ∨ R A \vee (B \vee R) \equiv (A \vee B) \vee R A(BR)(AB)R结合律
A ∧ ( B ∨ R ) ≡ ( A ∧ B ) ∨ ( A ∧ R ) A \wedge (B \vee R) \equiv (A \wedge B)\vee(A \wedge R) A(BR)(AB)(AR)分配律
A ∨ ( B ∧ R ) ≡ ( A ∨ B ) ∧ ( A ∨ R ) A \vee (B \wedge R) \equiv (A \vee B)\wedge(A \vee R) A(BR)(AB)(AR)分配律
A ∧ ( A ∨ B ) ≡ A A \wedge (A \vee B) \equiv A A(AB)A吸收性
A ∨ ( A ∧ B ) ≡ A A \vee (A \wedge B) \equiv A A(AB)A吸收性
¬ ( A ∧ B ) ≡ ¬ A ∨ ¬ B \neg(A \wedge B) \equiv \neg A \vee \neg B ¬(AB)¬A¬BDe Morgan
¬ ( A ∨ B ) ≡ ¬ A ∧ ¬ B \neg(A \vee B) \equiv \neg A \wedge \neg B ¬(AB)¬A¬BDe Morgan
A → B ≡ ¬ A ∨ B A \rightarrow B \equiv \neg A \vee B AB¬AB逆否性
A → B ≡ ¬ ( A ∧ ¬ B ) A \rightarrow B \equiv \neg(A \wedge \neg B) AB¬(A¬B)逆否性
A → B ≡ ¬ B → ¬ A A \rightarrow B \equiv \neg B \rightarrow \neg A AB¬B¬A逆否性
A ↔ B ≡ ( A → B ) ∧ ( B → A ) A \leftrightarrow B \equiv (A \rightarrow B) \wedge (B \rightarrow A) AB(AB)(BA)逆否性
A ↔ B ≡ ( ¬ A ∨ B ) ∧ ( A ∨ ¬ B ) A \leftrightarrow B \equiv (\neg A \vee B) \wedge (A \vee \neg B) AB(¬AB)(A¬B)逆否性
A ↔ B ≡ ( A ∧ B ) ∨ ( ¬ A ∧ ¬ B ) A \leftrightarrow B \equiv (A \wedge B) \vee (\neg A \wedge \neg B) AB(AB)(¬A¬B)逆否性

1.3 命题变量的等价代换

平行于语义学替换定理, 我们还定义了命题变量的等价代换. 和替换定理不同的是, 等价代换定理的作用域非常有限, 仅仅涉及某个特定的命题变量, 只代换那一个特定的命题变量, 而对即使完全相同的其他命题变量也不予考虑.

在下面的叙述中, 我们规定:

C ( ⋯ A ⋯   ) C(\cdots A \cdots) C(A)

指一个谓词公式, 而 A A A 为它的一个子式.


定理1.4 等价代换定理

A , B A, B A,B 为两个谓词公式, 且 A ≡ B A \equiv B AB, 且 A A A 为谓词公式 C ( ⋯ A ⋯   ) C(\cdots A \cdots) C(A) 的一个子式. 则

C ( ⋯ A ⋯   ) ≡ C ( ⋯ B ⋯   ) C(\cdots A \cdots) \equiv C(\cdots B \cdots) C(A)C(B)

当对 A A A 实行等价代换.


1.4 逻辑常量 ⊥ \perp , ⊤ \top

我们还可以通过定义 逻辑常量 的方式进一步简化逻辑表达式.

在第一章中, 我们介绍了重言式和矛盾式. 它们在任何语义系统下的解释都是永真, 或永假. 对于这些式子, 我们使用 ⊥ \perp ⊤ \top 符号分别表示它们.

我们可以认为, 设 P P P 为一个谓词公式, 则 ⊤ \top ⊥ \perp 可分别视为 P ∨ ¬ P , P ∧ ¬ P P \vee \neg P, P\wedge \neg P P¬P,P¬P 的缩写. 从真值表中我们可以立即得出这一结论:

P P P ¬ P \neg P ¬P P ∨ ¬ P P \vee \neg P P¬P P ∧ ¬ P P \wedge \neg P P¬P
1 1 1 0 0 0 1 1 1 0 0 0
0 0 0 1 1 1 0 0 0 1 1 1

定理1.5 逻辑常量定理

A A A 为重言式, 则 A ≡ ⊤ A\equiv \top A.

A A A 为矛盾式, 则 A ≡   ⊥ A\equiv ~ \perp A .

定理1.6 含逻辑常量的一般化基本语义等价定理

20201121093615


1.5 其他语义系统中的语义学等价

我们以幂集语义为例. 显然, 在幂集语义下, 一个谓词公式的解释与对谓词变量的赋值和选定的参考集 X X X 同时有关. 在幂集语义下, 要说明 A ≡ B A\equiv B AB, 就要证明在给定的谓词变量赋值方式和参考集下, A A A B B B 的翻译都是 X X X 的同一个子集.



2. 正规形式和逻辑表达式的正规化

逻辑表达式有多种等价的表达形式, 而不同的表达形式种由于含有不同数量的联结词, 括号关系和子式, 其复杂程度也有所不同. 在构造逻辑电路和研究抽象的逻辑关系时, 我们需要对逻辑表达式进行简化, 从而降低工作的规模和难度. 对逻辑表达式在逻辑层面上进行简化的过程就是寻找和计算范式 (Normal Form) 的过程.

一种最简单的逻辑表达式简化方法是基于结合律, 除去表达式內多余的括号:

P 1 ∧ ( P 2 ∧ ( ⋯ ∧ P n ) ⋯   ) ⇒ P 1 ∧ P 2 ∧ ⋯ ∧ P n . P_1\wedge (P_2 \wedge (\cdots \wedge P_n)\cdots) \Rightarrow P_1\wedge P_2 \wedge \cdots \wedge P_n. P1(P2(Pn))P1P2Pn.

下面, 我们介绍两种更为复杂的范式生成法: 合取范式生成和析取范式生成.


2.1 合取范式 (Conjunctive Normal Form)

定义2.1 合取范式

称一个谓词公式为 合取范式, 当且仅当它为 ⊤ , ⊥ \top, \perp ,, 或为多个子式的析取的合取.

一般地, 我们使用下列的合取范式求解算法简化并求取谓词公式的合取范式:

20201121100450


定理2.1 合取范式求解算法有效性定理

  • 合取范式求解算法的每一步都保持语义学等价关系.
  • 合取范式求解算法总会在有限步內终止.
  • 合取范式求解算法的返回值恒为一个合取范式.

2.2 析取范式 (Disjunctive Normal Form)

相应地, 我们还可以定义析取范式的概念:

定义2.2 析取范式

称一个谓词公式为 析取范式, 当且仅当它为 ⊤ , ⊥ \top, \perp ,, 或为多个子式的合取的析取.

一般地, 我们使用下列的析取范式求解算法简化并求取谓词公式的析取范式:

20201121100819


定理2.2 析取范式求解算法有效性定理

  • 析取范式求解算法的每一步都保持语义学等价关系.
  • 析取范式求解算法总会在有限步內终止.
  • 析取范式求解算法的返回值恒为一个析取范式.

2.3 基于真值表构造范式

基于合取范式和析取范式的概念和相关定理, 我们立即可以得出从真值表构造
范式的方法:

20201121101009


2.4 布尔函数

回顾布尔语义的概念和基本定义. 我们知道, 布尔语义的真值集为 B = { 0 , 1 } \mathbb{B} = \{0, 1\} B={0,1}.
下面, 考虑一个从 B \mathbb{B} B n n n 次笛卡尔积 B n \mathbb{B^{n}} Bn 映到 B \mathbb{B} B 的一个函数 (映射). 何时这样的映射既可被视在布尔语义下对联结词的解释, 亦可视为对谓词公式的解释?

定义2.3 布尔函数 (Boolean Function)

称从 B n \mathbb{B}^{n} Bn B \mathbb{B} B 的映射为 布尔函数.

在布尔语义中, 任何一个谓词逻辑的联结词均可被视为一个布尔函数.


定理2.3 布尔函数计数定理

存在 2 2 n 2^{2^n} 22n 个不同的 n n n 元布尔函数.

显然, 对于 n n n 个不同的函数输入, 根据布尔语义定义, 每个输入都可以从真值集中取值, 故共有 2 n 2^n 2n 种输入; 同时, 对于每一种输入, 它都可以被映射到真值集的某一个元素, 故共有 2 2 n 2^{2^{n}} 22n 种映射方法, 而每一种映射方法对应一个唯一的布尔函数.


定理2.4 布尔函数表示定理

任一个布尔函数: f : B n → B f: \mathbb{B^{n}}\rightarrow \mathbb{B} f:BnB 可被表示为含谓词变量 x 1 , x 2 , ⋯   , x n x_1, x_2, \cdots, x_n x1,x2,,xn 的谓词公式 P ( x 1 , x 2 , ⋯   , x n ) P(x_1, x_2, \cdots, x_n) P(x1,x2,,xn).

结合真值表方法可知, 该定理结论显然.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值