1. 程式人生 > >測度論——長度是怎樣煉成的(轉載)

測度論——長度是怎樣煉成的(轉載)

應小樂之請寫的一個東西,其目的是為了回答以下問題:
點沒有長度和麵積,為什麼由點組成的線和麵會具有長度和麵積?
“長度”“面積”這些詞彙究竟是在怎樣的意義上被使用的?
有的時候我們把點的長度叫做零,有的時候叫做無窮小,這兩個稱呼是不是都有道理?
無窮個零相加是不是還得零?(其實和第一個問題是一個意思,無窮個點怎麼加成線段的?)
等等等等。
當然,小樂的問題是著眼於哲學,而我的回答將會著眼於數學,——我不是學哲學的,但是大概也知道在哲學上這些詞彙常常導致混亂的爭論,比如芝諾悖論之類。幸運的是,早在一百年前,通過一大批傑出的數學家的努力,以上這些問題已經被精確地給出瞭解答,這就是在數學中被稱為“測度論”的一套理論體系。這裡“精確”的意思是說,這套理論體系完全基於形式邏輯,而且只採用了非常少的公理(下面會陳述之),從而,在這套理論中不存在任何模糊或者邏輯上模稜兩可之處(除了幾個需要加以特別說明的地方=_=!)。換句話說,我們不僅可以認為數學家能夠確定無疑的回答以上這些問題,而且可以認為人類在今天能夠確定無疑的回答以上這些問題(在承認那些公理的前提下)。
不幸的是,這一斷言幾乎必然會遭到哲學家的反對。一方面是因為哲學家們傾向於每個人自己創造一組定義,——從我在未名哲學版見過的一系列關於芝諾悖論的討論來看,這樣的結果是所有的論述最終都流於自說自話。另一方面大概也因為學術壁壘的緣故,哲學家們大概從來也沒有了解過數學家們已經在此問題上做出過的卓越工作,(確實,很多細節是過於數學化了一點……)。有鑑於此,我答應小樂以儘可能通俗的方式(在不損害準確性的前提下)大致介紹一下測度論的內容。我想在這個版面上大概還會有不少別的朋友對此感興趣吧。
下面正式開始。

一、關於無窮與無窮+1哪個大,希爾伯特的酒店問題
當我們使用“無窮”這個詞的時候,我們必須時刻謹記,這個詞有兩種截然不同的意義——不,我這裡說的不是亞里士多德關於實無窮和潛無窮的那些繞口令,而是某些重要得多的本質問題,對他們的清晰闡釋開始於偉大的德國數學家康託Georg Cantor (1845-1918):當我們說一個集合有無窮多個元素的時候,我們必須指明這裡的無窮是哪一種,是“可數無窮”還是“不可數無窮”。雖然都是無窮集合,但是它們會體現出截然不同的性質。
為了說明這一問題,我們引進集合的“勢(cardinality)”的概念。簡單說來,勢就是集合的元素的個數。一個集合有三個元素,我們就稱其勢為3。兩個集合如果元素個數相等,我們就稱它們為等勢的。——很顯然,要判斷兩個集合是不是等勢,只需要看這兩個集合之間能不能建立起元素的一一對應即可,如果可以的話,我們就說這兩個集合的元素是一樣多的。
到這裡為止都顯得很簡單。可是最有趣的部分馬上就要出現了:康託指出,不但對於有限個元素的集合我們可以討論它們的勢,對於無窮個元素的集合,我們同樣可以討論它們之間是否等勢。換句話說,我們可以討論兩個無窮集合的元素是不是一樣多!
之所以如此,是因為集合之間的“一一對應”本質上只是個數學概念,是可以被精確研究的物件(請回憶高中數學課本關於對映的那一章)。從而,隨便拿兩個集合來,它們之間是否能建立一一對應只是數學上的問題而已。
以下是一些最基本也是最著名的例子和命題,請儘量耐心的閱讀。所有這些陳述都是可以基於最簡單的形式邏輯給出嚴格證明的,證明可以在參考文獻[1]上查到:
·每一個集合都和它自身等勢。


注:廢話。
·全體正整數的集合和全體正偶數的集合等勢。
注:這是第一個有趣然而迷惑人的結果。我們等於是在說:一個集合可以和它的一部分一樣多!——但是這並不是一個悖論。我們通常覺得一個集合不能和它的一部分一樣多隻是針對有限集合而言的,本來就沒人說過無限集合不能和它的一部分一樣多,只是有時候大家會不自覺地有這個誤解而已。
·全體正整數的集合和全體有理數的集合等勢。(什麼是有理數來著?查書去!)
注:這是在數學上很重要的一個例子,說明一個實數中的稠密集可以和一個離散集等勢,不過大家看到這裡大概已經開始打瞌睡了……跳過這個例子!
·全體正整數的集合和全體實數的集合不等勢。
注:睜大眼睛,迄今為止最重要的一句話出現了!你永遠不可能在全體正整數的集合和全體實數的集合之間建立起一一對應來。對這個陳述的證明是數學上最有趣也最迷人的證明之一,可惜的是篇幅所限我不能在這裡證明給大家看。那麼只討論結論好了:並不是所有的無窮集合都是等勢的,有一些無窮集合比另一些無窮集合的元素更多,換句話說,無窮之間也是有大小的。
·任給一個無窮集合,我們都能夠造出一個集合包含它,而且和它不等勢。

