你好,類型(四):Propositional logic
前兩篇中,我們介紹了 演算和 (組合子邏輯),
我們採用了公理化的方法,先定義系統中的公理,然後定義推導規則,最終得到了兩個形式系統, 系統以及 系統。值得注意的是,公理系統不僅僅包含由公理和推導構成的形式系統,
還包含給這個形式系統所選擇的語義。
給形式系統選擇一個可靠的語義,是複雜的,我們將在後文再詳細介紹。
從這一篇開始,我們先開始介紹數理邏輯,看看邏輯學是怎麼看待形式化問題的。1. 命題邏輯形式系統
下文中,我們採用與 系統, 系統相同的方式,
來介紹命題邏輯(propositional logic)。命題邏輯,是在研究命題的證明和推理的過程中抽象出來的,
先不考慮語義,僅僅從符號的角度(形式化)來考慮它,則是更簡單直接的。1.1 公理和推導規則
首先我們給出命題邏輯形式系統中的公理(有三條公理),
(1)
(2) (3)然後,我們給出命題邏輯形式系統中的推導規則(只有一條),
(1)以上推導規則可以理解為,如果 和 成立,則 成立。
這裡我們採用了推導規則的常用寫法, ,
橫線上面的部分「 」稱為規則的前提(premise),橫線下面的部分「 」,稱為結論(conclusion)。在命題邏輯中,根據公理和推導規則,得到的公式稱為定理。
根據公理,定理和推導規則,得到的公式也是定理。
1.2 例子
下面我們來看一個例子,
求證: 是一個定理。證明:
首先,我們使用公理(1),我們有下式成立,
然後,我們使用公理(2),並令其中的 ,
最後,我們結合以上兩個結論,再使用推導規則(1),就得到了,
證畢。
2. Hilbert-style和Gentzen-style
以上的證明過程中,每一行斷言,是一個不包含條件的定理,
這種風格的演繹系統(deduction system)稱為具有Hilbert-style。如果 是有限的公式集合,則, ,稱為一個序貫(sequent)。
其中, 稱為序貫的前提(antecedent), 稱為序貫的結論(succedent)。它表示,如果公式集 都成立,那麼 中至少有一個成立。如果證明過程中,每一行斷言是一個序貫,
這種風格的演繹系統,稱為具有Gentzen-style。Hilbert-style演繹系統,通常具有較多的公理,但是具有較少的推導規則,
Gentzen-style演繹系統,則反之,具有較少的公理,卻具有較多的推導規則。如果 中總是只包含一個公式,
則稱該演繹系統為自然演繹系統(natural deduction system)。如果有限序列, ,滿足,
(1) 為有限公式集,(2) 為公式,(3)每個 , ,都是它之前若干個 , ,應用某條推導規則得到的。我們就稱這個有限序列,為 的一個(形式)證明序列。
此時,也稱 可由 (形式)證明。3. 命題邏輯的自然演繹系統
以上定義的形式系統,稱為命題邏輯形式系統 ,
下面我們再定義一個與之等價的,命題邏輯的自然演繹系統 。3.1 語法
(1)可數個命題符號:
(2)5個聯接詞符號: (3)2個輔助符號:3.2 合法的公式
我們使用BNF來定義,
3.3 推導規則
(1)包含律:
(2) 消去律: (3) 消去律: (4) 引入律: (5) 消去律: (6) 引入律: (7) 消去律: (8) 引入律: (9) 消去律: ,(10) 引入律:
3.4 例子
以上,我們定義了命題邏輯的自然演繹系統 ,
它比命題邏輯形式系統 更複雜一些,但是這兩個系統是等價的。我們來看一個例子。
求證, 是一個定理。證明:
首先,我們根據包含律有,
然後,根據這兩個結論,以及 消去律,就有,
。證畢。
4. 系統N和系統P的等價性
本文我們介紹了兩個形式系統,
命題邏輯形式系統 ,以及命題邏輯的自然演繹系統 ,可以證明,對於 (或 )中的公式 , 當且僅當 。因此,這兩個系統中的定理集是一樣的,
某個定理在 中可證,當且僅當在 中也可證。其中,我們令,
,表示 , ,表示 , ,表示 。對於這兩個系統而言,如上文所示,
我們只進行了符號的推導操作,即對公式進行形式證明,至於這些符號到底代表什麼意思,我們卻故意沒有提及。我們並沒有說 表示「或」,也沒有說 表示「與」,
在學數理邏輯的時候,一開始就將形式系統與它的語義模型相區分,是非常有益的,後文我們將看到這樣做的好處。5. 總結
本文介紹了命題邏輯,以及與之相關的兩個形式系統 和 ,
和 , 一樣,我們採用了公理化的方式構建它們,這樣得到的形式系統,只是符號演算,還沒有被賦予特定的語義,下文我們開始介紹一階謂詞邏輯。參考
離散數學教程
數理邏輯 Proof calculus Hilbert system Natural deduction Sequent calculus Practical Foundations for Programming Languages Lambda-Calculus and Combinators,an Introduction下一篇:你好,類型(五):Predicate logic
推薦閱讀: