科学的进展,有一个共通且富有趣味的倾向,这就是,每一种科学诞生以后,科学家们便拼命地使它向前发展,正如大获全胜的军人遇见敌人总要穷追到山穷水尽一般。穷追的结果,自然可以得到不少战利品,但后方空虚,却也是很大的危险。一种科学发展到一定程度,要向前进取,总不如先前容易,这是从科学史上可以见到的。因为前进感到吃力,于是有些人自然而然地会疑心到它的根源上面去。这一来,就要动手考查它的基础和原理了。前节不是说过吗?在数学的园地中近来就有人在背阴的一面去开垦。

一种科学恰好和一个人一样,年轻的时候,生命力旺盛,只知道按照自己的浪漫思想往前冲,结果自然进步飞快。在这个时期谁还有那么从容的工夫去思前想后,回顾自己的来路和家属呢?一直奋勇前进,只要不碰壁绝不愿掉头。一种科学从它的几个基本原理或法则建立的时候起,科学家总是替它开辟领土,增加实力,使它光芒万丈、傲然自大。

然而,上面越阔大,下面的根基就必须越牢固,不然头重脚轻,岂不要栽跟头吗?所以,对于营造科学园地,到了一个范围较大、内容繁多的时候,建筑师们对于添造房屋就逐渐慎重、踌躇起来了。倘使没有确定它的基石牢固到什么程度,扩大的工作便不敢贸然动手。这样,开始将他们的事业转一个方向去进行:将已经做成的工作全部加以考查,把所有的原理拿来批评,将所用的论证拿来估价,仔细去证明那些用惯了的、极简单的命题。他们对于一切都怀疑,若不是重新经过更可靠、更明确的方法证明那结果并没有差异,即使是已经被一般人所承认的,他们也不敢遽然相信。

一般来说,数学的园地里的建筑都比较稳固,但是许多工匠也开始怀疑它并从根底着手考查了。就是大家都深信不疑的已知的简单的证明,也不一定就可以毫不怀疑。因为推证的不完全或演算的错误,不免会混进一些错误到科学里面去。重新考查,确实有这个必要。

为了使科学的基础更加稳固,将已用惯的原理重新考订,这是非常重要的工作。无论是数学或别的科学,它的进展中常常会添加一些新的意义进去,而新添加的意义又大半是全凭直觉。因此有些若是严格地加以限定,就变成不可能的了。比如说,一个名词,我们在最初给它下定义的时候,总是很小心、很精密,也觉得它足够完整了。但是用来用去,它所解释的东西,不自觉地逐渐变化,结果简直和它本来的意义大相悬殊。我来随便举一个例子,在逻辑上讲到名词的多义的时候,就一定讲出许多名词,它的意义逐渐扩大,而许多词义又逐渐缩小,只要你肯留心,随处都可找到。“墨水”,顾名思义就是把黑的墨溶在水中的一种**,但现在我们常说红墨水、蓝墨水、紫墨水等。这样一来,墨水的意义已全然改变。对于旧日用惯的那一种词义,倒要另替它取个名字叫黑墨水。墨本来是黑的,但事实上必须在它的前面加一个形容词“黑”,可见现在我们口中所说的“墨”,已不一定含有“黑”这个性质了。日常生活上的这种变迁,在科学上也不能避免,不过没有这么明显罢了。

其次,说到科学的法则,最初建立它的时候,我们总觉得它若不是绝对的,而是相对的,在科学上的价值就不大。但是我们真能够将一个法则拥护着,使它永远享有绝对的力量吗?所谓科学上的法则,它是根据我们所观察的或实验的结果归纳而来的。人力是有限的,哪儿能把所有的事物都观察到或实验到呢?因此,我们不曾观察到和实验到的那一部分,也许就是我们所认为绝对的法则的死对头。科学是要承认事实的,所以科学的法则,有时就有例外。

我们还是来举例吧!在许多科学常用的名词中,有一个名词,它的意义究竟是什么,非常不容易严密地规定,这就是所谓的“无限”。