注:換句話說,無窮和無窮相比,沒有最大,只有更大。——但是請注意,雖然我們能夠造出越來越大的無窮集合,但是我們並不真正對那些太大的無窮感興趣,因為和這個世界沒什麼關係。
·如果兩個集合都和第三個集合等勢,那麼它們彼此也等勢。
注:好像也是廢話,但是它引出了下面的重要陳述。
·有很多集合都和全體正整數的集合等勢,從而它們彼此也等勢,我們稱所有這樣的集合為“可數無窮的(countably infinite)”。有很多無窮集合比全體正整數的集合的勢更大,我們稱所有這樣的集合為不可數無窮的(uncountably infinite)。但是,不存在無窮集合的勢比全體正整數的集合的勢更小。
注:我們待會兒再來討論為什麼起這麼兩個名字。前面的例子告訴我們,全體正偶數的集合是可數無窮的,全體有理數的集合是可數無窮的,但是全體實數的集合是不可數無窮的。
·在不可數無窮集合中間,有些集合是和全體實數的集合等勢的,這些集合被稱為“連續統(continuum)”
注:好了,現在我們對全體無窮集合建立了一個簡單的分類。最小的一類稱為可數無窮集。剩下的都叫不可數無窮集。不可數無窮集裡面又有特殊的一類叫作連續統,剩下當然還有一些非連續統的不可數無窮集,但是它們幾乎和真實世界沒有任何關係,所以忽略之。(有人不願意忽略它們,非要去研究裡面的一些麻煩的問題,於是產生了數學中間最讓人頭暈的一部分結論,比如什麼哥德爾不完全性定理之類……這個定理偏偏還特別著名,很多人都問過我它究竟說的是啥。相信我,你不可能弄明白的。)
也就是說,我們真正關心的是兩類特殊的無窮集合,一類稱為可數無窮集,一類稱為連續統。所有的可數無窮集彼此等勢,所有的連續統彼此等勢,但是任何可數無窮集和連續統之間不等勢,後者總是更大一些……真繞嘴阿。
下面是一些可數無窮集和連續統的例子:
可數無窮集:
自然數集,整數集,有理數集。(基本上,如果你在平面上或者直線上隨手點無窮個點,並且這些點彼此都不挨著,那麼它們的總數就是可數無窮的。但是也存在一些不這麼簡單的可數無窮集。)
連續統:
實數集,直線上點的個數,平面上點的個數,一個正方形裡點的個數,或者簡而言之,一切幾何物件裡的點的個數都是連續統。(這裡一個常常被人提到的推論就是直線上的點和平面上的點一樣多,——都是連續統那麼多。其實證明很簡單,但是一言難盡,請查書去。)
好了,現在我們可以討論這兩個名字是怎麼來的了。請注意,所有的可數無窮集都是可以和正整數建立起一一對應的,這是什麼意思呢?這意味著,我們可以把一個可數無窮集中的每個元素都對應到一個正整數,這相當於給他們編了號碼,從而我們可以去數它們(這就是可數這個詞的來歷)。也就是說,我們可以按照1號、2 號、3號這麼一直數下去,雖然總數是無窮的,但是隻要我們在理論上一直數完所有的自然數,我們就能真正數遍這個集合的所有元素(至少在想像裡是這樣)。
而連續統集合卻不是這樣。一個直線上的點是連續統,這就是說,無論怎麼巧妙的給這些點編號,我們都是不可能給所有的點都編上號碼然後一個一個的數下去把它們都數完的。它們是“不可數”的。
有人會說,這不是自欺欺人麼?反正都是無窮個,反正事實上總也不可能數得完,那麼在理論上區分“想像中數得完”和“想像中也數不完”有什麼實際意義呢?
有的。正是這一點微妙的差別,使得有些事情我們能夠對可數集去做卻不能對連續統集合去做,也正是這一點差別,促成了從沒有大小的點到有大小的直線和平面之間的巨大的飛躍。

