【集合論】 02 - 集合與自然數


1. 公理系統

  先來看看康托爾對集合的定義:“一個集合是我們知覺中或理智中的、確定的、互不相同的事物的一個匯集,被設想為一個整體”。盡管康托爾本人已經建立起了相當廣泛而深刻的集合理論,但對於集合本身的定義卻還是含糊的,他的理論被稱為“朴素集合論”(Native Set Theory)。雖然試圖描述集合的每個屬性,但其中“匯集”、“整體”等詞其實是和“集合”等價的。定義的含糊使得各種悖論趁虛而入,這也成為反對者們的主要攻擊目標。之后,策梅洛(Zermelo)為集合建立了一套公理化系統,並由弗蘭克爾(Fraenkel)進行了擴充和修正,被稱為ZF公理系統,包含選擇公理(見下文)的ZF系統簡稱為ZFC系統。ZFC系統對集合的限制比較嚴格,后來由馮·諾伊曼(von Neumann)、哥德爾(Gödel)等人建立的GB公理系統則寬松很多,但這里僅介紹ZFC系統。

                    

Zermelo(1871 - 1953)          von Neumann(1903 - 1957)               Gödel(1906 - 1978)

1.1 有限集

  公理化系統中對原始概念不作定義,而只給出一些限定條件和定義,並在此基礎上進行推理。同樣,公理集合論中對集合不作定義,它是我們討論的唯一對象。另外,集合間有未定義的基本關系:\(A\in B\),可以說成\(A\)是\(B\)的元素(member),或\(B\)包含\(A\)。任何概念都首先有一個基本關系“等於”,ZFC系統的第一個公理就對“等於”作了定義,該公理其實可以看作是“等於”和“屬於”的互相定義和描述。需要說明的是,雖然以下的結論都只有啟發性的描述,嚴格的證明都是要從公理或定理推出的。

  【ZFC-1外延公理(Atom of Extensionality):如果對任意\(x\),\(x\in A\)當且僅當\(x\in B\),則\(A=B\)。

\[\forall A\forall B(\forall x(x\in A\Leftrightarrow x\in B)\Rightarrow A=B)\]

  鑒於語言不方便也不精確,公理系統采用了一階謂詞邏輯的語言。使用\(A\in B\)和\(A=B\)作為原子公式,加上邏輯操作符\(\neg\)、\(\wedge\)、\(\vee\)、\(\Rightarrow\)、\(\Leftrightarrow\)、\(\forall\)、\(\exists\)可以組成復雜的公式,原子公式的否定可以簡寫為\(A\notin B\)和\(A\ne B\)。如果\(C(x)\)是一個含有\(x\)的公式,且\(x\)不受\(\forall\)、\(\exists\)限制,則\(C(x)\)稱為\(x\)的一個條件

  ZFC系統共10條公理,除去外延公理,其它9條都是對集合的限定,后續討論的集合必須可以由這些公理構造。公理將集合限定在可控制的范圍內,消除了悖論的產生,下面我們就從零開始,構建集合的大廈。

  【ZFC-2】 空集公理(Atom of Empty Set):存在不含任何元素的集合。

\[\exists A\forall x(x\notin A)\]

  空集公理承認不包含任何元素的集合是存在的,這樣就避免了追究元素到底是什么。更重要的是,空集公理承認了至少有一個集合存在,有了這塊磚,集合的大廈就有了基礎。當然,根據外延公理,空集都是相等的,即空集是唯一的(這樣的推論以后不再贅述),一般記作\(\varnothing\)。

  有了一個集合,接下來可以構造包含1個元素、2個元素...的集合。它們的數量非常龐大,如何用盡量少的公理去構造它們?我們直接來看看ZFC系統是如何解決的:

  【ZFC-3偶集公理(Atom of Pairing):對任何集合\(a\)、\(b\),都存在僅包含它們的集合\(A\)。

\[\forall a\forall b\exists A\forall x(x\in A\Leftrightarrow x=a\vee x=b)\]

  【ZFC-4並集公理(Atom of Union):對任意集合\(M\),存在集合\(A\),它的任何元素屬於\(M\)的某個元素。

\[\forall M\exists A\forall x(x\in A\Leftrightarrow\exists X(X\in M\wedge x\in X))\]

  偶集公理開始對集合進行打包,構造更上層的集合,選擇兩個集合是因為1是無法擴展的,而且\(a=b\)時也有\(M=\{a\}\)。並集公理將打好的多個包合並為一個包,它用操作符\(\cup (M)\)表示,也可以對元素直接操作,比如\(\cup\{a,b\}=a\cup b\)。借助偶集公理它可以繼續擴展集合元素的數量,比如\(\{a,b,c\}=\cup\{\{a,b\},\{c\}\}\)。另外要注意,並集公理並不限於兩個集合的並,這為無窮集提供了很好的工具。

  有了這3個公理,任何有限集都可在有限步內構造完成,有限的世界已經沒有什么秘密了。如果再加上(\(\cup\),intersection)、(\(\cap\),union)、(\(-\))的運算和子集(\(\subseteq\))、真子集(\(\subset\))的概念,就和我們高中學習的集合沒什么兩樣了。當然還有這么一個妖艷的計算並集的公式:容斥原理,它在概率論和組合學中經常出現,覺得公式復雜的畫個文氏圖就一目了然了。

