所謂「1對1」,就是將A、B兩個任意的集合放一起,使之處在同一時空當中,然後將A中的元素與B中的元素建立起一個對一個的映射關係。由於A中的元素無序,B中的元素也無序,那麼在A、B對應時,則不要求特定的元素對特定的元素,比如A中 a_{1} 不是只能與B中的 b_{1} 相對,它也可以選擇與 b_{2} 相對,一旦選定,它就不能再與B中的其他元素相對。對下來的結果,只有三種可能:A>B,即B中的元素對完了,A中有剩;A<B,即A中的元素對完了,B中有剩;A=B,即A與B中的元素一一對應,沒有剩餘。這些結論反之也成立,於是人們認為,元素的一一對應是集合相等的充分必要條件,千萬注意,前提是在有窮集之間,在無窮集之間不一定。

所謂計數,則是藉助「1對1」的方式,將對象跟數聯繫起來,在知道對象「是哪些」之後來回答對象「有多少」的問題。此時的「1對1」不再是未知對未知、無序對無序,而是未知對已知、無序對有序。其中這個已知、有序的集合便作為一把標有刻度的尺子,可以用它來測量未知集合,使未知變成已知。計數就是用數的集合來做這把尺子,常用的有自然數集、有理數集、實數集。對於簡單的計數,首選自然數集N={1,2,3,…}。現在我們就用自然數集替換掉盲眼巨人手中的石子,來數一數他的羊群里有多少只羊。由於自然數集中的元素是有序的,1<2<3<4<5<…,那麼我們在將羊群中的羊與自然數集中的數一個對一個時,也要遵循這個次序,出第一隻羊對1、再出一隻羊對2、再出一隻羊對3、…,從山洞走出最後一隻羊的時候,如果對的是10,則說明羊群里有10隻羊,計數的結果就是10。用同樣的方法,再數一數盲眼巨人住的山洞裡有多少人,比如5個,計數結果為5。然後將兩個結果進行比較,10>5,且有10-5=5,說明羊的數量比人的數量多,並且我們知道多多少,多5個。

由此可知,比較兩個集合的大小有兩種方法,一種是直接法,直接將任意的兩個集合放一起進行「1對1」,比較的結果是我們知道誰大誰小,但大多少或小多少,不得而知,因為沒有數的參與。這種方法的特點是簡單、原始,易於操作。另一種是間接法,稍微有點複雜,先對兩個集合分別進行計數,然後比較計數結果。由於計數結果是一個數,數與數之間的大小關係能夠間接反映出集合之間的大小關係,而且大多少或小多少,通過運算,可以確切地知道;再者,數是不依賴於對象的,不像集合,集合依賴於對象,脫離了對象,集合不成其為集合,而數脫離了對象,依然是數。正是數的這種超越性,使得兩個集合進行跨時空的比較成為可能。比如說,盲眼巨人今天數了自己的羊有10隻,在心裡記下來,半年後再數一遍,變成20隻了,前後一比較,誒,他知道羊多了,日子過得越來越好了。如果沒有數,不知道計數,單純靠直接的「1對1」,我們如何進行這種跨時空的比較呢?無可否認,計數過程也是一個「1對1」的對應過程,但不是一個普通的對應過程,計數過程是一個將對象數字化的過程,數是已知、有序、可計算的,計數就是將對象變成已知、有序、可計算的過程。如果還不明白什麼是計數,那麼只需要記住一點,計數計的一定是數,計數過程必須有數的參與,計數結果必然是一個數,不計其數的對應那叫計石子,不叫計數。

既然我們擁有無窮無盡的自然數,怎樣才能方便地用起來呢?我們不妨設計一台計數器,一台假想的機器,隨身攜帶,隨時取用。這台計數器以0、∞和自然數來進行計數,所以理論上它要能生成任意的自然數,為此它需要三個按鈕加一塊顯示屏。三個按鈕分別是:「歸0」按鈕、「歸∞」按鈕和「計數」按鈕。如圖所示:

假想計數器

其中顯示屏顯示的是結果R,「歸0」按鈕執行的程序是:R=0;「歸∞」執行的程序是:R=∞;「計數」按鈕執行的程序是:R=R+1(這裡的「=」是計算機程序語言中的賦值符號)。由於是假想機器,不考慮內存,甭管多大的數都能進行計算,也不考慮顯示屏的寬度,多長的數字串都能顯示。拿著這樣一台計數器,比如給手指計數,計數前先按「歸0」按鈕,使顯示屏顯示為0,由於計數是有序的「1對1」,是一種測量,所以要得出正確的計數結果,必須保證從0開始進行計數。然後,伸一根手指按一下「計數」按鈕,顯示屏顯示為1,再伸一根手指按一下「計數」按鈕,顯示屏顯示為2,如此下去,伸5下手指,按5次「計數」按鈕,顯示屏顯示為5,計數結果表明一隻手有5根手指。這個過程很簡單,相信交給機器也能完成,計數器的設計原理即是自然數的產生原理,由三個已知數0、1和∞產生出所有的自然數。

想必有人好奇,「歸∞」按鈕是幹嘛的,前所未見啊?「歸0」按鈕好理解,即所謂的「清零」,可以對空集進行計數,那麼「歸∞」按鈕則是用來對無窮集進行計數,無窮集就是元素個數為∞的集合,對無窮集進行計數可是一項高難度的技術活,沒有金剛鑽攬不了這活。顯然,從0開始,通過按「計數」按鈕,不停地加1來得出∞是不可能的,按有窮次只能得到有窮的自然數,按無窮次才能得到∞,即1+1+1+…=1×∞=∞,直接按「歸∞」按鈕即表示按了無窮次得到了∞。無窮次原本是一個按不完的過程,我們只有跳出這個過程,才能完成這個過程,所以不必抽風似地不停地按「計數」,而是直接按「歸∞」,這是設計該按鈕的一個初衷。如果沒有這個按鈕,把按無窮次這事交給機器來做,同樣是不可完成。眾所周知,自然數集是無窮集,若是給自然數集計數,則直接按「歸∞」按鈕,顯示屏顯示為∞,此後不論怎麼按「計數」按鈕,顯示屏顯示的都是∞,不會再改變,依據便是∞加公理,∞+x=∞。

