上帝不仅在物理学中掷骰子,而且在数字上也在掷骰子,数学有时只是漂亮的抛铜币而已。
目前,物理学家正被随机性的概念所困扰。对未来我们可以预言到什么程度呢?这决定于我们自己的规定吗?或者说原则上我们是不可能预言未来的吗?物理学中决定性的问题由来已久。早在19世纪初,牛顿力学的决定性定律使得拉普拉斯相信宇宙的未来永远是可以确定的。
量子力学——它是我们理解物质性质的基础,是描述诸如电子和其他基本粒子这一类极小物体的。它有一个引起争议的结论就是它在物理学的基本理论中引进了概率和随机的概念。这一概念极大地震撼了爱因斯坦,因为他认为上帝不是在玩掷骰子。
然而令人吃惊的是,对非线性动力学的当代研究表明:即使在牛顿经典力学中,其要旨也是随机性和不可预见性。《新科学家》杂志去年发表的一系列文章所介绍的混沌理论揭示了随机性和不可知性与统一的理论是多么相似。
在数学中似乎也存在着同样的情况,我可以证明有些定理是与不可证明的数论相联系的,因为当我们提出某个问题时,得到的却是与抛铜币的随机性等价的结果。
这个结论可能会使许多19世纪时的数学家们感到震惊,因为他们确信数学的真理总是可以得到证明的。1900年,希尔伯特在其著名的演讲中列举了23个问题。其中第六个问题与物理中基本宇宙真理——即公理体系有关系,要点之一是与概率论有关的。希尔伯特认为概率只是来自物理学的一个实用的工具而已,当资料不足时,用概率来描述真实世界是很有用的,而他提出的第十个问题则与“丢番图方程”(以古希腊数学家丢番图姓名命名)有关。这是只有整数解的方程,希氏问道:是否有办法确定方程在整数集内有解呢?他对这两个问题之间的微妙联系考虑极少。因为他假定某些问题对他的思想来说是太基本的,所以他在演讲中连一公式也没给出,这个假定就是每个数学问题都有一个解。对这个问题我们还不太明了,但原则上问题总是可以解的,至少希尔伯特是这样认为的。对他来说,问题就像非黑即白那样明了。
现在,希尔伯特的立足之地似乎在动摇了。因为在他第六个关于概率的问题和第十个在整个整数域内有解的代数方程问题之间的联系会导致惊人的且令人沮丧的结果:随机性是隐蔽在纯数学最古老的分枝——数论的当中的。很明显,简单的数学问题未必总是有明确的答案。在基本数论中,包括丢番图方程的问题可以有完全是随机的解答,它们是灰色的,而不是非白即黑的。答案是随机的是因为要证明它的唯一方法就是提出一个答案作为一个附加的有关公理。爱因斯坦将会惊奇地发现上帝不仅在量子物理和经典物理学中抛骰子,而且也在纯数学中抛般子。
这个结论是从哪里来的呢?这还得从希尔伯特说起。他说当你建立了一个正式的公理系统,那么就会有一个力学过程以证明一个数学证明的正确与否?而公理应该是完整和相容的。如果公理是相容的话,就意味着你不可能同时证明一个结论和这个结论的反例;如果公理是完整的话也就可以证明任何一个命题是真或是假的。这样就产生了一个力学过程以保证一切数学命题都可以从机械上被确定。
有一种很有趣的方法可以解释这个机械措施是怎么样工作的,这就是所谓的“不列颠博物馆规则系统”。你只要用公理系统建立正式的数学语言。按照一切可能的证明的内容和依编辞典那样的顺序逐个检查哪个证明是正确的,哪个是遵循有关法则的。原则上,如果公理集合是相容的和完整的,那么你就可以决定任何一个定理是真是假。这个过程就意味着一个数学家不再需要灵感和热情了,数学变得机械了。
数学为什么是不完整的?
当然情况并非如此。奥地利逻辑学家柯特 · 哥德尔和计算机之父阿兰 · 图林证明不可能同时得到一个相容的和完整的数学公理和机械过程,以决定任意一个数学命题的真伪或它的可证明性。
哥德尔是第一个用所谓的不完整性定理的数论的语言导出天才的证明的人(参见《算术的不完整性》一文,刊于1987/11/5的《新科学家》杂志)。然而我认为图林的理论更基本更易于理解。图林用计算机的语言——指令、程序等证明了不存在着这样一个机械过程可用以确定任意的一个程序能否将计算最终完成或停机。
为了证明所谓的停机问题永远无解,我们建立可以在图林机上运算的程序。图林机是一架设有时间限制的数学上。理想化的数字计算机(这个程序必须是自含其一切在程序中终止的数据的)。那么我们要问:“这程序将永远执行下去呢?还是在某一点说‘完成了或要停机了’。”
图林证明不存在这样一个指令的集合可赋予计算机,也不存在一个算法规则体系可以确定一个程序是否永远停止。哥德尔的不完全性定理与此有密切联系,因为假如没有可以决定停机问题的机械过程的话,也就不可能有完整的基本公理集合。如果不是这样,就可以提供一个机械过程来逐个检查一切可能的证明以说明程序是否会停机。当然这个过程是需要很长时间的。
为了证明我关于数学的随机性的结论,我只需将图林的结论稍加变化,就可以获得像文字游戏似的数学结果。虽然停机问题是不可解的,但我们还是可以看看一个随机选择的程序的停机概率。我们采用一个具有广义用途的计算机——可以替代任何一种计算机的工作的万能图林机,并给予充足的时间,来进行一个思想实验。
我们并不要了解某一个程序是否会停机,而是关注一切可能的计算机程序的整体。我们给每一个计算机程序规定了一个可选择的概率。对一个随机程序中的每一比特(bit)信息都是通过抛铜币来选择的,每一个选择就是一次独立的抛掷。于是一个程序就含有许多比特的信息,比如说有N位,那么概率就是N-2。这些程序停机的总概率是多少呢?这个总概率Ω其实就包含在图林关于一个程序停机问题之中,是0和1之间的一个数。假如永不停机,Ω为0,如果总是停机Ω就为1。
我们也可以像计算机的二进制那样,用一个1和0组成数字串来描述Ω。我们能否决定数字串中第N位是0或是1呢?换句话说,我们能计算停机概率吗?完全不可能,可以证明0和1的数字序列是随机的,它运用的是算法规则系统理论,这个理论认为信息或数据集合的有序度是取决于是否存在一个规则系统可以将数据压缩成较简短的形式。例如一个规则的0和1的数串将某数据记作0101……直到1000次,它可以被压缩成较短的指令“重复01五百次”,而一个完全是随机的数字串则完全不可能被减化成较短的程序,此谓之随机系统的不可压缩性。
我的分析表明停机概率是算法随机的。它不可能被压缩成一个较短的程序,为了获得计算机的N位数,你就得将一个程序至少写有N位那么长。概率的N位中的每一个都是不可减缩的独立的数学事实,就像抛铜币那样是随机的。例如在一个Ω中0的个数和1的个数是一样的,那么知道所有的偶数位并无助于我们了解任何一个奇数位。
我关于停机概率是随机的结论与图林停机问题是不可决定性的断言是相对应的。现已证明可以给数论中随机性提供一个例证,关键性的工作是大约5年前的一项意外的发现,加拿大盖尔加里(Calgary)大学的詹姆斯 · 约翰和列宁格勒斯蒂克罗夫数学所的尤里 · 马蒂捷塞维克(Yuri Matijasevic)发现了一世纪以前由法国的埃地奥德 · 卢卡斯证明的一条定理,这条定理提供了一种特别自然的方法可以将万能图林机方程转换成与广义计算机等价的万能的丢番图方程。
我借助于一个大型计算机写下一个万能图林机方程,它有1700个变量,长达200页之长。这是一个关于“指数丢番图方程”,其中所有的变量和常数都是非负的整数0,1,2,3,4,……等,称之为整数是因为方程含有按整数幂自乘的数。在标准的丢番图方程中,幂必须是一个常数,而在这个方程里,幂可能是一个变数,因此除了有X3项之外,还含有XY项。为了把停机概率的随机性的判定问题变换成算术解的随机性判定问题,只需在这长达200页的万能图林机的丢番图方程中作些微小的改变,方程就显示出随机性。方程只有一个单参数和N个变量。我现在要问:对于这个参数的任何一个特殊值,方程是否有一个有限或无限的全数值解,答案是这个问题是与计算停机概率问题等价的。用算术语言回答就是停机概率的第N位是1还是0?如果第N位是0,那对于N的特殊值的方程就有一个有限数值解;如果停机概率的第N位是1,那么方程的参数N有一个无穷数值解。正如停机概率的第N位是随机的一样,就这样决定了方程的数值解是有限的还是无限的,对我们来说是永远不可知的。
为了确定在特殊情况下,解是有限的还是无限的,比如说对参数N的K个数值,我们就得假定有K个答案作为K条附加的独立公理,还必须将K位信息置于我们的公理体系中去。这就是K位信息是不可约简的数学事实的另一种说法。
我已经在和古希腊数学家丢番图有关系的基本数论这一部分中发现了随机性和不可约简性的极端形式。希尔伯特认为数学的真理是黑白分明的,即非真即假。我认为我的工作使事件变成灰色的了。而且数学家们也正在加入到理论物理的同事们的队伍中来了。我们已经看到在经典的和量子物理学中,随机性和不可预见性都是基本的观点,我确信这些概念也会在纯数学的核心领域内被发现。
[New Scientist,1990年3月24日]