\[\left| {\bigcup\limits_{i=1}^n{{A_i}}}\right| =\sum\limits_{k=1}^n{{{(-1)}^{k-1}}\sum\limits_{1\le{i_1}<\cdots<{i_k}\le n}{\left| {{A_{{i_1}}}\cap\ldots\cap{A_{{i_k}}}}\right| }}\]

  在向無窮集進發之前,我們需要休整一下,再了解幾個今后有用的公理和概念。

  【ZFC-5冪集公理(Atom of Power Set):集合\(A\)的一切子集組成集合。

\[\forall A\exists P\forall X(X\in P\Leftrightarrow X\subseteq A)\]

  【ZFC-6子集公理(Atom Schema of Separation):存在滿足給定條件的子集。

\[\forall B\exists A\forall x(x\in A\Leftrightarrow x\in B\wedge C(x))\]

  冪集構建了一個很大的上層集合,為子集公理提供了非常好的限制集,\(A\)的冪集一般記作\(\mathscr{P}(A)\)。子集公理說明:滿足一定條件集合,只有被限定在某個集合中時,才能組成集合。這使得集合不能是過於龐大的匯合,從而消除了各種悖論。考慮以下“集合”(很容易導出矛盾):(1)一切不屬於自己的集合(羅素悖論,Russell's Paradox);(2)包含所有集合的集合。對於限制集比較明顯的場合,也可以用\(\{x|C(x)\}\)來表示子集。

                    

Russell(1872 - 1970)               Peano(1858 - 1932)            Dedekind(1831 - 1916)

1.2 關系

  數學處理的對象除了數之外,更多的是關系,而關系一般由有序對組成。集合中的元素是沒有順序的,需要為有序對(ordered pairs)建立模型。集合論中比較通用的有序對定義是:\((a,b)=\{\{a\},\{a,b\}\}\),你可以嘗試證明其合理性。笛卡爾積\(A\times B\)定義為如下,它的限制集為\(\mathscr{P}(A\cup B)\)。只包含有序對的集合叫關系,\(xRy\)表示\((x,y)\)在關系\(R\)中,關系\(R\)所有元素的第一個元素組成定義域\({\rm dom}(R)\),所有元素的第二個元素組成值域\({\rm ran}(R)\),它們都是集合。

\[A\times B=\{(a,b)|a\in A\wedge b\in B\}\]

  關系的復合已是我們熟悉的概念,它們分別記作\(R^{-1}\)和\(R\circ S\)。對於關系\(F\)值域內的每個\(x\),若滿足\(xFy\)的\(y\)唯一,則\(F\)叫函數(function),且寫作\(F:X\to Y\),\(X\)上的二元運算則可以寫做\(F:X\times X\to X\),\(X\)到\(Y\)的一切函數組成的集合記作\(Y^X\),\(F\restriction A =\{(x,y) \in F|x\in A\}\)稱為\(F\)的限制(restriction)。另外還有大家熟悉的單射滿射雙射(一一映射,one-to-one injection)、原象的概念就不贅述了。

2.自然數

  集合是數學的語言,而數學首先是研究數的,所以必須用集合為數下個定義。人們最初認識的是自然數(natural number),它有着非常簡單的性質:“以0為起點,以1為步長依次排列”,所有自然數的運算都可以建立在這個簡單的模型上。所以定義自然數不是一件難事,著名的皮亞諾公理系統(Peano)就為自然數建立了一個很好的模型,不過這里我們只介紹馮·諾伊曼用集合為自然數下的定義。

  首先用\(\varnothing\)定義\(0\)、用\(\{\varnothing\}\)定義\(1\)是沒有什么疑義的,那么\(2\)呢?用\(\{\{\varnothing\}\}\)?需要強調的是,自然數有兩個本質屬性:一個是數量,一個是順序,所以\(2\)里既要體現它的大小,又要體現它與\(0\)、\(1\)的關系。馮·諾伊曼給出了如下巧妙的定義:

\[0=\varnothing,\quad n+1=\{0,1,\cdots,n\}\]

  當然,我們需要用集合的語言重新描述一下,定義\(a^+=a\cup\{a\}\)為\(a\)的后繼者(successor),任何自然數都是從\(\varnothing\)開始的某個后繼者。仔細品味這個定義,它很好地滿足了量和序的雙重要求。對於一個包含有\(\varnothing\)的集合\(A\),如果它的任意元素的后繼者還是在\(A\)中,\(A\)被稱為歸納集(inductive set),但從目前的6條公理我們還不能構造出這樣的“集合”,它需要單獨的一條公理來保證。

  【ZFC-7無窮公理(Atom of Infinity):至少存在一個歸納集。

\[\exists A(\varnothing\in A\wedge (\forall a(a\in A\Rightarrow a^+\in A)))\]

  歸納集是我們構造的第一個無窮集,但要注意一個歸納集中可能含有自然數之外的的其它元素,需要剔除它們才能得到純正的自然數集。當然,有了一個歸納集作為限制集,加上用子集公理可以這樣定義自然數集:\(\omega =\{n|n\in any\,inductive\,set\}\),容易證明\(\omega\)也是歸納集,並且其中只有自然數。顯然,\(\omega\)是最小的歸納集,如果它的某個子集\(A\)是歸納集,則有\(A=\omega\),這就是著名的歸納原理(Induction Principle),它是我們熟悉的數學歸納法的理論依據,經常被用來證明某個性質對所有自然數都成立。

  接下來需要驗證這樣的自然數集是否合理,看看它與我們直觀上認識的自然數集是否兼容。直觀上的自然數集表現為一個有序序列,每兩個自然數\(m\)、\(n\)都可以進行比較,即\(m=n\)、\(m<n\)和\(m>n\)中有且僅有一個成立(三歧性)。用集合定義的自然數有兩個等價的關系\(A\in B\)和\(A\subset B\),反復運用歸納原理不難證明它們也有三歧性,所以可作為\(A<B\)的定義。自然數序列有開頭而沒有結尾,這個簡單的性質使之區別於其它數集,而且也是后面擴展為超限數的基礎。這個性質一般表現為“最小數定理”:任何自然數的集合都有最小數。證明思路是構造一個下限集,並選取其中的最大者,即是我們要找的最小數。這樣看來,自然數加上\(A<B\)的定義,完全是和直觀的自然數集相兼容的。

  類似於自然數的定義,有一種常見的遞歸序列\(u_{n^+}=f(u_n)\),序列的后一項依賴於前一項,這樣的序列能否成為集合?直覺上看它和自然數集本質上是相同的,只要證明存在一個從自然數集到該序列的函數即可,這就是“遞推原理”(Recursive Theorem)。雖然這個函數有明顯的限制集,但由於是遞歸定義的,無法用有限的條件來描述它,所以簡單地用子集公理是不行的。證明方法和自然數集的定義是類似的,即找尋滿足條件的關系中最小那個(所有關系的交集),繼而只要用歸納原理證明它滿足遞歸條件且是函數即可。 

  有了遞推原理,就可以按如下遞歸的方法定義自然數上的運算,容易證明它們都是\(F:\omega\times\omega\to\omega\)上的函數。至於這些運算的各種性質(交換律、分配律之類)也不難推導,就不再贅述了。

  (1)\(m+0=m,\quad m+n^+=(m+n)^+\);

  (2)\(m\cdot 0=0,\quad m\cdot n^+=m\cdot n+m\);

  (3)\(m^0=1,\quad m^{n^+}=m^n \cdot m\)。

  歸納原理和遞推原理都依賴於“前序數”,而自然數則更強調“后序者”,如果想擴展這兩個原理,需要擺脫對“前序數”的依賴。一個簡單而有效的做法就是依賴所有“前序數”,如同最小數定理的證明一樣,我們可以關注它們的“后序者”(學完超限數,這些就更明白了)。由此可以得到更具一般性的第二歸納原理和第二遞推原理:

  第二歸納原理:自然數集合\(A\)如果滿足\(\forall x(x<n\Rightarrow x\in A) \Rightarrow n\in A\),那么\(A=\omega\)。

  第二遞推原理:存在滿足遞歸定義\(u_n=f(u\restriction n)\)的函數。

  至此,自然數已經被很好的定義和研究了,你甚至可以自己很輕松地定義整數(integer number)和有理數(rational number),它們都可以由自然數擴展得來。但實數(real number)的定義似乎並不是那么顯然,而實數卻又是那樣的真實和重要,必須有一個好的模型才能使微積分有個堅實的基礎,這就回到了集合論創立的初衷。歷史上有兩個優秀的實數模型,一個來自康托爾的戰友戴德金(Dedekind),一個來自康托爾本人。戴德金分割(Dedekind cut)將一個實數定義為有理數集的一個分割,這個簡單而有效的定義非常適合於實數運算。康托爾則用無窮有理數列定義實數,本質是將實數定義為實無窮。關於數系的內容,我打算另開專題,這里就不展開講了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM