
格奥尔格·康托尔(Georg Cantor),1845 年生于俄国圣彼得堡,1918 年卒于德国哈勒。他一生没有离开过讲台,也没有造过一台机器;他做的事只有一件——问了一个从小学起就被绕过去的问题:无穷大和无穷大,能不能比大小。
本册的明线有五样。第一样,一一对应:比较两堆东西多少,不必数完,只要看能不能配成对。这把尺子对有限的东西人人会用,用到无穷上却是他第一个敢认真用到底的。第二样,可数无穷:有理数密密麻麻挤在数轴上,看上去比自然数多得多,可他能把它们一个不漏地排成一列。第三样,对角线论证:实数排不成列,1891 年他用一个短到半页纸的证明说清了这件事,这个证明后来成了整个二十世纪数学最常被引用的论证。第四样,超限数:既然无穷可以比较,就该给它们起名字、定运算——他造出了 ℵ0、ℵ1 这一串符号,也造出了一个能自己长大的数系。第五样,连续统假设:实数究竟有多少?他猜了一个答案,猜完一生也没能证出来。
暗线一句:真话不因无人相信而变假。他的结论说出来时,同代人有的看不懂,有的不愿看,还有一位权威公开斥之为「危险的思想」。他为此付出的代价极重。可这些结论本身,从来没有因为无人相信而改变过一分。
本册分五幕:第一幕讲圣彼得堡的少年与哈勒的讲台,以及一条三角级数怎样把他逼到点集上(p.6—p.12);第二幕讲一一对应与可数无穷(p.13—p.19);第三幕讲 1873 年冬天的那封信与实数不可数(p.20—p.26);第四幕讲维数的失效、超限数与连续统假设(p.27—p.33);第五幕讲悖论、晚年与这份遗产(p.34—p.40)。
三层读法照旧:故事层无需预备知识;数学层只用到分数、小数、乘方与集合的基本记法(p.7—p.9、p.14—p.16、p.21—p.23、p.28—p.30、p.35—p.37),每一步都从头展开,遇到「无穷」这样的词会停下来把话讲完;注疏层给出文献、年份与版本源流,逐页可查。
1873 年 12 月 7 日,哈勒大学的康托尔给不伦瑞克的戴德金写了一封信。信里问的是一件很小的事:能不能把 0 与 1 之间的所有实数排成一列?排成一列的意思是,第一号、第二号、第三号,一个不漏,每个数都有一个确定的位置。
他写完信并没有停手。十二天后他又写一封,说问题解决了:排不成。理由不复杂,用的是他三年前研究三角级数时练出来的一套办法。他把证明寄出去,1874 年文章刊在《纯粹与应用数学杂志》上,全文不到五页。
这篇短文说了两件事。第一,代数数——那些能当整系数方程的根的实数——可以排成一列。第二,全体实数排不成一列。两句话并排放着,读起来像是同一件事说了两遍,其实中间隔着一道裂缝:从这道裂缝起,无穷分出了层次。
接下来十三年,他一直在往这道裂缝里看。1877 年他发现平面上的点和直线上的点一样多,写信给多年的通信者戴德金,句子里带着罕见的激动;1878 年他造出「基数」这个词;1883 年他给这些无穷的量起了名字,开始算它们的加减乘。可他每往前走一步,反对的声音就大一分。到 1884 年他第一次病倒时,同行中真正读懂并接受他的,一只手数得过来。
故事从更早的地方开始——一个在圣彼得堡出生的男孩,十一岁随家迁到德国,十几岁就认定自己要搞数学。
1845 年 3 月 3 日,康托尔生在圣彼得堡。父亲是丹麦裔的商人,做经纪生意,笃信宗教,家教极严;母亲出身音乐家庭,家里常有琴声。他后来在数学里表现出的两样东西——对秩序的执拗,和对「美」的敏感——在童年都能找到来处。
十一岁那年全家迁往德国,先在法兰克福附近的威斯巴登,后迁达姆施塔特。父亲希望他做工程师,因为「工程师挣钱」。他进了达姆施塔特的高等中学,数学成绩极好;1862 年毕业时,他在父亲的同意下改学数学,先入苏黎世联邦理工,次年转柏林大学。
柏林那几年是他一生中最顺的日子。他听威尔斯特拉斯的分析课,听库默尔的数论课,也听克罗内克的课。三个人里,威尔斯特拉斯教他怎么把话说死,克罗内克教他算术是数学唯一的地基——这两课后来在他身上打了架。
1867 年他以一篇数论论文取得博士学位,题目是二次不定方程。按当时的规矩,他要再写一篇资格论文才能开课,1869 年他写了,讲的是三角级数的展开唯一性。就是这篇不起眼的资格论文,把他带到了后来那件大事的门口。同年他受聘哈勒大学,从此在这座小城待了四十七年。
哈勒不是柏林。城小,学生少,数学教师长期只有两三位,薪水不高,学术空气也淡。他不是没有机会离开——后来有几次别的大学来谈,都没成。原因之一,是柏林那边始终有一双手按着他。这件事要等到第四幕才说得清。
后人看康托尔,会看到两条线。
第一条线:把无穷数出来。自然数 1, 2, 3 … 数不完,这是常识。可「数不完」与「数不完」并不一样:有的无穷能排成队,一个一个点下去,任何一个都在某一步被点到;有的无穷连排队都排不成,无论怎么排,总有东西漏在外面。他把前一种叫可数,把后一种叫不可数,并且证明了实数属于后一种。
第二条线:把无穷排起来。既然有无穷多、也有更无穷多,那么它们之间就该有个次序。他给最小的无穷基数起名 ℵ0,给实数集的基数起名 𝔠,然后问:这两个之间还有没有别的?这个问题他猜了一个答案,猜到临终也没能证出;它后来成为二十世纪数学最著名的一道悬案。
两条线合起来,做成的是一件超出数学范围的事:他让「无穷」从一种说话的方式,变成了一种可以计算的对象。在他之前,无穷只是极限里那个「越来越大」的过程,只能逼近、不能握住;在他之后,无穷有了大小、有了算术、有了名字,可以像数一样被比较和运算。
代价也在这里。把无穷当成对象,就要面对对象的规矩;而无穷一旦成为对象,最古老的那条规矩——整体大于部分——立刻就不成立了。这一册的故事,一半在讲他怎么发现这件事,一半在讲别人为什么受不了这件事。
1869 年,二十四岁的康托尔在哈勒写下他的资格论文。题目不惊人:三角级数展开式的唯一性。这个问题从傅里叶那时候起就摆在那里,二十多年没人彻底解决。
事情的开头很朴素。傅里叶在 1822 年说,一段相当任意的曲线都能写成一串正弦与余弦的和,系数由积分算出。这话在当时是惊世骇俗的,因为它意味着极不规则的图形也能用极光滑的波拼出来。学界花了二十年才接受,接受之后又冒出第二个问题:如果一条曲线能写成这样的和,那么写法是不是唯一的?
唯一性对系数是有要求的。若两个三角级数在区间上处处相等,把两式相减,就得到一个「处处为零」的三角级数,问题变成:一个处处为零的三角级数,是不是所有系数都必须为零?答案若为是,展开式就唯一。
康托尔注意到,前人证这一步时都偷偷用了一个假设:级数在每一个点都收敛到零。他问:如果允许有例外呢?假使两个级数只在有限多个点上不相等,别处都相等,系数还一定相同吗?
他先证明:有限多个例外点,不影响结论。接着他把例外点从有限个放宽到无穷多个,只要这些点「稀疏」到某种程度。为了说清「稀疏」是什么意思,他不得不停下来,专门研究这些例外点本身构成的集合——它们怎么分布、有没有聚在一起的地方、能不能一层层剥下去。
这一步是整件事的枢纽。他原本只是想把一个关于级数的问题解决干净,结果发现:要回答级数的问题,先得有一套关于「点集」的说法,而这套说法当时根本不存在。于是他开始自己造。
三角级数的样子是这样的:
f(x) = a0/2 + Σ (an cos nx + bn sin nx)
求和从 n = 1 到无穷。每一项是一个周期为 2π/n 的波:n 越大,波越密。整串加起来,密波负责细节,疏波负责大体走势。
系数怎么定?用积分「筛」出来。因为三角函数之间有一种正交性——两个不同的波乘起来,在一个整周期上积分为零:
∫02π cos mx · cos nx dx = 0 (m ≠ n)
∫02π cos2 nx dx = π
把级数两边同乘 cos kx 再积分,右边除第 k 项外全部归零,于是
ak = (1/π) ∫02π f(x) cos kx dx
这个「筛」的动作有个前提:积分与无穷求和可以交换次序。对有限和,天经地义;对无穷和,未必。十九世纪初的数学家大多没在意这一层,直到有人发现反例。
举一个能算的例子。取方波:在 (0, π) 上等于 1,在 (π, 2π) 上等于 −1。它的展开是
f(x) = (4/π) [sin x + sin 3x/3 + sin 5x/5 + …]
只取头一项,得到一条正弦曲线,峰高 4/π ≈ 1.273,比方波高出近三成;取前三项,峰高降到约 1.104;取前五项,约 1.058。峰越来越贴近 1,却总是高出去一点点——这个「高出的一点点」后来被人叫作吉布斯现象,它提醒人们:无穷和不是有限和顺着走下去,它在极限处会冒出新的东西。
设两个三角级数在区间上除了某个点集 E 之外处处相等。E 就是「例外集」。康托尔要问的是:例外集要坏到什么程度,唯一性才会失效?
先看最简单的例外集:一个点。结论仍然成立。再看两个点、三个点、任意有限个点:都成立。接下来他试着让例外点有无穷多个,但要求它们不能「挤」在一起。
「挤在一起」需要一个精确说法。他的定义是:若一个点 p 的任意小邻域里都含有 E 中异于 p 的点,则称 p 是 E 的聚点。所有聚点收起来,得到一个集合,记作 E′,叫 E 的导集。
拿具体的集合试。设
E = {1, 1/2, 1/3, 1/4, …} ∪ {0}
1 是聚点吗?1 附近只有它自己,别处都是空隙,不是。1/2 呢?同理不是。取 1/k,它的邻居是 1/(k−1) 与 1/(k+1),中间隔着一段距离,也不是聚点。只有 0 是:不管留出多小的邻域,里面总能找到形如 1/k 的点。所以
E′ = {0}
再往下导一次:{0} 只有一个孤点,没有聚点,故 E″ = ∅。这个例外集只经得起两次剥离,就干净了。
康托尔由此给出判据:若某个例外集 E 在第 n 次求导后为空(E(n) = ∅ 而前一次非空),则称它属于第 n 类;唯一性依然成立。这一步把「稀疏」这个含混的词换成了一个可以逐次检验的操作。
如果每次求导都能剥掉一层,那么剥有限次就干净了。康托尔接着问:有没有剥不干净的集合?
有。构造不复杂:取两层嵌套的点列。先摆第一层:
E1 = {1/m + 1/n :m, n = 1, 2, 3, …}
固定 m,让 n 变大,1/m + 1/n 就趋向 1/m。所以 E1 的导集把它自己那一串「1 除以整数」全收了进来,还多收了 0:
E1′ = {1, 1/2, 1/3, …} ∪ {0}
这一步等于把第一层换成了上一层见过的样子。再导一次,就只剩 {0};第三次为空。三层剥完,仍属有限类。
要造出剥不完的,就把这种嵌套做到底:让集合的导集、再导集、三阶导集……每一阶都还剩下东西,一直剩下去。康托尔造出了这样的集合,并给它一个判据:若对一切有限的 n 都有 E(n) ≠ ∅,则称 E 属于无限类;把所有阶导集的交记作
E(∞) = E′ ∩ E″ ∩ E‴ ∩ …
这个交还可以继续导下去:E(∞+1)、E(∞+2)……「再剥一次」这个动作,第一次出现了「做完了无穷多次之后再做一次」这种说法。
这一步在当时只是一项技术需要:为了把唯一性定理的例外情形说全。可它留下了一个记号——∞ + 1。一个表示次数的数,加上 1 之后还比原来大,而它前面已经排了无穷多个数。康托尔把这个记号放在抽屉里,十多年后才重新取出来,那时它已经长成了另一门学问。
哈勒大学建于 1694 年,是老牌的,可到了十九世纪,德国的数学中心早已搬到柏林与哥廷根。哈勒的数学教师长期只有两三个人,学生听数学课多半是为了拿教师资格。康托尔在这里教微积分、教解析几何、教数论,一周十几个课时。
他不是没有野心。1874 年那篇关于实数不可数的短文发表后,他把它寄给柏林的几位前辈,得到的回音很淡。有的说「有意思」,有的不回。真正认真读过的,只有不伦瑞克的戴德金——那是一位常年待在中学与工校里的数学家,与主流圈子也隔着一层。
哈勒的薪水不高,他结婚后家里孩子多,经济一直紧。有几次别的大学来谈聘约,包括稍大一些的工科学校,最后都没成。而在德国,一个数学家要往上走,必须得到柏林那几位点头。柏林的三位巨头里,库默尔年事已高,威尔斯特拉斯对一切新东西都持审慎态度,克罗内克则从一开始就反对他。
1879 年他升了正教授,这是哈勒能给到的最高位置。此后近四十年,他没有再动过。他在哈勒讲他的集合论,柏林那边讲他们的函数论与数论,两个世界各说各话。
这堵墙不是谁砌的,是一层层叠起来的:地理位置、学派门户、以及一种更根本的东西——他所研究的那类问题,在当时的人看来不算「真正的数学」。无穷是不是可以比较,这问题听起来更像哲学。而他给出的答案,又偏偏要用最严格的数学形式说出来。
把这一幕的两头接起来看。
一头是分析学的问题:一条三角级数的展开式唯不唯一。这是个很实用的问题,涉及振动、传热、声学,工程师也关心。它要的答案是一个「是」或「否」,加上成立的条件。
另一头是集合的问题:一个点集能坏到什么程度,还剩下什么。这个问题在当时不属于任何学科,它没有名字,也没有工具,连「集合」这个词都还没有固定的用法。
康托尔做的事,是把第一个问题翻译成第二个。翻译的关键一步,是不再把「例外」看成若干孤立的意外,而把它看成一个整体——一个有内部结构的对象。一旦这样看,问题就变了:不再是「有几个例外点」,而是「这个例外集的构造有多复杂」。
这个转向的后果比他自己预想的深。因为「点集」一旦成为对象,人们自然要问它的大小;而要问大小,就绕不开「无穷多个点」怎么算多、怎么算少。他接下来十年的工作,全从这个问句里长出来。
科学史上常有这样的事:一个人为了解决 A 而造了一件工具,最后这件工具比 A 重要得多。点集论之于三角级数,正是如此。唯一性定理今天写在教科书的一节里,而点集论成了整个现代数学的地基。
一句话:一条级数的「例外」,把一个人领到了「点集」面前。
三件事值得记住。
第一,严格性会把问题推到意想不到的地方。康托尔本来只想把前人证明里的漏洞补上,补漏洞的过程要求他给「稀疏」一个精确说法,而精确说法又要求他研究点集的构造。一步推一步,最后推开了一门新学科。
第二,导集这个工具,本质上是「剥」。一次求导剥掉孤立的点,留下聚成一处的点;再求导,剥掉「聚成一处但自己不聚」的点。剥到空,就说明这个集合的构造只有有限层。剥不空,就说明它是另一种东西。「有限次」与「无限次」的分界,第一次被当成一个正经的分类标准。
第三,记号先于理论。∞ + 1 这个写法出现时,只是为了给「剥完无穷多次再剥一次」起个名字,没有人认为它是个数。可它其实已经是一个数了,只是没人承认。后面两幕会看到,这个符号怎样被正式请进数学。
下一幕转向那个更朴素的问题:两堆东西,怎么比多少。这个问题从小学课本里就有答案,可那个答案只适用于数得完的东西。
1873 年 11 月,康托尔给戴德金写信。信里说的不是定理,是一个困扰他很久的念头。他写道:这件事一直在他脑子里,却始终不敢下笔,因为怕它太简单,简单到不值得说。
念头是这样的。自然数 1, 2, 3 … 与实数比起来,哪一个更多?直觉说实数多得多——数轴上密密麻麻,随便指一处几乎都是无理数。可直觉归直觉,要判定「多」,得先有一个判定的办法,而这个办法当时并不存在。
他想到的办法是配对。两堆东西,不用数,只要能配成对,就是一样多。这把尺子用在有限的东西上人人都会:一个牧羊人不必识字,靠把石子与羊一一配过,就知道有没有少。他想知道这把尺子能不能用到无穷上。
戴德金的回信很快,态度谨慎。他指出这个问题的答案取决于「集合」与「对应」这两个词怎么定,而当时这两个词还没有通行的定义。他又提醒:如果真的要用这把尺子,就得准备好接受一些与常识相反的结论。
康托尔接受了提醒。接下来一个月,他把自己关在书房里,先试最难的:假如实数真的能排成一列,会怎样?十二月七日,他又写了一封信,说这次问题有了眉目;十二月九日再写,说证明成了。
中间那两天发生了什么,没有记录。留下的只有 1874 年那篇不到五页的论文,以及一个从此再没合上的口子。
先说清楚「一样多」在数学里怎么写。
设两个集合 A 与 B。若存在一种配对方式,使 A 的每个元素恰好配上 B 的一个元素,B 的每个元素也恰好被配上一次,就称 A 与 B 之间有一个一一对应,并称二者等势。
对有限集,等势就等于元素个数相同,这是小学常识。真正的新东西出现在无穷集上。取自然数集 ℕ = {1, 2, 3, …} 与偶数集 E = {2, 4, 6, …},配对方式是
n ↔ 2n:1↔2,2↔4,3↔6,4↔8,…
每个自然数有唯一的偶数对应,每个偶数也有唯一的自然数对应,一个不多一个不少。于是偶数与自然数一样多。
这件事在有限的世界里绝不可能:偶数是自然数的一部分,而且还只是一半。可这里「一部分」与「全部」势均力敌。「整体大于部分」这条从欧几里得起就被当成公理的句子,在无穷集上失效了。
失效不等于矛盾。它只是说明:「大于」这个词在无穷上的含义需要重新规定。合理的规定是:若 A 能与 B 的某个子集一一对应,则称 A 的基数不大于 B;若同时二者不等势,才称严格小于。按这个规定,偶数集并不比自然数集小。
于是新的问题浮出来:有没有哪个无穷集,比自然数集严格地大?如果有,它就排不成一列——因为「排成一列」正是与自然数一一对应的意思。
有理数是形如 p/q 的数。它们在数轴上稠密到极点:任意两个有理数之间还有有理数,永远挤得进新的。这样的集合看上去远比自然数多,可康托尔给出的排法只用了一张表。
把正有理数按「分子加分母」的和分组,和小的在前:
和 = 2:1/1
和 = 3:1/2,2/1
和 = 4:1/3,2/2,3/1
和 = 5:1/4,2/3,3/2,4/1
和 = 6:1/5,2/4,3/3,4/2,5/1
每一组里,让分子从小到大排。然后把重复的划掉(2/2 就是 1/1,2/4 就是 1/2),得到一列:
1/1,1/2,2/1,1/3,3/1,1/4,2/3,3/2,4/1,1/5,5/1,1/6,2/5,3/4,4/3,5/2,6/1,…
逐项编号:第 1 项 1/1,第 2 项 1/2,第 3 项 2/1,第 4 项 1/3……每一个正有理数都会在某一组出现,而每一组只有有限项,所以它一定在有限步之内被点到。
这条理由要说得更死一点:任取 p/q,它的和是 p + q。和比它小的组只有有限多个,每组又只有有限项,所以排在它前面的项数有限。这就是「可数」的全部含义:不是数得完,而是每一个都能在有限步内数到。
再加上负有理数与零,也不增加困难:正负交错排即可。于是整条数轴上密密麻麻的有理数,与 1, 2, 3 … 一样多。
这个结论在当时已经让人不舒服。一条稠密的、到处都挤满了点的数轴,居然还能排成一列。那么,那些「排不成列」的东西,得密到什么程度才行?
有理数可数,还只是热身。康托尔 1874 年论文真正的第一击,是代数数也可数。
代数数指一切能当整系数多项式方程的根的实数。例如 √2 是 x2 − 2 = 0 的根;黄金比 (1+√5)/2 是 x2 − x − 1 = 0 的根;∛2 是 x3 − 2 = 0 的根。有理数全是代数数(qx − p = 0 的根),所以代数数比有理数还多。
怎么排?按次数与系数的大小分层。给一个多项式
a0 + a1x + … + anxn (an ≠ 0,系数皆整数)
定义它的「高度」为
h = n + |a0| + |a1| + … + |an|
举三个例子:x2 − 2 的高度是 2 + 2 + 0 + 1 = 5;x2 − x − 1 的高度是 2 + 1 + 1 + 1 = 5;x3 − 2 的高度是 3 + 2 + 0 + 0 + 1 = 6。
关键的一步在这里:高度等于给定值 h 的多项式,只有有限多个。理由是:次数 n 不能超过 h,每个系数的绝对值也不能超过 h,于是每个系数只有有限种取法,组合起来仍是有限种。比如高度 5 的多项式,枚举下来不过几十个。
每个 n 次多项式最多有 n 个实根。所以每个高度只贡献有限多个代数数。按高度 1, 2, 3, … 逐层排,层内按系数排,就得到一条完整的队列:
高度 2:−1,0,1(一次式 x、x+1、x−1 的根)
高度 3:−2,−1/2,1/2,2,…
高度 5 起:√2,−√2,黄金比及其共轭,…
结果:全体代数数排得成一列。而实数有无穷多,若实数里绝大多数不是代数数,那些数就只能属于另一类——他给这一类起了个朴素的名字:超越数。1874 年那篇短文其实顺手证明了超越数存在,而且多到不可数,可当时几乎没有人注意到这一句。
在数字出现之前,人类已经在比较多少了。
牧羊人早上放羊,从袋里取石子,一只羊一枚;傍晚羊回来,再一枚一枚收回。石子收完而羊还有,就是丢了;羊进圈而石子还有,就是多生了。这套办法不需要知道「三十」这个词,只需要两堆东西能配上对。
考古学上这类痕迹很多:西亚的泥筹、南美的结绳、非洲的计数木刻。它们共同的特点是「一对一」——每一个被数的东西,对应一个记号。数数这件事,本来源自配对;「数」这个概念,是配对做了成千上万次之后,从里面抽出来的。
抽象一旦完成,人就开始忘记它的来处。到了十九世纪,人人都会数数,却几乎没有人再想「一样多」究竟是什么意思。它被当成一个不证自明的直觉,像「两点之间线段最短」那样,摆在那里供人使用。
康托尔做的事,说起来只是把这件被忘掉的事重新拾起:把「一样多」从「数」里解放出来,只留下配对。这一解放,有限的世界毫无变化——配对与数数在有限集上完全一致;无穷的世界却整个翻了过来。
这也是他的结论让人难以接受的一个原因。人们不是被证明驳倒的,是被一个太朴素的定义逼到了墙角:既然「一样多」的意思只是能配上对,那么配上了对,就不能再说不一样多。
到这里,两件事已经成立:有理数可数,代数数可数。可数的集合彼此都等势,所以它们在「多少」上没有分别。这个共同的量需要一个名字。
康托尔从希伯来字母里取了第一个字母 ℵ(aleph),加上下标 0,记作 ℵ0,读作「阿列夫零」。它不是一个数轴上的点,也不是一个「很大的数」;它是一个集合的基数,是「可数无穷」这件事本身的度量。
给基数定运算,办法还是配对。两个集合的并、笛卡尔积,都看结果集的基数:
ℵ0 + ℵ0 = ℵ0 (两个可数集合并起来仍可数)
ℵ0 × ℵ0 = ℵ0 (可数多个可数集之并仍可数)
第一条可以验证:把偶数编为第 1, 3, 5 … 项,把奇数编为第 2, 4, 6 … 项,两者交错就排成一列。第二条正是有理数枚举的原理——那张表格的行与列都是可数的,斜着走一遍就把二维压成一维。
加法与乘法在 ℵ0 上都不长个儿。无穷加无穷还是无穷,无穷乘无穷还是无穷。这与有限数的算术截然不同:有限世界里,加与乘总会让数变大;无穷世界里,这两种操作被彻底驯服了。
于是问题被逼到最窄的一处:既然加与乘都造不出更大的无穷,那么「更大」究竟还能不能造出来?如果能,它必须来自一种全然不同的操作。
下一幕会看到,这种操作确实存在,而且简单到只有一行字:取一个集合的所有子集。
一句话:把「一样多」还原成「配得上对」,无穷就有了度量。
三件事值得记住。
第一,定义的解放带来结论的解放。等势的定义里没有一个字提到「数」,只提到配对。正因为不依赖数数,它才能用在数不完的东西上。这不是技巧,是立场的改变:不问「有多少个」,只问「能不能配上」。
第二,稠密不等于更多。有理数在数轴上稠密得没有一丝空隙,可它仍然排得成一列。这说明「看上去挤」不是判定多少的标准,唯一的标准是有没有一条能点到每一个的队列。
第三,加与乘被驯服了。ℵ0 + ℵ0 = ℵ0,ℵ0 × ℵ0 = ℵ0。这两个等式看起来很和谐,其实很凶险:它意味着用寻常的算术手段永远走不出可数无穷。要造出更大的无穷,必须换一种构造。
还有一个问题悬着:实数到底是不是可数?如果可数,那么 ℵ0 就是唯一的无穷,一切到此为止;如果不可数,那么无穷就有了层次,整个理论才真正开始。
康托尔在 1873 年 12 月给出了答案。下一幕讲那个答案,以及一个十三年后才被同行读懂的证明。
1873 年 12 月 9 日,康托尔把证明写完,寄给戴德金。信里那句结论现在读来平淡:区间 (0, 1) 里的实数,不能排成一列。
证法很朴素,甚至有点笨。他不去构造一个排不进去的数,而是先假设有一列,再看这个假设能撑几步。撑到第三步就撑不住了。
文章 1874 年刊出,不到五页。开头一节处理代数数,第二节处理实数,末尾一小段指出:既然代数数可数而实数不可数,那么超越数必定存在,而且多到不可数。这一段只有几行,没有举出一个具体的超越数。
反应很冷。有人来信说这篇东西「有趣」,但没有下文;有人在课堂上提了一句就过去了。真正把它读懂并写回信的,只有戴德金一人。康托尔后来在给朋友的信中说过一句自嘲的话:这篇文章大概只有两个人看过,其中一个是他自己。
冷淡的原因不难理解。当时的数学家习惯「构造」:要证明一个数存在,就该把它写出来,或者给出一个能逐步算出它的办法。康托尔的做法相反:他不造数,只数个数。这种论证在当时被不少人视为绕圈子,甚至不算证明。
更深一层的原因,是这个结论本身让人不适。它说实数比自然数多,而且多到无法排队;可它没有指出任何一个「多出来的数」长什么样。一个存在性结论,不给出实例,只给出数量上的不可能——这在十九世纪的品味里,像是一种狡辩。
十七年后,他用另一种写法把同一个结论重新证了一遍。那个写法短得多,也狠得多,而且不需要事先讨论代数数。今日教科书里的「对角线论证」,就出自那一次重写。
证明用的是反证。假设区间 (0, 1) 里的全体实数可以排成一列:
α1, α2, α3, …
目标是:找出一个数 ξ,它落在 (0, 1) 里,却不等于任何一个 αn。找到就矛盾。
第一步。在 (0, 1) 里取一个闭区间 [a1, b1],要求它不含 α1,且长度小于 1/2。做得到吗?做得到:(0, 1) 挖掉一个点 α1,剩下的部分分成左右两段,任取一段里的一小截闭区间即可。
第二步。在 [a1, b1] 里取闭区间 [a2, b2],要求不含 α2,长度小于 1/3。同样做得到:一个有点长度的区间挖掉一点,还剩两段。
一直做下去,得到一串嵌套的闭区间:
[a1, b1] ⊃ [a2, b2] ⊃ [a3, b3] ⊃ …
αn ∉ [an, bn],长度 < 1/(n+1)
取一个具体的例子看看。为了演示,先假装前三项是 α1 = 0.5、α2 = 0.25、α3 = 0.375。第一步避开 0.5,取 [0.6, 0.9];第二步在其中避开 0.25——它本来就不在这个区间里,随便取 [0.6, 0.7];第三步避开 0.375,同样不在,再取 [0.64, 0.66]。每一步都在前一段里,越缩越窄。
现在用嵌套区间定理:一串嵌套的闭区间,只要每一段都非空,它们的交就不空。又因为长度趋向 0,交里只有唯一一点,记作 ξ。
这个 ξ 有两重身份。第一,它在每一个 [an, bn] 里,所以它在 (0, 1) 里,按假设应当等于某个 αk。第二,αk 不在 [ak, bk] 里,而 ξ 在里面(因为后面各段都套在这一段里)。两句话一撞,ξ 不可能等于任何 αk。
于是假设崩塌:(0, 1) 里的实数排不成一列。
这个证明的骨架上有一根筋要看清:它只用到一个性质——「一个有点长度的区间,挖掉一个点,还剩得下东西」。有理数也满足这个性质,可为什么有理数排得成列?因为 ξ 不保证是有理数。证明找到的那个「漏在外面的数」,恰恰是构造过程自动筛出来的,它通常是无理数。这正是实数与有理数的分水岭。
1891 年,康托尔在《数学年刊》上发表了一篇两页的短文,标题平实:《论集合论的一个初等定理》。他在这里给出了一个比 1874 年短得多的证明,短到可以印在半页纸上,而且不需要任何预备知识。
仍然反证。假设区间 (0, 1] 的实数排成一列:
x1, x2, x3, …
把每个数写成小数(不用有限小数那种以 0 收尾的写法,只用以非 0 数字无限延续的写法):
x1 = 0.a11a12a13…
x2 = 0.a21a22a23…
x3 = 0.a31a32a33…
把下标相同的那些位挑出来:a11, a22, a33, …。它们在表上连成一条斜线,各自属于不同的数。现在造一个新数 b,让它的第 n 位专门跟这条斜线作对:
bn = 1(若 ann ≠ 1);bn = 2(若 ann = 1)
于是 b = 0.b1b2b3… 与 x1 第 1 位不同,与 x2 第 2 位不同,与 x3 第 3 位不同……一般地,与 xn 第 n 位不同。
两个小数只要有一位不同,就是两个不同的数。所以 b 不等于列表里的任何一个 xn。可 b 是 (0, 1] 里的一个实数,按假设本该在列表中。矛盾。
有一处细节必须交代:为什么取 1 与 2,而不取 0 与 9?因为小数有一种双重写法,0.4999… = 0.5000…,同一个数有两种展开。若用 0 与 9 来改位,造出的数可能只是因为写法不同而与列表中的某个数「相等」,反证就漏了。改用 1 与 2,永远碰不到 0 与 9,两种写法的坑就绕开了。
这个证明的力量在于它不依赖任何关于实数的特殊性质。它只用到两件事:每个对象能编上号,以及每个对象能展开成一串「位」。凡是满足这两条的地方,同样的斜线都能切下去——后面第四幕会看到,它怎样切开了幂集、切开了不可判定命题的门。
反证要看得服人,得把斜线真的走一遍。假设前五个数是这五个(每个只写前五位,后面照此延伸):
x1 = 0.1 2 3 4 5 …
x2 = 0.2 3 4 5 6 …
x3 = 0.3 4 5 6 7 …
x4 = 0.4 5 6 7 8 …
x5 = 0.5 6 7 8 9 …
斜线上的五个数字是 1、3、5、7、9。按规则改位:遇到 1 就写 2,遇到别的就写 1。逐个算:
b1:a11 = 1 → b1 = 2
b2:a22 = 3 → b2 = 1
b3:a33 = 5 → b3 = 1
b4:a44 = 7 → b4 = 1
b5:a55 = 9 → b5 = 1
得到 b = 0.21111…。现在逐个比对:
比 x1:第 1 位 2 ≠ 1,不同
比 x2:第 2 位 1 ≠ 3,不同
比 x3:第 3 位 1 ≠ 5,不同
比 x4:第 4 位 1 ≠ 7,不同
比 x5:第 5 位 1 ≠ 9,不同
每一个都不同,而且不同的位置各不相同。这就是斜线的作用:它保证新数至少在「属于自己那一号」的那一位上与他人分开,所以永远撞不上。
有人会问:把 b 补进列表里不就行了?比如把它排成第 6 号。可以,但补进去之后,表变了,斜线也跟着变,照样能切出一个新的 b′ 不在表里。补一次造一个,补一百次造一百个,这是一场永远追不上的追逐——所以问题不在于「漏了一个」,而在于「无论怎么排都会漏」。
这个「补也没用」的性质,是它与 1874 年证明最大的不同。1874 年证明的是「这个列表不完整」,1891 年证明的是「任何列表都不完整」。后者更彻底,因为它把矛头直接指向了「排成一列」这件事本身。
1874 年那篇论文,从发表到被广泛承认,用了将近二十年。
转折出现在 1880 年代。《数学学报》的创办者米塔格-莱夫勒读到康托尔的点集论文,认为这是难得的好东西,主动约稿,并把它们译介给法国与北欧的同行。1883 年,《一般集合论基础》出版;1884 年,《论无穷线性点集》第五篇刊出,超限数的框架第一次完整摆在了读者面前。
承认来得慢,原因不止一个。技术上是难的:他的文章句子长,符号新,定义层层套叠,读一页要停下来想半天。观念上更难:他要人接受的不是一条定理,而是一整套关于无穷的看法。
还有一层原因在他自己身上。他极在意优先权,也极在意别人是否真懂。有人来信说「大致明白」,他会回一封长信,逐句指出对方误解的地方;有人引用他的结论而不提名字,他会写文章纠正。这些做法在学术圈里不算体面,给他添了不少对手。
1884 年春天,他第一次精神崩溃,住进哈勒的疗养院。医生诊断为「躁郁交替」,那年他三十九岁。此后三十四年,这个病反复发作,每次发作都要住院数周到数月。他的集合论工作,大半是在两次发作之间完成的。
一个证明要等多久才算证明?从他的角度看,答案是「不等」——证明成立与否,与有没有人承认无关。可从学术史的角度看,答案是「等到有人肯花力气读懂为止」。这两件事在他身上始终没能对齐,这正是他最苦的地方。
到这一幕结束,两个无穷已经站定。
一个是可数无穷,基数 ℵ0:自然数、有理数、代数数,全在这个层次上。另一个是实数集的基数,康托尔沿用「连续统」这个老词,记作
𝔠 = |ℝ| = |(0, 1)|
由 1874 年的结论,ℵ0 < 𝔠。严格小于的意思是:实数不能与自然数一一对应,但自然数能与实数的一个子集(比如 {1, 2, 3, …} 本身)一一对应。
于是就有了那个问题。既然有第一层、有第二层,那么这两层之间,还有没有别的层?换句话说:是否存在一个集合,它的基数严格大于 ℵ0,又严格小于 𝔠?
这个问题看上去只是好奇,其实很硬。如果存在,那么无穷的层次就像楼梯一样密;如果不存在,那么 𝔠 就是紧挨着 ℵ0 的下一级台阶,实数集就是「最小的不可数集」。两种可能对应两套完全不同的无穷图景。
康托尔倾向于第二种。1878 年,他在论文末尾写下了一句猜想:实数集的任何无穷子集,要么与自然数等势,要么与实数集本身等势——中间没有第三种。这句话后来被叫作连续统假设。
他为这句话找了三十多年证据,没有找到。1900 年,希尔伯特把它列为新世纪的第一个问题,摆在所有数学难题的最前面。它的答案要等到二十世纪三十年代才出现,而那个答案比「是」与「否」都更出人意料。
一句话:实数排不成列,于是无穷有了第二层。
三件事值得记住。
第一,两种证法,两种力量。1874 年的区间套证明走的是「构造」的路:一层层缩小,最后挤出一个漏网之数,可这个数长什么样,说不清。1891 年的对角线证明走的是「结构」的路:不造具体的数,只利用列表本身的形式,让第 n 位专门跟第 n 号作对。后者更短,也更能推广。
第二,对角线的核心是自指。它让对象同时扮演两个角色:既是表里的一行,又是被构造的一个位。「第 n 个数」与「第 n 位」本是两件不相干的事,把它们强行对上,矛盾就出来了。这个技巧后来在数理逻辑里反复出现,每一次都掀翻一座房子。
第三,「不构造实例」也是一种证明。康托尔证明超越数多得不可数,却一个也没写出来。这种论证在十九世纪被视为不合法,在二十世纪成了标准手段。它改变的不是某条定理,而是「什么算证明」这件事。
下一幕往回走一步,处理一个更奇怪的问题:既然一维的直线上的点已经「那么多」,二维的平面还能更多吗?康托尔 1877 年发现答案是不能,而他自己的反应是:我看见了,但我不相信。
1877 年 6 月 20 日,康托尔给戴德金写信。信里说,他证明了一件自己也不敢相信的事:一条线段上的点,与一个正方形里的点,一样多。
他的原话是法文:「Je le vois, mais je ne le crois pas.」——我看见了,但我不相信。这句话后来成了数学史上最有名的一句自述。写信那天他三十一岁,正在蜜月途中。
事情的经过是这样的。他本来想证明相反的东西:平面比直线「更无穷」,因为平面有两个方向,而直线只有一个。这个想法合乎直觉,也合乎「维数」这个概念的日常含义。他动手去证,证不出来,反过来试了试,结果发现可以造出一个一一对应。
戴德金的回信谨慎而有分量。他指出这个对应虽然成立,但它不连续——相邻的点会被拆散到很远的地方去。这一点很关键:如果要求对应保持连续性,那么维数是不可压的(这条要等到 1910 年才被严格证明)。可在不要求连续的情况下,维数就形同虚设。
消息传出去,反应两极。有人觉得这是集合论最强的一击,有人觉得这恰恰说明集合论走火入魔了。后一种声音里,最响的是克罗内克。据说他当时的评论是:这种东西证明了「上帝的语言」与「人的语言」之间有一道谁也跨不过的沟。
康托尔自己怎么消化这件事,没有留下明确的说法。但从那以后,他再没有把「维数」当成一个理所当然的东西。他转向了另一个方向:既然「多」与「少」可以这么算,那么这些无穷的量本身,能不能像数一样排成次序、做加减乘?
先看构造的办法,它简单得像一个游戏。
平面上一点由两个坐标决定,各是一个 0 与 1 之间的小数:
x = 0.a1a2a3…, y = 0.b1b2b3…
把两串数字交错着抄成一个:
z = 0.a1b1a2b2a3b3…
算一个具体的。取 x = 0.123456…,y = 0.789012…,交错得
z = 0.1 7 2 8 3 9 4 0 5 1 6 2 …
反过来也走得通:拿到 z,把奇数位还给 x,偶数位还给 y,两个坐标就回来了。一去一回,一个点对一条线段上的一个数,看上去严丝合缝。
可这里有两个漏洞,必须补。
第一个漏洞:小数写法不唯一。0.4999… 与 0.5000… 是同一个数。若一个坐标有两串展开,交错出来的 z 就不唯一,「一一对应」立刻破功。补法:规定只使用不以连续 9 结尾的那种写法,这样每个数只有一种展开。
第二个漏洞:交错的像会漏掉一些数。比如 z = 0.090909…,反解出来两个坐标都是 0.000…,等于 0,落在区间的端点上而非内部;又如某些 z 反解出的坐标会以连续 9 结尾。补法有两种:一是改用连分数表示(每个无理数有唯一的连分数展开,天然避开歧义,康托尔原证用的就是这条路);二是承认这只是单射,再另造一个反向的单射,最后用等势定理收口。
后者是今日教科书的标准路线,值得说清它的逻辑:若 A 能单射进 B,B 也能单射进 A,则二者等势。这条定理(施罗德—伯恩斯坦)把「造一个完美的对应」这个难题,降级成「造两个粗糙的对应」。粗糙的单射容易造:交错给出线段到正方形的一支,对角线嵌入给出正方形到线段的一支,两边一夹,等势就成了。
结论:|ℝ| = |ℝ2|。推到一般:一维、二维、三维,乃至可数维,基数全是 𝔠。「维数」在基数这个尺度上完全消失了。
造更大无穷的工具,1891 年那篇短文里已经点明:取一个集合的所有子集。所有子集构成的集合叫幂集,记作 P(A)。
先看有限的情形。设 A = {1, 2, 3},它的子集可以全列出来:
∅,{1},{2},{3},{1,2},{1,3},{2,3},{1,2,3}
一共 8 个,而 A 只有 3 个元素。原因是每个元素都有「取」与「不取」两种处境,三个元素就有 23 = 8 种。一般地,n 个元素的集合有 2n 个子集。
对有限集,2n > n 显然。对无穷集,这条不等式还成立吗?康托的答案是成立,而且这就是造出更大无穷的唯一途径。
证法用的正是对角线。设有一个配对规则 f,把每个元素配给一个子集。造一个特殊的集合:
B = {a ∈ A :a ∉ f(a)}
读法:把那些「没有落在自己配到的子集里」的元素收集起来。这个 B 也是 A 的子集,按假设它应该等于某个 f(a0)。
现在问一句:a0 在不在 B 里?
若 a0 ∈ B,按 B 的定义须 a0 ∉ f(a0) = B,矛盾
若 a0 ∉ B,则 a0 ∈ f(a0) = B,矛盾
两边都堵死。所以 B 不可能落在配对的像里,配对一定漏掉了什么。
用三元素试一遍。设 f(1) = {1,2},f(2) = {2,3},f(3) = {1,3}。逐个查:1 落在 f(1) 里,不收;2 落在 f(2) 里,不收;3 落在 f(3) 里,不收。于是 B = ∅。而像里三个都不是空集,空集确实漏了。
换一个配对:f(1) = {2,3},f(2) = {1},f(3) = {1,2}。查:1 不在 {2,3} 里,收;2 不在 {1} 里,收;3 不在 {1,2} 里,收。得 B = {1,2,3},也不在像里。
两次都漏,漏的东西不同,但总归漏。这就是康托定理:对任何集合 A,|P(A)| > |A|,无一例外。
把 A 换成自然数集:|ℕ| = ℵ0,而 |P(ℕ)| = 2ℵ0。每个子集可以看成一串「取或不取」的记录,也就是一串 0 与 1,也就是一个二进小数。所以 2ℵ0 恰好等于实数集的基数:
𝔠 = 2ℵ0
再取一次幂集,得 2𝔠,比 𝔠 更大;如此下去,没有最大的无穷,幂集是一台永远往上走的电梯。
幂集给出了一列越来越大的基数:
ℵ0 < 2ℵ0 < 22ℵ0 < …
康托尔给它们编号:ℵ0 之后的下一个基数叫 ℵ1,再下一个叫 ℵ2,如此排成一列。「下一个」这件事本身需要一个保证——任一基数集合都有最小元,这条由良序定理提供,而良序定理又依赖于选择公理。此处只记结论。
麻烦在于,基数只有一个尺度:多少。可「无穷」还有另一个尺度:排到第几。这两个尺度在有限的地方完全一致,在无穷的地方分了家。
举一个能看清分家的例子。把自然数按寻常次序排:
1, 2, 3, 4, …
这一列没有最后一项。康托尔给「排完这一整列」这件事本身起了个名字,记作 ω。它不是某个自然数,而是这一列的「序型」——排完之后的位置。
现在换一种排法:把 1 挪到最后。
2, 3, 4, 5, …;1
元素一个没多、一个没少,基数仍是 ℵ0;可它现在有最后一项了,排完之后还得再加一位,序型成了 ω + 1。
再看另一个方向:把一串新元素放在最前面。
1, 2, 3, 4, …(原列) → a, 1, 2, 3, 4, …
这样排完,序型还是 ω:因为第一项 a 有了位置,后面的照旧,整列的「长度」没有变长。也就是说
1 + ω = ω, 而 ω + 1 ≠ ω
超限数的加法不交换。这与有限数截然不同,也是康托尔最让人难以接受的地方之一:谁见过加法不交换的算术?
把这套办法一路做下去,得到一串序数:
0, 1, 2, …, ω, ω+1, ω+2, …, ω·2, …, ω2, …, ωω, …, ε0, …
每一个都是「排完之后再加一位」造出来的。这条链没有尽头,而且它的「长度」本身也成了一个可以谈论的对象——正是这一点,二十年后引出了那场著名的悖论(p.35)。
基数与序数的分别,可以用一句话收住:基数问「有多少个」,序数问「排到第几位」。同一堆东西可以排出不同的次序,于是同一个基数可以对应许多不同的序数;反过来,每个序数都确定一个基数,但许多序数共用一个基数。
克罗内克比康托尔大二十二岁,柏林大学教授,代数学与数论的重镇。他有一句名言,流传极广:上帝创造了整数,其余都是人做的。
这句话不只是俏皮,是一套哲学。按这套哲学,数学的正当性只能建立在有限步的构造上:一个数若不能用整数在有限步内造出来,就不该被当成数;一个存在性命题若不能给出构造,就不算被证明。无理数、实无穷、不可数集,全在被他拒绝之列。
康托尔的每一条结论,几乎都踩在这套哲学的对面。证明超越数存在而不举出例子,在克罗内克看来不是证明,是诡辩;把无穷当成完成的对象来运算,在他看来不是数学,是神学。
从 1870 年代起,克罗内克在公开场合与私人信件中反复批评。他的批评不只在口头上:康托尔几次有机会去柏林,据说都因为他的反对而作罢。柏林的教职是当时德国数学界最高的位置,康托尔在哈勒等了近四十年,没等到。
1884 年,克罗内克在《数学年刊》上发表文章,直接点名批评康托尔关于实数与无穷的论述。同年春天,康托尔第一次精神崩溃。这件事的因果关系不能坐实——他的病有更复杂的成因——但那几年的处境确实坏到了极点。
1887 年,康托尔写了一篇长文回应,逐条反驳「只有构造才算存在」的主张。文章写得克制,但结尾一句很硬:数学的本质在于它的自由。这句话后来被引用了无数遍,它其实是一次具体的自卫——当有人要用一套哲学限定数学能研究什么,唯一的回答是:数学不欠任何哲学一个服从。
1891 年克罗内克去世,压力才真正消失。而那时康托尔已经四十六岁,最好的十几年过去了。
连续统假设只有一句话:
𝔠 = ℵ1,即 2ℵ0 = ℵ1
换个说法:实数集的基数,紧挨着可数无穷,中间没有别的基数。或者用子集的语言:实数集的任何无穷子集,要么可数,要么与实数集等势。
要判定这句话,只有两条路。
路线一:证明它为真。办法是证明「不存在中间基数」。这需要先弄清「所有基数」这个总体长什么样,而这一点当时完全没有工具。康托尔试了三十年,只证出一些特殊情形:闭集的连续统假设成立,某些特殊构造的集合也成立,可一般的集合毫无办法。
路线二:证明它为假。办法是造出一个集合,基数严格夹在 ℵ0 与 𝔠 之间。这同样困难,因为要证明一个集合「不可数」,得用对角线;要证明它「不与实数等势」,又要另一套办法。两头都要堵死,比只堵一头难得多。
1900 年,希尔伯特在巴黎国际数学家大会上提出二十三个问题,把这一条摆在第一位。他的表述更宽:证明连续统的基数是最小的不可数基数,或者证明相反——只要给出一个确定的答案。这句话的分量在于,它把「答案是什么」与「能不能定」分开了。
后来的结果证明,希尔伯特这个放宽是对的。1930 年代与 1960 年代先后出现的两项工作表明:这句话既不能被证明,也不能被否证——至少不能从通常的公理里推出。它不是一道待解的题,而是一道摆在两套数学之间的岔路(p.36 细说)。
康托尔没有等到这一天。他一生最后二十年,反复回到这个问题上,反复写下同样的开头,又反复搁笔。在 1899 年给戴德金的一封信里,他仍然认为答案一定是「真」,只是证明还没找到。
一句话:维数靠不住,幂集靠得住——无穷可以一级一级往上走。
四件事值得记住。
第一,维数不是基数的不变量。线段与正方形等势,三维空间与一维直线等势。「大小」这个词在无穷集合上有两套意思:论个数是一套(基数),论形状是另一套(拓扑)。前者在这里完全压倒了后者。
第二,幂集是造更大无穷的唯一机器。|P(A)| > |A| 对一切集合成立,无一例外,所以无穷没有上限。这条定理的证明与对角线同构:把「元素」与「子集」强行对上,再问「这个元素在不在自己配到的子集里」,矛盾立现。
第三,基数与序数是两把尺子。ℵ0 量多少,ω 量次序。同一堆东西重排之后,基数不变而序数会变。ω + 1 ≠ 1 + ω 这个不等式,是整个超限算术最刺眼的一处。
第四,连续统假设是一道分水岭。它问的不是某个技术细节,而是无穷的层次究竟有多密。这个问题后来被证明「问不出确定答案」,于是它从一道题变成了一个选择——选哪一边,取决于想要什么样的数学宇宙。
下一幕收尾。悖论、疗养院、以及一份迟到太久的承认。
1897 年 8 月,第一次国际数学家大会在苏黎世召开。这是数学界第一次全球性的聚会,三百多人到场。康托尔去了,而且是最受注目的几个人之一。
会场上他重逢了胡尔维茨。两人年轻时在柏林是同窗,后来因为一些学术上的分歧疏远了二十多年。这一次,胡尔维茨主动走过来,两人谈了很久,旧日的隔膜就此消解。据在场的人回忆,那几天康托尔的精神状态少有的好。
也正是在这次大会上,他第一次听到有人当面提出那个悖论。意大利数学家布拉利-福蒂在会上报告:所有序数组成的总体,会引出矛盾。康托尔当场没有反驳,会后在旅馆里想了几天。
两年后,他在给戴德金的信里写下了自己的想法:所有序数的总体、所有集合的总体,都不能算作「集合」。他把这类东西叫作「绝对无穷」,并主张它们不属于集合论研究的对象。这个区分后来成了公理化集合论的起点:不是所有能说出来的汇集都是集合。
这一段时间,他的名声终于起来了。1890 年他参与创建德国数学家协会,并任首任会长;1904 年英国皇家学会授予他西尔维斯特奖章。1911 年他赴苏格兰参加圣安德鲁斯大学五百周年庆典,与罗素谈了一个下午。
可身体已经不行了。1904 年他第三次严重发作,此后住院越来越频繁;1917 年起基本长住疗养院。1918 年 1 月 6 日,他在哈勒的精神病院去世,七十三岁。当时正是一战最后一年,物资紧张,葬礼极简,到场的人不多。
上一幕末尾那串序数 0, 1, 2, …, ω, ω+1, …, ω2, …,一路往上,没有头。一个自然的问题是:把它们全都收集起来,会得到什么?
布拉利-福蒂 1897 年给出的答案是:会得到矛盾。他的推理只有三步。
第一步。把所有序数收集起来,记作 Ω。按序数的大小,这个总体自己是良序的——任取两串,总有一串排在另一串前面。
第二步。任何良序的东西都有一个序型,序型本身是一个序数。于是 Ω 的序型也是一个序数,记作 ϑ。
第三步。ϑ 既然是序数,就该在 Ω 里;而 Ω 的序型严格大于 Ω 里的每一个序数,所以 ϑ > ϑ。矛盾。
康托尔自己发现的是另一条,性质相同。设 V 是所有集合的总体。由康托定理,|P(V)| > |V|。可 P(V) 的每个元素都是集合,所以 P(V) 的每个元素都在 V 里,即 P(V) 是 V 的一部分。于是 |P(V)| ≤ |V|。两条一撞,矛盾。
矛盾出在哪里?不在定理,在第一步。「把所有集合收集起来」这个动作,本身就不合法。它假定了存在一个「包含一切集合的集合」,而这个假定会立刻造出比自己更大的东西。
康托尔的处置是加一道分界。一边是「集合」,可以互相比较大小、可以取幂集;另一边是「绝对无穷」,大到不能再当对象处理,只能承认它在那里。Ω、V 属于后者。
这道分界在当时的表述还很模糊。要把它说清,需要一套明确的公理,说明什么样的汇集算集合、什么样的不算。这项工作由策梅洛 1908 年起步,经弗兰克尔与斯科伦补充,成了今日通行的 ZF 公理系统。悖论因此不是灾难,而是公理化的直接动因。
连续统假设的答案,分两步到来,中间隔了二十五年。
第一步,1938 年。哥德尔构造了一个「瘦」的集合宇宙:从空集出发,只收那些「可以按序一步步构造出来」的集合,记作 L。在这个宇宙里,选择公理成立,连续统假设也成立。这意味着:若 ZFC 本身不矛盾,那么「ZFC + 连续统假设」也不矛盾——连续统假设不可能被否证。
第二步,1963 年。科恩发明了一种叫「力迫」的技术:从一个已有的模型出发,往里「塞进」新的集合,同时小心地控制哪些旧命题被改变。用这套办法,他造出了一个满足 ZFC 而连续统假设为假的模型。这意味着:连续统假设也不可能被证明。
两步合起来,结论是一句话:
连续统假设独立于 ZFC
「独立」的意思要说得精确:从 ZFC 的公理出发,既推不出它,也推不出它的否定。这与「暂时证不出来」不同,与「它是错的」更不同。它的问题在于,公理没有把它定下来。
这种情形在数学史上并非首次。欧几里得第五公设(平行公设)就独立于前四条:假定过直线外一点恰有一条平行线,得到欧氏几何;假定一条也没有,得到黎曼几何;假定有无穷多条,得到罗巴切夫斯基几何。三套几何互相矛盾,可各自内部完全自洽。
区别在于,几何的独立性有一个外部的裁判:物理空间长什么样,可以测量。广义相对论后来表明,宇宙在大尺度上确实不是欧氏的。而集合论没有这样的裁判。连续统到底有多少个实数,没有任何实验能回答。于是选择哪一边,只能由数学家自己决定——看哪一套公理更合用、更自然、更能长出好数学。
这个局面在当时震动了整个学科。它意味着:数学的基础不是一块铁板,而是一片可以选择的地基。选择不同,长出的高楼也不同,而每一座楼都站得稳。
「既不能证真,也不能证假」,听起来像无能。其实这是三种完全不同的处境,要分清。
第一种:暂时不会。费马大定理悬了三百五十年,最后被证明为真。这期间人们不知道答案,但答案客观存在,只是没找到。这是「不知道」。
第二种:命题本身是错的,所以证不出来。比如「所有实数都是有理数」,无论花多少力气也证不出,因为它假。这是「不能证真」,但能证假。
第三种:公理没有把它定下来。在 ZFC 里,连续统假设属于这一种:存在两套模型,一套里它为真,一套里它为假,两套都满足全部公理。这既不是不会,也不是假,而是「这个问题在现有公理下没有唯一答案」。
第三种处境有一个非常朴素的类比。「1 + 1 = 2」在自然数里成立,在二元域里不成立——那里 1 + 1 = 0。问「1 + 1 究竟等于几」而不说明在哪套数系里,是没有答案的。连续统假设的处境与此类似:不说明在哪个集合宇宙里,它没有确定的真值。
这个类比也要小心用。二元域与自然数是两个不同的结构,各有一套规则;而 ZFC 与 ZFC+CH 并不是两套规则,公理完全相同,只是满足公理的对象不同。换句话说,同一套公理可以容纳许多不同的宇宙,而这些宇宙在某些问题上给出不同答案。
哲学上的后果,比技术后果重。如果数学对象是由公理「定住」的,那么公理没定住的地方,就真的没有唯一答案。这与「数学真理独立于人的认识而存在」的古典信念有冲突。一部分数学家因此转向形式主义:数学就是按规则做符号推演,规则没规定的,就没有对错。另一部分坚持柏拉图主义:集合宇宙客观存在,只是人看不全。
康托尔属于后者,而且是极端的那一种。他相信无穷的层次是上帝心灵中的实在,人只是把它一点点发现出来。这个信念支撑了他一生,也让他晚年格外难以接受「有些问题没有答案」这个可能。
从 1884 年到 1918 年,三十四年里,康托尔反复进出哈勒的精神病院。
病的名字当时写作「躁狂抑郁性精神病」,今天的诊断难以复原。能确定的是:发作时他极度亢奋,话多,失眠,反复给同行写信谈论神学与无穷;随后转入深重的抑郁,无法工作,也无法见人。两次发作之间,他能正常讲课、写作、参加会议。
他一生最重要的几件工作,都在发作的间隙完成。1883 年的《一般集合论基础》写完不久就病倒;1891 年那篇两页的对角线论文,写在两次发作之间;1895 与 1897 年的《超限集合论基础》两部,是他状态最好的时期。
疗养院的日子,据探视者记述,他大多在读书与写信。他读神学,读哲学,也读中世纪关于天使与无穷的讨论。他相信自己的集合论能在经院哲学里找到根据,甚至认为超限数是上帝属性的某种映像。这些文字后来被同行视为病中的呓语,很少被收进数学讨论。
家庭也不顺。妻子 1901 年去世;两个儿子在成年后与他关系疏远;一战后德国的通货膨胀吃掉了他的积蓄。晚年他靠大学退休金与一份微薄的讲席补贴过活。
有一件事值得记下。他始终没有放弃那个猜想。1915 年,七十岁的他在给友人的信中还写道:连续统的基数一定是 ℵ1,证明只差一步。他并不知道,二十三年后的一份工作会说明:这一步永远迈不出去,不是因为他不够聪明,而是因为路本身不存在。
康托尔去世时,集合论已经是数学的一部分了,只是还没有成为地基。
真正的转折在 1920 年代。策梅洛与弗兰克尔把集合论公理化,冯·诺依曼给出了序数的现代定义(把每个序数等同于「比它小的所有序数」组成的集合),悖论被圈在了外面,理论重新站稳。从此,ℵ 这套符号进入了每一本数学书:讲拓扑要说可数基,讲测度要说零测集,讲分析要说完备性,讲代数要说超越基。
1926 年,希尔伯特在一次演讲里说了一句后来被反复引用的话:没有人能把我们赶出康托尔为我们创造的乐园。这句话的分量在于,说这话的人当时正在与布劳威尔争夺数学的基础——他需要一个例子,证明「实无穷」不但可用,而且好用。
更彻底的变化在语言层面。今天一篇数学论文写到「取一个集合 A」「设 f 是映射」,没有人觉得需要解释。这套说法在他之前不存在,在他之后成了默认。他改动的不是某条定理,是数学说话的方式。
回到那句老问题:真理与承认的关系。他的结论在 1874 年被冷落,在 1897 年被请上主席台,在 1926 年被称为「乐园」。同一个结论,三种待遇,而结论本身一个字也没改。变的不是数学,是数学界。
这也是他留下的最实用的一课:一个结论成立与否,与它是否被接受,是两件事;而这两件事之间可能隔着几十年。做研究的人若把两者混为一谈,就会在冷遇中怀疑自己,在追捧中放松标准。
一句话:他的结论活着,而他自己没有等到。
三件事值得记住。
第一,悖论是公理化的接生婆。最大序数与最大基数两条悖论,逼出了一个必须回答的问题:什么样的汇集算集合?ZFC 就是对这个问题的回答。没有悖论,公理化可能还要晚几十年。
第二,独立不是失败。连续统假设独立于 ZFC,这件事本身是一条深刻的定理,它说清了公理系统的边界在哪里。知道「这里问不出答案」,比含混地一直问下去更有价值。
第三,承认来得晚,但不改变对错。从 1874 年的冷遇到 1926 年的「乐园」,中间五十二年。康托尔本人在 1918 年去世,没有看到公理化,也没有看到独立性的结果。他留下的东西比他的处境长寿得多。
最后回到暗线。「真话不因无人相信而变假」——这句话听起来像安慰,其实是一个技术判断:一个命题的真值由它的证明与模型决定,与相信它的人数无关。康托尔一辈子在用这条判断支撑自己,而这条判断本身,恰好是他所研究的那门学问最硬的规矩。
1845 生于圣彼得堡。十一岁随家迁德。
1867 柏林大学博士,论文为二次不定方程。1869 以三角级数论文取得哈勒授课资格,同年留校任教。
1870 海涅证明三角级数唯一性,关键处需要一条关于例外点的引理;康托尔补足,从此进入点集研究。
1872 论文《关于三角级数理论中的一个定理》:给出导集概念,明确实数系的完备性。
1873 年 12 月 与戴德金通信,证明区间 (0, 1) 中的实数不可数。1874 论文刊出,不到五页。
1877 年 6 月 发现线段与正方形等势,写下「我看见了,但我不相信」。1878 论文刊出,「基数」概念定型,连续统假设首次表述。
1879 升哈勒正教授。1883 《一般集合论基础》出版,超限序数体系成形。1884 第一次精神崩溃,入疗养院。
1890 参与创建德国数学家协会,任首任会长。1891 《论集合论的一个初等定理》,对角线法与康托定理。
1895 / 1897 《超限集合论基础》两篇,ℵ 符号系统化。1897 苏黎世国际数学家大会;布拉利-福蒂悖论提出。
1899 发现最大基数悖论,提出「绝对无穷」的区分。1904 获英国皇家学会西尔维斯特奖章;第三次严重发作。
1918 年 1 月 6 日 卒于哈勒,七十三岁。
1908 策梅洛公理化;1926 希尔伯特在明斯特演讲中称「没有人能把我们赶出康托尔为我们创造的乐园」;1938 哥德尔证连续统假设的相对一致性;1963 科恩证其独立性。他去世之后,这场争论才真正有了结论。
读康托尔的原文,第一感受往往是啰嗦。
他写定义极长,一句话里套三层从句;同一个概念换三种说法,前后还要互相引证。这与他的处境有关:他要说的东西当时没有现成词汇,只能一边造词一边解释,解释里又生出新的词。读的人若不耐心,头两页就会放弃。
给读原文的人三条建议。
第一条,先读结论,再回头读定义。他的论文结构常常是:先声明要证什么,再花很长篇幅交代术语,最后用一小段收口。把最后一段先看,知道目标在哪里,前面那些绕就绕得过去了。
第二条,注意他区分「集合」与「总体」的地方。这是他晚年最在意的分界:前者可以比较大小、可以取幂集;后者不能,只能承认它在那里。许多读不通的地方,都是把「总体」当成了「集合」。
第三条,把他的证明改写成现代写法再读一遍。比如 1874 年那个区间套证明,用今天的记号写,只要五行;原文写了三页,因为每一步都要交代「为什么这个区间还在里面」。改写之后再回头对照,能看出他为什么啰嗦——那些看似多余的话,正是他防止自己滑过去的地方。
还有一层要留意。他的文章里常夹着哲学与神学的段落,尤其在 1883 年之后。这些段落与数学论证往往并不相连,读的时候可以跳过;但它们解释了他为什么坚持——他相信自己在读一本更大的书。
最后一句提醒:不要从《超限集合论基础》开始。那是他晚年写的总结,符号系统已经完备,但每一步都预设了前面二十年的积累。从 1874 年那篇不到五页的短文开始,反而最容易进去。
第一个:连续统假设该选哪一边。它独立于 ZFC,这一点已经确定。可「独立」只说明了公理没有定它,没有说明它本身有没有真假。若认为集合宇宙客观存在,那么 𝔠 总有一个确定的值,只是公理没抓住;若认为数学只是符号推演,那么选哪一边都行。这两种立场至今没有胜负。
第二个:集合之上还有什么。康托尔把「所有集合的总体」推到集合论之外,称之为绝对无穷。二十世纪的大基数理论沿着这个方向往上爬:不可达基数、可测基数、武丁基数……每上一层,就要新增一条公理。这条梯子有没有顶?没有人知道,也没有人证明它没有。
第三个:非构造性的存在证明,究竟证明了什么。康托尔证明超越数多得不可数,却一个也没写出来。这种证明今天被普遍接受,可它带来的困惑没有消失:说某类东西「存在」,而无法指出任何一个,这算不算对世界的认识?构造主义者至今不接受这类证明,而这并非顽固——他们在计算机科学里找到了自己的地盘。
三个问题有一个共同点:它们都不是「还没算出来」,而是「不知道怎么才算回答」。一个学科最深的困难,往往不在解题,而在确定什么算答案。
这也解释了康托尔为什么让人不安。他不只是给出了新答案,他改动了「答案」的标准:从「造出来」改成「推出来」。这一步改动比任何一条定理都深,也因此比任何一条定理都更难被接受。
材料:一支笔、一张纸。目标:把正有理数排成一列,并算出某个分数排在第几号。
第一步,按「分子加分母」分组,和小的在前,同组内分子递增:
和 2:1/1
和 3:1/2,2/1
和 4:1/3,2/2,3/1
和 5:1/4,2/3,3/2,4/1
和 6:1/5,2/4,3/3,4/2,5/1
和 7:1/6,2/5,3/4,4/3,5/2,6/1
和 8:1/7,2/6,3/5,4/4,5/3,6/2,7/1
第二步,划掉可约的(分子分母有公因数)。和 4 组划掉 2/2,剩 2 个;和 5 组一个不划,4 个;和 6 组划掉 2/4、3/3、4/2,剩 2 个;和 7 组一个不划,6 个;和 8 组划掉 2/6、4/4、6/2,剩 4 个。
第三步,逐项编号:
第 1 项:1/1
第 2—3 项:1/2,2/1
第 4—5 项:1/3,3/1
第 6—9 项:1/4,2/3,3/2,4/1
第 10—11 项:1/5,5/1
第 12—17 项:1/6,2/5,3/4,4/3,5/2,6/1
第 18—21 项:1/7,3/5,5/3,7/1
结论:3/5 排在第 19 项。核一遍:和 2 到 7 各组共 1+2+2+4+2+6 = 17 项;和 8 组里 1/7 是第 18,3/5 是第 19。对得上。
再做一个:4/7 排第几?它的和是 11,需要把和 2 到 10 各组数一遍。这个过程有点烦,但每一步都只需数数,不需要任何技巧——这正是「可数」的含义:数得烦,但一定数得到。
最后想一想:如果换一种分组方式(比如按「分子乘分母」的大小分组),这列队伍会不会漏掉某个分数?不会,但会重复得更多。只要每一组有限、每组都覆盖到,任何分组方式都能排出一列。
材料:一支笔、一张纸。目标:给定 6 个数,造出第 7 个不在其中的数。
假设这 6 个数是:
x1 = 0.3 1 4 1 5 9 …
x2 = 0.2 7 1 8 2 8 …
x3 = 0.1 4 1 4 2 1 …
x4 = 0.5 6 6 6 6 6 …
x5 = 0.9 0 0 0 0 0 …
x6 = 0.8 4 9 2 1 3 …
第一步,取斜线:第 1 个数的第 1 位 3,第 2 个数的第 2 位 7,第 3 个数的第 3 位 1,第 4 个数的第 4 位 6,第 5 个数的第 5 位 0,第 6 个数的第 6 位 3。
第二步,逐位改。规则:遇到 1 就写 2,遇到别的就写 1。
3 → 1
7 → 1
1 → 2
6 → 1
0 → 1
3 → 1
第三步,写出来:b = 0.1 1 2 1 1 1 …
第四步,逐项核对:
与 x1:第 1 位 1 ≠ 3,不同
与 x2:第 2 位 1 ≠ 7,不同
与 x3:第 3 位 2 ≠ 1,不同
与 x4:第 4 位 1 ≠ 6,不同
与 x5:第 5 位 1 ≠ 0,不同
与 x6:第 6 位 1 ≠ 3,不同
六个都不同,所以 b 不在这 6 个数里。
再试一次,这次自己出题:随便写 6 个小数(每位取 0—8 之间的数字,避开 9),照上面的规则走一遍。无论怎么写,造出的 b 都不在原来的 6 个数里。
最后一步,想一想为什么「补进去」没用:把 b 排成第 7 个数,然后重做第一步——斜线变成 7 位,造出的新数 b′ 又不在新的 7 个数里。补一次漏一次,永远补不完。这就是「不可数」的意思:不是漏了一个,而是任何列表都漏。
一一对应 两集合间每个元素恰好配上对方一个元素,不重不漏。存在一一对应即称二者等势。
等势 基数相同。有限集等势即元素个数相同;无穷集可与自身真子集等势,这是无穷集的特征性质。
可数 能与自然数一一对应。自然数、整数、有理数、代数数皆可数;可数集的有限并、可数并、有限笛卡尔积仍可数。
不可数 不能与自然数一一对应。实数集是最典型的例子,其证明有区间套法与对角线法两条路线。
对角线论证 假设全部对象排成一列,取第 n 个对象的第 n 位,逐位改成不同字符,所得对象不在列中。1891 年给出。
基数 衡量集合「多少个」的量。有限集的基数就是元素个数;无穷集的基数用等势类刻画。
ℵ0 最小的无穷基数,即全体可数集的基数。读作阿列夫零。
𝔠 连续统的基数,即实数集的基数,等于 2ℵ0。
幂集 一个集合的所有子集构成的集合。康托定理:|P(A)| > |A|,对一切集合成立。
序数 衡量「排到第几位」的量。ω 是自然数列排完后的位置;ω+1 是在其后追加一项所得的位置。
超限数 统称无穷基数与无穷序数。其算术与有限数不同:ℵ0+ℵ0=ℵ0,ω+1≠1+ω。
连续统假设(CH) 𝔠 = ℵ1,即实数集的基数紧接在可数无穷之后。独立于 ZFC。
绝对无穷 康托尔用来指「所有序数的总体」「所有集合的总体」这类不能当作集合处理的对象。
ZFC 策梅洛—弗兰克尔公理系统加选择公理,今日集合论的标准公理系统。
人物
康托尔(1845—1918) 本册主角,集合论与超限数理论的创立者。
戴德金(1831—1916) 康托尔最重要的通信者,以「分割」定义实数。
克罗内克(1823—1891) 构造主义者,长期公开反对康托尔的工作。
威尔斯特拉斯(1815—1897) 柏林分析学领袖,康托尔在柏林听过他的课。
库默尔(1810—1893) 数论家,康托尔在柏林的指导教授。
海涅(1821—1881) 1870 年证明三角级数唯一性,引出康托尔的点集研究。
米塔格-莱夫勒(1846—1927) 《数学学报》创办人,把康托尔的工作译介给欧洲。
希尔伯特(1862—1943) 1900 年把连续统假设列为二十三问题之首。
策梅洛(1871—1953) 1908 年给出集合论的第一套公理。
弗兰克尔(1891—1965) 1922 年补充公理模式,形成 ZF。
哥德尔(1906—1978) 1938 年证连续统假设的相对一致性。
科恩(1934—2007) 1963 年用力迫法证其独立性,1966 年获菲尔兹奖。
布拉利-福蒂(1861—1931) 1897 年提出最大序数悖论。
罗素(1872—1970) 1901 年提出以集合自身为元素的悖论。
波尔查诺(1781—1848) 1851 年《无穷的悖论》已有无穷集合可一一对应的思想。
书目
《康托尔数学与哲学全集》(Gesammelte Abhandlungen,hrsg. E. Zermelo,1932)——原始论文,最可靠的一手材料。
《康托尔—戴德金通信集》(Briefwechsel,hrsg. J. Cavaillès & E. Noether,1937)——1873—1899 年关键讨论的现场记录。
J. W. Dauben, Georg Cantor: His Mathematics and Philosophy of the Infinite(Harvard, 1979)——最完整的传记与数学分析。
J. Ferreirós, Labyrinth of Thought(2nd ed., 2007)——集合论观念史。
T. Jech, Set Theory(3rd millennium ed., 2003)——现代标准教材。
K. Kunen, Set Theory(2011)——公理化路线,含力迫法入门。
P. J. Cohen, Set Theory and the Continuum Hypothesis(1966)——独立性结果的原始专著。
M. Hallett, Cantorian Set Theory and Limitation of Size(1984)——关于「绝对无穷」的哲学讨论。
「无穷」这个概念在西方思想史上有过三次大的转身。康托尔站在第三次的转折点上。
第一次:亚里士多德的划界。他区分两种无穷:潜无穷——一个过程可以一直进行下去,永远不到头;实无穷——一个完成了的、作为整体存在的无穷。他承认前者,否认后者。理由是:一个完成了的无穷,会与「整体大于部分」这条公理冲突。这个判断统治了两千多年。
第二次:伽利略的回避。1638 年,他在《两门新科学》里注意到:自然数与平方数可以一一对应,1↔1, 2↔4, 3↔9, …。平方数明明只是自然数的一部分,却与全部一样多。他的结论是:无穷不能比较大小,因为比较会引出矛盾。于是他绕开了——这个观察被记下来,却没有变成理论。
第三次:康托尔的接手。他做了伽利略没做的事:不回避矛盾,把矛盾当成定义。既然一一对应能配上,就说它们一样多;「整体大于部分」在无穷上失效,那就承认它失效,另立规矩。这一步不是发现,是选择——选择相信「配对」比「直觉」更可靠。
三次转身的共同点是:每一次都不是新事实的出现,而是对同一个旧事实的重新安置。伽利略看见了平方数与自然数的对应,亚里士多德也看见过类似的东西;差别只在于,谁愿意让它变成理论。
还有第四次转身正在进行,只是还没有名字。计算机出现之后,「无穷」在算法与形式系统里有了新的用法:无限循环、无穷序列的极限、无穷状态机。这些用法大多仍是潜无穷,与康托尔的实无穷不是一回事。两种无穷在同一门学科里并存,各自管各自的事。
公案一:伽利略为什么停手。他看见了平方数与自然数的一一对应,却把它写成一个「无穷不能比较」的论据。停手的原因不在数学,在神学与哲学:一个完成了的无穷,在他看来只属于上帝。这条界限在他那个年代不可越过。两百四十年后,康托尔越过了它,代价是被同代人视为异端。
公案二:波尔查诺的孤本。1851 年,波尔查诺在布拉格出版《无穷的悖论》,其中明确论证:无穷集合可以与自身的真子集等势,因此「整体大于部分」不适用于无穷。这本书印量极少,几乎无人引用,作者死后三年才问世。康托尔 1880 年代才知道它,并在注里承认「我先前的表述与波尔查诺暗合」。同一件事被想清楚两次,中间隔了三十年。
公案三:弗雷格的最后一页。1902 年 6 月,罗素写信给弗雷格,指出他的《算术基础》第二卷里有一条悖论:「所有不以自身为元素的集合」所构成的集合,是否以自身为元素?两边都矛盾。弗雷格收到信时,第二卷正在印。他在书末加了一段附记,说这项工作被一击命中,根基动摇。那段附记是数学史上最诚实的文字之一,也是一个学科在自身地基上发现裂缝的现场。
延伸阅读的建议:先读一本集合论入门教材的前两章,把可数、不可数、对角线练熟;再读道本的康托尔传记,看这些结论是在什么处境里被想出来的;最后翻 1874 年那篇五页短文与 1891 年那篇两页短文,看同一个人怎样用十七年把同一个证明从三页压到半页。
这册书讲一个人,和他问的一个问题:无穷大和无穷大,能不能比大小。
这个问题孩子多半想过。「自然数和偶数哪个多?」「一条线上的点多,还是一个正方形里的点多?」大人通常答「都一样,都是无穷」,然后把话题转开。康托尔没有转开,他给了这个问题一把尺子,然后量出了一个让所有人吃惊的结果:有的无穷比别的无穷大,而且大得没有上限。
对孩子来说,这册书能给出三样东西。第一样是「配对」这个办法:不数也能比多少,只要配成对。这个办法五岁就能用——分饼干、摆碗筷、比较两堆积木,都是配对。第二样是对「一样多」的重新理解:无穷的一半,还是无穷。这件事违反直觉,但可以讲清。第三样是一个人的处境:他说的话没人愿意听,说了三十年,最后还是对的。
这册书不要求孩子学会对角线论证。数学层里的证明可以跳过,故事层与暗线层是完整的。如果孩子只记住一件事,希望是这一件:比多少可以不靠数,靠配对。
有一点要提前说明:康托尔晚年患有精神疾病,多次住院。本册在 p.24 与 p.38 如实写到这件事,但把它写成处境,不写成传奇。疾病与他的数学成就之间没有因果关系,把两者绑在一起讲,既不准确,也不尊重。
话题一:自然数和偶数,哪个多?先让孩子猜,多半会说自然数多,因为「偶数只是一半」。然后一起配一次对:1 配 2,2 配 4,3 配 6,4 配 8 …。配到最后会发现:一个不剩,一个不缺。再问:那「一半」这个说法还成立吗?可以顺势讲:在无穷的世界里,「一半」与「全部」可以一样多。
话题二:一条线上的点,和一个正方形里的点,哪个多?这个问题几乎所有人第一反应都是「正方形多」。可以用一张纸做演示:把正方形看成横坐标与纵坐标,两个小数交错着抄成一个,就得到一个数。不需要讲完整个证明,只要让孩子感到「原来可以这样对应」。这个「原来可以」的感觉,比记住结论重要。
话题三:一个人说了一件没人相信的事,他该不该继续说?这是本册暗线的落点,没有标准答案。可以讲几个事实:康托尔 1874 年发表结论,到 1897 年才被请上国际大会的主席台;他中间病了几次,但从没放弃那个猜想。然后问孩子:如果是自己,会怎么办?这个问题值得聊很久,不必给出答案。
如果孩子对「无穷」特别感兴趣,可以往下讲两个方向。一个是希尔伯特的旅馆:无穷多个房间全住满了,还能再住进一个客人——把 1 号房的客人挪到 2 号,2 号挪到 3 号,1 号就空出来了。另一个是科赫雪花:周长无穷大,面积却有限。
《数学家的故事》第三辑 第 29 册
康托尔 · 无穷也可以比较
体例:五幕 · 52 页 · 三层可读(故事/数学/注疏)
插画:40 幅(留白线体)
数值:全册关键数值实算复核
本册为「格物致知」系列数学通识读物之一,面向全龄读者。
故事层无需预备知识;数学层对应小学高年级至初中;注疏层供检索与延伸。
格式 · 格物致知 · JUST FOR FUN