問題來了,自然數集是無窮集為已知,我們可以直接按「歸∞」按鈕對其進行計數,那要是隨便一個集合,我們怎麼知道什麼時候直接按「歸∞」,什麼時候老老實實地繼續按「計數」呢?無窮集具有什麼特殊性質,使得它能與有窮集區分開來呢?在回答這個問題之前,我們先來回答有窮數與無窮數如何區分開來。對於任意一個數a,如果有a+x=a,即一個數加任何數都等於它自身,則稱該數收斂,具有加法收斂性。由算術公理可知,∞是唯一具有加法收斂性的一個數,有窮數和無窮數由此區分開來。類似的,對於任意一個數a,如果有a×x=a,即一個數乘任何數都等於它自身,則稱該數收斂,具有乘法收斂性。毫無疑問,0×x=0,0乘任何數等於0,0具有乘法收斂性,同樣的,∞×x=∞,∞乘任何數等於∞,∞具有乘法收斂性。0與∞實屬天生絕配,所有數當中具有乘法收斂性的只有它們兩個,而且當0與∞相乘時,0×∞=x,居然發散了,萬數由此化生。數∞不僅具有乘法收斂性,還具有加法收斂性,收斂性是它的標誌性特徵,如此特殊的一個數,我們對它的認知如此之晚則在情理之中。

既然收斂性是無窮的標誌性特徵,那麼要分辨具有無窮性的無窮集當然還是找收斂性,還是使用「1對1」方法和一一對應來找,在給定的集合中加入一個或者一些元素構成一個新的集合,然後新舊集合之間「1對1」,能夠一一對應則說明該集合收斂,具有收斂性,是無窮集。大數學家希爾伯特為此編排了一個好玩的故事來說明:設想這麼一家旅館,它有∞個房間,所有自然數依次給房間編號,規定每個房間只住一位旅客,並且已經住滿,這時又來了一位旅客,怎麼辦?

希爾伯特這樣安排:讓1號房的客人到2號,2號房的客人到3號,3號房的客人到4號,…,相當於原來所有的客人全體起立向自己隔壁挪了一個房間,空出1號房間給新來的客人,於是所有的客人都有房間住。為什麼能這樣?因為無窮收斂,∞+1=∞。

第二天來了一個「無窮旅遊團」,旅遊團成員的編號用完了所有的自然數,然而昨天的客人都還在,希爾伯特還是有辦法安排所有的人都住下:讓1號房客人到2號,2號房客人到4號,3號房客人到6號,…,n號房客人到2n號房住,這樣一來,把所有奇數號的房間都空出來,而奇數號房間有∞個,正好安排新來的這∞位旅客;偶數號房間也是∞個,則安排給原來的∞位旅客,於是所有的客人都有房間住。為什麼能這樣?因為無窮收斂,∞+∞=∞。

第三天來了∞個「無窮旅遊團」,原有客人一位沒走,怎麼安排所有的人都住下?希爾伯特不愧是大名鼎鼎的數學家,他有辦法:原來的客人按照前面的辦法,統統安排到偶數房間,騰出的奇數房間這樣安排給新來的客人:

1號無窮旅遊團住3,9,27,81,…, 3^{n} ,…,即3的n次冪號房間2號無窮旅遊團住

5,25,125,625,…,5^{n} ,…,即5的n次冪號房間

3號無窮旅遊團住7,49,343,…, 7^{n} ,…,即7的n次冪號房間4號無窮旅遊團住11,121,1331,…,11^{n} ,…,即11的n次冪號房間依此往下,以至無窮,也就是將所有奇素數排成一列3,5,7,11,13,17,19,23,…設第m個奇素數是 P_{m} ,一個奇素數對應著一個無窮旅遊團,無窮個奇素數對應著無窮個無窮旅遊團,那麼,m號無窮旅遊團的第n號成員的房間號碼就是 P_{m}^{n} ,如此一來,∞個「無窮旅遊團」的所有成員都有了自己的房間,而且還空出了1、15、21、33、35、…,這些不能表示為奇素數的n次冪的房間,也有∞個。為什麼能這樣?因為無窮收斂,∞+∞×∞+∞=∞。

如果沒學過∞加公理,不知道無窮的收斂性是怎麼回事,初讀這個故事一定覺得很神奇,感慨數學家不愧是數學家,希爾伯特不愧是希爾伯特,大師就是能玩。其實想讓希爾伯特玩不下去也容易,只要你隨手畫一條任意長的線段,然後指著它說:希爾伯特先生,請你給線段上的每一個點安排一個房間。這時希爾伯特肯定傻眼了,因為無論他怎麼安排,哪怕把原來的客人全部趕走,還是一定會剩下∞個點沒有房間住。這又是怎麼回事呢,不都是無窮對無窮嗎?

給客人安排房間或者給點安排房間,實質上都是在兩個集合之間找對應。擁有無窮個房間的旅館是一個無窮集,自然數集是一個無窮集,線段上所有的點也是一個無窮集,對它們分別進行計數,計數的結果都是∞,說明它們在數量上相等。無窮集在數量上相等是否必然意味著它們之間能夠一一對應呢?不盡然,需要具體情況具體分析。無窮集可以分為兩類,一類是離散的,集合中元素可以一個一個區分開來,無窮旅館和自然數集屬於這一類,叫做離散無窮集;一類是連續的,集合中的元素是連續不斷的,像線段上的點、直線上的點、平面上的點,它們所構成的集合就屬於這一類,叫做連續無窮集。通過觀察發現,它們同類之間可以一一對應,異類之間不能一一對應。我們先來看兩個離散無窮集之間:

全體自然數:{1、2、3、4、…}

全體偶數:{2、4、6、8、…}

首先將自然數集中的偶數與偶數集中的元素「1對1」:

1 2 3 4 5 6 7 8 …
↓ ↓ ↓ ↓
2 4 6 8 …

自然數集中包含奇數和偶數,將自然數集中的偶數與偶數集中的偶數一個對一個,對完了,自然數集有剩,剩下的是奇數,所以自然數集大於偶數集,沒問題,整體大於部分,符合我們的常識。接下來,我們將每個自然數乘以2,與偶數集中的元素一個對一個:

1×2 2×2 3×2 4×2 …
↓ ↓ ↓ ↓
2 4 6 8 …

每個自然數乘以2之後,都變成了偶數,雖然數值增大了一倍,但個數應該不會改變,原來自然數有多少個,乘2之後所得的偶數還是有多少個,這時偶數對偶數,一個對一個,都不會有剩餘,意味著什麼?意味著自然數集與偶數集相等,意味著整體等於部分,有點反常識了。再來,我們將每個自然數乘以4,與偶數集中的元素一個對一個:

1×4 2×4 3×4 4×4 …
↓ ↓ ↓ ↓
2 4 6 8 10 12 14 16 …

神奇了吧,自然數集對完了,偶數集出現了剩餘,說明偶數集大於自然數集,整體居然小於部分,簡直逆天了。對於一個集合,若出現整體等於或小於部分的情形,基本上可以斷定它是一個無窮集。對這樣的集合進行計數,不用多想,直接按「歸∞」按鈕。

前面說到,元素的一一對應是集合相等的充分必要條件,前提是在有窮集之間,在無窮集之間不一定。集合相等,具體來說是指集合的元素個數相等,即計數結果相等。自然數集的計數結果是∞,偶數集的計數結果是∞,毫無疑問自然數集與偶數集相等。但是兩集的元素「1對1」,由於選取的對應方式不同,導致對應結果也不一樣,可以一一對應,也可以不一一對應。我們不禁要問,這些結論都對嗎?推導過程合乎邏輯,都對;這些結論之間相互矛盾嗎?不同的對應方式,得出不同的對應結果,合情合理,不矛盾。如果都對,又不矛盾,那這些就是我們必須面對的數學現實,在無窮的世界裡,一一對應跟計數相等失去了強對應關係。

再來看兩個連續無窮集,用圓規畫兩個同心圓,一大一小,且過圓心畫出大圓的一條半徑,然後想像該半徑順時針旋轉一周,那麼它必然同時掃過大圓和小圓上所有的點,並且在這個連續過程中的任意瞬間都是大圓上的一個點對應著小圓上的一個點。說明大圓和小圓上的點一樣多,可以一一對應。應當注意到,選取何種對應方式,直接關係到集合之間能否一一對應,而且不同類型的無窮集之間,選取的對應方式也不一樣。離散無窮集之間,可以使用離散的方式一個對一個;而連續無窮集之間,必須使用連續的對應方式一個對一個。於是作死的問題來了,兩個離散無窮集之間可以一一對應,兩個連續無窮集之間可以一一對應,那麼一個離散無窮集和一個連續無窮集之間可以一一對應嗎?這就是讓希爾伯特傻眼的問題,能夠給線段上的每一個點安排一個房間嗎?回答是不能,道理很簡單,就是「戴德金分割」所定義的,什麼是連續什麼是離散。如圖:

離散與連續之間的對應

我們把無窮個房間編排到一條線上,每個房間抽象為一個點,房間一個挨著一個可以明確區分,肯定是離散的,所以這些點也是離散的,離散的點構成一條虛線。然後在虛線的下方畫一條與之平行的實線,實線上的點連續不斷。接著過虛線和實線畫一條垂直的豎線,將豎線從左往右移動,使之從頭到尾掃過虛線和實線。有兩種移動方式,一種是離散的方式,從虛線上的一個點跳到下一個點,一個接一個點跳下去,這種方式可以遍歷虛線上所有的點,但跳過了實線上許多的點,結果是連續無窮集大於離散無窮集;另一種是連續的方式,從實線的一端連續移動到另一端,這種方式遍歷了實線上所有的點,同時也遍歷了虛線上所有的點,但不是在任意瞬間一個實線上的點都對應著一個虛線上的點,有許許多多實線上的點找不到對應,結果還是連續無窮集大於離散無窮集。也就是說不存在任何方式可以使得離散無窮集與連續無窮集之間的元素一一對應,對應的結果總是連續無窮集大於離散無窮集。

同樣是無窮集,計數結果都是∞,為什麼就不能一一對應呢?按照「戴德金分割」對離散與連續的定義,離散無窮集中任意相鄰的兩個元素a和b,不管a、b之間離得有多近,只要a≠b,a、b之間必然總是存在一個元素x,x不屬於該離散無窮集,但是它必然屬於a、b之間的連續區間,這個連續區間就是一個連續無窮集。反過來說,連續無窮集之中必然總是存在一個元素x,在離散無窮集中找不到與之對應的元素,於是連續無窮集必然總是大於離散無窮集(其實說「大於」已經不準確了),這是連續與離散概念自身的規定性所決定的,與計數結果無關,即便有關,假設離散無窮集的計數結果為∞,連續無窮集的計數結果為∞+x,根據無窮的收斂性,還是∞+x=∞。