抬起头望天空,白云的上面还有青色的云,有人问你天外是什么?你只好回答他“天外还是天,天就是大而无限的”。他若不懂,你就要回答,天的高是“无限”。暗夜看闪烁的星星挂满了天空,有人问你,它们究竟有多少颗,你也只好说“无限”。然而,假如问你“无限”是什么意思呢?你怎样回答?你也许会这样想,就是数不清的意思。但我要和你纠缠不清了。你的眉毛数得清吗?当然是数不清的。那么你的眉毛是“无限”的吗?“无限”和“数不清”不完全一样,是不是?所以在我们平常用“无限”这个词时,确实含有一个不能理解,或者说不可思议的意思。换句话说就是超越我们的智力以上,简直是我们的精神的力量的极限。要说它奇怪,实在比上帝和“无常”还奇怪。假如真有上帝,我们知道他会造人,会奖善罚恶,而且还可以大概想象出他的样子,因为人是照着他的模样造出来的。至于“无常”,我们知道他很高,知道他戴着高帽子,知道他穿着白衣服,知道他只有夜晚才出来,知道他无论天晴、下雨手里总拿着一把伞。呵!这是鬼话,上帝无常我不曾见过,但是无论哪个人说到他,都能说出点眉目。至于“无限”,有谁能描摹一下呢?

“无限”真是一个神奇的东西,平常说话会用到它,文学、哲学上也会用到它,科学上那就更不用说了。不过,平常说话本来全靠彼此心照,不必太认真,所以马虎一点儿满不在乎。就是文学上,也没有非要给出一个精确的意思的必要。在文学作品里,十有八九是夸张,“白发三千丈”,李白的个儿究竟有多高?但是在哲学上,就因为它的意义不明,所以常常出岔子,在数学上也就时时生出矛盾来。

在数学的园地中,对于各色各样的东西,我们大都眉目很清楚,却被这“无限”征服了。站在它的面前,总免不了要头昏眼花,它是多么神秘的东西啊!

虽是这样,数学家们还是不甘屈服,总要探索一番,这里便打算大略说一说,不过请先容许我来绕一个弯儿。

这一节的题目是“集合论”,我们就先来说“总集”这个词在这里的意义。比如有些相同的东西或不相同的东西在一起,我们只计算它的件数,不管它们究竟是什么,这就叫它们的“总集”。比如你的衣兜里放有三个“袁头币”、五只“八开”和十二个铜子,不管三七二十一,我们只数它叮叮当当响着的一共是二十个,这二十就称为含有二十个单元的总集。至于这单元的性质我们不必追问。又比如你在教室里坐着,有男同学、女同学和教师,比如教师是一个,女同学是五个,男同学是十四个,那么,这个教室里教师和男、女同学的总集,恰好和你衣兜里的钱的总集是一样的。

朋友!你也许正要打断我的话,向我追问了吧?这样混杂不清的数目有什用呢?是的,当你学算术的时候,你的先生一定很认真地告诉你,不是同种类的量不能加在一起,三个男士加五个女士得出八来,非男非女,又有男又有女,这是什么话?三个“袁头币”加五只“八开”得出八来,这又算什么?算术上总叫你处处小心,不但要注意到量要同种类,而且还要同单位才能加减。到了现在我们却不管这些了,这有什么用场呢?

它的用场吗?真是太大了!我们就要用它去窥探我们难理解的“无限”。其实,你会起那样的疑问,实在由于你太认真而又太不认真的缘故。你为什么把“袁头币”“八开”“铜子”“男”“女”“学生”“教师”的区别看得那么大呢?你为什么不从根本上去想一想,“数”本来只是一个抽象的概念呢?我们只关注这抽象的数的概念的时候,你衣兜里的东西的总集和你教室里的人的总集,不是一样的吗?假如你衣兜里的钱,并不预备拿去买什么吃的,只用来记一个对你来说很重要的数,那么它不就够资格了吗?“二十”这个数就是含有二十个单元,而不管它们的性质,所得出来的“总集”。