二、測度的建立
讓我們暫時放下關於無窮的那些討論,回到主題:我們通常所說的長度面積體積這些詞,究竟是什麼意思?
為了更清楚的闡明這個主題,讓我們把目光只集中在最簡單的一維情形,也就是說,我們只考慮“長度”這個詞。我們希望,取出直線上的一部分,就有一個“長度”存在。如果能做到這一點,那麼類似的,面積和體積之類的高維詞彙也可以類似的得以理解。
我們把目前要回答的問題列在下面:
·什麼是長度?
·是不是直線上任何一部分都可以有長度?直線上的一個線段當然應該有長度,直線上的兩段分離的線段也有總長度,單點有沒有長度呢?隨便從直線上挖出一些點來得到的也許是虛虛實實的一個“虛線段”有沒有長度?是不是我們從直線上任意取出一個子集合(線段啦單點啦都可以看成是直線的特殊的子集合),都可以定義它的長度?
——這件事無論在數學上還是應用上都是重要的,如果能夠給直線的任何子集定義長度,那就太方便了。
·如果上面這件事是可以的話,那麼隨便給一個直線上的點集,長度怎麼計算?
等等等等。
事實上,在數學中這些問題都能夠得到解答,但是首先讓我們把上面問題裡的“長度” 這個詞都換成更準確的一個術語:測度(measure)。之所以要採用這麼一個新造的詞,首先是因為“長度”有時候有侷限性。一個線段的長度好理解,一個複雜的點集,說長度就會顯得很奇怪;不僅如此,在二維情形下我們還要研究面積,三維還要研究體積,四維還要研究不知道什麼積……為了省去發明一個又一個新詞的苦惱,我們把這些東西統一叫做二維測度,三維測度……一了百了。
好吧,那麼,我們來定義(一維)測度。
——不,不要誤會,我並不是要在此刻寫出一大段難懂的話,告訴大家“測度就是什麼什麼什麼什麼。” 或者更謙遜一點,說“我認為,測度就是什麼什麼什麼什麼。” ——也許這是一般人看來自然不過的工作方式,但不是數學家的。
這是因為,我們現在要定義的是某種特別基礎的概念。也許在定義某些很複雜的高層概念的時候這種方式很自然,可是概念越基礎,這種方式帶來的問題就越大。關於測度這種層次的概念幾乎必然伴隨著用語言難於精確描述的種種晦澀的思考,一旦一個人試圖把他對這個詞的理解宣諸筆墨,那麼無論他多麼小心翼翼的整理他的陳述,在別人看起來他的定義都必然漏洞百出,有無數可以商榷的地方。——而因為這個概念在整個邏輯體系中的位置過於基礎,任何商榷又都必然說起來雲山霧罩,像哲學家們通常進行的關於基礎概念的爭論一樣令人頭昏腦脹。如果數學家們要開會用這種方法給出測度的定義,那一百個數學家一定會提出一百零一種定義來,最終的結果是什麼有效的結論也得不到。
數學家們採用的是完全不同的方式:我們先不要貿然去說“什麼是測度”,而是先問問自己,當我們想發明一個新的定義的時候,我們在這個定義的背後是想達到怎樣一種目的?換句話說,我們想讓這個定義實現哪些事情?
首先,測度——不管它具體怎麼定義,其作用的物件按照我們的期望是直線上的任意一個子集,而最後得到的測度應該是一個具體的數字。也就是說,所謂定義測度,就是我們需要找到一種方法,使得隨便拿來直線上的一個子集,我們都能夠最終得到一個數字作為其“長度”。(在這裡我們把無窮大也看成是測度,例如整根直線的測度就是無窮大。)
然後,這種方法總要滿足一些必要的約束。——不能隨便給一個線段標上一個數字,就說它是測度了。這些約束有哪些呢?
第一,空集(注意是說空集而不是說單點集)本身也是直線的子集,也應該有個測度。我們應當保證空集的測度是零。這是很顯然的,否則這個測度就毫無實際意義了。
第二,既然每個子集都有一個測度,那麼把兩個彼此本身不相交的子集並在一起得到的新的子集也應該有個測度,並且這個測度應該等於兩者之和。——這也是很直觀的要求。兩個線段如果不相交,那麼他們的總長度應該等於兩者長度之和。更高維的情況也一樣,兩個二維圖形如果不相交,那麼總面積應當等於各自面積之和,諸如此類。
更進一步,三個不相交子集的測度之和也應該等於這三個子集並起來的集合的測度,四個也對,五個也對,依此類推,無窮個不相交子集的測度之和也應該等於把它們並起來得到的集合的測度。——注意,是可數無窮個!
(為什麼呢?直接說任意無窮個不好麼?幹嘛只限定是可數無窮個?)
數學家是很謹慎的。上面這個性質被稱為可數無窮個集合的測度的“可加性” ,承認可數無窮個集合有可加性是不得不為之,因為在實際應用中我們確實常常會遇到對可數無窮個子集求總測度的問題,可是任意無窮個子集的測度也能相加,這個陳述就太強大了,我們一時還說不好測度有沒有這麼強的性質,還是先只承認可加性對可數無窮個集合成立好了。
第三……
“且慢” ,數學家說,“先別找太多的約束,看看這兩條約束本身能夠在多大程度上給出測度的定義好了。”
(什麼嘛,這兩條約束根本什麼都沒說。第一條是廢話,第二條也是很顯然的性質,要是隻滿足這兩條就可以叫做測度,那測度的定義也太寬鬆了,我隨隨便便就能構造出好多種不同的測度出來。)
也許是這樣,可是到時候再添上新的約束也不遲。這也是數學家們常用的辦法,先定義儘量寬鬆的概念,然後再一點一點的附加條件,得到更細緻和特殊的子概念。就目前的情況來說,看起來這兩條約束確實是寬鬆了點……
不幸的是,——也許出乎你的意料,——這兩條約束不是太寬鬆,而是已經太嚴苛了。我們可以證明,給直線的每個子集都標上數字作為測度,保證空集的測度是零,並且測度滿足可數無窮個集合的可加性,這件事情在邏輯上並無內在的矛盾,但是這樣的測度必然具有一些數學上非常古怪的性質。也就是說,這樣的測度根本不能用來作為對長度的定義!
(關於這件事的證明其實很簡單,但是需要一點數學基礎才能讀懂,詳情可以參考文獻[1]。關於什麼是“古怪的性質”,後面還會提及。)
在這種情形下,我們只好退而求其次,減少對測度這個概念的期望。——可是前面提到的兩條性質都再基本不過了,如果連它們都不能滿足,我們定義出來測度又有什麼用呢?——於是數學家們另闢蹊徑,不是放鬆這兩條限制,而是放鬆它們的適用範圍:我們不去強求測度能對直線的每個子集都有定義,也就是說,我們只挑出直線的一些子集來定義測度,看看能不能避免邏輯上的困境。
需要挑出那些子集呢?很顯然,我們希望對於平時人們能接觸到的各種常見的子集都能定義測度,所以單點集是需要的,線段也是需要的,而若干線段的交集或並集(這裡若干還是指至多可數個)也是需要的,對它們的交集或並集再作交集或者並集也是需要的……
在數學中,我們把所有線段反覆做交集或並集生成的這一大類集合稱為可測集(當然它有更嚴格的定義,不過大概就是這個意思)。不要小看這種生成方式,事實上,你能想象得到的直線的子集其實都是可測集,——要找出一個非可測集的集合反倒是有點困難的事情。雖然可測集不包括直線的全體子集,但是如果我們能對所有可測集定義合理的測度,那這個測度也足以應付人們的需要了。
所幸的是這確實是可以做到的。在測度論中有很大的一部分篇幅是用來論述測度是怎麼對可測集得以建立的,這部分內容一般被表述為一個稱為Caratheodory’s theorem的理論。言簡意賅地說:是的,只針對可測集定義的,滿足前面那兩條假設的“合理”測度總是能夠建立得起來的。
這裡所謂的“合理”,就是說它能夠用來作為我們心目中那個“長度”而存在。為了說明這一點,讓我們想想我們離我們的目的地還差多遠:直到現在為止,我們還是完全不知道一個測度究竟是什麼樣子。舉例來說,按照我們的想法,一個單點集的測度應當是零(對應於點沒有長度的直觀),而實數軸上從0點到1點的線段的測度應當是1,更一般地,從a點到b點的線段的測度應當是b-a,——可是這一切我們統統還不知道呢!
這一切確實還未曾得到說明,而且更關鍵的是,僅僅有前面給出的那兩條假設,我們也確實無法推理得出上面那些結論。這也是數學家們的通常做法:先有一個一般的概念,然後通過給它添上一些新的獨立約束來構造出更細緻的概念。我們現在已經有了一個一般的測度的概念,把它總結一下,就是說:
對於直線的一大類子集(也就是可測集,謝天謝地,我們在應用中真正關心的集合都屬於可測集),我們能夠在不傷害邏輯的自洽性的前提下,給他們中的每個都標上一個數字,稱為測度,並且這些數字滿足下面兩條性質:
·空集對應的數字(空集的測度)是零。
·若干個(但是至多可數無窮個)彼此不相交的子集,它們並在一起得到的子集的測度,剛好等於這些子集各自測度之和。
我們只知道這樣的測度是存在的,但是很顯然並不唯一,因為我們未曾對這些具體的數值作過任何限定。為了使測度能夠符合我們心目中的那個“長度”的概念,我們需要進一步添上一條需要滿足的性質:
·如果把直線看作實數軸,那麼從數軸上a點到b點的線段(這是直線的一個子集)對應的測度應當等於b-a,例如,數軸上從2到3的這一段線段的測度應該等於1。
乍一看這好像只是個不完全的限定,我們只規定了最簡單的線段的測度,卻沒有規定剩下那許多奇奇怪怪的集合的測度,可是好在有數學推理來替我們包辦剩下的一切:只要添上這條約束,那麼所有的可測集的測度的具體大小就會以唯一不導致邏輯上的矛盾的方式被確定下來。也就是說,對於任何一個可測集,我們都有辦法算出它所對應的那個唯一可能的測度來。(怎麼算的?如果你不想看到數學式子的話就別問了……)
需要說明的是,同樣也是根據這三條,我們就能夠發現單點的測度必須是零(否則就會導致計算上的矛盾)。注意:這裡的邏輯完全是數學的而不是哲學的,也就是說,我們是可以“推導”出單點的測度是零這樣的結論的。
各位看到這裡可能會很疑惑,我究竟在幹什麼?我並沒有回答事先許諾要回答的任何一個問題(為什麼點的長度是零而線段就不是,諸如此類),而是蠻橫無理的把它們作為規定和規定的推論強制性的擺在這裡,作為測度的定義的一部分。這算什麼回答?
請允許我把對此的解釋(以及對前面所有那些哲學性問題的解釋)放在後面,先暫且回到測度的定義本身上來。
前面說了,只要能滿足頭兩條性質,我們就稱定義出來的那個東西為測度,加上第三條只是為了讓這個測度符合我們對長度的具體數值的要求。也就是說,加上第三條性質後,我們定義出的應當只是測度中的具體某一種,一般把它稱為勒貝格測度(Lebesgue measure)。再強調一遍,正如前面所說的那樣,勒貝格測度並不能定義在直線的所有子集上而只能定義在其中的可測集上。但是我們在數學中和應用中能夠遇到的集合差不多全是可測集。
(那就總還有幾個不可測集了?是的,確實存在一些特別詭異的集合是不可測集。關於不可測集的構造和性質一直是數學上一個有趣的話題,——雖然並不重要,因為事實上在真實世界裡我們遇不到它,它們只是作為抽象的數學構造出現的。我們後面還會再次談及這個問題。)
既然勒貝格測度只是測度的一種,那就是說,數學上是承認不同於勒貝格測度的更一般的測度存在的。這些測度只滿足三條性質的前兩條,而未必滿足第三條,也就是說,這些“測度”並不保證從0點到1點的線段的測度是1,甚至也未必保證單點集的測度是零。它們的性質可能和通常人們對長度的理解很不相同。
(為什麼呢?既然明顯和常識相悖,為什麼還要保留這些人造的概念呢?)
這是因為,儘管數學家發明測度的概念的初衷確實只是想把“長度”的概念精確化和邏輯化,(事實上也確實做到了,就是勒貝格測度),但是人們很快發現,那些更一般的測度雖然未必還符合人們對“長度”這個詞的理解,但是它們作為一種數學概念卻能在大量的學科裡得到應用,甚至成為很多理論的基礎語言。一個最簡單的例子是概率論,這門古老的學科在測度論建立之後就完全被測度的語言所改寫,以至於今天一個不懂一般測度的人完全沒辦法研究概率論;另一個例子是著名的狄拉克測度(Dirac measure),這個曾經令數學家也有點頭痛的非正常測度在物理學和訊號處理等領域裡扮演了非常關鍵的角色。
——不過,這是後話了。

