到目前為止,我們只討論了單個公式及其語義屬性。在本節中,我們將開始研究公式是否可以轉換為另一種形式,而不會改變其語義。為此,我們引入了邏輯等價的概念,它可以用來研究將給定公式轉換為其正規化。
公式
和
被稱為 (語義) 等價,當且僅當對於所有賦值
對於
和
,
。我們寫
。
包含不同子公式的公式可以是等價的,例如,所有重言式都是等價的。更有趣的是以下定理
令
且
為至少包含一個子公式
的公式。那麼成立
,其中
是透過將
中的任何一個
替換為
獲得的。
證明: 證明透過對子公式
的結構進行歸納。
假設歸納起點,
為原子公式,因此
成立,將
唯一齣現的地方替換為
的結果是
,因為
,所以我們有
。假設該定理對
的所有真子公式成立:如果
,我們有與歸納起點相同的論證。如果
,我們有三種情況。
:因為
是
的一個子公式,我們可以得出結論
,其中
是透過將
替換為
構造的。從
語義的定義我們得出結論
,因此
。其中 H_1 是透過在 H 中將 F 替換為 G 構造的等價公式,得到 H_1
: 假設不失一般性,
出現在
中。那麼,根據歸納假設,我們可以得出結論,
,並且根據
語義的定義,我們可以得出結論,
.
類似。
以下等價關係成立

(冪等性)

(交換律)

(結合律)

(吸收律)

(分配律)
(雙重否定律)

(deMorgan's rule)
, if
is a tautology
, if
is a tautology (Rule of Tautology)
, if
is unsatisfiable
, if
is unsatisfiable (Rule of Unsatisfiability)
證明: 所有等價關係都可以透過真值表來證明。這裡以第二條吸收定律為例進行證明
|
|
( ) |
( )) |
| false |
false |
false
|
false
|
| false |
true |
false
|
false
|
| true |
false |
false
|
true
|
| true |
true |
true
|
true
|
現在讓我們使用這些等價關係以及代入定理 (TS) 來證明以下等價關係

結合律和 TS
交換律和 TS
分配律
交換律和 TS
分配律和 TS
不可滿足性和 TS
交換律和 TS
交換律和 TS
二元連線詞
用於異或,定義為
。證明以下命題邏輯公式成立
,
和 
(交換律)。
(結合律)
使用等價變換證明以下結論。請為所有重構步驟提供所用規則!






用等價關係證明
是一個永真式。
是不可滿足的。
二元連線詞
,其含義為“非此即彼”,由
定義。設
為一個命題邏輯公式,它只包含運算子
和
。證明對每個公式
都存在一個公式
,使得
並且
僅使用連線詞
建立。
設
是一個命題邏輯公式,它只包含運算子
,
和
。證明對於每個公式
,都存在一個公式
,使得
並且
是透過僅使用連線詞
和
建立的。
給出以下公式:



- 使用
簡化
。
- 使用等價關係但不用
簡化
。
文字是原子公式或原子公式的否定(分別為正或負)。公式
處於合取正規化 (CNF) 當且僅當
其中
是一個文字。
公式
處於析取正規化 (DNF) 當且僅當

其中
是一個文字
對於每個公式
存在一個等價公式處於 DNF,也存在一個等價公式處於 CNF。
讓我們設計一個演算法來將給定的公式 F 轉化為等價的正規化
給定: 公式 
1. 在
中用以下形式替換每個子公式



直到不再存在這種形式的子公式。
2. 在上述步驟的結果中,用以下形式替換每個子公式


直到不再存在這種形式的子公式。
結果: 一個等價的 CNF 公式
到目前為止,我們研究瞭如何將命題公式轉化為等價的正規化。正規化中的另一個問題是,從給定的真值表構造正規化公式;也就是說,公式本身是未知的,但它的行為由真值表給出。讓我們從真值表中讀取正規化公式:假設一個公式
,它由以下真值表給出。
| A |
B |
C |
F |
| false |
false |
false |
true |
| false |
false |
true |
false |
| false |
true |
false |
false |
| false |
true |
true |
false |
| true |
false |
false |
true |
| true |
false |
true |
true |
| true |
true |
false |
false |
| true |
true |
true |
false |
為了構建一個與
等價的 DNF 公式,我們必須考慮到,真值表中每一行導致真值
的結果,都會得到一個合取式:如果文字
的賦值為
,它被包含為
,如果賦值為
,我們就包含
。對於上面的例子,我們得到一個 DNF



如果我們在上面的過程中交換
和
以及
和
的角色,我們得到一個 CNF




我們介紹一種用於表示規範形式公式的特殊表示法。在引言中,我們已經使用了一種非常特殊的規範形式,即 CNF 公式的蘊涵形式:連線詞
的每個子公式
都寫成
不難看出,該蘊涵等價於析取式
。有時,蘊涵寫成
在某些情況下,甚至使用以下含糊的表示法,其中前提中的逗號代表連線詞,結論中的逗號代表析取詞
對於邏輯推理的一些重要步驟,必須不僅以上述規範形式之一表示公式,而且必須使用以下定義中的所謂子句形式。
如果
是一個 CNF 公式,即
那麼它在子句形式中的對應表示為
集合
稱為子句。
這種文字集合表示法具有以下優點:文字的出現順序無關緊要,並且文字在析取式中的多次出現將在其子句形式中“合併”。請注意,作為結果,我們在表示法中引入了結合律、交換律和冪等律。

建立等價於以下公式的(a)合取正規化或(b)析取正規化公式:

其中
表示異或。
定理證明器 OTTER 對子句集使用以下最佳化規則:
子句包含:如果子句
的文字是另一個子句
的子集,則從子句集中刪除
。
透過單元子句刪除:如果子句集包含一個單元子句
-這裡
是單個文字的單元子句- 子句中每個互補文字
都被刪除。
哪些邏輯定律證明了這些過程?
為以下公式生成真值表。給出公式的合取正規化和析取正規化。哪一個關係
,
,
和
成立?
而
適用。

從以下公式
的真值表生成 CNF 和 DNF。
| A |
B |
C |
F |
| 0
|
0
|
0
|
0
|
| 1
|
0
|
0
|
1
|
| 0
|
1
|
0
|
0
|
| 1
|
0
|
0
|
1
|
| 1
|
1
|
0
|
1
|
| 1
|
0
|
1
|
0
|
| 0
|
1
|
1
|
1
|
| 1
|
1
|
1
|
0
|
從公式
生成 CNF。