数的发生可以说是由于比较,所以我们就来说“总集”的比较法。比如在这里有两个总集,一个含有十五个单元,我们用E15表示,另外一个含有十个单元,用E10表示。

现在来比较这两个“总集”,对于E10当中的各个单元,都从E15当中取一个来和它成对,这是可以做到的,是不是?但是,假如对于E15当中的各个单元,都从E10当中取一个来和它成对,做到第十对,就做不下去了,只好停止了。可见,掉一个头是不可能的。在这种情形的时候,我们就说:“E15超过E10。”

或是说:“E15包含E10。”

或者说得更文气一些:“E15的次数高于E10的。”

假如另外有两个总集Ea和Eb,虽然我们“不知道a是什么”,也“不知道b是什么”,但是我们不仅能够对于Eb当中的每一个单元,都从Ea中取一个出来和它成对,而且还能够对于Ea当中的每一个单元都从Eb中取一个出来和它成对。我们就说,这两个总集的次数是一样,它们所含的单元的数相同,也就是a等于b。前面不是说过你衣兜里的钱的总集和你教室里的人的总集一样吗?你可以从衣兜里将钱拿出来,分给每人一个。反过来,每个钱也能够不落空地被人拿去。这就可以说这两个总集一样,也就是你的钱的数目和你教室里的人的数目相等了。

我想,你看了这几段一定会笑得岔气的,这样简单明了的东西,还值得一提吗?不错,E15超过E10,E20和E20一样,三岁大的小孩子都知道。但是,朋友!你别忙啦!这只是用来做例,说明白我们的比较法。因为数目简单,两个总集所含单元的数,你通通都知道了,所以觉得很容易。但是这个比较法,就是对于不能够知道它所含的单元的数的也可以使用。我再来举几个通常的例子,然后回到数学的本身上去。

你在学校里,口上总常讲“师生”两个字,不用说耳朵里也常听得到。“师”的总集和“生”的总集,(不只就一个学校说)就不一样。古往今来,“师”的“总集”和“生”的“总集”是什么,没有人回答得出来。然而我们可以想得到,每一个“师”都给他一个“生”要他完全负责任这是可能的。但若要替每一个“生”都找一个专一只对他负责任的“师”,那就不可能了,所以这两个总集不一样。因此,我们就可以说“生”的总集的次数高于“师”的总集的。再举个例子,比如父和子,比如长兄和弟弟,又比如伟人和丘八,这些两个两个的总集都不一样。要找一个总集相等的例子,那就是夫妻俩,虽然我们并不知道全世界有多少个丈夫和多少个妻子,但有资格被称为丈夫的必须有一个妻子伴着他(小老婆在这里不算她和男子是夫妻关系)。反过来,有资格被人称为妻子的,也必须有一个丈夫伴着她。所以无论从哪一边说,“一对一”的关系都能成立。

好了!来说数学上的话,来讲关于“无限”的话。

我们来想象一个总集,含有无限个单元,比如整数的总集:

1,2,3,4,5……n,(n+1)……

这是非常明白的,它的次数比一切含有有限个数单元的总集都高。我们现在要紧的是将它和别的无限总集比较,就用偶数的总集吧:

2,4,6,8,10……2n,(2n+2)……

这就有些趣味了。照我们平常的想法,偶数只占全整数的一半,所以整数的无限总集当然比偶数的无限总集次数要高些,不是吗?十个连续整数中,只有五个偶数,一百个连续整数中也不过五十个偶数,就是一万个连续整数中也还不过五千个偶数,总归只有一半。所以要成“一对一”的关系,似乎有一面是不可能的。然而,你错了,你不能单凭有限的数目去想,我们现在是在比较两个无限的总集呀!“无限”总有些奇怪!我们试将它们一个对一个地排成两行:

1,2,3,4,5……n,(n+1)……

2,4,6,8,10……2n,(2n+2)……