三、長度的意義
回到我們的主題:“長度”的意義上來。
先總結一下我們已經知道了的事情:
所謂(一維)測度,就是要給直線上的每個子集標上一個數字,使得它們滿足下面兩條性質:
·空集對應的數字(空集的測度)是零。
·若干個(但是至多可數無窮個)彼此不相交的子集,它們並在一起得到的子集的測度,剛好等於這些子集各自測度之和。

這樣的測度存在很多種,而且幾乎全都行為古怪。為了更好的符合“長度”的概念,我們添上第三條要求:
·如果把直線看作實數軸,那麼從數軸上a點到b點的線段(這是直線的一個子集)對應的測度應當等於b-a。
滿足這三條性質的對直線上的每個子集定義的測度是不存在的。但是,如果放鬆要求,不對直線的每個子集定義而只對直線的可測子集定義測度,那麼這樣的測度存在並且唯一,數學上稱為勒貝格測度。靠一系列定理的幫助,對直線的任何一個可測集(一般來說你能想象到的任何子集都是可測集),都有一套嚴密定義的公式能夠把這個測度的具體大小算出來。
於是,數學家鄭重宣佈:
勒貝格測度就是人們通常所說的“長度”的嚴密定義,而且是唯一正確的定義。
“什麼?”我們的哲學家朋友們一定要跳起來了。“你上面繞來繞去的說了一大堆讓人聽不懂的話也就罷了,你怎麼能說這是關於長度唯一正確的定義呢?這頂多是你們數學家對這個詞的理解而已,我最討厭你們學理科的用這種自以為掌握絕對真理的口氣說話了!”
“是麼?”數學家回答道,“難道長度這個詞還可能有別的理解不成?”
“當然可以。”哲學家憤憤不平地說。“亞里士多德說過……,萊布尼茨說過……,康德說過……,****同志說過……,總之,人類對長度這個詞的理解是經歷過漫長的爭論的,而且必然還會一直爭論下去。每個人都有權提出自己的觀點啊。”
“我不管他們怎麼說,”數學家說,“我只問你心裡有沒有對長度的定義?”
“當然有了。”哲學家驕傲地說,“我認為,長度就是……”
“慢著,”數學家迫不及待的打斷他,“我不想聽你的哲學論文,我只問你,在你對長度的定義裡,空集有沒有長度?有的話,是不是零?”
“是……的。”其實哲學家暫時沒想到空集這麼細節的事情,但是他覺得反正這個無關緊要吧,所以先首肯了。
“那麼,按照你定義的長度,數軸上從2.76這個點到6.98這個點的線段的長度,是不是等於6.98-2.76=4.22?”
“這個廢話,不然還叫什麼長度啊。”哲學家有點不耐煩了。
“還有,如果我把可數無窮個有長度的集合放在一起,總長度等不等於各自的長度之和?”
“這個……”哲學家對於“可數無窮”這個詞有點拿不準,“反正兩個線段的總長度是等於它們各自的長度之和的,至於無窮個……好吧就算是吧,那又怎樣?”
“那就結了。”數學家慢條斯理地說。“我根本不關心你關於長度的哲學觀念是怎麼建立起來的,我只想說,如果你的觀念沒有內在的邏輯矛盾,那它就一定和我們數學家所說的勒貝格測度是一回事。這就是我為什麼說勒貝格測度是唯一正確的長度的定義。——你當然可以有你自己的定義,只不過它一定正好就是勒貝格測度!”
“什麼和什麼呀!”哲學家有點懵了。“可是你什麼也沒有定義啊,你只是自己號稱證明了一個所謂勒貝格測度的存在,可是我們關心的是為什麼!我們哲學家要問的是為什麼從2.76這個點到6.98這個點的線段的長度等於4.22,你卻把它寫在了定義裡,這並沒有回答問題本身啊。”
“唉,”輪到數學家不耐煩了。“從2.76這個點到6.98這個點的線段的‘長度’當然也可以不等於4.22,只要你不取勒貝格測度而換一種測度就成了,——問題是人們不喜歡那樣啊。不是為什麼它的長度等於4.22,而是你首先要求了4.22這一屬性,然後把它叫做長度。為什麼只有在春天桃花才會開?因為是你把桃花會開的那個季節叫做春天的!”
哲學家:“……”
數學家:“……”
嗯,我不知道這段對話是把問題講清楚了還是攪得更混亂了。當然這裡面還有許許多多的細節需要闡明,下面讓我們來更仔細的討論一下吧。
“長度是什麼?為什麼從2.76這個點到6.98這個點的線段的長度等於4.22?”正如前面那個數學家所說的,這個問法本身就是不合適的。我們給從2.76 這個點到6.98這個點的線段賦予一種屬性是4.22,給從姚明的頭到姚明的腳的線段賦予一種屬性是2.26米,現在我們把這種屬性叫做長度,如此而已。 ——這完全是人為的設定,沒有任何先驗的意義。數學家已經說了,你當然也可以給從2.76這個點到6.98這個點的線段賦予另一種屬性是3.86,給從姚明的頭到姚明的腳的線段賦予另一種屬性是0.03米,只要你足夠細心,這種做法是不會引起問題的,只不過你自己定義的那種屬性不再被人們稱作“長度”罷了。你可以把它稱為“短度”或者別的什麼,沒有問題。
有趣的是,——測度論的偉大也就體現在這裡,——只要我們承認了諸如從2.76這個點到6.98這個點的線段的長度等於4.22這樣一些樸素的論斷,那麼僅僅靠著邏輯推演,我們就能夠給直線的幾乎所有子集——可測集——計算出對應的“長度”來,哪怕它們已經變得不是那麼直觀。譬如說,單點集的“長度”是0(不是什麼無窮小,就是0),2到5之間的全體無理數的集合的“長度”是3,某個廣義康託集(一種有著複雜分形結構的點集)的“長度”是2.86……這一切本來似乎都可以問一問為什麼的事情,其實都只是邏輯的自然推論罷了,你要是不承認它們,就必然導致邏輯上的不自洽。

