作者:高博 来源:科技日报 发布时间:2016/1/25 15:34:41
选择字号:
美国科学家公布素数界新任“带头大哥”

 

最大的素数是多少?谁都念不出来,因为它有2233万多位,如果用普通字号将它打印出来长度将超过65公里。今年1月,美国数学家柯蒂斯·库柏公布了这个素数界的新任“带头大哥”。它没什么用,但寻找它却催生出更可靠的芯片和加密技术。

素数是什么?这是个初中数学知识:素数又称质数,只能被1和它本身整除,而数值越大成为素数的概率就越低。新发现的素数写成指数式子并不长:274207281-1。它也叫梅森素数。梅森是17世纪一位数学家,终身致力于研究“2p-1”形式的素数(p也是一个素数)。

数学家已经知道:在“2p-1”这类数字里更容易发现素数,寻找最大的梅森素数,基本等于寻找最大素数。数字越大,计算越难。1996年,有一位美国的数论爱好者和退休程序员,设立了GIMPS项目(“大互联网梅森素数搜索”的英文缩写),利用互联网上的空闲计算能力来找素数。共有100多万台计算机参与搜寻。

“寻找最大素数是一个游戏,没有实际用处。但寻找素数的努力,可以促进计算机科学。”数学家杨乐院士告诉科技日报记者,“因为计算这么大的数是否是素数,是很难的,所以要提出新的计算方法和技术。”

手算时代,人们只找到了12个梅森素数,而计算机则帮助找到了37个,其中有15个是GIMPS项目找到的。几十年来,爱好者们一直在创新算法,让计算机更快验证巨大的数字是否为素数。

“想知道‘天河二号’准确不准确,也可以让它验算刚被发现的这个梅森素数是不是素数。”杨乐说出了梅森大素数的一个用处。

“素数测试程序代码简短,能给出易于检查的答案:‘当该程序在一已知素数上运行时,经数十亿次计算,输出结果是TRUE。’”中科院数学所的高全泉研究员在一篇论文中写道,Intel公司在测试奔腾系列芯片时,就使用GIMPS的程序。另外一项有关素数的计算,还发现了奔腾芯片的一个著名“BUG”。1996年,美国克雷公司在测试超级计算机的运算速度时,还得到了一个新的梅森素数。

类似的原理,在研究分布式计算系统时,素数计算也是最合适的测试任务。

“大素数在加密算法中也有用。”杨乐说。目前广泛应用的一种加密算法原理是:一堆素数乘起来得到一个大数很容易,反过来把大数分解成一堆素数就很麻烦,尤其当涉及大素数时。

高全泉介绍说,1990年代初,苹果公司著名科学家理查德·克兰达尔在改进梅森素数的算法中,发现了一种加速办法。这种办法不但被GIMPS用于素数搜寻,还可用在其他计算中。而苹果公司拥有专利的克兰达尔发明的“快速椭圆加密系统”,就将梅森素数用于快速加密和解密信息。

 
特别声明:本文转载仅仅是出于传播信息的需要,并不意味着代表本网站观点或证实其内容的真实性;如其他媒体、网站或个人从本网站转载使用,须保留本网站注明的“来源”,并自负版权等法律责任;作者如果不希望被转载或者联系转载稿费等事宜,请与我们接洽。
 
 打印  发E-mail给: 
    
 
以下评论只代表网友个人观点,不代表科学网观点。 
SSI ļʱ
相关新闻 相关论文

图片新闻
野外回归的墨脱百合在原生地首次开花 科学家创有机小分子催化新纪录
科学家欲在脆弱冰川周围建屏障 7月福利!科学网APP论文&基金最新活动
>>更多
 
一周新闻排行 一周新闻评论排行
 
编辑部推荐博文
 
论坛推荐