連續與離散是一對不但重要而且極為深刻的概念,把它們弄懂吃透,許多深奧的東西理解起來就變得容易,比如著名的哥德爾不完備性定理。哥德爾不完備性定理說的是,在一個自然數公理系統中,必然存在一個命題,它既不能被證明也不能被證偽。舉例來說,2÷2=1,在自然數公理系統中我們知道它是對的,但對於1÷2=0.5,由於0.5不是自然數,超出了自然數公理系統可判定的範圍,我們就不知道1÷2=0.5是對是錯,唯有拓展到一個更大的範圍我們才能作出判斷。很明顯,自然數系統是一個典型的離散無窮集,離散的特點就是任意相鄰的兩個元素a和b,不管a、b之間離得有多近,只要a≠b,a、b之間必然總是存在一個元素x,x不屬於該離散無窮集,於是這個x在這個離散無窮集看來就是不可判定的,這種不可判定性在離散無窮集中必然總是存在。因此我們可以這樣來理解哥德爾的不完備性定理,因為自然數是離散的,所以關於自然數的公理系統必然是不完備的,由此還可以推測關於實數的公理系統有可能是完備的,因為實數連續,歐氏幾何就是一個關於實數的公理系統,它很完備。

對數學有過深入了解的人都知道,康托爾在給無窮集分類時用的是可數和不可數,簡單來說,凡是能跟自然數一一對應的無窮集即為可數無窮集,不能跟自然數一一對應的無窮集即為不可數無窮集。由於自然數集是典型的離散無窮集,能跟它一一對應的自然都是離散無窮集,不能跟它一一對應的則是連續無窮集,可數與不可數背後的實質其實就是離散與連續,只是康托爾沒弄明白,只能找一個具體的實例作為基準來對無窮集進行劃分,這種劃分只描述了是什麼,並沒有回答為什麼,為什麼有的可數有的不可數?因為無窮集中的元素有的離散有的連續,離散便可數,連續便不可數,有窮集則沒有這樣的劃分,有窮集都是離散集。

好了,回到對應和計數,現在我們有必要捋清楚究竟什麼是一一對應,什麼是集合相等,以及它們之間的確切關係。對於任意的兩個集合A和B,當A、B之間的元素一個對一個時,如果A中有剩餘,則記作:A>>B,讀作A盈於B;如果B中有剩餘,則記作:A<<B,讀作A虧於B;如果A、B都沒有剩餘,則記作:A==B,讀作A一一對應於B,簡稱A平於B。若對A、B分別進行計數,|A|=a,即對A進行計數,計數結果為a;|B|=b,即對B進行計數,計數結果為b,如果a>b,則記作:A>B;如果a<b,則記作A<B;如果a=b,則記作:A=B。看清楚看明白,對應歸對應,計數歸計數,對應跟計數不是一回事,做了這樣的區分之後,我們再來討論一一對應與集合相等之間的關係,在有窮集之間:

A>>B,則A>B,反之也成立,A>B,則A>>B,A>>B是A>B的充分必要條件;

A<<B,則A<B,反之也成立,A<B,則A<<B,A<<B是A<B的充分必要條件;A==B,則A=B,反之也成立,A=B,則A==B,A==B是A=B的充分必要條件。

充分必要條件意味著在有窮集之間,一一對應則必然計數結果相等,計數結果相等則必然一一對應,一一對應跟計數相等有著強對應關係,於是人們經常省略計數過程,直接運用一一對應來求得一個粗略的結果,比如老師上課點名,他不會一個個去數有多少同學來上課,而是大概看一眼教室里有沒有空位,有空位則說明有同學缺課,沒空位則說明到齊了。久而久之這種處理方式就讓人誤以為對應跟計數是一回事。然而在無窮集之間,計數結果都是無窮,無窮之數只有一個,因此所有的無窮集都相等,但是它們之間的對應結果卻不盡相同:

A>>B,能必然推出A>B嗎?不一定,自然數集盈於偶數集,自然數集與偶數集相等,A>>B不是A>B的充分條件;

A<<B,能必然推出A<B嗎?不一定,可以做到自然數集虧於偶數集,不影響自然數集與偶數集相等,A<<B不是A<B的充分條件;

A==B,能必然推出A=B嗎?能,自然數集與偶數集一一對應必然推出自然數集與偶數集相等,A==B是A=B的充分條件。但反之則不一定成立,若A=B,則可以A==B,可以A>>B,也可以A<<B,所以我們說A==B是A=B的充分不必要條件。

從有窮集到無窮集的轉變是充分必要條件到充分不必要條件的轉變,如果不理解數,不明白計數,既有觀念不隨之發生轉變,冒然去研究無窮的話,可能誤入歧途甚至走火入魔。

數是數,集合是集合,數與集合分屬兩個彼此獨立的系統,從數到集合,或者從集合到數,隔著十萬八千里,通過集合與集合之間的對應關係就能推測出用來計數的數的性質嗎?在有窮集之間或許可以,對於任意兩個有窮集A和B,若A<<B,A虧於B,那麼對A、B分別計數,有|A|=a,|B|=b,則必然有a<b;若是兩個無窮集A和B,若A<<B,A虧於B,那麼對A、B分別計數,有|A|=a,|B|=b,則必然有a<b嗎?

自然數集是無窮集,記作N,對其進行計數,則有|N|=n;偶數集是無窮集,記作E,對其進行計數,則有|E|=e。自然數集與偶數集一對一,可以盈,可以虧,可以一一對應,當自然數集盈於偶數集的時候,N>>E,我們不認為n>e;當自然數集虧於偶數集的時候,N<<E,也不認為n<e,因為畢竟兩者可以一一對應嘛,N==E,則必有n=e。這時我們容易相信為自然數集計數的無窮跟為偶數集計數的無窮是相等的,是同一個無窮,即n=e=∞。推而廣之,可以認為所有離散無窮集的計數結果都相等,為其計數的都是數∞。

