1樓:
命題邏輯在數理邏輯中命題演算或句子演算是原子公式是命題變數的形式演繹系統。(相對於謂詞邏輯,它是量化的並且它的原子公式是謂詞函式;和模態邏輯,它可以是非真值泛函的。)
演算是用來證明有效的公式(就是說它的定理)和論證(argument)的邏輯系統。它是公理或公理模式的集合(它可以為空或是可數無限集合),和推導有效的推理的推理規則。形式文法(或語法)遞迴定義語言的表示式和合式公式(wff)。
此外給出定義真值和求值(或釋義)的語義。它允許我們確定哪個 wff 是有效的(也就是定理)。
在命題演算中語言由命題變數(或者叫佔位符(placeholder))和句子/判決運算元(或者叫連結詞)。wff 是任何原子公式或在句子操作符之上建造的公式。
在下文中我們描述一種標準命題演算。很多不同的公式系統存在,它們都或多或少等價但在下列方面不同:(1)它們的語言(就是說哪些操作符和變數是語言的一部分); (2) 它們有哪些(如果有的話)公理; (3)採用了哪些推理規則。
文法 語言的構成:
字母表的大寫字母,表示命題變數。它們是原子公式。慣例上,使用拉丁字母(a, b, c)或希臘字母(χ, φ, ψ),但是不能混合使用。
表示連結詞(connective)(或邏輯運算元)的符號: ¬、∧、∨、→、↔。(我們可以使用更少的運算元(和相應的符號),因為一些運算元是簡寫形式 — 例如,p → q 等價於 ¬ p ∨ q)。
左右圓括號: (,)。
合式公式(wff)的集合右如下規則遞迴的定義:
基礎: 字母表的字母(通常是大寫的,如a、b、φ、χ 等)是 wff。
歸納條款 i: 如果 φ 是 wff,則 ¬ φ 是 wff。
歸納條款 ii 如果 φ 和 ψ 是 wff,則 (φ ∧ ψ)、(φ ∨ ψ)、(φ → ψ) 和 (φ ↔ ψ) 是 wff。
閉包條款: 其他東西都不是 wff。
重複的應用這三個公式允許生成複雜的 wff。例如:
通過規則 1,a 是 wff。
通過規則 2,¬ a 是 wff。
通過規則 1,b 是 wff。
通過規則 3,( ¬ a ∨ b ) 是 wff。
[編輯]演算
為了簡單化,我們使用自然演繹系統,它沒有公理;或者等價的說,它有空的公理集合。
使用我們的演算的推導將用編號後的行的列表,在每行之上有一個單一的 wff 和一個理由(justification)的形式展示出來。任何前提(premise)都在上部,並帶有 "p" 作為它們的斷定。結論將在最後一行。
推導將被看作完備的,條件是所有行都是通過正確的應用一個規則而從前面的行得出的。
(作為一種對比的方式,參見證明樹)。
[編輯]公理
我們的公理集合是空集。
[編輯]推理規則
我們的命題演算有十個推理(inference)規則。這些規則允許我們從給定的一組假定為真的公式中推匯出其他為真的公式。前八個簡單的陳述我們可以從其他 wff 推論出(infer)特定的 wff。
但是最後兩個規則使用了假言(hypothetical)推理,這意味著在規則的前提中我們可以臨時的假定一個(未證明的)假設(hypothesis)作為推匯出的公式集合的一部分,來檢視我們是否能推匯出一個特定的其他公式。因為前八個規則不是這樣而通常被描述為非假言規則,而最後兩個就叫做假言規則。
雙重否定除去
從 wff ¬ ¬ φ,我們可以推出 φ。
合取介入
從任何 wff φ 和任何 wff ψ,我們可以推出 ( φ ∧ ψ )。
合取除去
從任何 wff ( φ ∧ ψ ),我們可以推出 φ 和 ψ。
析取介入
從任何 wff φ,我們可以推出 (φ ∨ ψ) 和 (ψ ∨ φ),這裡的 ψ 是任何 wff。
析取除去
從 ( φ ∨ ψ )、( φ → χ ) 和 ( ψ → χ ) 形式的wff,我們可以推出 χ。
雙條件介入
從 ( φ → ψ ) 和 ( ψ → φ ) 形式的 wff,我們可以推出 ( φ ↔ ψ )。
雙條件除去
從 wff ( φ ↔ ψ ),我們可以推出 ( φ → ψ ) 和 ( ψ → φ )。
肯定前件
從 φ 和 ( φ → ψ ) 形式的 wff,我們可以推出 ψ。
條件證明
如果在假定假設 φ 的時候可以推匯出 ψ,我們可以推出 ( φ → ψ )。
反證證明
如果在假定假設 φ 的時候可以推匯出 ψ 和 ¬ ψ,我們可以推出 ¬ φ。
規則的可靠性和完備性
這組規則的關鍵特性是它們是可靠的和完備的。非形式的,這意味著規則是正確的並且不再需要其他規則。這些要求可以如下這樣正式的提出。
我們定義真值指派為把命題變數對映到真或假的函式。非形式的,這種真值指派可以被理解為對事件的可能狀態(或可能性世界)的描述,在這裡特定的陳述是真而其他為假。公式的語義因而可以被形式化,通過對它們把那些"事件狀態"認定為真的定義。
我們通過如下規則定義這種真值 a 在什麼時候滿足特定 wff:
a 滿足命題變數 p 當且僅當 a(p) = 真
a 滿足 ¬ φ 當且僅當 a 不滿足 φ
a 滿足 (φ ∧ ψ) 當且僅當 a 滿足 φ 與 ψ 二者
a 滿足 (φ ∨ ψ) 當且僅當 a 滿足 φ 和 ψ 中至少一個
a 滿足 (φ → ψ) 當且僅當沒有 a 滿足 φ 但不滿足 ψ 的事例
a 滿足 (φ ↔ ψ) 當且僅當 a 滿足 φ 與 ψ 二者,或則不滿足它們中的任何一個
通過這個定義,我們現在可以形式化公式 φ 被特定公式集合 s 蘊涵的意義。非形式的,就是在使給定公式集合 s 成立的所有可能情況下公式 φ 也成立。這導引出了下面的形式化定義:
我們說 wff 的集合 s 語義蘊涵(蘊涵:entail 或 imply)特定的 wff φ,條件是滿足在 s 中的公式的所有真值指派也滿足 φ。
最後我們定義語法蘊涵,φ 被 s 語法蘊涵,當且僅當我們可以在有限步驟內使用我們提出的上述推理規則推匯出它。這允許我們精確的公式化推理規則的可靠性和完備性的意義:
可靠性如果 wff 集合 s 語法蘊涵 wff φ,則 s 語義蘊涵 φ
完備性如果 wff 集合 s 語義蘊涵 wff φ,則 s 語法蘊涵 φ
對上述規則集合這些都成立。
[編輯]可靠性證明的梗概
(對於多數邏輯系統,這是相當"簡單的"證明方向)
符號約定: 設 "g" 是涉及語句集合的變數。設 "a"、"b" 和 "c" 是涉及句子的變數。
我們把 "g 語法蘊涵 a" 寫成 "g 證明 a"。我們把 "g 語義蘊涵 a" 寫成 "g 蘊涵 a"。
我們要展示: (a)(g)(如果 g 證明 a,則 g 蘊涵 a)
我們注意到 "g 證明 a" 有一個歸納定義,這給予我們直接的辦法來證實(demonstrate)"如果 g 證明 a,則 . . .
"形式的斷言。所以我們的證明是用歸納法進行的。
i. 基礎。展示: 如果 a 是 g 的成員則 g 蘊涵 a
[ii. 基礎。展示: 如果 a 是公理,則 g 蘊涵 a
iii. 歸納步驟: (a) 假定對於任意的 g 和 a,如果 g 證明 a 則 g 蘊涵 a。(如果需要的話,對 b、c 等做同樣的假定)
(b) 對於針對 a 的推論的規則的,匯出一個新的句子 b 的每個可能的應用,展示 g 蘊涵 b。
(n.b. 對於上述演算基礎步驟 ii 可以省略,它是自然演繹系統而沒有公理。基本上,它涉及展示每個公理都是(語義上)邏輯真理。)
基礎步驟證實了對於任何 g 來自 g 的最簡單的可證明的語句都被 g 所蘊涵。(這是簡單的,因為集合蘊涵它的任何一個成員是語義事實,這是平凡的(trivial))。歸納步驟將有系統的覆蓋所有的進一步的可證明的句子--通過考慮我們能夠使用推理規則達成邏輯結論的每種情況--並展示如果一個新句子是可證明的,它也是在邏輯上被蘊涵的。
(例如,我們可能有一個告訴我們從 "a" 可以推匯出 "a 或 b"。在 iii.(a) 中我們假定如果 a 是可證明的則是被蘊涵的。
我們也知道如果 a 是可證明的,則 "a 或 b" 是可證明的。我們必須展示接著 "a 或 b" 也是被蘊涵的。我們求助於語義定義和我們所做的假定來完成。
我們假定了 a 從 g 是可證明出來的。所以它也被 g 所蘊涵。所以使 g 全部為真的任何語義求值也使 a 為真。
此外通過"或"的語義定義,使 a 為真的任何求值都使 "a 或 b" 為真。所以使 g 的全部為真的任何求值都使 "a 或 b" 為真。所以 "a 或 b"被蘊涵了。
)一般的,歸納步驟將由有一定長度的,卻是推論的所有規則的簡單的逐個例的分析組成的,它展示每個"保持的"語義蘊涵。
通過可證明性的定義,除了 g 的成員、公理、或從規則得出的句子之外沒有是可證明的;所以如果所有這些都是語義上被蘊涵的,則演繹演算是可靠的。
[編輯]完備性證明的梗概
(這通常是非常困難的證明方向。)
我們接受同上面一樣的符號約定。
我們要展示: 如果 g 蘊涵 a,則 g 證明 a。我們通過反證法來進行: 我們轉而展示如果 g 不證明 a,則 g 不蘊涵 a。
i. g 不證明 a。(假定)
ii. 如果 g 不證明 a,則我們可以構造一個(有限的)"最大化的集合" g*,它是 g 的超集並且不證明 a。
(a)在這個語言的所有句子上加置一個"次序"。(比如,字母表次序),並把它們編號為 e1, e2, . . .
(b)歸納的定義集合(g0, g1 . . .
)的一個序列(series) gn 為如下 (i)g0=g。 (ii) 如果 證明 a,則 g(k+1)=gk。 (iii) 如果 不證明 a,則 g(k+1)=
(c)定義 g* 為所有 gn 的並集。(就是說,g* 在任何 gn 中的所有句子的集合)。
(d) 可以容易的展示 (i) g* 包含(是其超集) g (通過 (b.i));(ii) g* 不證明 a (因為如果它證明 a 則某些句子被增加到某個 gn 上而導致它證明了 a; 但是這被定義所排除);和 (iii) g* 是(關於 a) "最大化的集合": 如果任何更多的句子不管怎樣的被增加到 g*,它就會證明 a。
(因為如果有可能增加任何更多的句子,再次根據定義,在構造 gn 期間被遇到的時候它們就應當已經被增加進去了。)
iii. 如果 g* 是(關於 a)的最大化集合,則它是"類真理的"。這意味著它包含句子 "a",只在它不包含非-a 的句子的條件下; 如果它包含 "a" 並且包含 "如果 a 則 b",則它也包含 "b";以此類推。
iv. 如果 g* 是類真理的,則有這個語言的 "g*-規範"求值: 它使在 g* 中每個句子為真而在 g* 之外的所有句子為假,而仍然遵守在這個語言的語義合成(***position)的法則。
v. g*-規範求值將使我們最初的集合 g 全部為真,而使 a 為假。
vi. 如果有在其上 g 是真而 a 是假的求值,則 g 不(語義上)蘊涵 a。
q.e.d.
[編輯]可供選擇的演算
有可能定義其他版本的命題演算,它通過公理的方式定義了多數邏輯運算元的語法,並且它只使用一個推理規則。
[編輯]公理
設 φ、χ 和 ψ 表示合式公式。(wff 自身將不包含任何希臘字母,而只包含大寫羅馬字母、連結運算元和圓括號)。公理有
then-1: φ → (χ → φ)
then-2: (φ → (χ → ψ)) → ((φ → χ) → (φ → ψ))
and-1: φ ∧ χ → φ
and-2: φ ∧ χ → χ
and-3: φ → (χ → (φ ∧ χ))
or-1: φ → φ ∨ χ
or-2: χ → φ ∨ χ
or-3: (φ → ψ) → ((χ → ψ) → (φ ∨ χ → ψ))
not-1: (φ → χ) → ((φ → ¬ χ) → ¬ φ)
not-2: φ → (¬ φ → χ)
not-3: φ ∨ ¬ φ
公理 then-2 可以被看作是"關於蘊涵的蘊涵的分配特性"。公理 and-1 和 and-2 對應於"合取除去"。在 and-1 和 and-2 之間的關係反映了合取運算元的交換性。
公理 and-3 對應於"合取介入"。公理 or-1 和 or-2 對應於"析取介入"。在 or-1 和 or-2 之間的關係反映了析取運算元的交換性。
公理 not-1 對應於"反證法"。公理 not-2 說明了"從矛盾中可以推匯出任何東西"。公理 not-3 叫做"排中律" (拉丁語 tertium non datur:
"排除第三者")並反映了命題公式的語義求值: 公式可以有的真值要麼是真要麼是假。至少在經典邏輯中,沒有第三個真值。
直覺邏輯不接受公理 not-3。
[編輯]推理規則
推理規則是肯定前件:
\phi, \ \phi \rightarrow \chi \vdash \chi .
如果還使用雙箭頭的等價運算元的話,則要增加如下"自然"推理規則:
iff-1: \phi \leftrightarrow \chi \vdash \chi \rightarrow \phi
iff-2: \phi \rightarrow \chi, \ \chi \rightarrow \phi \vdash \phi \leftrightarrow \chi
[編輯]元推理規則
設示範被表示為相繼式,假設在十字轉門(turnstile)的左側而結論在十字轉門的右側。則演繹定理可以被陳述如下:
如果相繼式
\phi_1, \ \phi_2, \ ... , \ \phi_n, \ \chi \vdash \psi
已經被證明了,則也有可能證明相繼式
\phi_1, \ \phi_2, \ ..., \ \phi_n \vdash \chi \rightarrow \psi 。
這個演繹定理(dt)自身沒有公式化為命題演算: 它不命題演算的定理,而是關於命題演算的一個定理。在這個意義上,它是元定理,相當於關於命題演算可靠性和完備性的定理。
在另一方面,dt 對與簡化語法上的證明過程是如此的有用以至於它看作和用做推理規則,同肯定前件一起使用。在這個意義上,dt 對應於自然條件證明推理規則,它是在本文中提出的第一個版本的命題演算的一部分。
dt 的逆定理也是有效的:
如果相繼式
\phi_1, \ \phi_2, \ ..., \ \phi_n \vdash \chi \rightarrow \psi
已經被證明了,則也有可能證明相繼式
\phi_1, \ \phi_2, \ ... , \ \phi_n, \ \chi \vdash \psi
實際上,dt 的逆定理的有效性相對於 dt 而言是平凡的:
如果 \phi_1, \ ... , \ \phi_n \vdash \chi \rightarrow \psi
則 1: \phi_1, \ ... , \ \phi_n, \ \chi \vdash \chi \rightarrow \psi
2: \phi_1, \ ... , \ \phi_n, \ \chi \vdash \chi
並且可以演繹自 (1) 和 (2)
3: \phi_1, \ ... , \ \phi_n, \ \chi \vdash \psi
通過肯定前件的方式,q.e.d.
dt 的逆命題有著強有力的蘊涵: 它可以用來把公理轉換成推理規則。例如,公理 and-1,
\vdash \phi \wedge \chi \rightarrow \phi
可以通過演繹定理的逆定理的方式被轉換成推理規則
\phi \wedge \chi \vdash \phi
這是合取除去,是(在本文中)第一個版本的命題演算中使用的十個推理規則中的一個。
[編輯]證明的例子
下面是(語法上)證明的一個例子,只涉及到公理 then-1 和 then-2:
要證明: a → a (蘊涵的自反性)。
證明:1. (a → ((a → a) → a)) → ((a → (a → a)) → (a → a))
公理 then-2 通過 φ = a, χ = a → a, ψ = a
2. a → ((a → a) → a)
公理 then-1 通過 φ = a, χ = a → a
3. (a → (a → a)) → (a → a)
得自 (1) 和 (2) 通過肯定前件。
4. a → (a → a)
公理 then-1 通過 φ = a, χ = a
5. a → a
得自 (3) 和 (4) 通過肯定前件。
命題邏輯,如果P是假命題,那麼P Q是真還是假,為什麼
p q 等價於 p v q,v是或的意思。也就是說如果p假,p q一定是真值 不一定很簡單,假命題不一定推出假命題,當然更不一定會推出真命題。比如今天我在上班,那麼 今天我休息 就是假命題。我休息的時候一定會用電腦,即 今天我休息 可推出 今天我用電腦 不一定假,因為我今天上班也在用電腦。這種情況就...
簡易邏輯的四種命題及關係
1 如果第一個bai 命題的條件和結論分du別是另一個zhi命題的結論 和條件 那麼dao這兩個命內題叫互 逆命題.2 如容果第一個命題的條件和結論恰好是另一個命題的條件的否定 和結論的否定,那麼這兩個命題叫互否命題.3 如果第一個命題的條件和結論恰好是另一個命題的結論的否定 和 條件的否定 那麼這...
性質命題都有哪幾種基本型別邏輯學中命題有哪些形式哪些種類
按照不同的標準,直言命題可以分為不同的種類。1 按命題的量劃分,直言命題可分為單稱命題 全稱命題 特稱命題。2 按命題的質劃分,直言命題可分為肯定命題 否定命題。3 按命題的質與量劃分,直言命題可分為單稱肯定命題 單稱否定命題 全稱肯定命題 sap 全稱否定命題 sep 特稱肯定命題 sip 特稱否...