——為什麼這個東西的長度是0?那個東西的長度是2.3?為什麼這個奇奇怪怪的集合也會有長度?為什麼它的長度不等於別的,偏偏等於根號2?
因為長度滿足那三條性質,所以必然如此。
——為什麼長度要滿足那三條性質?
因為人們把滿足那三條性質的屬性就叫做長度。你當然也可以用別的幾條性質定義出來一個什麼度,只是不能再叫長度就是了。
這就是“長度”這個詞的全部意義。

“可是,”我們的哲學家還是不甚滿意,“我還是覺得你沒有真正回答我想問的問題。”
“還有什麼呢?”數學家說,“我上面這些理論不都已經自圓其說了麼?”
“就是這個自圓其說讓我特別惱火。”哲學家說。“我總覺得你繞過了我真正的問題。我問為什麼長度要這麼定義,你說因為人們把這樣定義出來的屬性就叫長度,這當然沒錯,可是我其實想問的是,為什麼會有這樣一種屬性存在?為什麼自然界中的事物可以具有長度——或者用你的話說——這種屬性?你當然可以告訴我說,因為數學上證明了你的那什麼勒貝格測度一定存在,可是我不想聽你那個證明,我想聽到的是一個更深入的解釋,為什麼長度是得以存在的?”
“因為……因為我們能證明它實際上存在……”數學家迷惑不解的說。
“我不是問你它存不存在,我是問它為什麼存在!”哲學家怒氣衝衝的說。“你不覺得這是件不太自然的事情麼?反正是一堆點,你又說了點的長度是零,可是一旦把點排列起來得到的線段就有了測度,在這個過程中發生了什麼呢?這個不為零的長度是怎麼出現的呢?——別又對我說你能證明它不為零,我要問的是為什麼,——比證明更本質一步的那個為什麼!”
“啊,”數學家字斟句酌地說,“你想問的其實是為什麼線段的測度不等於簡單地把點的測度加在一起對吧。是啊,這確實是個有趣的問題……”

這確實是個有趣的問題。
如果我們仔細檢查關於勒貝格測度的那三條公理,會發現關於第一條和第三條並沒有什麼可多說的,可是第二條——至多可數個彼此不相交的子集的並集的測度等於這些子集各自測度之和——卻多少讓人心生疑惑。這句話讀起來總是有點彆扭。
如果我們把它換成“有限個彼此不相交的子集的並集的測度,等於這些子集各自測度之和”,聽起來就會舒服多了,可是這裡做了某種推廣,從有限到無限,而且還不是任意無限個而是“至多可數無窮”個,這是為什麼呢?
首先,這種推廣是必須的:只對有限個的子集定義測度的可加性,這樣得出來的測度會不滿足人們的需要,——不僅僅是給長度一個精確定義的需要。測度論不只是為哲學家發明的,它要在數學的其他領域裡以及別的自然科學領域裡得到應用,而在這些場合裡,我們時刻會碰到對無窮個集合的並集的測度的計算。我們必須在定義裡就保證測度能夠無窮相加。
而是另一方面,為什麼又偏偏要限制可數無窮個集合才有可加性呢?
事實上,我們很容易就會發現,正是這一點促成了前面那個問題的出現:為什麼線段具有長度?如果我們假設任意無窮個彼此不相交的子集的並集的測度等於這些子集各自測度之和,那麼,既然線段是由無窮個點構成的而點又沒有長度,那線段也應該沒有長度才對。難道這一條是專門為了避免這個悖論才設定的麼?
不是。我們很快就能看到,這種對於可數性的限制,有著更為本質的原因存在。
首先,讓我們想想看把很多數相加是什麼意思。我們一開始學到的加法是針對兩個數而言的,給定任意兩個數,我們能夠算出它們的和。進而,我們把這一過程推廣到了三個數求和:先對其中兩者求和,然後再把這個和同第三者相加。依此類推,我們可以把四個數相加,把五個數相加……
請注意,這裡的過程完全是遞迴的(inductively):只有定義了n個數的和,我們才能夠繼而定義n+1個數的和。然後,這樣一直進行下去,我們就能夠對任意有限多個數求和。——只是“任意有限”,還不是“無限”。
從有限到無限這一步跨越其實走得頗為艱難。哲學家也好別的領域的科學家也好常常隨心所欲的使用數學詞彙而並不特別在意自己是否真的明瞭它們的嚴格意義,可是數學家卻不能如此自由。真正把無窮個數加起來,也就是數學中所謂的“級數”(series),這套理論的嚴密化在數學史上經歷了相當長的一段時間。最終,藉助於極限理論的幫助,真正嚴格的關於級數求和的理論才得以建立。——也就是說,事實上,什麼樣的無窮級數可以相加,什麼時候不能相加,相加的時候要注意什麼問題,這一切都受到了理論的約束。在這些理論的基礎上,我們才能夠確定當我們隨口說出“把這無窮個數加在一起”的時候,我們確實知道我們在說什麼。
什麼是級數呢?級數就是把有限個自然數相加的自然推廣:既然定義了n個數的和我們就能夠進而定義n+1個數的和,那麼,把這個過程遞迴地進行下去,我們就能夠對任意有限多個數求和。當有無窮個數需要我們求和的時候,我們就只對它們中的前N個求和,並且讓這個N不斷變大,如果這一過程有極限,這個極限就被我們稱為這個無窮數的和。
請注意上面這段話背後的涵義:當我們說“對無窮個數求和”的時候,我們其實潛在地要求了這些數的總個數必須能夠通過n->n+1->n+2……這樣的過程來逼近,然後通過極限的方式定義它們的和。這也就是說,這些數的總個數必須是可數個!
讓我們回憶一下什麼是“可數個”:“可數個”就是能夠和自然數集建立起一一對應的那麼多個,用更直觀的語言來說,“可數個”就是“可以一個一個數下去”的那麼多個。只有一個集合裡包含可數個元素的時候,我們才能夠對於它應用數學歸納法,因為數學歸納法的本質就是“一個一個數下去”:當一件事對n成立時,我們進而要求它對n+1成立,這樣的過程進行下去的極限,就是可數無窮。
那麼,既然多個數的加法本質上是個遞迴過程,——只有先把n個數加起來,我們才能進而加上第n+1個數,——所以加法至多能對“可數無窮”個數來定義(也就是級數加法)。把“不可數無窮個”數加在一起,這件事情是毫無意義的!
這正是前面所有那些所謂哲學悖論的根源:當人們想當然的說著“把無窮個點的測度加在一起”的時候,他們以為他們是在說一件自然而然的事情,可是事實上,除非這無窮個點是可數個,否則這裡的加法根本無法進行。不幸的是,任何線段都偏偏是由不可數個點構成的(它們是連續統)。
為什麼線段是由點構成的,而線段的測度卻不等於組成它的那些點的測度之和?因為“組成它的那些點的測度之和”這個短語根本沒有意義,所以兩者也不必相等。
這個回答也許有些出人意料,可是事情就是如此。很多問題之所以令人迷惑,不是因為它們真的是什麼悖論,而只是因為問題本身沒有被恰當的敘述。人們常常自以為是的使用很多詞彙卻罔顧自己是不是瞭解它們的真實含義,譬如說“求和”。人們隨心所欲地說“把若干個數加在一起”卻忘了其實不可能真的把它們“一下子”加在一起,加法是個遞迴過程,這就決定了如果要加的東西的個數太多(不可數那麼多),它們就加不起來了。
(不得不補充一點——一個很掃興的補充——在數學中,某些場合下我們真的必須要對不可數個數定義總和……數學家總是這樣,為了各種極端情況而拓展自己的定義。在這些情況下,這種不可數個數的和也是能定義出來的。但是,這件事並不會對上面那些論述造成削弱:這裡的特殊意義上的“和”是為了應付特別的目的而定義的,它和我們平時所說的求和已經不是一個意思了。)
也許哲學家還會追問:既然線段的測度不是組成它的那些點的測度之和,那麼這個測度是從哪裡來的呢?
它們不是哪裡來的……它們是線段自己所固有的。這就是為什麼我們在定義長度的時候非要加上第三條公理的原因:我們必須在定義裡就寫明線段的測度,否則就沒有辦法建立起直線的所有可測子集的測度的架構。事實上,既然點的長度是零,根據可數可加性我們很容易推出一切可數集的長度也都是零,所以在某種意義上說來,“長度” 是本質上只屬於連續統的一種性質。換句話說,只有進入了連續統的範疇,不為零的長度才可能出現。這就是為什麼我們不能從單點集出發定義長度的原因。
那麼,我們現在可以回答那個著名的“飛矢不動”的悖論了:一支飛馳的箭,在每一個確定的時刻都靜止在一個確定的位置上,為什麼經過一段時間後會移動一段距離?
答案是:因為任何一段時間(不管多麼短暫)都是一個連續統,包含了不可數個時刻,所以箭在每一時刻的靜止根本不需要對一整段時間之內的移動負責。——後者並不是前者的相加,而前者也根本不可能相加。
因為連續統不可數,所以我們能夠在每時每刻裡都靜止的存在,同時又能在一段時間內自由運動。這也許是大自然的巧妙安排吧。

