胡晓昕
素数,又叫质数,是只能被自身和1整除的数。2300年前,古希腊数学家欧几里得在《几何原本》一书中证明了素数有无穷多个,并提出少量素数可写成“2P-1”(其中指数P也是一个素数)的形式。由于2P-1型素数具有许多独特的性质和无穷的魅力,千百年来一直吸引着许多数学家和无数业余数学爱好者对它进行探究。这种特殊素数被称为“梅森素数”(the Mersenne prime)。迄今为止,人类仅发现了49个梅森素数。梅森素数被誉为“数海明珠”,在探究它的过程中,曾经出现过不少奇闻趣事呢。
“数学英雄”归欧拉
2P-1型素数貌似简单,但当指数P值较大时,其探究难度就会很大。它不仅需要高深的理论和纯熟的技巧,而且还需要进行艰难的计算。1772年,瑞士数学家、物理学家欧拉在双目失明的情况下,花了两天的时间,靠心算证明了231-1(即2147483647)是第8个梅森素数。这个具有10位的素数,堪称当时世界上已知的最大素数。
欧拉第一个证实了梅森的预言——“231-1是个素数”;他证明这一素数的顽强毅力和解题技巧都令人赞叹不已,他也因此获得了“数学英雄”的美名。难怪法国大数学家拉普拉斯经常对他的学生说:“读读欧拉,他是我们每一个人的老师。”
盖上素数的邮戳
1963年6月2日晚上8点,当美国数学家吉利斯领导的研究小组通过大型计算机找到第23个梅森素数——211213-1时,美国广播公司(ABC)中断了正常的节目播放,在第一时间发布了这一振奋人心的消息。
吉利斯所在的伊利诺伊大学数学系为这一重大发现感到无比骄傲。为了让全世界都分享这一研究成果,以致于把所有从系里发出的信件上都盖上了“211213-1是个素数”的邮戳。这一做法一直延续到1976年该系数学家证明著名的“四色定理”为止。
“素数大王”的诞生
随着指数P值的增大,每一个梅森素数的产生都艰辛无比;而数学家和业余数学爱好者仍乐此不疲,激烈竞争。例如,在1979年2月23日,当美国克雷研究公司的计算机专家史洛温斯基和纳尔逊宣布他们找到第26个梅森素数——223209-1时,有人告诉他们:在两星期前美国加州的高中生诺尔就已经给出了同样结果。
为此他们潜心发奋,继续寻找,使用Cray-1型超级计算机,并花了一个半月的时间,终于找到了新的梅森素数——244497-1。这件事成了当时不少主流报纸的头版新闻。后来史洛温斯基还独自发现了6个梅森素数,因而被人们誉为“素数大王”。顺带一提,目前找到梅森素数最多的单位是美国加州大学洛杉矶分校数学系,一共发现8个。
灵机一动见曙光
梅森素数的分布时疏时密、极不规则,因此探究梅森素数的重要性质——分布规律似乎比寻找新的梅森素数更为复杂。英、法、德、美等国的数学家都曾分别给出过有关梅森素数分布的猜测,但他们的猜测都以近似表达式给出,而且与实际情况的接近程度均难如人意。中国数学家、语言学家周海中1976年在广东雷州半岛当“下乡知青”时就开始探究梅森素数的分布规律。他有过无数次的失败,但并不气馁。有一天,他在阅读一本关于法国数学家费马的书时,突然想到了“费马数”的形式,这为他日后解决这一难题找到了突破口。
经过多年的不懈努力,周海中终于在1992年正式提出了以精确表达式给出的梅森素数分布的猜测。后来这项重要成果被国际上命名为“周氏猜测”。美籍挪威数论大师、菲尔茨奖和沃尔夫奖得主塞尔伯格认为:周氏猜测具有创新性,开创了富于启发性的新方法;其创新性还表现在揭示新的规律上。
网格技术显身手
在“手算笔录”的年代,人们仅找到12个梅森素数。而计算机的诞生,尤其是网格技术的出现,加速了梅森素数探究的进程。1996年,美国数学家、程序设计师沃特曼编制了一个梅森素数计算程序,把它放在网页上供数学家和业余数学爱好者免费使用。它就是举世闻名的“互联网梅森素数大搜索”(GIMPS)项目。该项目采取网格计算的方式,并利用大量普通计算机的闲置处理能力来获得相当于超级计算机的运算能力。为了激励人们寻找梅森素数和促进网格技术发展,总部设在美国的电子新领域基金会1999年设立了专项奖金悬赏参与GIMPS项目的梅森素数发现者;但绝大多数研究者参与该项目不是为了金钱而是出于好奇心、求知欲和荣誉感。
迄今为止,人们通过GIMPS项目找到了15个梅森素数,其发现者来自美国、英国、法国、德国、挪威和加拿大。目前,全球已有190多个国家和地区近64万人参加了这一国际合作项目,并动用了超过124万台计算机联网来寻找新的梅森素数。
同人不同命
2008年8月23日,美国加州大学洛杉矶分校数学系计算中心的雇员史密斯,通过GIMPS项目发现了第46个梅森素数——243112609-1。他是私自利用中心内的75台计算机参加该项目的。按校规他本应受到处罚,但由于为学校争了光,他反被表彰。著名的美国《时代》周刊曾将第46个梅森素数评为“2008年度50项最佳发明”之一。此外,史密斯还获得了EFF颁发的10万美元大奖及金牌一枚。
另一位仁兄就没有这样的运气了。美国一家电话公司的雇员福雷斯特偷偷使用公司内的2585台计算机参加GIMPS项目。随后公司发现计算机经常会出些差错,本来只需要5秒钟就可以接通的电话号码,实际却需要5分钟才能接通。联邦调查局最终查到了原因,福雷斯特承认“被GIMPS项目引诱”。他最后被解雇,还被罚款一万美元。
功夫不负有心人
美国密苏里中央大学数学教授库珀从2002年起就参加了GIMPS项目,他与本校化学教授布恩合作,于2005年和2006年先后找到两个梅森素数——230402457-1和232582657-1。他们的研究成果不仅推进了梅森素数的探究,也提升了学校的知名度。后来,布恩因精力和时间问题退出这项研究,库珀只好一个人继续探究了。在校方的支持下,他动用了全校实验室里的800多台计算机,于2013年1月25日找到了第48个梅森素数——257885161-1。美国数学学会发言人布林说:“这个超大素数令数学家和计算机科学家感到兴奋。”他指出,这是素数探究的一项重大突破。
布恩再接再厉、趁热打铁,于2016年1月7日又找到了一个更大的素数——274207281-1;该素数是第49个梅森素数,也是目前人类已知的最大素数,它长达22338618位。如果用普通字号将它打印下来,其长度可超过90公里!美国《赫芬顿邮报》认为,这是一项重大的科技成就。
发现芯片有漏洞
2015年第四季度上市的Intel Skylake是美国英特尔公司的第六代核心处理器,这个全新一代的处理器与第五代Broadwell处理器一样使用14纳米工艺,号称不仅提升了CPU性能,尤其是3D游戏性能,还特别注重节能性。但2016年初德国一名GIMPS项目参与者发现:当Intel Skylake处理器在执行Prime95应用来寻找梅森素数时,运算到指数P=14942209时就出现了触发系统死机的漏洞。
Prime95是一款运行于微软视窗中的开源软件,由创立GIMPS项目的沃特曼编写,这款软件可以用来测试系统的稳定性。在所有的拷机软件中,Prime95是公认的最残酷的一款。它把负荷高得有点离谱的工作量加载在中央处理器身上,以此来考验中央处理器的承受能力。这种测试因其可以发现其他测试程序无法发现的稳定性问题而备受关注,更被计算机制造商用来确定计算机的稳定性。由此可见,梅森素数的寻找还可以发现计算机芯片是否存在问题。