然而,當離散無窮集跟連續無窮集對應時卻偏偏總是出現離散無窮集虧於連續無窮集(注意這裡的準確表述是「虧於」,而不是「小於」),連續無窮集的典型代表是實數集,記作R,對其進行計數,則有|R|=r,離散無窮集的典型代表是自然數集N,|N|=n,為什麼總是自然數集虧於實數集N<<R呢,人們愕然蒙圈,不明白這是連續與離散的本質區別造成的。如果依舊延續從有窮集而來的結論,堅信N<<R是N<R的充分條件,那麼進而勢必會推出為自然數集計數的無窮跟為實數集計數的無窮不是一個無窮,是兩個無窮,並且自然數集的無窮要小於實數集的無窮,即n<r。這就是一個從集合到數的過程,我們從集合之間的對應關係不僅見識了什麼是數無窮,而且發現無窮之數不只一個,而是多個,不同的無窮之間居然還能比較大小。無疑這是一個驚世駭俗的數學發現,它的發現者康托爾為此建立了一套超窮數理論,理論中康托爾將自然數集的無窮記為aleph_{0}(阿列夫0),實數集的無窮記為aleph_{1}(阿列夫1),並且認為:

(1)aleph_{0}aleph_{1}

(2)aleph_{1}2^{aleph_{0}}

第一條自然數集小於實數集康托爾給出了證明,由於整個實數集對應的數軸太長,我們截取其間一小段來討論,考察實數軸上[0,1]區間上的點,每個點都可以用一個實數x來表示,並且x可以寫成無窮小數:

x=0. x_{0} x_{1}x_{n}

假設所有這些x都用自然數編了號,即建立起無窮小數與自然數的一一對應,或者說這些x都被安排進了希爾伯特的無窮旅館,並且已經住滿:

x^{(0)}x^{(1)}x^{(2)} ,…, x^{(n)} ,…

這時康托爾馬上可以構造出一個新數y:

y=0. y_{0} y_{1}y_{n}

小數部分的 y_{0}y_{1} ,…,這樣來定義:令 y_{0}x^{(0)} 的第1位小數不同, y_{1}x^{(1)} 的第2位小數不同, y_{2}x^{(2)} 的第3位小數不同,…,如此y就和 x^{(0)}x^{(1)}x^{(2)} ,…, x^{(n)},…中的每個實數都不同,於是平添了一個新數,而且沒有自然數給它編號,因為自然數早已用完。這就與0到1之間的全體實數都編了號的假設矛盾,於是反向證明[0,1]區間上的實數與自然數不能一一對應,整個自然數集小於[0,1]區間上的實數,而[0,1]區間上的實數只是整個實數集中很小的一部分,由此得出自然數集小於實數集的結論。

不知道希爾伯特看過這個證明沒有,要是看過,估計得笑,忍不住笑出聲來,不就是來了一位新客人嘛,甭管他怎麼來的,來再多也無所謂,希爾伯特都有辦法安排他們住下,怎麼到康托爾這裡就不行了呢,原來的數編好了號,然後造出一個新數,重新編號不就完了嘛,還是用原來的自然數呀?這還不是問題的關鍵,問題的關鍵是無窮小數能夠表示所有的實數嗎?所有的實數都能寫成無窮小數的形式嗎?不能,用無窮位小數來表示實數,循環也好不循環也罷,本質上仍然是以離散的方式來遍歷連續無窮集,它必然會有遺漏必然存在不被表示的數,這些不被表示的數姑且稱為暗數。由於十進位與二進位可以相互轉換,我們以較為簡單的二進位小數來說明,二進位小數的基本形式就是小數點後面跟的數字不是0就是1,比如0.000110…11000…,這個基本形式可以用一幅二維的點陣圖來呈現:

二進位點陣圖

原點o表示小數點,小數點往後第一位是0則向上移動一點,是1則向右移動一點,以此類推,逢0向上,逢1向右,那麼圖中的折線經過9個點,最終落在a點處,即為0.010011001。這是有窮小數,如果是無窮小數(包括循環和不循環的)則經過無窮個點,並最終落在無窮遠處,於是任何一個可以表示為小數的數都可以在這張點陣圖上找到自己的折線展開圖,一個數對應著一條線,每條線經過的點都是點陣圖上規範標註的點,不會旁落點外。可問題在於[0,1]區間上的實數是連續的,以二進位的形式展開來它們應該鋪滿整個點陣圖,是一個天衣無縫的平面。我們知道一個連續的面和一條連續的線可以一一對應,而一個離散的點陣圖是不可能和一個連續的面或者一條連續的線一一對應,由此可以斷言離散的無窮小數一定不能表示所有的實數,不管是二進位還是十進位,無窮小數所能表示的只是整個實數的很小一部分,大部分不可表示的暗數就瀰漫在可表示數的周圍。那麼康托爾證明中的兩個前提假設:

1、[0,1]區間上的每個實數都可以表示為無窮小數;2、[0,1]區間上的所有實數都用自然數編了號。

這兩個前提假設實質上是一個問題,即離散無窮集能否與連續無窮集一一對應,前面已經回答,不能,前提都不成立,後面的證明基本上可以不用看。再說了,離散無窮集與連續無窮集不能一一對應原本就不需要證明,「戴德金分割」事先不都定義好了嘛。

