素數界新任“帶頭大哥”來了
- 發佈時間:2016-01-25 02:30:58 來源:科技日報 責任編輯:羅伯特
最大的素數是多少?誰都念不出來,因為它有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用於素數搜尋,還可用在其他計算中。而蘋果公司擁有專利的克蘭達爾發明的“快速橢圓加密系統”,就將梅森素數用於快速加密和解密資訊。
- 股票名稱 最新價 漲跌幅