四、若干註記
長度的意義說了這麼多,到此差不多就可以告一段落了。但是關於在前面的討論中出現的許多數學概念和思想,卻還不妨多說幾句。事實上,測度論雖然只是數學中一個具體的分支,但是它的發展和演進卻和數學史上最有趣的篇章之一——所謂的“第三次數學危機”——聯絡在一起。關於這樁公案,坊間的科普書目已經汗牛充棟,我也並不想在這裡再重複一遍那些隨手就可以找得到的八卦,而只是想針對某些特別的概念和理論略加說明,至少,這對願意繼續閱讀別的數學或者數學科普著作的朋友來說,會有點作用吧。

1. 無窮小。
這個概念無疑常常困擾沒有受過現代數學訓練的閱讀者們,這是很自然的事情,因為它可以從直覺上意識得到,卻又難於精確地把握:無窮小是什麼?是不是可以精確定義的數學概念?它是一個數?還是一段長度?能不能對無窮小做計算?諸如此類等等。由於這個概念幾乎天然的和各種哲學式的思辨聯絡在一起,使得甚至哲學家們也對它頗為關注,——當然,還有數之不盡的民科們。
關於無窮小的討論者,最著名的大概莫過於萊布尼茨,他花了大把的精力試圖精確闡述無窮小的概念並且以此作為整個微積分學的基石。在萊布尼茨看來,無窮小是一個比任何數都小但是不等於零的量,對它可以做四則運算,尤為關鍵的是可以做除法:兩個相關的無窮小量的比值就是一個函式的導數。以此為基本語言他開始建立微積分學的基本理論,——他基本上成功了。直至今天,數學家採用的關於微分的記號仍然來自萊布尼茨,而數學學科內部關於微積分學的專門稱呼——“分析學”——也來自於萊布尼茨自己對他的理論的叫法:無窮小分析。儘管牛頓和萊布尼茨在微積分的發明權上爭得不可開交,可是幾個世紀過去,至少在這兩件事情上萊布尼茨大獲全勝。
可是,也許你想不到的一件弔詭的事情是:儘管萊布尼茨在微積分學的建立過程裡做出如此重要的貢獻,他的思想的基石——無窮小量——卻是一個在今天的數學語言裡被完全拋棄了的概念。人們發現這個詞彙除了帶來混亂之外並沒有什麼特別的用處,於是作為一種語言,它被丟棄了。
事實上,即使在萊布尼茨的同時期人看來,無窮小也是一個有點讓人不舒服的詞:比任何大於零的數都小,卻不是零。我們當然可以把它僅僅作為一種人為的邏輯概念來使用,可是這樣一個怪東西的存在,既使得數學的基本物件——實數的結構變得混亂,也在很多場合帶來了麻煩的難於回答的問題(儘管它也確實帶來了不少方便)。在分析學蓬勃發展的十八世紀,一代又一代數學大師為此爭論不休,大家混亂而各行其是地使用這個詞,卻沒人能說清楚它的精確含義。終於,從十九世紀初期開始,以柯西(Cauchy)和魏爾斯特拉斯(Weierstrass)為代表的一大批數學家開始為分析學的嚴密化做出了大量的工作,他們試圖在完全不採用“無窮小量”這個概念的前提下重新建立整個分析學,——他們也成功了。
於是這個詞就被拋棄了。時至今日,這個詞儘管在很多數學書裡仍然會出現,但是這時它僅僅作為一個純粹修辭上的詞彙而不是嚴格的數學概念,——人們通常用它來指代“極限為零的變數”(感謝十九世紀那一大批數學家,極限這個詞已經是有了嚴密清晰的定義而不再僅僅是某種哲學性的描述),也有的時候它被用來作為對微積分運算中的某些符號的稱呼,但是無論何時,人們在使用它的時候都明確的知道自己想說什麼,更關鍵的是,人們知道自己並不需要它,而只是偶爾像藉助一個比喻一樣藉助它罷了。
那麼,回到這個詞最本源的意義:到底有沒有這樣一個量,比一切給定的正實數都小卻又不是零?或者這個問題還有一系列等價的提法:在直線上存不存在兩個“相鄰”的點?存不存在“長度”的最小構成單位?等等等等。
在今天我們已經能夠確定無疑的回答這些問題了:不,不存在。
事實上,這個問題的徹底解答甚至比柯西和魏爾斯特拉斯的時代還要晚:它本質上是關於實數的結構的理解的問題。即使柯西本人——儘管他奠定了現代極限理論的基礎——也並不真正瞭解“實數是什麼”這樣一個簡單的問題。關於嚴密的實數理論的最終建立,一般認為是皮亞諾(peano),康託(Cantor)和戴德金(Dedekind)這幾位十九世紀下半葉的數學家的成就。所謂的“戴德金分劃”仍然是今天的教科書裡對“實數”這一概念所介紹的標準模型。在這套模型裡,人們能夠在邏輯上完全自洽的前提下回答有關實數結構的一切問題,而正如前面指出過的那樣,它完全擯棄了“無窮小”的存在。
(是不是數學家說無窮小量不存在,這個詞就沒意義了呢?)
這又回到了前面我們屢次面對的那個關於數學斷言的權威性的問題。如果承認無窮小是一個有關數的概念,那麼,數學家的工作已經告訴我們,在實數理論中沒有無窮小的位置。事實上,康託本人就曾經證明過承認無窮小是同承認實數中基本的阿基米德原理相矛盾的。(阿基米德原理是一個關於實數性質的基本原理,如果阿基米德原理是錯的,整個數學大概都無法得以建立。)但是,如果把問題拉到數學的疆域以外,如果認為人們有權利不按照數學家的方式討論數本身的性質,那麼我們面對的就已經是全然另一層次的問題,——也就不可能在這裡得到詳盡的討論了。

