〔提要〕由于计算机的出现,使数学研究的方式发生了一些变化。最近以来,计算机进入到数学研究领域,显示了计算机在这领域中的三种新的用途,并预言了未来的数学家可能会愈来愈多地离不开计算机,从而使数学研究打破从古以来的常规,使研究的方式整个地发生变化。未来的数学将是一幅更为生动、更为变化多彩的图景。
本文原载美国Science,Vol. l7,NO5、6,1977。作者G · B · Kulata是美国Science杂志科研消息栏的编辑。
数学家们只要有一支笔、几张纸、几本参考书,就能进行工作5他们自己向来对这一点也颇感得意。著名的菲尔特奖金的获奖者(这个奖金被公认为“数学界的诺贝尔奖金”)斯梅尔(Stephen Smale),有一次谈到他那种骑士式的工作方式。那时候,美国科学基金会正授予斯梅尔一笔研究基金,有人就问他,你的工作地点在哪里?他回答道:数学家的工作,是哪儿都行。事实上,他的许多最重要的贡献,是在里约热内卢的海滩上完成的。
当然,有许多数学家会觉得海滨一带,不免太容易令人分心,但对有些数学家说来,则无论是到了什么样的地方,都能安之若素,方寸不乱。第二次世界大战之前,有一群很有名的波兰数学家,便是经常在一家咖啡馆里会聚的。乌兰姆(Stanislav Ulam)便是其中的一个。他在最近出版的一本书《一个数学家的奇遇》(1976)中,描述了他们当时的情景。“我们有时冒出几句什么话来,谈论了一会儿,有的人忽然伏案疾书,写了点什么,有时可听到一阵子笑声,接着又是长时间的沉默,闷喝咖啡,时而目光相接,无语茫然,各想各的”。其结果是他自己有许多最富有创造性的、启发性的数学研究成果、都是在这种气氛下搞出来的。
这种工作方式需要一些外界的触发。但最近看来,数学的工作方式,已经发生了一些变化。未来的数学家可能会越来越多地离不开计算机,从而数学的工作方式,就会整个地起变化。有人甚至预言说,由于计算机的出现,会逼使数学家们重新评价什么样的证明,才是可接受的。
从表面上看来,在数学里面采用计算机,本来也是理所当然的事。要想发现什么问题,或者证明什么问题,数字的计算本来都是非常重要的。而计算机已经把人类所能进行计算的领域,扩展到以前所梦想不到的境地。
斯坦福大学的克努思(Donald Knuth)在1976年12月17日的“科学”杂志的一篇文章里,描述了目前计算机的能力已达到了什么样的地步。把10位数字和10位数字相加,如果用笔算的话,每次约需0.2秒钟。如果采用中型计算机来算这样的加法的话,每秒钟可以进行200,000次,而如果采用快速计算机的话,则每秒钟可达200,000,000次。换句话说,一台中型计算机,就能把人的计算能力提高到约为6个数量级。克努思说,计算机的计算速度和人的笔算速度比起来,就好比是最快的飞机和蜗牛爬行的速度相比。
有许多数学家——特别是那些不是搞应用的数学家——还没有充分利用计算机的这种巨大计算能力。纯粹数学家们,通常都还没有受过使用计算机的训练,而对于计算机所计算出来的结果,除非他们能从别的独立途径加以验证,他们并不很信任。特别使这些数学家们感到差劲的是,他们对于计算机的计算,无法用笔算来进行核对。
他们对计算机所抱的这种怀疑态度,也并不是没有根据的。就是计算机专家自己,要想对计算机的编码程序进行检查核对,也感到非常困难,极费时间。而计算机也是会出差错的。计算机进行计算所需的时间越长,则由于计算机的电子元件而发生错误的可能性便越大。
正是由于有这种种问题,所以直到现在为止,计算机对于数学的进展,还没有起很大的作用。可是现在看来,这些问题都可以靠边站了,因为最近的一些新的发展,说明又有一些新的路子被打开了。计算机出现了三种新的用途:第一种用途是,把计算机用来解决一些数学问题,这种数学问题,如果从概念上看来应当得出某种结果,但如果要证明起来,则必须进行异常巨量的计算工作。第二种用途是,用计算机先算出一个数学问题应该得出什么样的结果,然后再用传统的方法,把这一结果证明出来。第三种用途是,运用计算机作为一种新的验证方法,对于某一个数学问题的结果,进行验证。
这几种新的用途里面,以第一种用途的效果和影响为最大。它曾解决了一个大问题:四色问题,这是数学上最有名的,且为许多人认为是最难的难题之一。事实上,在运用计算机把这+问题证明出来之前,有不少数学家认为这个问题是无法证明的。
四色问题说起来也很简单。我们可以设想有一张地图,比如说美国地图,或任何一张平面图,其中划分为若干个区域。对于四色问题来说,我们只需要用四种颜色,就可以把这张地图的各个州(或区域)涂遍,而不会有任何相邻的两个州(或相邻的两个区域)涂上相同的颜色。(事实上,有些地图只需要用不到四种颜色就够了。现在的问题是,会不会有什么地图,需要超过四种颜色)。
像许许多多有名的数学问题一样,四色问题并不仅仅是一个激发人们想象力的什么猜谜或复杂的思想游戏之类的玩意儿。多少年代以来,人们为了设法证明四色问题,从而发展了一系列的数学新领域,并具有广泛的应用,例如设计最有效的航空班机日程表、设计计算机的编码程序,等等。
1976年夏天,伊利诺大学的阿沛尔(Kenneth Appel)与哈肯(WolfgangHaken)提出报告说,他们已经成功地运用计算机,把四色问题证明出来了。他们所用的方法,是英国数学家肯普(A. B. Kempe)于1879年所提出的方法。那时候肯普认为他运用他的那个方法,已经把四色问题证明出来了。可是后来却发现,他的证明中有一个错误,因为他在证明的过程中,把一套巨量的计算漏掉了,而这套计算对于整个证明,却是绝对不可少的。据阿沛尔说,他们的证明,需要计算机作出200亿个逻辑判定,而他们一共花了1,200个计算机工作小时。而据哈肯说,如果他们能拥有目前最高速的计算机的话,则这个时间可缩短到300个小时。
大多数数学家都认为,阿沛尔与哈肯是已经把四色问题证明出来了。可是计算机计算错误的可能性仍然是存在着的。不过这种错误的可能性,比我们所想象的则要小些,因为他们在编制计算机算法系统时,已经把精确性的内部核对程序都编进去了。他们的证明的可靠性,将来还会提高,因为还有一群数学家也正在独立地设法证明四色问题。他们也是从阿沛尔与哈肯同样的基本概念出发,但另编一套计算机算法系统。如果他们将来所得的结果,能和阿沛尔与哈肯所得的结果,独立地核对验证无误,那就可以无疑地认为计算机计算的结果完全可靠· ——当然是除了死也不肯接受计算机证明的一些人,那也就没法说了。
第二种新的用途,虽然比不上上述第一种用途那样耸动,但也有人认为,它也很可能为计算机在数学研究上的应用,开辟出一条崭新的道路。它是把计算机的无比强大的能力,和由来已久的作出新发现的方法——即通过计算来探求定理——结合起来。最早采用这个办法来搞数学研究的是密西尔斯奇(Jan Mycielski)与乌兰姆二人,他们于几年之前在科罗拉多大学搞了一个系谱学的数学模式。他们把这个模式编成计算机的程序,然后从统计上算出某一对后裔可能有多少个共同的祖先。根据这种计算的结果出发,乌兰姆又进一步设想,是否能总结出一条有关总体内的各个体之间的各种各样关系的定理来。后来布鲁克哈文国立实验所的马尔(Robert Marr)终于把这个定理证明出来了,从而又把密西尔斯奇与乌兰姆的数学模式更进一步推广和加以普遍化了。在这里我们可以看到,计算机所得的错果,对于常规的数学研究,起着很大的启发促进作用。
计算机的第三种新用途,在目前可以说是看法意见分歧最大,但又是最富有创新性的一种用途。前面所说的那两种新用途,其中所涉及的,都还是作出新发现及作出证明的常规标准方法:或是通过计算机进行计算,来得出一个常规的证明(第一种用途),或是通过计算机的计算,来探求是否有得出一个常规证明的可能(第二种用途)。其实,数学家之运用计算,也向来都是这样做的,所不同者,只不过现在是用计算机来代替过去的笔算而已。而我们刚才所说的第三种用途,则和前两种用途截然不同,它是运用计算机来验证数学上的结果而毋须靠常规的所谓证明。
约在五年之前,有几位数学家在动脑筋,想设计出一套运用计算机来作证明的方法,但他们不久就发现,即便是要证明最简单的命题,其所需的计算机工作时间,都庞大到无法领教的地步。这就给计算机程序设计提出了一个重大的任务:想出个什么样的巧妙方法,来克服这种困难,以便能大大缩减这种所需的计算机工作时间。但始终想不出这样的巧妙方法。
后来从马萨诸塞理工学院迈耶(Albert Meyer)所搞的研究,人们逐渐开始看出上述问题的症结所在。迈耶研究了一些数学中最简单的逻辑系统——即我们已经知道这种系统中的每一个命题,都能够用有限次的步骤,来进行证明(如果是较复杂的系统,则里面有许多命题就无法进行证明)。他发现在这种简单的系统中,就有许多命题,如果要进行证明的话,其所需要的证明步骤,就大到令人望而生畏的地步。从而,由于我们事先根本无法知道,一个系统之中,有哪些命题是需要用冗长得吓坏了人的证明步骤,那么,要想用计算机来进行证明,也就成了办不到的事。
迈耶和另外一些数学家都指出了,为什么许多人企图设计计算机程序来证明数学定理,后来都失败了,其原因究竟是在哪里?其所以失败的原因,并不是由于他们的创造才能不够,而是由于问题本身的内在复杂性和根本就无法解决。耶路撒冷希伯来大学的拉宾(Michael Rabin)受到迈耶这种发现的启发,就动脑筋想个什么办法来克服这种困难。他认为毛病可能是出在人们总是想追求绝对正确,不容许计算机进行的证明出现差错。可是他想到人自己(不用计算机)在证明或解题时,也是会出现差错的。错了就再来,直到最后得到正确的答案为止。而另一方面,计算机(它是不许发生差错的)却常常会遇到这样的情况:一个问题还未解完便停下来,因为使用的时间到点了,不能再开下去了。因此拉宾便得出一个结论,靠人力解题(不用计算机)之所以能获得成功,其部分的原因,可能是由于人们自己会出差错。
于是拉宾便动手设法找个例子,说明有这么一个数学题,如果不许计算机犯差错,那么就无法用计算机来解它,而如果容许计算机也可能在某种程度上犯差错的话,那么就能够用计算机把它解出来。到现在为止,已经被拉宾找出了这样的一个例子,他认为这个例子很可说明他所设想的办法是行得通的。
拉宾所找到的例子是,用一台容许出差错的计算机来进行检验,以判定一个已知的整数是否是一个质数——即一个数,除了它本身及1之外,任何别的数都不能把它除尽。拉宾所采用的办法是,先选定一个数(他选的是2400—593),然后对它进行某种检验。检验的结果就会得出这个数是否质数的判断,其判断错误的概率是1/2。那么,如果这种检验连续进行两次,那么对这个数是否质数判断错误的概率就是(1/2)(1/2)即1/4。于是如果这种检验一路搞下去,进行了30次,而每次检验的结果都说这个数是个质数,那么我们作出错误判断(即如果这个数实际上并不是一个质数,而我们作了错误的判断,以为它是个质数)的概率就只有(1/2)30,也就是说,作出错误判断的机遇只有10亿分之一。拉宾在计算机上用了约1秒的计算时间,对这个数进行了30次检验,所得出的结论是:2400—593乃是一个质数,其错误判断的机遇是10亿分之一。于是拉宾说,这个数实际上就是个质数。
计算机的这种种用途,对于数学的研究会产生怎样的影响呢?有许多数学家说,他们预料到近来所取得的这些成就,标志着数学研究的一个新趋势的开端。有人甚至还说,计算机是完全少不了的,因为如果没有计算机的话,那么有许多艰难但又重要的问题就无法解出来。
乌拉姆在他的“一个数学家的奇遇”一书中,展望将来会出现一个数学研究的新时代,那时候计算机将成为数学研究的不可缺少的工具。他认为数学问题将会以游戏的形式提出来,然后由计算机来玩这些游戏,并证明什么东西能成立,什么东西不能成立。
据乌拉姆看来,这种数学研究的新方式,会使数学家们能够重新在一起进行思想交流。过去由于数学的专业化越分越细,隔专业如隔山,遂使不同专业的数学家,很难了解别的专业研究的内容和成果。乌兰姆预料未来的数学家所研究的,将是大规模的问题,而不是某些具体特定的定理,而且他们的工作,将受到计算机的引导,并且是靠计算机来进行的。他说:“具体的证明工作,都将留给学生或计算机去做”。打个比方,“如果旧日的数学可以看成好比是辛苦费力的工笔画,那么未来的数学就好比是印象派的绘画。未来的数学将是一幅更为生动、更为变化多彩的图景,不但是在定义的选择上可以变化,而且在游戏规则的本身也可以变化——啊,数学这门伟大的游戏,它的规则从古以来还没有见过变化哩!”
然而并不是人人对未来数学的看法,都带有这样抒情式的情调。况且有的人对于计算机将来是否会改变数学研究的常规工作方法,压根儿就抱着怀疑的态度。不管怎样,有一位逻辑学家说过:“数学的光荣,便在于它现有的一切证明方法,都是脉络绵密、层次分明,就像天衣无缝,出不了差错的”。使用计算机也可能会导致基本上觉察不到的、然而可能是害死人的差错。但大多数的数学家都认为,今后计算机和数学研究,是分不了家的了。
(林华清译)