傳統觀念認為實數分為有理數和無理數,而有理數可以表示為有限小數與無限循環小數,無理數可以表示為無限不循環小數,如果我們接受連續與離散的思想,認為通過離散的方式不可能遍歷連續對象的全體,那麼我們就有理由相信在無限小數之外,還存在一個以離散的方式我們無法看見的世界,一個充斥著暗數的嶄新世界。

再來看 aleph_{1}2^{aleph_{0}} ,實數集的無窮等於2的自然數集的無窮次冪。這個結論源自對有窮集的觀察,對於一個有窮集A:

如果A有1個元素A={0},那麼A的冪集M={?,{0}}有2個元素,即|M|= 2^{1}

如果A有2個元素A={0,1},那麼A的冪集M={?,{0},{1},{0,1}}有4個元素,即|M|= 2^{2} ;……

冪集就是由原集的所有子集構成的集合,包括空集和原集自身,而冪集的元素個數與原集的元素個有這樣一個2次冪的關係,即|M|= 2^{|A|} ,而且總是|A|<|M|。這是根據有窮的經驗得出的結論,康托爾不加限制地將其套用到無窮集,認為|R|= 2^{|N|} ,即 aleph_{1}2^{aleph_{0}} ,且有 aleph_{0}aleph_{1} ,正好也符合康托爾前面的證明。這個問題還是牽扯到對連續與離散的理解,同樣是基於對有窮集的觀察,有窮集A中的元素不論有多少個,只要元素離散,那麼A的冪集M中的元素必然也離散。將其推廣到無窮集,自然數集是無窮集,當中的元素是離散的,一個一個的,那麼它的冪集M中的元素即A的所有子集也應該是離散的,M也是離散無窮集,那麼M怎麼會跟連續的實數集R划上等號呢?不知道康托爾是怎麼想的,只將集合的勢從有窮集推廣的無窮集,而不去將集合的性質從有窮集推廣到無窮集,一樣的推法結果應該一致;也不知道康托爾想沒想過基於對有窮的觀察我們真能得出關於無窮的性質嗎?在現實中我們的經驗能夠從有窮到有窮,到不了無窮;而在理論上,我們可以事先定義什麼是無窮,然後通過無窮來推知什麼是有窮,或許這才是一個正確的理解無窮的方式。

這回該輪到戴德金笑了,作為康托爾的好朋友,戴德金在1858年27歲的時候就提出了「戴德金分割」的思想,直到1872年戴德金才發表題為《連續性與無理數》的論文,並將論文寄給了康托爾,當時康托爾也是創造力爆棚的27歲,頭腦里正在醞釀超窮數理論的思想。從資料來看,他倆有思想上的交流,但從結果來看,康托爾建立的超窮數理論幾乎沒有受到戴德金的任何影響,戴德金關於連續性的正確看法,不知是康托爾沒有接觸到,還是接觸到了但沒有理解,還是理解了但不屑一顧。總之他不明白離散無窮集與連續無窮集之間的區別,不是計數結果的不同,而是元素之間的關係不同。離散無窮集中的元素彼此獨立,任意相鄰的兩個元素a和b,都有|a-b|>0,相鄰的兩個元素不可能相等;而連續無窮集中的元素則是緊密聯繫在一起的,任意相鄰的兩個元素a和b,都有a=b,相鄰的兩個元素必須相等。正因為康托爾不知道或者不理解這一點,所以他才會去猜自然數集的無窮與實數集的無窮之間沒有其他數,即aleph_{0}aleph_{1}之間沒有其他數。其實在戴德金看來根本不用去猜,如果aleph_{0}aleph_{1}之間沒有其他數,則只能是aleph_{0}aleph_{1}aleph_{0}aleph_{1}連續;如果aleph_{0}aleph_{1} ,則aleph_{0}aleph_{1}離散,aleph_{0}aleph_{1}之間必然存在其他數,而且這樣的數按照康托爾的邏輯也很容易構造出來:

aleph_{0}1.1^{aleph_{0}}1.2^{aleph_{0}}1.3^{aleph_{0}}1.9^{aleph_{0}} …< 2^{aleph_{0}}

就這麼一個不是問題的問題,被稱為連續統假設,1900年在法國巴黎舉行的第二屆國際數學家大會上,數學大師希爾伯特提出了新世紀數學界面臨的23個重大問題,第一個就是它,著實讓人不明覺厲。孰料一百多年過去,數學家們思來想去最終認定這個假設既不能證明也不能證偽,是真是假不知道,也有說可真可假的。怎麼得出這麼一個結果呢?我們設想一下,要是康托爾不瘋,康托爾、戴德金、希爾伯特三位大神級人物能夠聚到一起深入細緻地探討探討這個問題,會不會是另外一個結果呢?

在康托爾這裡,無窮是不是數已經不成問題,成問題的是無窮之數是一還是多,康托爾認為是多,而且是無窮多。但是康托爾推導結論的方式存在問題,無窮與無窮集,我們不考慮無窮是不是數,單從概念和邏輯上來說,先有無窮,然後才有無窮集,相對而言,無窮是已知,無窮集是未知,由未知推導已知,由無窮集之間的對應關係去推導和揣測無窮,是無效的,哪怕結論很精彩。這就像白馬之於白,無論你在白馬與白馬之間怎麼倒騰,都不大可能倒騰出白是什麼,白馬非馬,白馬亦非白。

退一步來說,既然是數,它必然能夠與其他數進行計算,我們姑且假定康托爾所稱的自然數集的無窮aleph_{0}就是算術公理中的∞,那麼2^{aleph_{0}}即為2^{infty},將指數∞替換成x,即為2^{x},見此馬上想到指數函數y=2^{x},現在我們畫出它的函數圖像,並且要讓x能夠取到∞,看x=∞時y=?。

