美国科学家公布素数界新任“带头大哥”
最大的质数是多少?没有人能读懂它,因为它有超过2233万个字符。如果你用正常的字体大小打印,长度将超过65公里。今年1月,美国数学家柯蒂斯·库珀(Curtis Cooper)宣布了素数领域的新“老大”。它毫无用处,但是寻找它已经产生了更可靠的芯片和加密技术。
什么是质数?这是一个初中数学知识:素数,也称为质数,只能被1和自身整除,而且数字越高,成为质数的概率越低。新发现的质数很快就会被写成指数形式:274207281-1。它也被称为梅森素数。梅森是17世纪的一位数学家,他毕生致力于以“2p-1”的形式研究素数(P也是一个素数)。
数学家已经知道,在像“2p-1”这样的数字中找到质数更容易。寻找最大的梅森素数与寻找最大的素数基本相同。数字越大,计算就越困难。1996年,一位美国数论爱好者和退休程序员建立了GIMPS项目(互联网上“梅森素数搜索”的简称),利用互联网上的免费计算能力寻找素数。超过一百万台计算机参与了搜索。
“寻找最大素数是一种游戏,没有实际用途。但是寻找质数的努力可以促进计算机科学。”数学家杨乐院士告诉《科学日报》,“这么大的一个数是否是素数很难计算,所以我们需要提出新的计算方法和技巧。”
在人工计算时代,人们只找到了12个梅森素数,而计算机帮助找到了37个,其中15个是由GIMPS发现的。几十年来,粉丝们一直在创新算法,让电脑更快地验证巨大的数字是否是质数。
“如果你想知道天河二号是否准确,你也可以要求它检查新发现的梅森素数是否是素数。”杨乐指出了梅森素数的一种用法。
“质数测试程序代码很短,可以给出一个容易检查的答案:‘当程序运行在一个已知的质数上,经过数十亿次计算后,输出为真。’中国科学院数学研究所研究员高在一篇论文中写道,英特尔在测试奔腾系列芯片时使用GIMPS。另一个素数计算也发现了奔腾芯片的一个著名的“BUG”。1996年,美国克莱公司在测试超级计算机的计算速度时获得了一个新的梅森素数。
同样,素数计算也是研究分布式计算系统时最合适的测试任务。
"大质数在加密算法中也很有用."杨乐说道。目前,一种广泛使用的加密算法原理是,很容易将一堆素数相乘以获得一个大数,相反,将该大数分解成一堆素数是非常麻烦的,尤其是当涉及到大素数时。
高说,20世纪90年代初,著名的苹果科学家理查德·兰达尔发现了一种加速方法,改进了梅森素数的算法。这种方法不仅被GIMPS用于质数搜索,也可用于其他计算。苹果公司专利柯克·兰达尔发明的“快速椭圆加密系统”使用梅森素数对信息进行快速加密和解密。