因为两个都是“无限”的缘故,我们自然不能把它们通通都写出来。但是我们可以看出来,第一行有一个数,只要用2去乘它就得出第二行中和它相对的数来。掉一个头,第二行中有一个数,只要用2去除它,也就得出第一行中和它相对的数来。这个“一对一”的关系不是无论用哪一行做基础都可能吗?那么,我们有什么权利来说这两个无限总集不一样呢?

整数的无限总集,因为它是无限总集中最容易理解的一个,又因为它可以由我们一个一个地列举出来(由于永远举不尽),所以我们替它取一个名字叫“可枚举的总集”(L’ensemble dé_nombrale)。我们常常用它来做无限总集比较的标准,凡是次数和它相同的无限总集,都是“可枚举的无限总集”——单凭直觉也可以断定,整数的无限总集在所有的无限总集当中是次数最低的一个,它可以被我们用来做比较的标准,也就是这个缘故。

在无限总集当中,究竟有没有次数比这个“可枚举的无限总集”更高的呢?我可以很爽快地回答你一个“有”字。不但有,而且想要多少就有多少。从这个回答中,我们对于“无限”算是有些认识了,不像以前一样模糊了。这个回答,我供认不讳地说,也是听来的。康托尔(Cantor)是最初提出它来的,这已是三十多年前的事了。在数学界中,他是值得我们崇敬的人物,他所创设的集合论,不但在近代数学中占了很珍贵的几页,还开辟了数学进展的一条新路径,使人不得不对他铭感五内!

人间的事,说来总有些奇怪,无论什么,不经人道破,大家便很懵懂。一旦有人凿穿,顿时人人都恍然大悟了。在康托尔以前,我们只觉得无限就是无限,吾生也有涯1,弄不清楚它就算了。但现在想起来,实在有些可笑,无须什么证明,我们有些时候也能够感觉到,无限总集是可以不相同的。

又来举个例子:比如前面我们用来决定点的位置的直线,从O点起,尽管伸张出去,它所包含的点就是一个无限总集。随便想去,我们就会觉得它的次数要比整数的无限总集的高,而从别的方面证明起来,也验证了我们的直觉并没有错。这样说来,我们的直觉很值得信赖。但是,朋友!你不要太乐观呀,在有些时候,纯粹的直觉就会叫你上当的。

你不相信吗?比如有一个正方形,它的一边是AB。我问你,整个正方形内的点的总集,是不是比单只一边AB上的点的总集的次数要高些呢?凭我们的直觉,总要给它一个肯定的回答,但这你上当了,仔细去证明,它们俩的次数恰好相等。

总结以上的话,你记好下面的基本的定理:“若是有了一个无限总集,我们总能够做出一个次数比它高的来。”

要证明这个定理,我们就用整数的总集来做基础,那么,所有可枚举的无限总集也就不用再证明了。为了说明简单些,我只随意再用一个总集。

照前面说过的,整数的总集是这样:

1,2,3,4,5……n,(n+1)……

就用E代表它。

凡是用E当中的单元所做成的总集,无论所含的单元的数有限或无限,都称它们为E的“局部总集”,所以:

这些都是E的局部总集,我们用Pn来代表它们。

第一步,凡是用E的单元能够做成的局部总集,我们都将它们做尽。

第二步,我们就来做一个新的总集C,C的每一个单元都是E的一个局部总集Pn,而且所有E的局部总集全都包含在里面。这样一来,C便成了E的一切局部总集的总集。

你把上面的条件记清楚,我们已来到要证明的重要地步了。我们要证明C的次数比第一个总集E的高。因此,还要重复说一次,比较两个总集的法则,你也务必将它记好。

我们必须要对于E的每一个单元都能从C当中取一个出来和它成对。实际上只要依下面的方法配合就够了:

从这样的配合法中可以看出来,第二行只用到C单元的一部分,所以C的次数或是比E的高或是和E的相等。

我们能不能转过头来,对于C当中的每一个单元都从E当中取出一个和它成对呢?

