Dirk van Dalen, Logic and Structure, 4th.
2.1 量詞(quantifiers)
- ∀:全稱量詞。
- ∃:存在量詞。
2.2 結構
〔定義 2.2.1 結構〕 結構是一個序列 ⟨A,R1,...,Rn,F1,...,Fm,{ci∣i∈I}⟩,其中 A 是一個非空集合。R1,...,Rn 是在 A 上的關係,F1,...,Fn 是在 A 上的函數,ci(i∈I) 是在 A 上的元素(常數)。
說明:
- 慣例上,結構由歌德文字所標示:A、B、……、Z。
- 函數 Fi 是全定義(total)的,亦即,由所有的自變元所定義的。
〔定義 2.2.2 類似型(similarity type)〕 結構 A=⟨A,R1,...,Rn,F1,...,Fm,{ci∣i∈I}⟩ 的類似型是序列 ⟨γ1,...,γn;a1,...,am;κ⟩,這裡的 Ri⊆Ari,Fj:Aaj→A,κ=∣{ci∣i∈I}∣(car(I))。
說明:
- ⟨R,+,⋅,−1,0,1⟩ 的類似型是 ⟨–,2,2,1;2⟩。
- ⟨N,<⟩ 的類似型是 ⟨2;–;0⟩。
如果 R⊆A,R 是一個一元關係,我們稱之為性質,或一元關係(unary relation)。
這些結構裡面都包含一個特殊的二元關係:等同關係(同一關係)。由於所有數學結構都有等同關係,因此在類似型中會加以省略。因此,我們直接假定所有結構中都有等同關係。
0 元關係是 A∅={∅}(從 ∅ 到 ∅ 的所有函數的集合)的子集合,{∅} 和 ∅,序數的 0 和 1,可以看成真值,用來扮演命題詮釋的角色。
由於 0 元函數的定義域只有單一元素(A∅),也允許我們用値域 A 來定義它們。
A 是 A 的宇集(universe),我們寫作 A=∣A∣。
2.3 類似型的語言
〔字母〕
- 述詞符號:P1、P2、……、Pn、≐
- 函數符號:f1、f2、……、fm
- 常數符號:ci,i∈I
- 變元:x0、x1、x2、……
- 連接詞:∨、∧、→、¬、↔、⊥、∀、∃
- 輔助符號:(、)
〔定義 2.3.1 句項〕 TERM 是有以下性質的最小集合 X:
- ci∈X(i∈I)(ci∈Const)且 xi∈X(i∈N)(xi∈Var)。
- t1,...,tai∈X⇒fi(t1,...,tai)∈X(1≤i≤m)。
〔定義 2.3.2〕 FORM 是有以下性質的最小集合 X:
- 原子:
- ⊥∈X
- ri=0⇒Pi∈X
- t1,...,tri∈TERM⇒P(t1,...,tri)∈X
- t1,t2∈TERM⇒t1=t2∈X
- ϕ,ψ∈X⇒(ϕ□ψ)∈X,這裡的 □∈{∧,∨,→,↔}
- ϕ∈X⇒(¬ϕ)∈X
- ϕ∈X⇒((∀xi)ϕ),((∃xi)ϕ)∈X
說明:
原子 (1) 包括了 0 元述詞符號,可以稱為命題符號(proposition symbol)。0 元述詞可以詮釋成 0 元關係,如 0 或 1。
ϕ 稱之為 ((∃xi)ϕ) 和 ((∃xi)ϕ) 的規模(scope)。
〔引理 2.3.3〕 令 A(t) 是句項的性質。若 A(t) 在 t 是常數或是變元時成立,並且 A(t1),A(t2),...,A(tn)⇒A(f(t1),f(t2),...,f(tn)) 對於所有函數符號 f,則 A(t) 對所有 t∈TERM 成立。
〔引理 2.3.4〕 令 A(ϕ) 是一個句式的性質,若
- A(ϕ),當 ϕ 是原子,
- A(ϕ),A(ψ)⇒ϕ□ψ,
- A(ϕ)⇒A(¬ϕ),
- A(ϕ)⇒ 對於所有 i,A((∀xi)ϕ),A((∃xi)ϕ),
則 A(ϕ) 在所有 ϕ∈FORM 成立。
TERM 上的遞迴定義:令 H0:Var∪Const→A,Hi:Aai→A,存在唯一的對應 H 使得
- 對於所有常數或變元 t,H(t)=H0(t),
- H(fi(t1,...,tai))=Hi(H(t1),...,H(tai))。
FORM 上的遞迴定義:令
- Hat=At→A,
- H□=A2→A,
- H¬=A→A,
- H∀=A×N→A,
- H∃=A×N→A,
存在唯一的對應 H 使得
- H(ϕ)=Hat(ϕ),當 ϕ 是原子,
- H(ϕ□ψ)=H□(H(ϕ),H(ψ)),
- H(¬ϕ)=H¬(H(ϕ)),
- H(∀xiϕ)=H∀(H(ϕ),i),
- H(∃xiϕ)=H∃(H(ϕ),i)。
〔定義 2.3.6 〕 t 的自由變元集合 FV(t) 的定義為:
- FV(xi)FV(ci):={xi},:=∅,
- FV(f(t1,...,tn)):=FV(t1)∪...∪FV(tn)。
〔定義 2.3.7〕 ϕ 的自由變元集合 FV(ϕ) 的定義為:
- FV(P(t1,...,tn))FV(t1=t2)FV(⊥)=FV(P):=FV(t1)∪...∪F(tn),:=FV(t1)∪FV(t2),:=∅,
- FV(ϕ□ψ)FV(¬ϕ):=FV(ϕ)∪FV(ψ),:=FV(ϕ),
- FV(∀xiϕ)=FV(∃xiϕ):=FV(ϕ)−{xi}。
〔定義 2.3.8〕 若 FV(t)=∅ 或 FV(ϕ)=∅,則 t 或 ϕ 稱之為封閉的(closed)。封閉句式(closed formula)稱之為語句(sentence)。沒有量詞的句式稱之為開放的(open)。TERMc 表示封閉句項的集合;SENT 表示語句的集合。
〔定義 2.3.9〕 令 s 和 t 為句項,則 s[t/x] 定義為:
- y[t/x]c[t/x]:={yt若 y≡x,若 y≡x:=c,,
- f(t1,...,tp)[t/x]:=f(t1[t/x],...,tp[t/x])。
〔定義 2.3.10〕 ϕ[t/x] 定義為:
- ⊥[t/x]P[t/x]P[t1,...,tp]:=⊥,:=P ,若 P是命題,:=P(t1[t/x],...,tp(t/x)),
- (ϕ□ψ)[t/x](¬ϕ)[t/x]:=ϕ[t/x]□ψ[t/x],:=¬ϕ[t/x],
- (∀yϕ)[t/x](∃yϕ)[t/x]:={∀yϕ[t/x]∀yϕ若x≡y若x≡y:={∃yϕ[t/x]∃yϕ若x≡y若x≡y
為了方便起見,我們以 $ 表示要替換的命題符號(0 元述詞符號)。
〔定義 2.3.11〕 σ[ϕ/$] 定義為:
- σ[ϕ/$]:={σϕ若 σ≡$若 σ≡$ 對於原子σ,
- (σ1□σ2)[ϕ/$](¬σ)[ϕ/$](∀yσ)[ϕ/$](∃yσ[ϕ/$]):=σ1[ϕ/$]□σ2[ϕ/$]:=¬σ[ϕ/$]:=∀y.σ[ϕ/$]:=∃y.σ[ϕ/$]。
〔定義 2.3.12〕 t 對在 ϕ 的 x 是自由的,若
- ϕ 是原子,或
- ϕ:=ϕ1□ϕ2(或 ϕ:=¬ϕ1),並且 t 對在 ϕ1 和 ϕ2 (或 ϕ1)的 x 是自由的,或
- ϕ:=∀yψ(或 ϕ:=∃yψ),並且若 x∈FV(ϕ),則 y∈/FV(t) 且 t 對於在 ψ 中的 x 是自由的。
〔引理 2.3.13〕 t 對在 ϕ 的 x 是自由的 ⇔ t 的在 ϕ[t/x] 中的變元不在量詞的範圍內,亦即,t 在 ϕ[t/x] 中是自由的。
證明:對 ϕ 做歸納法。
〔定義 2.3.14〕 ϕ 對在 σ 的 $ 是自由的,若
- σ 是原子,或
- σ:=σ1□σ2(或 σ:=¬σ1),並且 ϕ 對在 σ1 和 σ2 (或 σ1)的 $ 是自由的,或
- σ:=∀yγ(或 ϕ:=∃yγ),並且若 $ 出現在 σ 中,則 y∈/FV(ϕ) 且 ϕ 對於在 γ 中的 $ 是自由的。
〔引理 2.3.15〕 ϕ 對在 σ 的 $ 是自由的 ⇔ ϕ 的在 σ[ϕ/$] 中的變元不在量詞的範圍內,亦即,ϕ 的所有變元在 σ[ϕ/$] 中是自由的。
〔定義 2.3.16〕 A 的擴展語言 L(A) 是從語言 L,由 A 的類似型,加上所有 A 的常數符號元素。我們將常數符號(a∈A)以 a 表示。
2.4 語義學
一個例子
考慮結構 A=(Z,<,+,−,0)。
語言 L 有以下字母:
- 述詞符號:≐、L。
- 函數符號:P、M。
- 常數符號:0。
L(A) 對所有的 m∈Z 有常數符號 m。
L(A) 的封閉形式可以這樣詮釋:
t |
tA |
m |
m |
P(t1,t2) |
t1A+t2A |
M(t) |
−tA |
接著我們詮釋 L(A) 的語句,透過指派 0 或 1 之一的真值:
v(⊥)v(t≐s)v(L(t,s))v(ϕ□ψ)v(¬ψ)v(∀xϕ)v(∃xϕ)=0={1 若 tA=sA0 其他={1 若 tA<sA0 其他 如 1.2.1 如 1.2.1=min{v(ϕ[n/x])∣n∈Z}=max{v(ϕ[n/x])∣n∈Z}
說明:
- v 將由 A 唯一決定,我們可以 [[ϕ]]A 代表 vA(ϕ)。
- 我們也可以將 tA 寫成 [[t]]A。
普遍化:
給定類似型 ⟨r1,...,rn;a1,...,am;∣I∣⟩,考慮 A=⟨A,R1,...,Rn,F1,...,Fm,{ci∣i∈I}⟩。
相應的語言 L 有述詞符號 R1,...,Rn,函數符號 F1,...,Fm,以及常數符號 ci。
L(A) 對所有 a∈∣A∣ 有常數符號 a。
〔定義 2.4.1〕 L(A) 在 A 的封閉形式的一個詮釋是一個對應 (.)A:TERMc→∣A∣ 使得:
- ciAaA=ci=a([[ci]]A)([[a]]A)
- (Fi(t1,...,tp))A=Fi(t1A,...,tpA)),當 p=ai([[Fi(t1,...tp)]]A=Fi([[t1]]A,...,[[tp]]A))
〔定義 2.4.2〕 L(A) 在 A 的語句 ϕ 的一個詮釋是一個對應 [[.]]A:SENT→{0,1} 使得:
- [[⊥]]A[[R]]A:=0:=R (即 1 或 0)
- [[Ri(t1,...,tp)]]A[[t1=t2]]A:={1 若 ⟨t1A,...,tpA⟩∈Ri ,當 p=ri0 其他:={1 若 t1A=t2A0 其他
- [[ϕ∧ψ]]A[[ϕ∨ψ]]A[[ϕ→ψ]]A[[ϕ↔ψ]]A[[¬ϕ]]A:=min{[[ϕ]]A,[[ψ]]A}:=max{[[ϕ]]A,[[ψ]]A}:=max{1−[[ϕ]]A,[[ψ]]A}:=1−∣[[ϕ]]A−[[ψ]]A∣:=1−[[ϕ]]A
- [[∀xϕ]]A[[∀xϕ]]A:=min{[[ϕ[a/x]]]A∣a∈A}:=max{[[ϕ[a/x]]]A∣a∈A}
說明:除了賦值寫法以外,我們也可以這樣寫:
- 用 A⊨ϕ 表示 [[ϕ]]A。
- 用 A⊨ϕ 表示 ϕ 在 A 中為真、有效。
⊨ 稱為滿足關係(satisfaction relation)。這個寫法也可以用在命題邏輯,用 v⊨ϕ 表示 [[ϕ]]v=1。
〔定義 2.4.3〕 令 FV(ϕ)={z1,...,zk},則 Cl(ϕ):=∀z1...zkϕ 是 ϕ 的全稱閉包(universal closure)(假設變元 zi 的順序以某方式固定下來)。
〔定義 2.4.4〕
- A⊨ϕ⇔A⊨Cl(ϕ),
- ⊨ϕ⇔對於所有(合適類似型的) A,A⊨ϕ,
- A⊨Γ⇔對於所有 ψ∈Γ,A⊨ψ,
- Γ⊨ϕ⇔(A⊨Γ⇒A⊨ϕ),這裡的 Γ∪{ϕ} 由語句組成。
〔定義 2.4.4.5〕
- 若 A⊨σ,我們說 A 是 σ 的一個模型(model)。
- 若 A⊨Γ,我們說 A 是 Γ 的一個模型。
- 若 ⊨ϕ,我們說 ϕ 為真。
- 若 Γ⊨ϕ,亦即,ϕ 在 Γ 的所有模型都成立,我們說 ϕ 是 Γ 的語義學後果(semantic consequence)。
- 令 ϕ 是有自由變元 FV(ϕ)={z1,...,zk} 的句式,若 A⊨ϕ[a1,...,ak/z1,...,zk],我們說 ϕ 被 a1,...,ak∈A 所滿足。
- 若存在能夠滿足 ϕ (FV(ϕ)={z1,...,zk})的 a1,...,ak∈A,我們說 ϕ 在 A 是可滿足的(satisfiable)。
說明:ϕ 是可滿足的 ⇔A⊨∃z1...zkϕ。
〔引理 2.4.5〕 當限制在語句上,則
- A⊨ϕ∧ψ⇔A⊨ϕ 且 A⊨ψ,
- A⊨ϕ∨ψ⇔A⊨ϕ 或 A⊨ψ,
- A⊨¬ϕ⇔A⊭ϕ,
- A⊨ϕ→ψ⇔(A⊨ϕ⇒A⊨ϕ),
- A⊨ϕ↔ψ⇔(A⊨ϕ⇔A⊨ϕ),
- A⊨∀xϕ⇔A⊨ϕ[a/x],對於所有 a∈∣A∣,
- A⊨∃xϕ⇔A⊨ϕ[a/x],對於一些 a∈∣A∣,
說明:
- 0 元關係是 A∅={∅} 的子集合,也就是 ∅ 或 {∅},序數的 0 或 1。因此,[[P]]A=P,P 是真值。
- 考慮對應到 Ak 的子集合的有 k 個自由變元的句式 ϕ 以及 FV(ϕ)={z1,...,zk},我們可以令 [[ϕ]]A={⟨a1,...,ak⟩∣A⊨ϕ(a1,...,ak)}。
2.5 述詞邏輯的一些簡單性質
〔定理 2.5.1〕
- ⊨¬∀xϕ↔∃x¬ϕ,
- ⊨¬∃xϕ↔∀x¬ϕ,
- ⊨∀xϕ↔¬∃¬xϕ,
- ⊨∃xϕ↔¬∀¬xϕ。
〔定理 2.5.2〕
- ⊨∀x∀yϕ↔∀y∀xϕ,
- ⊨∃x∃yϕ↔∃y∃xϕ,
- ⊨∀xϕ↔ϕ,若 x∈/FV(ϕ),
- ⊨∃xϕ↔ϕ,若 x∈/FV(ϕ)。
〔定理 2.5.3〕
- ⊨∀x(ϕ∧ψ)↔∀xϕ∧∀xϕ,
- ⊨∃x(ϕ∨ψ)↔∃xϕ∨∃xϕ,
- ⊨∀x(ϕ(x)∨ψ)↔∀xϕ(x)∨ψ,若 x∈/FV(ψ),
- ⊨∃x(ϕ(x)∧ψ)↔∃xϕ(x)∧ψ,若 x∈/FV(ψ)。
注意:∀x(ϕ(x)∨ψ(x))→∀xϕ(x)∨∀xϕ(x) 和 ∃xϕ(x)∧∃xψ(x)→∃x(ϕ(x)∧ϕ(x)) 並不為真。
〔引理 2.5.4〕
- 令 x 和 y 是使得 x∈/FV(r) 的相異變元,則 (t[s/x])[r/y]=(t[r/y])[s[r/y]/x],
- 令 x 和 y 是使得 x∈/FV(r) 的相異變元,則 (ϕ[t/x])[s/y]=(ϕ[s/y])[t[s/y]/x],
- 令 ψ 對在 ϕ 中的 $ 是自由的,並且 t 對 ϕ 和 ψ 中的 x 是自由的,則 (ϕ[ψ/$])[t/x]=(ϕ[t/x])[ψ[t/x]/$]。
- 令 ϕ,ψ 對在 σ 中的 $1,$2 是自由的,令 ψ 對在 ϕ 中的 $2 是自由的,並且 $1 未在 ψ 中出現,則 (σ[ϕ/$1])[ψ/$2]=(σ[ψ/$2])[ϕ[ψ/$2]/$1]。
說明:x∈/FV(r)⇒r[s[r/y]/x]=r。
〔系理 2.5.5〕
- 若 z∈/FV(t),則 t[a/x]=(t[z/x])[a/z],
- 若 z∈/FV(ϕ) 且 z 對在 ϕ 的 x 是自由的,則 (ϕ[a/x])=(ϕ[z/x])[a/z]。
〔定理 2.5.6 約束變元的變換〕 若 x,y 對 ϕ 中的 z 是自由的,並且 x,y∈/FV(ϕ),則 ⊨∃xϕ[x/z]↔∃yϕ[y/z],且 ⊨∀xϕ[x/z]↔∀yϕ[y/z]。
證明:對於任意符合條件的 x 與 y,A⊨∃xϕ[x/z]⇔ 對於某 a,使得 A⊨(ϕ[x/z])[a/x]⇔ 對於某些 a,使得 A⊨ϕ[a/z]⇔ 對於某些 a,使得 A⊨(ϕ[y/z])[a/y]⇔A⊨∃yϕ[y/z]。
〔系理 2.5.7〕 所有句式都等同於一個其中沒有變元既是自由的又是拘束的句式。
〔定理 2.5.8 替代定理〕
- ⊨t1=t2→s[t1/x]=s[t2/x],
- ⊨t1=t2→ϕ[t1/x]=ϕ[t2/x],
- ⊨(ϕ↔ψ)→(σ[ϕ/$]↔σ[ψ/$])。
〔系理 2.5.9〕
- [[s[t/x]]]=[[s[[[t]]/x]]],
- [[ϕ[t/x]]]=[[ϕ[[[t]]/x]]]。
證明:[[[[t]]]]=[[t]],那麼 A⊨[[t]]=t,接著應用替代定理。
〔定義 2.5.10〕 一個句式 ϕ 符合前束標準形式(in prenex normal form),意思是 ϕ 是由一串量詞(可以為空)接著一個(無量詞的)開放句式組成。我們也稱這種 ϕ 為前束句式(prenex formula)。
〔定理 2.5.11〕 對於每個句式 ϕ,都存在前束句式 ψ 使得 ⊨ϕ↔ψ。
證明:應用〔定理 2.5.6〕,我們可以為所有分別約束的變元挑選相異的變元符號。
〔定義 2.5.12〕 若 P 是一個一元述詞符號,則 (∀x∈P)ϕ:=∀x(P(x)→ϕ),(∃x∈P)ϕ:=∃x(P(x)∧ϕ)。
{定義 2.5.13〕 Sub+ 和 Sub− 同時定義如下:
- Sub+(ϕ)Sub−(ϕ)={ϕ}=∅,對於原子 ϕ
- Sub+(ϕ1□ϕ2)Sub−(ϕ1□ϕ2)=Sub+(ϕ1)∪Sub+(ϕ2)∪{ϕ1□ϕ2}=Sub−(ϕ1)∪Sub−(ϕ2),對於 □∈{∧,∨}
- Sub+(ϕ1→ϕ2)Sub−(ϕ1→ϕ2)=Sub−(ϕ1)∪Sub+(ϕ2)∪{ϕ1→ϕ2}=Sub+(ϕ1)∪Sub−(ϕ2)
- Sub+(Qx.ϕ)Sub−(Qx.ϕ)=Sub+(ϕ)∪{Qx.ϕ}=Sub−(ϕ),對於 Q∈{∀,∃}。
- 若 ϕ∈Sub+(ψ),則我們說 ϕ 在 ψ 中正出現(occurs positively)。
- 若 ϕ∈Sub−(ψ),則我們說 ϕ 在 ψ 中負出現(occurs positively)。
〔定理 2.5.14〕 令 ϕ(ψ)不在 σ 中負出現(正出現),則:
- [[ϕ1]]≤[[ϕ2]]⇒[[σ[ϕ1/ϕ]]]≤[[σ[ϕ2/ϕ]]]
- [[ψ1]]≤[[ψ2]]⇒[[σ[ψ1/ψ]]]≥[[σ[ψ2/ψ]]]
- A⊨(ϕ1→ϕ2)→(σ[ϕ1/ϕ]→σ[ϕ2/ϕ])
- A⊨(ψ1→ψ2)→(σ[ψ2/ψ]→σ[ψ1/ψ])
2.6 同一關係
同一關係的公理(除了 I4 是一個公理架構(axiom schema)):
I1I2I3I4∀x(x=x)∀xy(x=y→y=x)∀xyz(x=y∧y=z→x=z)∀x1...xny1...yn(i≤n⋀xi=yi→t(x1,...,xn)=t(y1,...,yn))∀x1...xny1...yn(i≤n⋀xi=yi→(ϕ(x1,...,xn)→ϕ(y1,...,yn)))
說明: I1 到 I3 指出同一關係是等同關係,而 I4 說明同一關係是其他所有(可定義的)關係的一個同餘關係(congurence)。
2.7 範例
- 同一關係的語言。類似型 ⟨−;−;0⟩
- 偏序的語言。類似型 ⟨2;−;0⟩
- 群的語言。類似型 ⟨−;2,1;1⟩
- 投影幾何平面語言。類似型 ⟨2;−;0⟩
- Π(x):=∃y(xIy)(x 是一個點)。A(y):=∃x(xIy)(y 是一條線)。
- γ0:∀x(Π(x)↔¬A(x))
- γ1:∀xy(Π(x)∧Π(y)→∃z(xIz∧yIz))
- γ2:∀xy(A(u)∧A(v)→∃x(xIv∧xIu))
- γ3:∀xyuv(xIu∧yIu∧xIv∧yIv→x=y∨u=v)
- γ4:∃x0x1x2x3u0u1u2u3(⋀xiIui∧j=i−1(mod3)⋀xiIuj∧j=i−1(mod3)i=j⋀¬xiIuj)
- 帶單元的環的語言。類似型 ⟨−;2,2,1;2⟩
- 代數的語言。類似型 ⟨−;2,2,1;1⟩
- (無向)圖的語言。類似型 ⟨2;−;0⟩
2.8 自然演繹法
演繹規則
引入規則:
ϕψϕ∧ψ(∧I)
[ϕ]...ψϕ→ψ(→I)
移出規則:
ϕ∧ψϕ(∧E)
ϕ∧ψψ(∧E)
ϕϕ→ψψ(→E)
矛盾規則:
⊥ϕ(⊥)
[¬ϕ]...⊥ϕ(RAA)
全稱引入與移出規則:(新增)
ϕ(x)∀xϕ(x)(∀I)
∀xϕ(x)ϕ(t)(∀E)
〔定義 2.8.1 (Tarski)〕 令 Γ 是一個句式集合,σ 是一個句式,{xi1,xi2,...}=⋃{FV(ϕ)∣ϕ∈Γ∪{σ}}。若 a 是 ∣A∣ 元素的(可重複)序列 (a1,a2,...),若 Γ(a) 是從 Γ 透過將所有在 Γ 中的句式 xi 替換為 aj(j≤1) 而來(對於 Γ={ψ},寫成 ψ(a))。我們定義: