数论,是研究数字的一门数学分支。如同大海,它清澈透明而又深不见底。它的基础概念,自然数、加法、乘法,每个小学生都清楚;但关于自然数的定理,却可以让人穷尽一生而不得其解。而这篇文章要介绍的,只是这个广阔海洋中一个小小的海域。即便如此,我们仍未知道此处海深几何,尽管最近张益唐的突破性工作,使我们比以往更接近真理,但这远远不够。尽管笔者才疏学浅,有恐贻笑方家。但如能为读者勾勒出一点点数学之美,也不枉费一番心思。
素数何时成双对
可以说,素数是数论中最基础而最重要的概念。如果一个大于二的正整数,除了1和它本身之外,不是任何数的倍数,那么它就是一个素数。比如说,6不是一个素数,除了1和它本身以外,它还是2和3的倍数;而5则是一个素数。在古希腊,人们已经有了素数的概念,对素数的研究也略有所得。在欧几里德的《原本》中,第七、八、九篇讲述的是“关于整数及其比值的性质”,实际上也就是数论。在这几卷中,欧几里德指出了今天所说的“算术基本定理”:将自然数分解成素数乘积的方法是唯一的。也就是说,如果用乘法的眼光来看自然数,那么素数就是自然数的最小组成单元。它们不能被分解成更小的数的乘积,而所有自然数都可以分解成它们的乘积。那么,我们自然要问:素数作为自然数的组成单元,它们有多少个?有无限个,欧几里德不仅回答了这个问题,还给出了一个经典的证明。不妨反设只有有限个素数,考虑它们的积N
,它是一个有限的自然数。所以,N+1
也是一个自然数,它也应该是一些素数的积。但根据假设,每一个素数都不整除N+1
,这不可能!所以,素数必定有无限个。这个精巧的证明,是人类探寻素数奥秘的第一步。2、3、5、7、11、13……最初的几个素数,要找出来并不困难,但随着数字增大,如果一个一个数字按照定义去筛选是否素数,工作量会很快变得十分庞大。同为古希腊数学家的埃拉托色尼,给出了一个比较省力的算法,后人称之为埃拉托色尼筛法。首先,列出从2开始的数。然后,将2记在素数列表上,再划去所有2的倍数。根据定义,剩下的最小的数——在这里是3——必定是素数。将这个数记在素数列表上,再划去所有它的倍数,这样又会剩下一些数,取其中最小的,如此反复操作。最后剩下的都是素数。
当古希腊人用这种方法计算出长长的素数列表时,他们也许也曾惊异于素数分布的秩序缺失。这些自然数的组成单元,在自然数中的排列却毫无规律,时而靠近,时而疏远。用类似欧几里德证明中的构造,我们知道,两个相邻素数之间的距离可以要多大有多大。而随着数目越来越大,相邻素数之间的距离似乎也越拉越长。在无限延伸的自然数集中,向无穷的地平线望去,虽然仍有无穷的素数,但它们似乎也愈变孤独。这种孤独甚至是可以度量的。在十八世纪的尾巴,年仅15岁的高斯独立提出了一个猜想:在n附近素数的密度大约是n的对数。也就是说,相邻素数之间的平均距离大概与它们的对数成正比,虽然增长很慢,但却义无反顾奔向无穷。但即使是高斯,也无法严格地证明他的猜想,要等两个世纪后的阿达玛(J. Hadamard)和德拉瓦莱普森(C. J. de la Vallée-Poussin),才能将这个猜想变成现在的“素数定理”。虽然如此,偶尔也会有成对出现的素数,它们之间只相差2。像这样成对出现的素数,在那些孤独的同伴看来,无疑是异类。它们被称为孪生素数。
漫天星河难理清
一个自然的问题是,孪生素数有多少?孪生素数猜想断言,有无限对这样的孪生素数。但还没有人能严格地证明这一点。在1849年,数学家A. de Polignac甚至猜想,对于任意的偶数2k
,都有无数对相邻的素数,它们的差恰好是2k
。这不是一个容易的问题。素数是乘法的产物,而孪生素数的定义则涉及到加法。即使只是加上2,也需要同时用到自然数的加法和乘法的性质。而在数论中的很多看似简单但无比困难的问题,比如哥德巴赫猜想和华林问题,核心也在于加法和乘法的交织。这种相互作用给数论学者们带来了无穷的头痛,以及对咖啡的无尽渴求。与此同时,行外人的评价却似乎异常中肯:“为什么素数要相加呢?素数是用来相乘而不是相加的”。当然,如果只将素数用在只与乘法有关的问题上,事情当然简单得多。但如果我们想要更多地了解自然数的玄机,那必然涉及到加法和乘法的相互作用。缩在“容易”的圈子里从来无补于事。如同探险家一般,数学家也有着征服难题的渴望,因为在那困难的山巅上,有着无尽的风光。为了难题产生的新方法、新思想,可能会开辟出意想不到的新天地。
孪生素数的难点在于,它是一个关于素数的具体分布的问题,而我们对素数的具体分布知之甚少。素数定理只告诉我们素数的大体分布,而对于具体一个个素数的位置却无能为力。如同繁星,素数点缀着自然数的夜空,放眼望去,它们朝向无限的地平线愈见稀薄。但要想分清这无限繁星中的每一颗,即使用上最好的望远镜,也无可奈何。所以,在很长一段时间里,对于孪生素数猜想,人们仍然停留在揣测和估计的层面。首先尝试直接猜测的,是英国数学家哈代(G. H. Hardy)和李特尔伍德(J. E. Littlewood),他们在1923年开始了一系列的猜测。
素数定理告诉我们,对于足够大的自然数N,在N附近随机抽取一个自然数n,它是素数的概率大概就是(lnN)−1
。那么,在同样的区间,随机独立选取的两个数都是素数的概率就是之前概率的平方,也就是(lnN)−2
。那么,在N附近随机抽取一个自然数n,n和n+2是一对孪生素数的概率是否就是大概(lnN)−2
呢?很遗憾,并非如此,因为n和n+2并非完全独立的,所以不能直接应用之前的结果。不过这个估计虽不中亦不远,只要乘上一个修正系数,借此表达两个数相差2的性质,就能得到对孪生素数密度的估计:2C2(lnN)−2
。在这里,修正系数C2
是一个关于所有质数的无穷乘积。如果密度确实如此,那么显然有无限对孪生素数,孪生素数猜想应该是正确的。实际上,这是所谓“第一哈代-李特尔伍德猜想”的一个特殊情况,难度甚至远高于孪生素数猜想:它不仅隐含了孪生素数猜想,而且对具体的分布作出了精细的估计。虽然上面的论证看上去很诱人,但它并不是一个严谨的证明,因为它的大前提——素数是随机分布的——本来就不成立。素数的分布有着深刻的规律,远远不是一句“随机分布”所能概括的。但哈代和李特尔伍德并非等闲之辈,作为当时英国的学科带头人,既然提出这个猜想,当然经过了深思熟虑。现在看来,依据之一是,望向无限,素数的分布的确看似随机:对于那些“简单”的操作(比如说加上2)来说,数值越大,越靠近无限的地平线,看上去也越“随机”。所以,在考虑各种素数形式的分布时,假定素数按照素数定理的密度随机分布,不失为一个估计的好办法。更为重要的是,数值计算的结果也与哈代和李特尔伍德的猜测所差无几。这更增添了我们对这个估计的信心。然而,猜测只是猜测,不是严谨的证明。无论用数值计算验证到什么高度,有多符合,对于无限而言,都是沧海一粟。李特尔伍德本人就曾证明过一个类似的结论。人们此前猜测,小于某一个数N的素数个数π(N)
必定小于所谓的“对数积分”函数li(N)
,而根据素数表,这个规律直到10的14次方都成立。但李特尔伍德在1914年证明了一个惊人的结论:对于足够大的N
,不仅π(N)
可以大于li(N)
,而且它们的大小关系会无穷次地逆转!但直到今天,对于第一次打破这个规律的N,我们仍然不知道它的具体数值,只知道它大概是个有三百多位的数。这个例子足以说明素数可以多么深不可测而又出人意料,同时提醒我们,面对无限,不能掉以轻心。无论有多少计算的证据,都不能轻易下定论。征服无限的工具,只有严谨的数学证明。
狂沙淘尽始得金
既然难以知道孪生素数具体有多少,那么不妨换个思路:孪生素数最多能有多少呢?这就是数学家的思路,如果正面久攻不下,那么就从侧面包围。当难以直接得到某个量时,数学家的“本能”会指引他们,尝试从上方和下方去逼近,证明这个量不可能小于某个下界,或者不可能大于某个上界。如此慢慢缩小包围圈,就有希望到达最终的目标。而在1919年,挪威数学家布伦(V. Brun)走的就是这么一条路:他证明了,孪生素数的密度不可能超过O(N(lnlnN)2(lnN)2)
。籍此,他证明了所有孪生素数倒数的和是有限的。要知道,所有素数倒数的和是无穷大,可见孪生素数在素数中有多么稀少。人们将所有孪生素数的倒数和称为布伦常数,它的具体数值大约是1.90216...。关于布伦常数,还有个有趣的小插曲。1994年,美国一位教授在计算布伦常数时,无意中发现当时英特尔公司的奔腾处理器在计算浮点除法时,在极稀有的情况下,会产生错误的结果。虽然英特尔声明这种错误对于日常使用来说不足为患,但对于消费者来说,这种托辞实在难以接受。最后,英特尔不得不承诺免费更换有问题的处理器。帮助发现硬件问题,这可算是数论在现实中的一个小小应用。
但布伦的证明意义远不止于此。他的这个证明,正是现代筛法的开端。布伦所用的筛法,根源可以追溯到古希腊的埃拉托色尼筛法。还记得我们怎么用埃拉托色尼筛法列出素数表吗?每次获得一个新的素数,我们都要划去所有新素数的倍数,然后剩下最小的数又是一个新的素数。用类似的方法,我们可以估计在某个区间中,比如说在N
和2N
之间,大约有多少素数。首先,我们假设手头上已有足够大的素数表(大概到2N−−−√
到2N
,我们将所有p
的倍数划去一遍。在N
和2N
之间,对于每个素数p
,大约有N/p
个这样的倍数。当然,如果N
不是p
的倍数,这样的估计会有误差,但在数学家看来,只要能把握误差的大小,最终仍然可以得到正确的结论。这样,剩下的数的个数就是N
减去所有N/p
的和,是这样吗?并不尽然,因为有些数可能被划去了几次。比如说1000,它能被2整除,也能被5整除,于是在处理2和5的倍数时,它分别被划去了两遍。对于每一对素数p1,p2
,每个p1p2
的倍数在之前都被划去了两遍,而我们只希望将它们划去一遍。为了得到正确结果,我们需要对这些数作出补偿:将这些数加回去,一共是N/p1p2
个,加上一点点误差。但这就是尽头吗?如果考虑三个素数的倍数,我们发现补偿得又太多了,需要重新划去;继续考虑四个素数的倍数,划去得又太多了,需要重新补偿……如此一正一反,损有余,补不足,一项一项估计下去,才能从自然数的海洋中,精确筛选出所有我们想要计算的那些素数。但我们是否需要做到如此精细呢?在整个计算中,虽然每一项看似简单,但简单的代价是误差。虽然每一项的误差很小,但因为数目巨大,累土而成九层之台,累计误差可以比需要估计的量还要多。所以,在现代的筛法中,过于精细反而是一种累赘。况且,我们的目的是获得上界或者下界,所以结果无需完美,只需误差可控。一般而言,由于越到后面的项贡献越小,往往忽略它们的计算,直接将其计入误差。这样可以有效减少需要计算的项的数目,同时也能间接减少误差。当然,如果忽略的项太多,它们引起的误差又会太大,也会导致不够精确的结果。布伦相对于前人的改进,正在于此。如果盲目计算所有的项,必然深陷误差的泥沼。而布伦则大胆截去那些贡献很小却占绝大多数的项,而对于剩下的项也果断采用更粗放的近似来简化计算。虽然看似不依章法,但通过仔细调校,布伦得以有效控制总误差,从而获得他想要的结果。布伦的这个思路,开启了解析数论之中一大类方法的大门。我们不知道怎么数素数,是因为它们的分布实在难以捉摸。而现在,布伦的筛法指出了一条用简单的集合来逼近素数集合的道路,这自然令数学家如获至宝。在更精细的筛选与更微小的误差之中寻找那一线的平衡,这大概是筛法的醍醐。但这样的平衡,显然依赖于我们如何估计每一项的具体数值。可以每项分开估计,但合起来也无伤大雅。无论做法如何,估计的误差越小,筛选可以越深入,结果也越逼近真实。即使估计方法不变,如果有更好的方法决定每一项的取舍,取贡献大而误差小之项,而舍贡献小而误差大之项,当然也能得到更好的结果。但为何拘泥于每一项?对于每一项,为什么要么取要么不取,不能站在中间立场吗?只要能控制误差,将每一项拆解开来,根据贡献和误差来赋予不同的权值,再求和,这样的结果岂不是更精细?再者,有时不拘泥于素数,放松限制去筛选那些“殆素数”,也就是那些只有少数几个素因子的数,在某些情况下也能得到更好的结果。在严谨的前提下,只要能做出更好的结果,数学家对于突破原有思路毫不犹豫。这就像一场对素数的围捕战。数学家们拿着筛法这个工具,不断打磨它、改装它,不断练习,正着用,反着用,与别的领域的工具配合着用,绞尽脑汁发明新的用法,殚精竭力用它来围捕那些调皮的素数。欲擒故纵,反客为主,无中生有,李代桃僵,数学家们在对各种各样素数的围捕中,借着筛法,将一套兵法使得淋漓尽致,精彩之处,三国亦为之失色。在筛法的力量下,孪生素数终于露出了一鳞半爪:在1920年,同样是布伦,证明了有无穷对9-殆素数,它们之间只相差2。所谓9-殆素数,或者更一般的k
-殆素数,就是那些至多有k
个素数因子的自然数(包括重数)。而1-殆素数就是素数。模仿哥德巴赫猜想的记号,布伦证明的就是(9 - 9)。在1947年,匈牙利数学家雷尼(A. Rényi)证明了,存在一个常数k
,使得有无穷对自然数m,p
,其中p
是素数,m
是一个k
-殆素数,而两者之间只相差2。也就是说,他证明了(k - 1)。在1950年,挪威数学家塞尔伯格(A. Selberg)证明了,有无穷对整数n
和n+2
,它们的素因子一共至多有5个。而孪生素数定理相当于素因子至多有2个的情况。在1966年,意大利数学家E. Bombieri与英国数学家H. Davenport证明了,孪生素数的密度至多是8C2(lnN)−2
。也就是说,孪生素数的数量至多是哈代与李特尔伍德所估计的4倍。
在1978年,在证明了哥德巴赫猜想的(1 + 2)后,陈景润用相同的筛法改进了雷尼的结果:他证明了,有无穷对自然数m,p
,其中p
是素数,m
是一个2
-殆素数,而两者之间只相差2。也就是说,他证明了(2 - 1)。而最新的结果则是D. Goldston、J. Pintz和C. Yildirim在2009年发表的。他们证明了,两个素数之间的差距,相比起平均值而言可以非常小。在假定某个强有力的猜想后,他们还证明了,存在无限对素数,它们之间相差不过16,与目标的2只有八倍的差距。但问题在于,即便16这个数目相当诱人,但他们的假定过于强大,强大得不像是对的,也使人们对他们结果的信心打了个折扣。在整个过程中,数学家们动用了解析数论中的大量工具:L函数、西格尔零点的估计、多种版本的筛法、克鲁斯特曼和的估计、自守形式,如此等等,不一而足。每样工具,都是心血的结晶。但即便如此,我们离孪生素数猜想还很遥远。尽管Goldston、Pintz和Yildirim的结果非常强大,但也不能在无假定的情况下,推出有无穷对素数,它们相差恰好是一个有限的确定值。虽然只差那么一点点。只要关于所谓“素数分布水平”的引理稍微强一点点,就能得到有无穷对相差不远的素数的结论。但就在这个关口,人们却处处碰壁。希望就在伸手可及之处,却似乎总是差那么一点点。“此路不通”的想法开始弥漫开来。在众人束手无策之际,当时默默无闻的张益唐向《数学年刊》提交了一份论文。
一份三十公分的意大利面包,纵向剖开,抹上金枪鱼泥,放上四片奶酪,放到烤炉烤一分钟,撒上生菜,铺上酸黄瓜和番茄,包起来,切成两半,就是又一个三明治。这也是张益唐曾经蹉跎的岁月。在博士毕业后,因为种种原因,虽有真才实学,但张益唐未能在学术界找到一份工作。为了生活,他不得不打工维持生计。即使在他的同学帮助他,找到新罕布什尔大学的一份代课讲师工作后,即使在转正成为一名大受学生好评的讲师后,正式而言他仍不是一名研究人员。时运不齐,命途多舛;冯唐易老,李广难封。但数学无需官方认可,研究也不需要正式的职位。张益唐受过正式的数学研究训练,有扎实的功底,有充分的能力,知道怎么去做研究,心里也时刻揣着数学。即使没有正式的职位,他骨子里仍然是一位研究数学的学者。而他心里装着的,正是素数的分布问题,特别是孪生素数。即使没有正式的研究职位,他仍然做着一名研究者会做的事。他紧跟当前解析数论学界的发展,阅读了J. Friedlander和H. Iwaniec在筛法上的突破性工作,阅读了Goldston,Pintz和Yildirim关于素数间隔的工作,还有很多不同的新工作。他思考着新的方法,尝试沿着前人的路径走下去,相信能用新的技巧,把道路走通,证明有无穷对相差不远的素数。但这谈何容易!即使从Goldston等人强有力的方法出发,要得到想要的结果,也难倒了众多学者。张益唐花了三年时间,不断尝试新的方法,屡战屡败,屡败屡战。数学研究,莫不如是。终于,在2012年6月,他到朋友家作客时,灵光一闪,找到了开启关键的钥匙。要说起来,张益唐的方法并非那种横空出世的新构想,而是利用现有的工具,用新的策略将它们组合起来,再加上一点点新的思想。Goldston等人所用的筛法相对精细,但却稍欠回旋余地,而张益唐稍稍放松了这个筛法,虽然能作出的估计稍欠精细,却换来了更大的游刃之余,得以对筛法中误差与精细的天平作出更精巧的调整,结合一些新的结果,特别是Iwaniec等人的工作,反而能获得更好的估计。箇中精彩之处,恕笔者学识浅薄,难以一一尽述。用他的新筛法,张益唐证明了,有无穷对素数,它们相差不过七千万。他将他的新方法与新结论,用简洁明了的语言,写成了一篇论文,投稿到数学界的顶级期刊《数学年刊》。这篇论文名为Bounded gaps between primes(《素数间的有界间隔》)。收到这篇论文的编辑想必十分意外。在一所不起眼的大学做着讲师的工作,在数学的研究共同体中也不活跃,之前一篇论文还是十多年前发表的,这样的一位默默无闻的数学家,突然声称自己解决了一个困扰众多学者几十年的问题,引起的第一反应自然是怀疑。但毕竟,数学证明就是他学识的证明,他的论文写得如此清楚明白,而所用的方法又是如此合情合理,这冲破了原有的一点点怀疑。编辑认为,张益唐的结论很可能是对的,而他的方法对于解析数论而言,也可能是个重要的进步。因为很多数学证明都相当艰深晦涩,即使是同一个领域的专家,有时也要花上一大段时间来咀嚼揣摩,才能断定证明是否无误。所以,数学论文的审稿时间通常不短,少则数月,多则数年,期间匿名审稿人通常需要通过编辑与作者多次通信,才能决定一篇论文的命运。而张益唐的论文是如此激动人心,编辑认为他们等不起如此漫长的时间,于是对他的论文进行了“特殊对待”。他们请了筛法方面的大家Iwaniec教授与另一位匿名审稿人(可能是Goldston)来审核这篇论文,很快就有了回音。两位审稿人都认为这篇文章没有明显的错误。实际上,评审报告中写着这样的评价:“论文的主要结果是第一流的”,“在素数分布领域的一个标志性的定理”。从论文寄出到审稿结束,仅仅花了三个星期的时间。自此,消息不胫而走。在哈佛大学的丘成桐教授,知悉这个消息之后,很快邀请了张益唐来哈佛做关于他的工作的学术报告。消息很快在数学界与新闻界传开,张益唐几乎是一夜之间,从默默无闻变成举世知名。据说,他的妻子听说有记者要采访时,跟张益唐讲的第一件事,就是把发型整理一下。作为励志故事,这个结尾再好不过了。
路漫漫其修远兮
当然,故事仍未结束。在数学界中,对于久攻不下的问题,一旦有人打破一个缺口,其他人很快就会跟进,把缺口弄得更大。张益唐的结果也不例外。在张益唐的论文中,他给出的结果是,存在无数对相邻素数,它们的差相差不过7000万。但这只是一个估计,并非张益唐的方法能得到的最好结果。在论文出炉后,一些数学家吃透了新方法,开始试着改进这个常数。张益唐的论文在5月14号面世,两个星期后的5月28号,这个常数下降到了6000万。仅仅过了两天的5月31号,下降到了4200万。又过了三天的6月2号,则是1300万。次日,500万。6月5号,40万,连原来的百分之一都不到。在笔者写下这行的今天,剩下的只有区区的25万。这些结果,可以说是互联网的结晶。这样快的改进速度,对于仅仅依靠一年发行数次的期刊做研究的时代,完全是不可想象的。而在今天,数学家们在网上,你一言我一语,不停发布最新的思考和计算,以最高的速度,汇聚所有人的智慧,才能创造出如此奇观。张益唐带来的影响不止于此。利用他的新方法,可以解决更多的问题。Pintz指出,从张益唐的工具出发,可以得知存在一个常数C
,使得对于每C
个连续偶数,都存在无穷对相邻的素数,它们的差是这些偶数之一。也就是说,Polignac的猜想,起码对于1/C
的偶数来说是正确的。所以,不仅素数本身难以捉摸,它们之间的差更是剧烈起伏不定。实际上,大数学家Erdős在1955年就猜测,相邻两对素数差的比值,可以要多大有多大,要多小有多小。而同样借助张益唐的工具,Pintz不仅证明了这个猜想,而且证明了比值之差以不低的速度趋向于两极分化。用他本人的话来说:在刚刚过去的几个月里,一系列十年前会被认为是科幻小说的定理都被证明了。但孪生素数猜想本身又如何呢?我们知道,如果将张益唐论文中的常数从7000万改进到2,就相当于证明孪生素数猜想。既然现在数学家们将常数改进得如此的快,那么我们是否已经很接近最终的目标呢?很遗憾,实际上还差很远。张益唐的方法,本质上还是筛法,而筛法的一大问题,是所谓的“奇偶性问题”。简单来说,如果一个集合中所有数都只有奇数个素因子,那么用传统的筛法无法有效估计这个集合至少有多少元素。而素数组成的集合,恰好属于这种类型。正因如此,当陈景润做出哥德巴赫猜想的突破性结果(1 + 2)时,他得到的评价是“榨干了筛法的最后一滴油”。因为如果只靠筛法,是无法证明哥德巴赫猜想的。(1 + 2)是筛法所能做到的最好结果。但数学家们从不固步自封。要想打破“奇偶性问题”的诅咒,可以将合适的新手段引入传统筛法,籍此补上筛法的缺陷。张益唐的出发点——之前提到Goldston,Pintz和Yildirim的结果——正是这种新思路的成果。但对于孪生素数猜想而言,这些进展仍然远远不够。学界认为,虽然不能断定张益唐的方法,即使经过改进,是否仍然不能解决孪生素数猜想,但可能性似乎微乎其微。但不能低估人类的才智。发明割圆术的刘徽,他对于无知的态度更适合我们:敢不阙疑,以俟能言者!