(来源:中国科学院科技战略咨询研究院 2016-03-07)
1月,美国数学家柯蒂斯?库柏[1]公布了最大新素数274207281-1,它也是梅森素数,命名为素数M74207281。1996年,一位美国的数论爱好者和退休程序员,设立了“大互联网梅森素数搜索”(GIMPS)项目,利用互联网上的计算能力来找素数,共有100多万台计算机参与搜寻。手算时代,人们只找到了12个梅森素数,而计算机则帮助找到了37个梅森素数,其中有15个是GIMPS项目找到的。几十年来,爱好者们一直在创新算法,让计算机更快验证巨大的数字是否为素数。柯蒂斯?库柏团队也是使用素数测试GIMPS程序找到了新的最大素数274207281-1。
数学家已经知道:在“2P-1”(P也是素数)这类数字里更容易发现素数,寻找最大的梅森素数,基本等于寻找最大素数。数字越大,计算越难。寻找最大素数是一个游戏,没有实际用处。由于计算这么大的数是否是素数是很难的,所以要提出新的计算方法和技术,因此寻找素数的努力,可以促进计算机科学,可催生更可靠的芯片和加密技术。
素数测试程序代码简短,能给出易于检查的答案:当该程序在一已知素数上运行时,经数十亿次计算,输出结果是TRUE。Intel公司在测试奔腾系列芯片时,就使用GIMPS的程序。另外一项有关素数的计算,还发现了奔腾芯片的一个著名“BUG”。1996年,美国克雷公司在测试超级计算机的运算速度时,得到了一个新的梅森素数。类似的原理,在研究分布式计算系统时,素数计算也是最合适的测试任务。1990年代初,苹果公司著名科学家理查德?克兰达尔在改进梅森素数的算法中,发现了一种加速办法。这种办法不但被GIMPS用于素数搜寻,还可用在其他计算中。而苹果公司拥有专利的克兰达尔发明的“快速椭圆加密系统”,就将梅森素数用于快速加密和解密信息。
(刘小平)
[1] New largest prime number found. http://phys.org/news/2016-01-largest-prime.html