要畫出函數圖像,必須得有坐標系,要建立坐標系,必須得有數軸。以往的數軸,教科書上一般這樣來定義:所謂數軸,是指規定了原點、單位長度和正方向的直線。原點是0,單位長度是1,正方向是直線右端的一個箭頭。這個箭頭很特別,首先它不是一個數卻出現在數軸上,其次它承擔著兩個作用:一是指示方向,所謂正方向即為增大的方向;二是表示無限延伸,以直線的無限延伸來表示數的不斷生成。

想讓x能夠取到∞,∞必須得出現在數軸上,以往的數軸肯定不行,我們需要一條新數軸。在白紙上畫一條平直的線,線的兩端,左端標註「-∞」,右端標註「∞」,中間取一點標註「0」,然後在0點的右側任取一點標上「1」,再以1點到0點之間的距離為步長,向左和向右移動依次標註其他數字。這樣一條沒有箭頭的新數軸稱為全數軸,以往的數軸稱為偏數軸。在全數軸上,∞取代箭頭,以一個點來指示方向和表示無限延伸,靠譜嗎?靠譜。首先,∞點使得數軸有起點有終點,以0為起點,以∞為終點,0沒有方向性,但∞有方向性,天然指示著增大的方向,-∞則指示相反方向。其次,∞是無窮大,故在起點和終點、0和∞之間可以容納無窮多個數(不論是自然數、有理數,還是實數),使得整個數軸怎麼拉伸都不為過,這個終點是一個沒有終點的終點,意味著∞點可以在你想像有多遠就有多遠的地方,起到跟箭頭一樣的效果。與此同時,點∞具有一個箭頭所不具有的特性,即封閉性。∞不僅指示著增大的方向,而且是增長的終點,∞是全數軸上所有數當中最大的一個,不存在比∞更大的數,換句話說,∞之外沒有數,其他所有的數都比它小,都被封閉在它的一側,而箭頭只表示箭頭往前還有數。∞可以參與運算,箭頭不能;∞是數,箭頭不是,不是數就不應該放在數軸上,將它取而代之乃天經地義。於是可以這樣來定義全數軸:所謂全數軸,是指規定了原點、單位長度和無窮的直線。原點是0,單位長度是1,無窮是∞,0、1和∞三點確定一條全數軸。算術公理系統中的三個原始數全用上了,堪稱完美。如圖所示:

偏數軸和全數軸

我們知道線段有兩個端點,射線有一個端點,直線沒有端點,直線有兩個端點是什麼鬼?!通常老師會說直線是線段向兩端無限延伸的結果,只要把「延伸」換成「拉伸」就好理解了,直線是線段向兩端無限拉伸的結果,始終保持線段的兩個端點,將線段無限拉伸即為全數軸,這條被無限拉伸的線段的兩個端點即為全數軸上的∞和-∞。仔細觀察你會發現,∞跟-∞不一樣,它們表示兩個完全相反的方向,於是∞乘公理,∞×x=∞,∞乘任何數等於∞,其中的x就不能是包括正數負數在內的任何數,只能是大於等於0的數。若x<0,則∞×x=-∞。同理,對於極乘公理,若0×(-∞)=x,則x<0。有什麼辦法可以去掉這個限制保持所有公理在表述上的一致呢?因為其他公理中的x都沒有這樣的限制,都是可正可負可為0的任何數。這時需要發揮瘋狂之人的瘋狂想像力,讓我們儘可能地想像,全數軸的兩端向相反的兩個方向無限延伸、再延伸,直至兩個端點碰到一起,-∞點與∞點重合,結果得到一個閉合的數環。如下圖:

數環

全數軸兩端重合,結成環狀,-∞與∞合為一個點,幾何中點的重合對應著算術中數的相等,即-∞=∞,如同-0=0,0與∞是數環的兩個極點,像地球有南極和北極,數環有0極和∞極。於是剛才的問題迎刃而解,∞乘公理與極乘公理中的x可正可負可為0,但隨之而來的問題更多更嚴峻了。在數環上,正數可以大於負數,負數也可以大於正數,甚至負數比無窮還大,這怎麼可能?!怎麼就不可能,來看一場別樣的龜兔賽跑,賽場布置在田徑場400米的環形跑道上,讓烏龜和兔子朝一個方向跑,不設終點,這時我們來觀察誰先誰後。兔子快,它能迅速追上前面的烏龜,並超過烏龜,就在它超過烏龜的一剎那,你認為兔子在烏龜前面嗎?不絕對吧,站在看台上看整個跑道,兔子是不是又落到烏龜後面,可以繼續往前追。對於數環上的兩個數來說,也是同樣的情形。負數在前,0在後,後者為大,0大於負數;放眼整個數環,無窮在前,負數在後,可不就是負數大於無窮嘛,要知道在數環上沒有絕對的大和小,只有相對的大和小。將無窮引入算術,為算術注入了不確定性;現將數環引入算術,又為算術注入了相對性,具備相對性和不確定性的算術有可能一舉顛覆你的世界觀。

如果能接受兩條平行直線相交於無窮遠處,大體上也能接受一條直線閉合於無窮遠處,因為它們遵循幾乎相同的邏輯。一旦一條無限長的數軸可以閉合成數環,意味著一維的線結成了二維的面,那麼原本由兩條垂直相交的直線構成的平面坐標系自然就可以結成一個立體的球面坐標系,二維的面在無窮的作用下形成了三維的體。是不是很神奇!一維連著二維,二維連著三維,維度之間在無窮的參與下居然可以如此自然的過渡。也許你不以為然,認為這些都不過是狂放不羈的想像,沒有任何現實依據。確實,在現實的宇宙中,一條無限長的直線究竟是什麼樣子,我們無從知曉,只能通過想像,只要這樣的想像嚴格合乎邏輯,我們就有理由相信它在數學上是真實的。

