有一種說法認為集合論的發明是在1873年12月,精確地說是1873年12月7日,因為那一天康托證明了連續統(continuum)是不可數的,所以應該把那一天當成現代集合論的生日。不論你是否同意這個出生證明,但康托1873年年底所用的證明方法並非後來廣為人知的對角線法,也就是我們在《公設化集合論的奧秘 (11)》所採用的方法,對角線法的提出要到大約19年後的1892年才公諸於眾。
但從那一天起,人類對無限的了解進入了一個全新的階段,我們知道實數(連續統)比自然數還大。在證明實數是不可數之後,我們可否進一步下結論說自然數的冪集合P(N)與實數的尺寸一樣大,因為它們都是不可數集合?在沒發現不可數集合之前,我們原以為無限只有一種,那就是像自然數一樣可以從0, 1, 2, 3, 4, 5, 6 … 一直往下數沒有盡頭這種無限,直到這種想法被康托的證明方法擊碎。有了這個教訓,我們最好更加謹慎,任何直觀的想法都應該由嚴格的證明來確認,所以尋找證明是必要的工作。
假如要證明實數集合R與P(N) 等量,那麼根據定義1 (請參考《公設化集合論的奧秘 (8)》) ,就必須找到一個一對一且映成的函數F: R → P(N)才行。但這可不是件容易的事,我們如何在浩如星辰的實數和全體自然數的冪集合之間找到這種一一對應呢?先別失望,我們之前介紹的戴德金左集合(請參考《公設化集合論的奧秘 (16)》和《公設化集合論的奧秘 (17)》)或許可以在此危難之際發揮作用。由於戴德金實數是由一堆有理數(實際上是可數無限個)來定義的,這給了我們一個透視實數集合結構的絕佳機會。
既然每個戴德金實數就相當於無限多個有理數的集合,比如0被定義為 {q〡q ∈ Q 且q<0},也就是所有負有理數的集合,那我們正好可以定義一個一對一的恆等函數,使得每個實數r (相當於一個戴德金左集合)對應到一個相等的有理數子集合:
f: R → P(Q)
r → r
也就是說定義域R裡裝了哪一堆有理數那我的値域就取同樣一堆有理數來配對,因為這樣一堆有理數正好符合對應域P(Q)的定義條件—全體有理數的子集合。這麼容易就完成證明啦?還是個恆等函數,這也簡單到有點欺負人了吧!
且慢,有兩個問題尚待解決。首先,我們所要證明的函數關係是從 R → P(N)而不是R → P(Q)。其次,R和P(N)等量的條件是找到一個一對一且映成的函數,但我們剛剛找的f: R → P(Q)只滿足一對一的條件卻不映成,這一點可以很容易看出來。由於戴德金實數必定由無限個有理數所構成,因為左集合會往負數方向無限伸展,可是對於P(Q)來說,它顯然也必須包含由有限元素所構成的集合,比如{1/6, 37, 522}就是Q的一個有限子集合,但我們無法找到與之相對應的戴德金實數r。
現在回顧《公設化集合論的奧秘 (14)》裡的定義:
定義5:如果在集合A和B之間存在一個一對一函數ƒ : A→B,則說A小於或等量於B,寫成A ≤ B。相當於〡A〡≤ 〡B〡,也就是A的基數小於等於B的基數。
由這個定義得知,我們目前能確定的只是〡R〡≤ 〡P(Q)〡,而不是〡R〡= 〡P(N)〡。證明定理有時候就像擬訂作戰策略,對於無法一次消滅的敵人,你要分段把它逐步吃掉,而不能急於蟒蛇吞象最後把自己噎死。千萬不要輕忽每一次的小進展,那就讓我們把以上成果當成是一個好的開始吧。
有了半壁江山,就想辦法湊出另一半吧!這提醒我們之前提到的施洛德—伯恩斯坦定理(Schröder-Bernstein theorem) ,它的一般表述形式是:
對任意集合A和B,如果〡A〡≤ 〡B〡且〡B〡≤ 〡A〡
則〡A〡=〡B〡。
這個定理的威力在於它允許我們使用和有限數值一樣的方式來辨認集合的尺寸。比如有兩個數a和 b,如果a ≤ b 而且b ≤ a的話,那一定會得出a = b,施洛德—伯恩斯坦定理把這層關係從有限數推廣到不可數無限集合。
此外,這個定理還有一個實際功能,那就是當我們想證明兩個集合等量卻苦於找不到一對一且映成函數時,可以有個更簡潔的辦法。我們只需找到兩個一對一函數,一個從A到B,另一個從B到A就成了,對於許多複雜的集合等量證明來說,這不啻是天降福音。接下來只須稍稍解決一個小問題,那就是之前我們已經證明有理數和自然數一樣多(《公設化集合論的奧秘 (9)》),所以〡Q〡=〡N〡,得到〡P(Q)〡=〡P(N)〡,因此原來的戰鬥成果〡R〡≤ 〡P(Q)〡就可以順理成章地變成〡R〡≤ 〡P(Q)〡=〡P(N)〡,用小學的數學就能得到〡R〡≤ 〡P(N)〡。
以施洛德—伯恩斯坦定理的觀點來看,證明已經完成了一半。接下來我們想要在2N和R之間建立起一個一對一函數,也就是讓〡2N 〡≤ 〡R〡成立。我們再次用小學數學來解釋這樣做的理由,在《公設化集合論的奧秘 (15)》我們證明了〡P(N)〡=〡2N〡,因此只要〡2N 〡≤ 〡R〡成立,那麼〡P(N)〡≤ 〡R〡就會成立。
這讓我想起一個卡通節目,每次當兩位總在冒險旅途的主角一遇到甚麼災難,只要把兩枚原本一體的神奇戒指結合,就會跑出一個法力無邊的阿拉伯神祇名叫蘇仙,祂的神通可以打退各方的妖魔鬼怪。數學式〡R〡≤ 〡P(N)〡和〡P(N)〡≤ 〡R〡就有如集合論中的神奇戒指,當它們一結合就能招喚出法力無窮的蘇仙讓我們見識到集合論的奇蹟:〡R〡= 〡P(N)〡。
但要如何打造另外一半的戒指呢?我們需要找到一個一對一函數
θ: 2N → R
之前說過2N是指以下這種函數類型所成的集合
F: {0, 1, 2, 3, 4…} → {0, 1}
所以我們的目標是找一個這種類型的函數f對應到某個實數r。它的形式就是:
θ: 2N → R
f → r
化繁為簡是數學思考的靈魂,所以在尋找f之前我們先將θ的對應域R做點簡化工作。在《公設化集合論的奧秘 (11)》一文我們已經證明全體實數R的個數和開區間(0, 1)裡的實數一樣多,因此我們可以把目標函數θ: 2N → R調整為θ: 2N → (0, 1),也就是讓2N 中的元素f對應到(0, 1)間的某個實數即可。這個函數的樣貌如下:
θ: 2N →(0, 1)
f → 0.a0a1a2a3a4…an…
我們之前介紹過 2N的成員,它的成員是某個函數f,有如一排編上號碼從0一直延伸至無窮的燈泡,每個燈泡可以是亮燈或關閉的狀態,而f就相當於某種特定的亮燈組合方式。比如現在給出一種亮燈組合,它規定只有第一個編號為0的燈點亮,其餘所有的燈都是暗的,這時f函數的値有如下的規律:
f(0) = 1, f(1) = 0, f(2) = 0, f(3) = 0, f(4) = 0, … f(n) = 0 …
每個不同的函數f代表一種特定的亮燈組合方式。
現在只要把f的第一個函數值f(0)指定為a0 ,第二個函數值f(1)指定為a1,第三個值f(2)指定為a2,依此類推,我們就能夠得到一個介於0和1之間的實數,其小數點之後的位數只由0與1構成。以剛才的函數為例,我們得到a0 =1, a1=0, a2=0, a3=0… 因此和它對應的實數就是0.100000000…,也就是0.1。顯然如果函數不同f1 ≠ f2,則其指定的每個an值當然不同,這就導致與其相對應的實數0.a0a1a2a3a4…an …也不同,於是我們得到 θ(f1) ≠ θ(f2),因此θ為一對一函數。於是我們證明了蘇仙戒指的另一半:
〡2N 〡= 〡P(N)〡≤ 〡R〡
於是我們所知道的不可數集合的三種形態全部等量,形成一個相當優雅簡潔的集合等式〡R〡= 〡P(N)〡=〡2N〡。
我們之前用ℵ0來標示自然數和有理數這種可數無限集合的基數,因此我們有等式:
〡N〡= 〡Q〡= ℵ0
而對於比ℵ0還大的不可數集合我們用ℵ1來表示,因此又有如下的等式:
〡R〡= 〡P(N)〡=〡2N〡= ℵ1
經過長期的努力,我們終於將這些主要的無限集合之間的尺寸關係弄清楚了, 但這就是故事的終點了嗎?發揮想像力,朝著變大和變小的方向飛行,兩個有趣的問題又會浮現出來。第一個問題是有比ℵ1更大的集合嗎?如果有,那要如何才能發現它呢?或者怎樣才能把它製造出來呢?第二個問題是在ℵ0和ℵ1之間有沒有一種中等尺寸的無限集合,它既比ℵ0大但又比ℵ1小,比如說是否存在一個基數為ℵ1/2的集合?要回答這些有趣的問題就只有等下回再分解了!