2. 無窮大。
有趣的是,和無窮小如此相似的一個詞——無窮大——卻在今天的數學語言中佔有與之判若雲泥的一個地位:人們談論它,研究它,還給它以專門的記號(倒8字)。造成這一多少有點奇特的事實的關鍵在於,和通常人們的誤解不同,無窮大其實並不是無窮小這個詞在概念上的對偶(儘管乍一看似乎如此)。事實上,就某種意義而言,說它是零這個詞的對偶也許更為恰當一些。
讓我們回顧一下這個概念在數學中的遞進過程:我們都知道存在這樣的數列(例如自然數列),可以一直變得越來越大,直到比任何給定的數都更大,這種時候,我們把這樣的數列稱為“趨於無窮大”或者直接就簡稱它是無窮大。——請注意,在這裡無窮大僅僅是作為人們對一個數列或者變數的極限的叫法而存在的,我們並沒有承認它是一個數或者一個確定的物件,而只是一個形容詞而已。每個具體的數都不可能真的比別的數都大,儘管一系列數可以沒有止境地變得越來越大,這實質上就是亞里士多德所強調的“潛無窮”。
如果事情只是到此為止,那一切相安無事,無窮大這個詞今天的地位也只不過和無窮小一樣僅僅作為對一種極限的描述而存在罷了。可是這裡有某種微妙的差別:正如前面提到過的那樣,“無窮小”不是別的,只是一個變數極限為零而已,所以我們總可以認為無窮小隻是一種說法,在必要的時候可以用“趨於零”這樣一個替代說法來換掉它。可是“無窮大”是什麼極限呢?它並不是趨於任何特定數字的極限,而是“趨於無窮大的極限”,你看,這個詞輕易迴避不掉。
於是人們只好被迫不斷的提及它,要是非要替換成別的說法,就要花好多倍脣舌才成。比如,前面說過直線本身也是直線的可測子集,那麼整條直線的測度是多少?當然我們可以佶屈贅牙地說“直線可測,但是它的測度並不是一個確定的數,而只是比任何給定的實數都要大。”——這也太麻煩了一點。為什麼不省點事直接說“直線的測度等於無窮大”呢?
這樣人們就開始不斷的把無窮大當一個名詞來使用,假裝它好像也是一個數一樣,這就是所謂的“實無窮”。哲學家和數學家中比較喜歡哲學爭辯的那一部分人對此有許多爭論(直覺主義學派等等),但是讓我們忽略掉它們,先看看在今天數學家是怎麼使用這個詞的吧。
首先,無窮大不是一個實數,在實數集中不存在任何數比其他所有數更大,這是確定無疑的事情。
其次,在許多場合下,我們確實可以把無窮大當作一個名詞來使用,既方便又不造成困擾。例如前面提及的在測度論裡我們說一個可測集的測度是一個“數”,這裡的 “數”既包括非負實數也包括無窮大。事實上,在有些數學書裡索性把實數加上無窮大這樣一個集合稱為“增廣實數集”。我們甚至可以對無窮大定義運算(在事先做好嚴格約定的前提下),這對於很多理論的敘述帶來了極大的方便。如果說得更技術化一點,在很多數學分支(例如仿射幾何)裡我們還能像讓每個實數對應於直線上的一個點這樣一個幾何物件一樣,讓無窮大這樣一個特殊的物件也對應於一個特殊的幾何物件(所謂的“無窮遠點”),並且讓所有這些幾何物件平等地參與到幾何學中來。只要仔細做好事先的公理準備,這樣子做並不會引起任何邏輯問題。
——也許有人會覺得奇怪,怎麼數學家可以如此隨便,想給實數集添上什麼就添上什麼?事實上,數學家就是有這樣的權利,因為說到底,數學不是研究真實自然界的學問,而只是研究人造概念的學問。任何人造概念,只要在邏輯上被嚴格的描述出來又不造成內在的邏輯不自洽,都可以被認為是“存在”的。複數的引進就是一個很好的例子。
——那前面怎麼又說“無窮小不存在”?就算無窮小本身不能是一個實數,為什麼不能把它添在實數集之外也弄一個“增廣實數集”出來研究?
事實上,這樣做是可以的,而且事實上也確實有好事者這樣做過。問題在於它毫無意義。前面說了,任何人都有權利自己定義出一些什麼東西來作為數學物件來研究,這是對的,只要他在邏輯上足夠細心就行。可是這句話還有一個常常被人忽視的反面:數學儘管不是直接研究自然界的學問,可是它畢竟是在人們研究自然界的過程中形成而又有助於人們對自然界的理解的。如果一個數學概念純粹只是自說自話的產物,那無論它多麼自洽,也沒有人會去關心它。複數這一人為的構造之所以被所有人承認是因為它巨大的威力。而無窮小——正如前面所指出的——是一個毫無必要引入的概念,添上它只會自找麻煩。無窮小和無窮大的命運之所以不同,關鍵正在於此。
回到無窮大這個詞上來。這一系列文章的一開頭還說過無窮大可以分成“可數”和“不可數”的無窮大,那又是怎麼回事?
這是一個更常見的誤解,這其實是兩個不同的詞:作為一個極限的(潛)無窮和由此引申而來的作為一個數學物件的(實)無窮是一碼事,作為一個集合的勢的可數無窮或者不可數無窮是另一碼事,不同於前者的“無窮大”,後者其實應該被稱為“無窮多”才對,只是人們通常混為一談。事實上,當我們說“一個集合有無窮多個元素”的時候,我們有必要指出這個集合是不是可數,而當我們說“一條直線的測度是無窮大”的時候,卻完全談不上什麼可數不可數。——在數學書中通過觀察上下文,分辨這兩者並不是很難的事情,可是如果把“無窮”作為一個哲學命題來研究的時候,這種區分卻是必須的。——不幸的是,就我閱讀所及,很多時候人們都沒做到這一點。