將全數軸x、y橫豎相交成直角構建一個平面坐標系,我們容易畫出y=2^{x}的函數圖像:

函數圖像

看著函數圖像,當x從左往右依次取值,y的取值也是在相應增大,當x取橫軸的右端點∞時,我能想到的y的取值只能是縱軸的頂點∞,沒有其他值可取了,即2^{infty}=∞。當然,康托爾被譽為世界上最富有想像力的數學天才,他能得出2^{infty}>∞的結論,一定有他的道理,至少說明他的想像力遠超出平面坐標系所劃定的範圍,像2^{infty}3^{infty}4^{infty},等等這些超級數已然不是平面坐標系所能討論的,若要討論還請移步康托爾自創的超窮數理論,此處沒得商量只能是2^{infty}3^{infty}4^{infty}=∞。

計數是數的應用,欲正常發起計數,數與計數對象應當同時具備,我們很難說誰先誰後,集合作為計數對象,我們不能說先有集合然後才有數。數是數,集合是集合,數與集合彼此獨立,數不會因為遇到不同性質的集合而改變自身屬性。大概是從康托爾開始,數學家們就試圖抹殺數的獨立性,將數跟集合綁定起來理解,甚至乾脆認為數就是集合。他們的邏輯是先有集合後有數,具體做法則是先通過公理定義一個空集?,然後以?為元素,構造一個新集合{?},再以此新集合為元素,加上先前的集合,往後再構造一個新集合{?,{?}},如此反覆層層遞進,得到一個無窮的集合序列,最後將它們與自然數一一對應起來:

0= ?;

1={?};2={?,{?}};3={?,{?},{?,{?}}};…=…;

當然,數學家們在集合序列的具體構造方法上存在分歧,有一派則給出了另一套方案:

0=?;

1={?};2={{ ?}};3={{{ ?}}};…=…;

我們姑且認為數就是集合,數統統可以化歸為集合,設想一下,數在人類世界就此滅失絕跡,只剩下集合。於是人人回歸本原,都是耳聰目明的波呂斐摩斯,不識數也不知有數。那麼去菜市場買菜,我就不能跟售貨員說「要20個雞蛋」,而只能說「要跟手指頭加腳趾頭一樣多的雞蛋」。售貨員拿著雞蛋先一個一個跟自己的手指頭和腳趾頭一一對應,對好了遞給我,我再拿著雞蛋一個一個跟自己的手指頭和腳趾頭一一對應,噫,發現怎麼對都對不上,總是多出一個雞蛋,原來售貨員天生六指,你說咋辦?集合所能回答的問題是「對象是哪些」,而「對象有多少」的問題只能由數來回答,集合回答不了。計數計的對象是集合,但計的結果只能是數,如果計的結果還是集合,等於沒計,僅憑這一點,集合就取代不了數。

誠然,計數過程是有將數作為元素放入集合,正是集合概念的提出,使得「數有哪些」的問題突顯出來,不同的數可以構成不同的集合,而不同的集合可以描述成不同的類型和模式,這就大大拓展了數的研究視野和路徑,不再局限於傳統的數論或幾何數論。藉助集合,我們對數的認識更深刻了,這是集合偉大的地方。但數與集合的關係也僅限於此,不能進一步說數就是集合,除非數學家都是魔法師,將雞蛋放進籃子,雞蛋沒了,變成了籃子。

回顧一下數是怎麼來的,數是從具體事物身上剝離出來的,人們最早給牛羊計數,3頭牛用三個表示牛的符號,3隻羊用三個表示羊的符號,經歷多少萬年之後,數字3才有自己的符號,數字3跟牛的符號放一起表示3頭牛,跟羊的符號放一起表示3隻羊,這是一個從具象到抽象的過程。不難理解,將數定義為集合則是一個從具象到抽象的逆過程,數學家們重新將抽象的數附著到某個具體的集合身上,儘管集合本身也是一個相當抽象的事物,但和數比起來,這種做法無疑是在減損數的抽象性。什麼是數字3,居然須要找到一個具體的集合來表示,這和古人畫三頭牛或者三隻羊來表示數量3,沒有本質區別。數乃至數學的發展按理說只會越來越抽象,不知道數學家的此番逆行是新突破呢還是開倒車。

再者,數本身也是一個概念,單獨的一個數也是一個概念,有概念就有內涵和外延,有外延就可以構造集合。數學家們發現數的外延極為廣大,例如數字5,5個手指、5個蘋果、5個人、…,舉不勝舉,於是數學家們將所有包含5個元素的集合所構成的集合稱為「類」,以「類」來定義數,一個數就是一個「類」。自從康托爾的集合論在數學上取得決定性勝利之後,你會發現,數學家們言必稱集合,「類」說到底還是一個集合。但數學家們似乎只看外延,不看內涵,內涵才是定義數的關鍵和根本。數是什麼?數是可以運算的符號,運算才是數的本質所在。就說學習數字5,從勾手指頭開始,1、2、3、4、5,5個手指、5個蘋果、5個人,…,即使數遍所有可以用數字5來描述的實例或者集合,我們還是不能清楚地知道5是什麼。假如一個數學老師教學生只教到這個份上,問學生什麼是5,學生只會伸出5個手指,拿來5個蘋果,或者畫出表示5的集合{?,{?},{?,{?}},{?,{?},{?,{?}}},{?,{?},{?,{?}},{?,{?},{?,{?}}}}},那一定是教育的失敗;如果告訴學生,5+1=6,5×0=0,把數字5放到數與數的運算當中去理解,以至學生在任何包含5的運算中都能得出正確的結果,這才算完整掌握了數字5的概念。數的使用包括數數和算數,若是光會數數不會算數,應該不得小學畢業。


推薦閱讀:
相关文章