冯·诺伊曼-博内斯-哥德尔集合论(,')是種以类為直觀動機的一阶公理化集合论,它是策梅洛-弗兰克尔集合论(,')的保守扩展('裡可以證明的定理也都是'的定理),而且'僅需在一階邏輯基本的公理模式上添加有限数目的公理,但'需添加與集合有關的公理模式。
**'首先由冯·诺伊曼在1920年代提出,從1937年开始由保罗·博内斯作修改,在1940年由哥德尔进一步简化。
基本符號
在**'下,「属于關係」以一個雙元斷言符號 P(x,\,y) 來表示, P(x,\,y) 通常簡記為 x \in y ,並被直觀理解成「x属于y」;類似地, P(x,\,y) 的否定 \neg P(x,\,y) 通稱被簡記為 x \notin y ,並被直觀理解為「x不属于y」。
以下都把 \vdash_{NBG} 簡寫為普通的 \vdash。
本條目定理的證明會頻繁引用一階邏輯的定理,定理的代號可以參見一阶逻辑#常用的推理性質一節。
類與集合
「類」這個名詞在公理化集合论出現之前,通常被理解為「以集合為元素的集合。」或是集合(如等价类)。
但'所談及的一切對象(變數和項)都是類。而所謂的集合,是屬於某個類的類**,也就是說以下的合式公式(\mathcal{M} 來自德语的"集合"「」)式
:\mathcal{M}(x):=\exists y (x \in y)
可直觀理解為「x是集合」,特別注意到,為了避免跟其他合式公式的變數產生混淆, y 必須是展開 \mathcal{M}(x) 時首次出現的變數。反之合式公式
:\mathcal{Pr}(x):=\neg\mathcal{M}(x)
可稱為「 x 是真类(**')」。
子類
直觀上「x包含於y」意為「所有x的元素a都會屬於y」,以此為動機,**'有以下的符號簡寫
:x \subseteq y := \forall a[\,
(a \in x)
\Rightarrow
(a \in y)
\,]
以上可稱為「x包含於y」或「x是y的子類(')」;在 \mathcal{M}(x) 和 \mathcal{M}(y) 成立的前提下(也就是「x和y都是集合」),可稱為「x是y的子集(')」。
與集合相關的量詞簡寫
仿造量詞的簡寫,對於任意變數 x 與合式公式 \mathcal{A} ,可作如下的符號定義
:({\forall}^M x)\mathcal{A} := \forall x[\,\mathcal{M}(x)\Rightarrow \mathcal{A}\,] (對所有 x , x 是集合則 \mathcal{A} )
:({\exists}^M x)\mathcal{A} := \exists x[\,\mathcal{M}(x)\wedge \mathcal{A}\,] (存在 x 不但是集合且 \mathcal{A} )
也有書籍以小寫字母來表示被量化的集合變數,但考慮到一般的非邏輯數學書籍都將大小寫的差異挪作他用,為避免混淆本條目採用以上的上標表示法。
等號公理
看待等號的不同方式
直觀上,兩個集合相等意為「x的元素就是y的元素」,也就是朴素集合论的外延公理,換句話說,可用以下的嚴謹合式公式重寫為
:\forall a[\,
(a \in x)
\Leftrightarrow
(a \in y)
\,]
但一階邏輯的等號可以視為單獨的斷言符號,也可以視為一條複合的合式公式。具體來說,視為一個新的斷言符號 Q(x,\,y) 並簡記為 x = y 的話,需在**'內額外添加以下的公理
{{math theorem
| name = (T^{\prime})
| math_statement = (x=y)
\Leftrightarrow
\forall a[\,
(a \in x)
\Leftrightarrow
(a \in y)
\,]
}}
直觀上可理解為「類x的元素就是類y的元素,等價於類x等於類y」。
但視為一條合式公式,則僅需做以下的符號定義
:(x=y)
:=
\forall a[\,
(a \in x)
\Leftrightarrow
(a \in y)
\,]
不管是何種看待方法,習慣上都會把 \neg(x = y) 簡記成 (x \neq y) (直觀上的「不相等」)。
等號的良置
為了確保 (x = y) 的確符合直觀上對等號的要求,還需添加以下的公理
直觀上,這個公理確保「x等於y,則x屬於z等同於y屬於z」。
這樣,以下的元定理就確保了如此定義的等號是「成功的」。
真子類
在定義「相等」以後,可以把「相等的類」排除出子類的定義中,換句話說,**'有以下的符號定義
:x\subset y
:=
(x \subseteq y)
\wedge
(x \neq y)
可直觀理解為「x是y的真子類('),定義為x包含於y且x不等於y」;在 \mathcal{M}(x) 和 \mathcal{M}(y) 成立的前提下(也就是「x和y都是集合」),可稱為「x是y的真子集(')」。
外延定理
為以下的定理可直觀理解為「x等於y等價於,對所有集合z,z屬於x等價於z屬於y」,也就是說,等於的定義可以「限縮」成元素為集合的狀況。
引入新的函數符號前,常需要唯一存在性的證明,而外延定理大大降低了證明的難度。
特定條件下的存在性
以下關於一阶逻辑的一般性定理,也大大簡化了 **' 引入新公理的過程所需的證明
{{math theorem
|name=(DC, Definition under certain condition)
|math_statement=
x 於合式公式 \mathcal{A} 完全不自由且 c 是常數符號。若
\mathcal{A} \vdash (\exists x)\mathcal{B}
則有
\vdash(\exists x)\{\,
[\,\neg\mathcal{A} \wedge (x=c)\,]
\vee
(\mathcal{A} \wedge \mathcal{B})
\,\}
}}
空集合公理
{{math theorem
| name = (N)
| math_statement = ({\exists}^{M} x)({\forall}^{M} y)(y\not\in x)
}}
這個公理的直觀意思是「存在集合x,使的所有集合y都不屬於x」。
事實上這個公理還確保了空集的唯一性,嚴格來說,它確保了:
{{math theorem
|name=
|math_statement=
\vdash (\exists!x)[\,
\mathcal{M}(x)
\wedge
({\forall}^{M} y)(y\not\in x)
\,]
}}
也就是直觀上,「空集是唯一存在的」,這樣根據函數符號與唯一性一節,可以在'加入新的常數符號 \varnothing 和以下的新公理(嚴格來說,把完全沒有函數符號和常數符號的'擴展成有 \varnothing 的新**',但兩個理論是等效的)
{{math theorem
| name = (N^{\prime})
| math_statement = \mathcal{M}(\varnothing)
\wedge
({\forall}^{M} y)(y\not\in \varnothing)
}}
這個新公理直觀上以「\varnothing為集合,且任意集合y都不屬於\varnothing」,把 \varnothing 定義成了空集的表示符號。
配對公理
{{math theorem
| name = (P)
| math_statement = ({\forall}^{M} x)({\forall}^{M} y)({\exists}^{M} p)({\forall}^{M} z)\{(z\in p)\Leftrightarrow [(z=x)\vee(z=y)]\}
}}
這個公理的直觀意思是「對所有集合x和集合y,存在一個僅以x跟y為元素的集合p」。
這個公理還確保了以下的唯一性:
{{math theorem
|name=定理(P-1)
|math_statement=
\mathcal{M}(x) \wedge \mathcal{M}(y)
\vdash (\exists!p)\big\{\,
\mathcal{M}(p)
\wedge
({\forall}^{M} z)\{\,(z\in p)\Leftrightarrow [(z=x)\vee(z=y)]\,\}
\,\big\}
}}
這樣的話會有
{{math theorem
|math_statement=
\vdash
(\exists! p)\bigg\{\,
\{\,
\neg[\,\mathcal{M}(x) \wedge \mathcal{M}(y)\,]
\wedge
(p = \varnothing)
\,\}
\vee
\big\{\,
\mathcal{M}(x) \wedge \mathcal{M}(y)
\wedge
\mathcal{M}(p)
\wedge
({\forall}^{M} z)\{\,(z\in p)\Leftrightarrow [(z=x)\vee(z=y)]\,\}
\,\big\}
\,\bigg\}
}}
所以根據函數符號與唯一性一節,可以在**'加入新的雙元函數符號 f^2_p(x,\,y)(簡記為 \{x,\,y\} )和以下的新公理
{{math theorem
| name = (P^{\prime})
| math_statement =
\bigg\{
\neg[\,\mathcal{M}(x) \wedge \mathcal{M}(y)\,]
\wedge
(\{x,\,y\} = \varnothing)
\bigg\}
\vee
\bigg\{
\mathcal{M}(x) \wedge \mathcal{M}(y)
\wedge
\mathcal{M}\left(\{x,\,y\}\right)
\wedge
({\forall}^{M} z)\{\,(z\in \{x,\,y\})\Leftrightarrow [(z=x)\vee(z=y)]\,\}
\bigg\}
}}
這個新公理的直觀意思是「若x和y為集合,則 \{x,\,y\} 就是那個只以x和y為元素的集合;但反之,若x和y不全為集合,則 \{x,\,y\} 為空集」。
有序對
\{x\}:=\{x,\,x\}
\langle x \rangle
:=
\{x\}
\langle x,\, y \rangle
:=
\{\{x\},\,\{x,\,y\}\}
\langle x_1,\,\dots,\,\,x_n,\,x_{n+1} \rangle
:=
\langle \langle x_1,\,\dots,\,\,x_n\rangle,\, x_{n+1}\rangle
在不跟括弧產生混淆的情況下,也可以把\langle x_1,\,\dots,\,\,x_n,\,x_{n+1} \rangle 記為( x_1,\,\dots,\,\,x_n,\,x_{n+1} ) 。
關係
Rel(f):=(\forall^M a)\big\{\,
(a\in f)
\Rightarrow
(\exists x)(\exists y)\{\,
\mathcal{M}(x) \wedge \mathcal{M}(y)
\wedge
[\,a=(x,\,y)\,]
\,\}
\,\big\}
类函數
Fnc(f):=
Rel(f)
\wedge
(\forall^M x)(\forall^M y)(\forall^M \upsilon)\{\,
[\,(x,\,y)\in f\wedge(x,\,\upsilon)\in f \,]
\Rightarrow
(y = \upsilon)
\,\}
類函數跟普通函数的差別在於普通函數是個集合。
类的存在公理
屬於類公理
{{math theorem
| name = (K_{\in})
| math_statement =
(\exists e)(\forall^M a)(\forall^M b)\{
[(a,\,b)\in e]
\Leftrightarrow
(a\in b)
\}
}}
交類公理
{{math theorem
| name = (K_{i})
| math_statement =
(\forall x)(\forall y)(\exists i)({\forall}^{M} a)\{
(a \in i)
\Leftrightarrow
[(a\in x) \wedge (a\in y)]
\}
}}
補類公理
{{math theorem
| name = (K_{c})
| math_statement =
(\forall x)(\exists c)({\forall}^{M} a)[
(a\in c)
\Leftrightarrow
(a\not\in x)
]
}}
定義域公理
{{math theorem
| name = (K_{D})
| math_statement =
(\forall x)(\exists d)(\forall^M a)\{
(a\in d)
\Leftrightarrow
(\exists^M b)[(a,\,b) \in x]
\}
}}
積類公理
{{math theorem
| name = (K_{p})
| math_statement =
(\forall x)(\exists p)(\forall^M a)(\forall^M b)\{
[\,(a,\,b) \in p\,]
\Leftrightarrow
(a \in x)
\}
}}
置換類公理
{{math theorem
| name = (K_{\sigma 1})
| math_statement =
(\forall x)(\exists \sigma)(\forall^M a)(\forall^M b)(\forall^M c)\{
[(a,\,b,\,c) \in x]
\Leftrightarrow
[(b,\,c,\,a) \in \sigma]
\}
}}
{{math theorem
| name = (K_{\sigma 2})
| math_statement =
(\forall x)(\exists \sigma)(\forall^M a)(\forall^M b)(\forall^M c)\{
[(a,\,b,\,c) \in x]
\Leftrightarrow
[(a,\,c,\,b) \in \sigma]
\}
}}
類的存在元定理
這個元定理對應到ZFC尔集合论的分類公理。
首先需要递归地定义「可敘述公式」(predicative well-formed formula):
- 對任意變數 x 和 y ,x \in y 為可敘述公式。
- 若 \mathcal{P} 與 \mathcal{Q} 為可敘述公式, x 為任意變數,則 (\neg\mathcal{P}) 、 (\mathcal{P} \Rightarrow \mathcal{Q}) 與 (\forall^M x)\mathcal{P} 都是可敘述公式。
這樣依據上列諸類存在公理,就有以下元定理:
{{math theorem
| name = 類的存在元定理
| math_statement =
\mathcal{P} 為一條只內含變數 x_1,\,\dots,\,x_n,\,y_1,\,\dots,\,y_m 的可敘述公式,則有
:\vdash
(\exists s)(\forall^M x_1)\ldots(\forall^M x_n)[
(\langle x_1,\,\dots,\,x_n\rangle \in s)
\Leftrightarrow
\mathcal{P}
]
}}
集合的公理
并集公理
幂集公理
{{math theorem
| name = (W)
| math_statement =
(\forall^M x)(\exists^M w)(\forall^M \xi)\{
(\xi \in w)
\Leftrightarrow
(\xi \subseteq x)
\}
}}
子集公理
{{math theorem
| name = (S)
| math_statement =
(\forall^M x)(\forall y)(\exists^M z)(\forall^M a)\{
(a \in z)
\Leftrightarrow
[(a \in x) \wedge (a \in y)]
\}
}}
無窮公理
{{math theorem
| name = (I)
| math_statement =
(\exists^M I)\{
(\varnothing \in I)
\wedge
(\forall^M a)[
(a \in I) \Rightarrow (a \cap \{a\} \in I)
]
\}
}}
取代公理及其替代
{{math theorem
| name = (R)
| math_statement =
Fnc(f)
\Rightarrow
(\forall^M x)(\exists^M r)(\forall^M b)\bigg\{
(b \in r)
\Rightarrow
(\exists^M a)\{
(\langle a,\,b\rangle \in r)
\wedge
(a \in x)
\}
\bigg\}
}}
直觀意義為「f 為类函数則對任意集合 x ,存在一個集合 r ,正好就是在 f 的規則下映射出的像」。
大小限制公理
- 对于任何类 C,存在一个集合 x 使得 Rp(C,x) (謂 x 是 C 的表示,即 C 和 x 所包含的元素一樣),当且仅当没有在 C 和所有集合的类 V 之间的双射。
这个公理贡献自冯·诺伊曼,并一下实现了分离公理、替代公理和全局选择公理。他效力相當於原始的替代公理加上这选择公理。完全的大小限制公理蕴涵了全局选择公理,因为序数的类不是集合,所以有从序数到全集的双射。
選擇公理
引用
*
- John von Neumann, 1925, "An Axiomatization of Set Theory." English translation in Jean van Heijenoort, ed., 1967. From Frege to Gödel: A Source Book in Mathematical Logic, 1879-1931. Harvard University Press.
- Mendelson, Elliott, 1997 (1964). An Introduction to Mathematical Logic, 4th ed. Chapman & Hall. The classic textbook treatment of NBG set theory, showing how it can found mathematics.
- Richard Montague, 1961, "Semantic Closure and Non-Finite Axiomatizability I," in Infinitistic Methods, Proceedings of the Symposium on Foundations of Mathematics, (Warsaw, 2-9 September 1959). Pergamon: 45-69.
*
参考资料
评论 (0)