3. 不可測集與選擇公理、數學的嚴密性
回顧一下“不可測集”這個詞的意思:在勒貝格測度的意義下,總有一些集合是沒辦法定義測度的,這樣的集合稱為不可測集。同時已經被我們反覆指出過的一點是:一個沒受過專門數學訓練的人所能想象到的任何古怪集合其實都是可測的,不可測集非常罕見。
不可測集的存在是數學中中一件令人遺憾的事實,要是能給直線的任何一個子集定義長度,這樣的理論該有多麼漂亮啊……數學中常常有這樣的情形,一個人們通過直覺認定的美妙設想,偏偏被一兩個好事者精心構造出的反例破壞了,但是數學畢竟受制於邏輯,不管一個反例多麼煞風景,只要它確實成立,數學家也只好接受它。
可是不可測集這個例子有點不同:構造不可測集,用到了選擇公理。
這件事情說來話長,簡單的說,我們都知道整個數學是建立在一些很顯然也很直觀的公理之上的,這些公理大多數都是諸如等量之和為等量之類的廢話,可是選擇公理稍微複雜一點,它是說:
任何給定一組非空集合,我們總能從其中的每一個集合裡取出一個元素組成一個集合。
也像廢話一樣,是吧,可是這句話多少有點羅嗦,不像等量之和為等量一樣簡單明瞭。於是人們對它多少有所爭議,有人認為它不應當排在基本公理之內。可是畢竟這句話也挑不出什麼錯,而且人們很快發現,很多很有用的數學結果離開選擇公理就變得很難證明或者根本不可能證明,於是將就著也就承認它了。
可是不可測集的存在卻又掀起了人們的疑慮,反對選擇公理的人說,看看吧,要是沒有選擇公理,也就沒有不可測集了。
贊成的人反駁說,不可測就不可測唄,有什麼大不了的……雖然整個理論確實變得不那麼完美了。——他們不知道更大的問題還在後面。1924年,波蘭數學家巴拿赫(Banach)在選擇公理和不可測集構造法的基礎上,證明了石破天驚的“分球定理”:一個半徑為1的實心球,可以剖分成有限的若干塊,用這些塊可以完整地重新拼出兩個半徑為1的實心球體!
這一下引起軒然大波,反對選擇公理的數學家們聲勢大振,認為選擇公理完全是trouble maker,必欲除之而後快。贊成選擇公理的數學家們則指出選擇公理“功大於過”,畢竟有很多有價值的數學成果出自選擇公理的基礎。雙方僵持的結果是大家各行其是,大多數數學家承認選擇公理,同時忍受巴拿赫分球定理所帶來的不適感,少數數學家堅持不要選擇公理,為此失去很多別的很有用的定理也在所不惜。
這一僵持局面維持了很多年,直到二十世紀的中葉才被戲劇性地解決。人們在不承認選擇公理的假設下構造出了一大堆比巴拿赫的球體更嚴重的反例(例如一個空間同時有兩個維數)。這些反例不只像巴拿赫的例子一樣違反直覺,而且還嚴重的破壞了大多數已有的數學結果。於是人們發現,承認選擇公理也許是必須的,而像巴拿赫的反例那樣的反直覺的結果,也只能被迫承擔下來了。
所以到今天幾乎所有的數學研究都是在承認選擇公理的基礎上進行的。雖然作為一種後遺症,人們總是會時不時地謹慎的在使用選擇公理的時候加上一句宣告:“本文依賴選擇公理。”——這也許是這條公理的一個特殊待遇了。
以上便是這段公案的來龍去脈。很多人可能在讀完這段故事之後疑慮重重。什麼啊?數學家們難道是這麼隨便的確定公理體系的麼?如此的實用主義,似乎全然置真理的地位於不顧的樣子。很多人可能還會想起歐幾里德第五公設的故事,覺得數學家們原來如此不負責任,帶給人們的不是一套嚴整規範的理論體系,而是一個支離破碎的混亂圖景。連公理的問題都搞不定,整個數學豈不是空中樓閣?
限於篇幅,這篇文章不可能對這個問題予以展開論述,可是至少我們可以澄清一個常見的似是而非的誤解:數學是嚴密性的科學,數學的發展也只有在嚴密的公理化基礎上才能得以實現。
這句話——至少在字面上——是對的。不可測集的例子本身就說明,為了嚴密性,數學家們甚至不惜放棄直觀,——像巴拿赫球那樣的例子儘管如此怪誕,可是它是嚴密邏輯的產物,數學家也只好承認它的存在。
可是在更巨集觀的層面上,這句話卻是錯的。前面提到的分析學就是很好的例子:微積分的思想的提出是在十七世紀,在隨後的十八世紀裡取得了豐碩的成果,可是它的嚴密化卻直到十九世紀下半葉才真正得以實現。測度論是另一個例子:“測度”是人們對於長度這個詞的直觀理解的嚴密化,可是這並不是說,在測度論被提出之前的漫長歲月里人們對於長度都一無所知,恰恰相反,人們已經知道了相當多的事情,只是等待測度論的語言讓一切都變得精確和完整而已。
所以數學的發展實質上是一個拖泥帶水的過程,一代又一代嶄新、充滿活力卻又粗糙的思想被提出來,人們意識到它的重要性,予以發揚光大,產生一系列重要的成果同時又帶來困惑,直到嶄新的數學語言誕生,清理戰場,讓一切顯得井井有條,像教科書上的文字一樣道貌岸然,而同時卻又有新的粗糙的思想誕生了……在這個過程裡,嚴密性始終只是一個背景,儘管無處不在,可是並不佔據舞臺的統治地位。數學家們在意嚴密性,追逐嚴密性,甚至不惜為了嚴密性而犧牲看似有價值的學術成果,可是嚴密性並不是數學發展的引領旗幟,從來都不是。
這就是為什麼同很多人的誤解相反,大多數數學家其實並不關心那些關於數學基礎的哲學性的爭論,這也就是為什麼我把眼前這些討論放進附記的原因——一件事情是不是關係到數學的邏輯基礎和這件事情在數學上是不是重要一點關係都沒有。所有這些故事:可數與不可數、可測與不可測、選擇公理等等,都是和二十世紀初所謂“第三次數學危機”的大背景聯絡在一起的,那段時間裡數學家之間產生了無數紛爭,可是今天的數學學生們在嚴肅認真地學習集合論和測度論的同時,卻只對那些八卦付之一笑,作為茶餘飯後的談資。——事實上,即使在二十世紀初,也有大量的數學家根本不關注這件事情或者壓根就採取了日後看來是錯誤的立場(反對康託,反對不可數集的概念,等等)卻同時又在自己的領域裡作出了重要的甚至是歷史性的貢獻。
關於那個所謂的“第三次數學危機”,有一本著名的科普著作《數學:確定性的喪失》[2]專門討論了它。這本書內容相當詳盡,不幸的是它所引起的誤解和它闡明的事情一樣多。關於這次“危機”的描述主要集中在第十二章,那一章的結尾倒是相當深刻,值得特別引用在此:
“一個寓言恰如其分地概括了本世紀有關數學基礎的進展狀況。在萊茵河畔,一座美麗的城堡已經矗立了許多個世紀。在城堡的地下室中生活著一群蜘蛛,突然一陣大風吹散了它們辛辛苦苦編織的一張繁複的蛛網,於是它們慌亂地加以修補,因為它們認為,正是蛛網支撐著整個城堡。”