假如能做到,那么E和C的次数是相等的。

假如不能做到,那么C的次数就高于E的。

我们无妨就假定能够做到,看会不会碰钉子!

算这种配合法的方法是有的,我们随便一对一对地将它们配合起来,写成下面的样子:

单就这两行看,第一行是所有的局部总集,就是所有C的单元都来了(因为我们要这样做)。第二行却说不定,也许是一切的整数都有,也许只有一部分。因为我们是对着第一行的单元取出来的,究竟取完了没有还说不定。

这回,我们来一对一地检查一下,先从P1和它的对儿1起。因为P1是E的局部总集,所以包含的是一些整数,现在P1和1的关系就有两种:一种是P1里面有1,一种是P1里面没有1。假如P1里面没有1,我们将它放在一边。跟着来看P2和2这一对,假如P2里就有2,我们就把它留着。照这样一直检查下去,把所有的Pn都检查完,凡是遇见整数n不在它的对儿当中的,都放在一边。

这些检查后另外放在一边的整数,我们又可做成一个整数的总集。朋友!这点你却要注意,一点儿马虎不得!我们检查的时候,因为有些整数它的对儿里面已有了,所以没有放出来。由此可见,我们新做成的整数总集不过包含整数的一部分,所以它也是E的局部总集。但是我们前面说过,C的单元是E的局部总集,而且所有E的局部总集全部包含在C里面了,所以这个新的局部总集也应当是C的一个单元。用Pt来代表这个新的总集,Pt就应当是第一行Pn当中的一个,因为第一行是所有的单元都排在那儿的。

既然Pt已经应当站在第一行里了,就应当有一个整数或是说E的一个单元来和它成对。

假定和Pt成对的整数是t。

朋友!糟了!这就碰钉子了!你若还要硬撑场面,那么再做下去。

在这里我们又有两种可能的情况:

第一种:t是Pt的一部分,但是这回真碰钉子了。Pt所包含的单元是在第一行中成对儿的单元所不包含在里面的整数,而Pt自己就是第一行的一个单元,这不是矛盾了吗?所以t不应当是Pt的一部分,这就到了下面的情况。

第二种:t不是Pt的一部分,这有可能把钉子避开吗?不行,不行,还是不行。Pt是第一行的一个单元,t和它相对又不包含在里面,我们检查的时候,就把它放在一边了。朋友,你看,这多么糟!既然t被我们检查的时候放在了一边,而Pt就是这些被放在一边的整数的总集结果,t就应当是Pt的一部分。

这多么糟!照第一种说法,t是Pt的一部分,不行;照第二种说法t不是Pt的一部分也不行。说来说去都不行,只好回头了。在E的单元当中,就没有和C的单元Pt成对的。朋友,你还得注意,我们将两行的单元配对,原来是随意的,所以要是不承认E的单元里面没有和Pt配对的,这种钉子无论怎样我们都得碰。

第一次将E和C比较,已知道C的次数必是高于E的或等于E的。现在比较下来,E的次数不能和C的相等,所以我们说C的次数高于E的。

归到最后的结果,就是我们前面所说的定理已证明了,有一个无限总集,我们就可做出次数高于它的无限总集来。

无限总集的理论,也有一个无限的广场展开在它的面前!

我们常常都能够比较这一个和那一个无限总集的次数吗?

我们能够将无限总集照它们次数的顺序排列吗?

所有这一类的难题目以及其他关于“无限”的问题,都还没有在这个理论当中占有地盘。不过这个理论既然已经具有相当的基础,又逐渐往前进展,这些问题总有解决的一天,毕竟现在我们对于“无限”不会像从前一样感到惊奇不可思议了!

老实说,数学家们无论对于做这个理论的基础的一些假定,或是对于从里面探究出来的一些悖论的解释都还没有全部的理解。

然而,我们不用感到吃惊,一种新的理论产生正和一个婴儿的诞生一样,要他长大做一番惊人的事业,养育和保护都少不了!