螺旋的对角线上皆为质数
上图展示了的螺旋仅包含前100,000个整数。复合数表示为黑点,质数表示为白点。可以在网格图中清晰地看到大量的白色对角线。即使用除1以外的其他数作为螺旋的起始点,也会有同样的现象。没人能对此提出一个清晰的解释。但这暗示着有很长一系列的质数能被函数 f(n)=an² bn c生成,其中a、b和c均为整数。
如果我们把41作为螺旋中央的起始数,我们将发现对角线上的数字恰符合欧拉发现的公式f(n)=n²-n 41;正如前文所述,对于n取每个正整数,函数都有大于40的质数。
在插图里,41位于螺旋的中央,其它整数绕螺旋的逆时针方向排列。方格图中的复合数格子标为黄色,质数格子标为白色。 f(n)=n²-n 41输出的前15个数沿方格图的其中一条对角线排列。
数字的漩涡虽然塔尼斯拉夫·乌拉姆因质数螺旋的发现而受到普遍的赞誉,但是他可能不是第一发现人。亚瑟C.克拉克1956年的经典小说《城市与群星》的第六章的开头是英雄杰赛拉克一边分析着电脑屏幕里的整数"漩涡",一边看着质数像珠子一样近乎整齐地排列在网的交织点。似乎在乌拉姆发现质数螺旋的七年前,亚瑟C.克拉克就已经发现了。
数学家们出于自己的乐趣而研究质数的性质。但质数有其现代科学的应用,尤其在加密领域上。美国政府情报局NSA是理论数学家在世界上最大的雇主。无论何时你在互联网上进行一笔交易,比如信用卡购物,都会使用公钥加密确保你的交易安全,这就是著名的RSA加密算法,它是由罗纳德·李维斯特、阿迪·萨莫尔和伦纳德·阿德曼基于精妙的数论发明的。
RSA加密算法用的是由两个很大的质数相乘得到的数字密钥。这个系统的安全性取决于分解大量数据的难度。使用已知的所有算法去分解大量数据所需步骤数随数字大小呈指数级增长。这意味着密码学家总会领先于计算机一步。若计算机处理器能足够快地分解用于编码的128位数字,我们就可以开始采用512位。然而,如果一个数学家找到一种新的更高效率的分解算法,我们的编码交易安全将会遭到威胁。但密码学家依旧认为当前的算法是安全的,因为尽管许多世纪以来数学家一直寻求破解的算法,但从未成功过。
去年三位印度数学家——马宁德拉·阿格拉沃教授和他的两位毕业学生尼拉吉·凯亚尔和尼廷·萨克塞纳——发表了一个检验一个数是质数或复合数的算法。这个算法运用的是非常基本的运算并且作者的代码只有13行。这个算法有一个重要的新功能是测试数字N是否为质数所用时间是N的线性级而非指数级。实际上,这一时间为N的12倍。随着这一算法的出现,也许我们不应该过于草率地排除存在着一个简单的分解算法却被忽略的可能性。也许密码学家应该开始感到担忧了。
原文作者,Nick Mee ,本文原载于 plus magazine网站
翻译作者,刘雄威,[遇见数学]翻译小组核心成员