还记得年少时的梦吗?
还记得你小学时背诵的素数表吗?那时候它还叫做质数表“2、3、5、7......”如今你是否已经真正理解了老师说过的话:这些只能被1和本身整除的数,具有着无穷的魅力。
还记得你中学时计算的2的整数幂吗?计算机时代,作为二进制的体现,它们正大行其道。“2、4、8、16、32、64、128、256......”十多年来,个人计算机内存的容量正是经历了这些熟悉的数字,直到现在的2048M(2G)以及更多。
现在,让我们从这些2的整数幂中挑出以素数为指数的,再把它减1,试试看会发现什么?22-1=3、23-1=7、25-1=31、27-1=127......
嗯,你的心是不是激动起来了?一个伟大的发现似乎就在眼前......
别急别急,你的发现很妙,只是有些儿惋惜......你已经迟到了二千年。
在2300多年前,古希腊的数学家,那位写出不朽的《几何原本》的欧几里得在证明了素数有无穷多个之后,就顺便指出:有许多素数可以写成2P-1的形式,其中指数P也是素数。很容易想到,刚才你所发现的22-1、23-1、25-1、27-1正是其中排列最前的4个!
当P=11、13、17、19、23......的时候,2P-1还是素数吗?到底有多少这种2P-1型的素数呢?在计算能力低下的公元前,这个关于素数的探寻之旅就已经吸引了无数的人。
人们唯独对素数如此着迷不是没有理由的,它有着许多简单而又美丽的猜想,有的已经成为定理,而有的则至今还没有答案。例如著名的哥德巴赫猜想,让人们苦苦追索:是否任何一个大于或等于6的偶数,都可以表示为两个奇素数的和?再比如孪生素数问题所提出的:象5和7、41和43这样相差2的素数,到底有多少对呢?
在数学史上起个大早的古希腊人还有许多关于素数的发现,完美数就是其中之一。毕达哥拉斯学派指出,如果一个数的所有因数(包括1但不包括它本身)的和正好等于它本身,则这个数就叫做完美数。很容易找到,6=1+2+3是第一个完美数,28=1+2+4+7+14则是第二个完美数。他们认为,上帝用6天创造了世界,因此6是最理想和完美的数字,而和6具有相同性质的数都堪称完美数。
欧几里得在《几何原本》中证明了如果2P-1是一个素数,那么2P-1(2P-1)一定是一个完美数(你会发现,当P分别等于2、3时,它就对应着前两个完美数6、28)。
再后来,欧拉进一步证明,每一个偶完美数也必定是欧几里得所给出的形式。(不要问我奇完美数呢?就连它是否存在,本身也是无数个关于素数的难题中至今未解的一个。)
很容易看到,找到了2P-1形式的素数,也就发现了新的完美数。
形如2P-1的素数还长期占据了人们寻找到的最大素数的光荣榜(仅在1989年后被39158×2216193-1夺走三年),因为判断这样一个数是素数的方法比判断一个差不多大小的其他类型数是素数的方法要简单得多。
对2P-1型素数的搜寻之旅就这样出发了,先后投入这个漫漫长途的就有数学大师费马、笛卡尔、莱布尼兹、哥德巴赫、欧拉、高斯、哈代、图灵......这一个个闪光的名字正如暗夜前行的火炬手,照亮了人类通往未知的道路。
历史的天空闪烁几颗星
让我们将坐上时间机器,回到过去,重新浏览这来路风光吧。
1456年,又一个没有留下姓名的人发现了第5个2P-1型的素数:213-1。若是你就降生在那个年代,或许这次发现的光荣将归属于你。只是,你更有可能犯下和当时的人们一样的错误,以为对于所有的素数P,2P-1都是素数。要知道,这个错误是近百年之后,直到1536年,才由雷吉乌斯(Hudalricus Regius)打破的。他指出,211-1=2047=23×89,不是素数。
不过你的莽撞完全可以得到谅解,在黑暗中寻找的数学家正如年轻人一样,犯下的错误连上帝都会原谅。第一个对这种类型的素数进行整理的皮特罗•卡塔尔迪(Pietro Cataldi)在他在1603年宣布的结果中就言之凿凿地说:对于p=17,19,23,29,31和37,2P-1是素数。只可惜,37年后,他的六个结果就被推翻了两个,费尔马使用著名的小费尔马(不是那个更著名的大费尔马定理)证明了卡塔尔迪关于P=23和37的结论是错误的。
不知道下面的事实会不会让你联想到“屋漏偏逢连夜雨”呢?大约一百年后,1738年,欧拉证明了卡塔尔迪的结果中P=29也是错误的。幸好,欧拉又证明了P=31的结论是对的。
虽然,卡塔尔迪的六个结果“阵亡”了一半,但考虑到他是用手工计算取得结论的,而费尔马和欧拉则是使用了在他们那时最先进的数学知识,避免了许多复杂的计算和因此可能造成的错误,因此我们仍然要对卡塔尔迪致敬。他也由此光荣地占据了第六个和第七个的发现者之位,在他之前的,都是无名氏。

卡塔尔迪的成功,说明了整理和预测是正确道路。继他之后,集研究成果大成的,是17世纪法国著名的数学家和修道士马林•梅森(Marin Mersenne,1588-1648)。
梅森热心于宗教,但更喜爱数学;他是一个交往广泛、热情诚挚的人,更是一座“科学信息交换站”。为什么呢?那时候,学术刊物、国际会议甚至科研机构都还没有诞生。“及时雨”般的梅森是欧洲众多科学家之间联系的桥梁,大家把研究成果寄给他,然后再由他转告给更多的人。费马、笛卡尔等数学家每周在他家聚会,讨论问题,就这样慢慢形成的"梅森学院",后来有了一个更响亮的名字——法兰西科学院。
1644年,梅森在欧几里得、费马等人的有关研究的基础上对2P-1作了大量的计算、验证工作,并于1644年在他的《物理数学随感》一书中断言:对于P=2、3、5、7、13、17、19、31、67、127、257时,2P-1是素数;而对于P等于其他所有小于257的数时,2P-1是合数。这里前7个数(即2,3,5,7,13,17和19)是在前人的工作已经证实的部分。而后面的4个数(即31,67,127和257)属于被猜测的部分。不过,人们对他的断言深信不疑,连大数学家莱布尼兹和哥德巴赫都认为它是对的。
梅森的工作极大地激发了人们研究2P-1型素数的热情,成为素数研究的一个转折点和里程碑。为了纪念他,数学界就把这种数称为“梅森数”,并以Mp记之(其中M为梅森姓名的首字母),即Mp=2P-1。如果梅森数为素数,则称之为“梅森素数”(即2P-1型素数)。
对梅森素数的验证,需要进行艰巨的计算,即使是"猜测"部分中最小的M31=231-1=2147483647,也是一个10位数。而梅森自己则承认:“一个人,使用一般的验证方法,要检验一个15位或20位的数字是否为素数,即使终生的时间也是不够的。”年迈力衰的他四年之后就去世了,最终并没有任何一个梅森素数的发现权归属于他,但考虑到他已经享有了“冠名权”,就把荣誉分给那些在漫漫长途上跋涉的发现者们吧!
那些手扛肩挑的年代
手算笔录的时代,每前进一步,都显得格外艰难。1772年,在卡塔尔迪提出近200年之后,瑞士数学家欧拉证明了M31确实是一个素数,这是人们找到的第8个梅森素数,它共有10位数,堪称当时世界上已知的最大素数,欧拉也因此成为第二个在发现者名单上留名的人。让人惊叹的是,这是在他双目失明的情况下,靠心算完成的。这种超人般的毅力与技巧让欧拉获得了“数学英雄”的美誉。法国大数学家拉普拉斯(P.Laplace)说的话,或许可以代表我们的心声:“读读欧拉,他是我们每一个人的老师。”
100年后,法国数学家鲁卡斯提出了一个用来判别Mp是否是素数的重要定理——鲁卡斯定理,这为梅森素数的研究提供了有力的工具。1883年,数学家波佛辛(Pervushin)利用鲁卡斯定理证明了M61也是素数--这是梅森漏掉了的。梅森还漏掉另外两个素数:M89和M107,它们分别在1911年与1914年被数学家鲍尔斯(Powers)发现。
还记得梅森预测的四个素数吗?其中M31已经为欧拉证明,M127则在鲁卡斯提出定理时顺带证明,虽然中间漏掉了3个,但至少还有另外两个:M67和M257是不是素数呢......
M67的证明又是一个精彩的故事。
1903年,数学家柯尔在美国数学学会的大会上作了一个报告。他先是专注地在黑板上算出267-1,接着又算出193707721×761838257287,两个算式结果完全相同!换句话说,他成功地把267-1分解为两个素数相乘的形式,从而证明了M67是个合数。
报告中,他一言未发,却赢得了现场听众的起立鼓掌,更成了数学史上的佳话。阅读这段历史,我们懂得了什么叫做“事实胜于雄辩”。记者好奇地问他是怎样得到这么精彩的发现的,柯尔回答“三年里的全部星期天”。他后来当选为美国数学协会的会长,去世后,该协会专门设立了“柯尔奖”,用于奖励作出杰出贡献的数学家。
1922年,数学家克莱契克验证了M257并不是素数,而是合数(但他没有给出这一合数的因子,直到20世纪80年代人们才知道它有3个素因子)。
于是乎,梅森的四个猜测获得了两正确、三遗漏和两错误的成绩,但这无损于他的光荣。在千年的探寻之旅中,伟大如欧拉也会犯错误,他在1750年宣布说找到了梅森的“遗漏”:M41和M47也是素数,但最终上M41和M47都不是素数。
直到1947年,对于p≤257的梅森素数Mp的正确结果才被确定,也就是当p=2,3,5,7,13,17,19,31,61,89,107和127时,Mp是素数。现在这个表已经被反复验证,一定不会有错误了。
我们看到,在手工计算的时代,人们一共找到了12个梅森素数。
计算机!计算机!
1930年,美国数学家雷默改进了鲁卡斯的工作,给出了一个新的测试方法,即鲁卡斯-雷默方法。很快地,计算机时代到来了,这一方法发挥了重要的作用。1952年,数学家鲁滨逊(Robinson)等人将鲁卡斯-雷默方法编译成计算机程序,使用SWAC型计算机在短短几小时之内,就发现了第13个、第14个,并在当年总共找到了5个梅森素数:M521、M607、M1279、M2203和M2281。
其后,M3217在1957年被黎塞尔(Riesel)证明是素数;M4253和M4423在1961年被赫维兹(Hurwitz)证明是素数。
1963年,美国数学家吉里斯(Gillies)证明M9689和M9941是素数,这已经是第21和22个梅森素数。1963年9月6日晚上8点,当吉里斯通过大型计算机找到第23个梅森素数M11213时,美国广播公司(ABC)中断了正常的节目播放,第一时间发布了这一重要消息,发现这一素数的美国伊利诺伊大学数学系全体师生更是激动地把所有从系里发出的信件都敲上了“211213-1是个素数”的邮戳。

1971年3月4日晚,美国哥伦比亚广播公司(CBS)中断了正常节目播放,发布了布萊恩特•塔克曼(Bryant Tuckerman)使用IBM360-91型计算机找到新的梅森素数M19937的消息。而到1978年10月,世界几乎所有的大新闻机构(包括我国的新华社)都报道了以下消息:两名年仅18岁的美国高中生诺尔(Noll)和尼科尔( Nickel)使用CYBER174型计算机找到了第25个梅森素数:M21701。
超级计算机的引入加快了梅森素数的寻找脚步,但随着素数P值的增大,每一个梅森素数的产生都更加艰难,各国科学家及业余研究者们之间的竞争变得越来越激烈。在1979年2月23日,当美国克雷研究公司的计算机专家史洛温斯基和纳尔逊正兴致冲冲地宣布他们找到第26个梅森数M23209时,有人浇来一盆冷水:两星期前美国加州的高中生诺尔就已经给出了同样结果。心有不甘的他们又花了一个半月的时间“卧薪尝胆”,使用Cray-1型计算机找到了第27个梅森素数M44497,这件事成了当时不少报纸的头版新闻。
为了与美国人较量,英国的哈威尔实验室也专门成立了一个研究小组来寻找更大的梅森素数。他们用了两年时间,花了12万英镑的经费,于1992年3月25日找到了新的梅森素数M756839。但到了1994年1月14日,史洛温斯基等人为美国再次夺回发现“已知最大素数”的桂冠——这一梅森素数是M859433。史洛温斯基本人一共发现了7个梅森素数,他因此被人们称为“素数大王”。
数学研究的深入更重于计算能力的提升,在搜寻梅森素数的同时,对梅森素数的分布规律的研究也在进行着,英、法、印、美、德等国的数学家都曾分别给出过关于梅森素数分布规律的猜测,但这些猜测都以近似表达式给出,而与实际情况的接近程度均难如人意。中国数学家和语言学家周海中则是这方面研究的领先者,他运用联系观察法和不完全归纳法,于1992年首先给出了梅森素数分布的精确表达式。著名的《科学美国人》杂志有一篇文章指出:这一成果为人们探究梅森素数提供了方便,是素数研究的一项重大突破。后来这项重要成果被国际上命名为“周氏猜测”。
伴随数学理论的改善,为了寻找梅森素数而使用的计算机也越来越强大,包括了著名的IBM360型计算机,和超级计算机Cray系列。1996年发现的M1257787是迄今为止最后一个由超级计算机发现的梅森素数,数学家使用了Cray T94,这也是人类发现的第34个梅森素数。
梅森素数的探寻之旅似乎正变得离普通人越来越远,直到GIMPS时代的到来......
草根英雄,人人参与
网格(Grid)这一崭新技术的出现使梅森素数的搜寻如虎添翼,也使它重新走到了“人人参与”的大众时代。1996年初,美国数学家和程序设计师沃特曼(G.Woltman)编制了一个梅森素数的计算程序,并把它放在网页上供数学家和数学爱好者免费使用,这就是闻名世界的“因特网梅森素数大搜寻”(GIMPS)项目,是全世界第一个基于互联网的分布式计算项目。
该项目利用大量普通计算机的闲置时间来获得相当于超级计算机的运算能力,只要你去GIMPS的主页下载为一个名为Prime95的免费程序,就可以立即参加GIMPS项目,一起踏上持续了千年的梅森素数探寻之旅。
12年来,人们通过GIMPS项目找到了12个梅森素数,其发现者来自美国、英国、法国、德国和加拿大。目前,世界上有160多个国家和地区近16万人参加了这一项目,并动用了30多万台计算机联网来进行网格计算。该项目的计算能力已超过当今世界上任何一台最先进的超级矢量计算机的计算能力,运算速度超过每秒350万亿次!
为了激励人们寻找梅森素数,1999年3月,设在美国的电子新领域基金会(EFF)向全世界宣布了为通过GIMPS项目来探寻梅森素数而设立的奖金。它规定向第一个找到超过一百万位的素数的个人或机构颁发五万美元的奖金。后面的奖金依次为:超过一千万位,十万美元;超过一亿位,十五万美元;超过十亿位,二十五万美元。
1999年6月1日,住在美国密歇根州普利茅茨的那扬•哈吉拉特瓦拉(Nayan Hajratwala)先生找到了第38个梅森素数:26972593-1,这也是我们知道的第一个位数超过一百万位的素数。如果把它写下来的话,共有两百零九万八千九百六十位数字。因此,哈吉拉特瓦拉先生获得了五万美元的奖励。而他所做的,就是从互联网上下载了一个程序,这个程序在他不使用他的奔腾II350型计算机时悄悄地运行。在经过111天的计算后,这个素数被发现了。
听起来非常诱人,但你也要知道,通过参加GIMPS计划来获得奖金的希望是相当小的。哈吉拉特瓦拉使用的计算机是当时21000台计算机中的一台。每一个参与者都在验证分配给他的不同梅森数,当然其中绝大多数都不是素数——只有大约三万分之一的可能性碰到一个素数。所以,绝大多数研究者参与该项目并不是为了金钱,而是出于乐趣、荣誉感和探索精神。
成功者就在眼前,去年8月23日,美国加州大学洛杉矶分校数学系计算中心的雇员史密斯,通过GIMPS项目发现了第46个梅森素数243112609-1,这个发现被著名的美国《时代》周刊评为“2008年度50项最佳发明”之一。该素数是目前已知的最大素数,它有12978189位数,如果用普通字号将这个巨数连续写下来,其长度可超过50公里!由于史密斯发现的梅森素数已超过1000万位,他将有资格获得EFF颁发的10万美元大奖。虽然说史密斯是私自利用中心内的75台计算机参加GIMPS的,但由于为学校争了光,他受到了校方的表彰。
但在你心动之前,不妨也听听另一个人的故事。美国一家电话公司发现计算机经常出错,本来只需要5秒钟就可以接通的电话号码,需要5分钟才能接通。最终查出原来是雇员福雷斯特偷偷地使用公司内的2585台计算机参加GIMPS,福雷斯特承认了自己“被GIMPS项目引诱”,他最后被公司解雇,并被罚款一万美元,这只能说是工作与私事没有分开,令人叹息。
最后的话
素数的研究曾经在人类很长的历史时期没有实际用处,直到二次世界大战之后,才在密码学中得到了重要的应用。对于梅森素数的寻找之旅已经历经千年,人们一共才找到46个梅森素数,在数学家的眼里,它们的价值远胜于钻石,而对它的研究,促进了计算技术、程序设计技术、密码技术、分布式计算技术的发展。让我们谨记梅森素数最早的研究者欧几里得的教诲:当一个人问他"几何学有什么用"的时候,他对侍者说:“给他拿三个硬币吧,他想从几何学中得到好处。”
不是三枚硬币,也不是百万美元,激励着人类不断地向前探寻的,是好奇心、求知欲和荣誉感。
(已刊载于《中国教师报》)
相关文章




前排 两张卧票 我躺着看
对不起让让 我放下脚 我包场
太棒了
该文很值得一读.实在太棒了!
这篇文章好看。如果能说说怎么将这个mp运用于密码学,那就更好看了。
mp素数要用于密码学里面,那加密性应该很好。
想要破译的人也要大费周章才做得到啊!
虽然大多都是曾经知道了的故事,再看一遍仍然很震撼!
这个我专长我专长!!~~~
er...我说的是分布式计算。
GIMPS我参加过,一个指数的验证在一台C2D T7200上大概需要3个月(单核)~~~
要了解更多资料的话请到
http://mersenne.org <-这是英文站
http://www.equn.com/gimps/ <-这是中文站
用计算机验证,感觉就像是“暴力破解”,哈~~
这也是目前为止最好的办法了……
一般的素性检验算法的时间复杂度比专门为梅森数设计的卢卡斯-莱默算法要高得多……
虽然只是数字,但是围绕这些数字竟然产生了如此多的故事和成果,真是让人惊叹
例如著名的哥德巴赫猜想,让人们苦苦追索:是否任何一个大于6的素数,都可以表示为两个奇素数的和?
这个不对吧?
1742年6月7日哥德巴赫写信给当时的大数学家欧拉,正式提出了以下的猜想:a.任何一个大于 6的偶数都可以表示成两个素数之和。b.任何一个大于9的奇数都可以表示成三个素数之和。
从题目分析,大于6的素数肯定是奇数,怎么也不可能表示为2个奇数之和。
PS:从小到大不知道听到过多少人说过,哥德巴赫猜想就是证明1+1=2。。。
惭愧,应当是“大于或等于6的偶数”。
就是,不明白1+1=2 一说怎么能讹传得这么厉害~~~
不过要证明1+1=2从第一原理的角度出发还真可能需要很多步骤~~哈哈~
这里的文章都挺喜欢的
数学曾是我的最爱,只是后来被迫放弃了
梅森素数的故事以前也有听说过
不过第一次看见这么详细的文章
我喜欢这样的文章~
Pingback: ZT-梅森素数:千年不休的探寻之旅 | ExpectRoom
实在是太好看了,不过还不过瘾。
鲁卡斯定理和后面的鲁卡斯-雷默方法我觉得应该简要的说明一下。
还有就是全篇主讲寻找,不过我觉得应用方面写的还是太少了,或许可以再写一篇MP应用的文章,密码学是个很有诱惑力的方向。
ps:很喜欢最后的话。
梅森质数没有应用……
但是为了计算它,的确发生了不少计算技术上的革命,所以算是催化剂~~~
希尔伯特所说的“下金蛋的鹅”,用在这里也是很合适的。
在人类寻找梅森素数的旅途中,数学理论的改善要远远比具有强大坚韧的计算能力重要得多。鲁卡斯的方法在1930年被雷默(Lehmer)简化后,鲁卡斯-雷默方法就成为现在判断梅森素数的标准方法。
鲁卡斯-雷默方法:对于所有大于1的奇数p,Mp是素数当且仅当Mp整除S(p-1),其中S(n)由S(n+1)=S(n)2-2,S(1)=4递归定义。这个测试尤其适合于计算机运算,因为除以Mp=2p-1的运算在二进制下可以简单地用计算机特别擅长的移位和加法操作来实现。判断一个梅森数是素数的方法比判断一个差不多大小的其他类型数是素数的方法要简单得多,所以在寻找最大素数的过程中,大部分纪录都是梅森素数。
鲁卡斯-雷默方法基于循环数列的计算,其原理是:
Mp为素数当且仅当Mp整除Sn-2(S0=4,Sk = Sk − 12 − 2,k > 0)。
谢谢 luscky 写这么好的文章!加油!
luscky的大作有根有据,有趣有益。顶!
有趣的数学罂粟花,让多少人迷狂啊。
我试换个“量子”语言描描它的妖艳,才用到简单的四则运算知识,嘿嘿。
把1看作不可分的基本单元,用任意多个单元1来相加形成一个数。
这个数当然是自然数,有奇有偶,都可以分解成若干个单元,比如1可以分成一个1、6
可以分成六个1,是把这个数彻底瓦解了,恢复成再也不能拆开的多个独立单元。这种
最彻底的瓦解简单无聊,得到的结果只有基本单元1,没有玩头,所以人们都不感兴趣
。
但是大于2的自然数还可以用别的分解方法来拆开,变成多个独立的自然数,又不必都
是1,其中某个数大于1,是没有彻底分解的大碎片,由多个单元组成。比如分解3=2+1
、分解6=5+1、或者分解6=4+2,或者分解6=3+3。
这种乱砍几刀就交差的不完全分解,很容易发现一个规律,就是自然数越大,可以选的
分解方法越多,而且可以得到很多种大于1的碎片。
大于1的碎片有不同于基本单元的特殊性质,而且跟被分解的自然数有特定的数学关系
。
比如从6分解得到的2是偶数、是6的约数、是两个基本单元的和、是只分解一次时不能
与5同时得到的碎片(6=5+1不可能得到碎片2,6=x+y+z+2有碎片2但剩下的已经必定
小于5)、是只分解一次是必定与4同时得到的碎片(6=4+2)、是分解两次可以与1同
时得到但并非必定得到的碎片(6=3+3=3+2+1时可以得到,6=5+1=4+1+1时不能得到
),等等等等......
这样,仅仅是很小的自然数6,就可以通过不同次数不同分解方法得到挺多的大碎片,
每次实际分解得到的大碎片之间、与被分解数字之间,都以分解方法作为纽带,具有特
定的数学关系,有些关系是普遍的,有些是独特的,为了恢复成被分解的数,某些碎片
和特定数值一同运算时必须采用分解的方法逆向计算,但某些碎片可以走别的计算路径
来恢复。
比如碎片2必定小于被分解的自然数6、正好是6的约数、可能是用6=4+2的分解方法得
到的,也可能是用6=5+1=3+2+1的分解方法得到的、是6被完全分解后不可能得到的(
6=1+1+1+1+1+1)、不可能与非4的自然数一次相加恢复成被分解的自然数6、可以与某
些特定的自然数相加适当次数恢复为6(6=2+3+1=2+2+2=2+1+1+1+1)、不可能与任
何负整数相加恢复为6,但在结果取绝对值时可能可以(|2-8|=6),等等等等......
这才是数学宇宙中一个小小虾米6而已,砍几刀得到的碎片就有如此复杂的反应,还只
是运算法则方面的冰山一角而已!
所以,人们发现各种分解恢复方法和相应的步骤、得到的大碎片,相互之间具有非常非
常多种数学关系,简单的、复杂的、必然的、或然的、普遍具有的、独一无二的......
不但是精彩有趣,其中很多规律还有实际用途,比如通过了解分解方法的可能作用,可
以推测某个自然数会变成什么样的碎片;或者通过了解某个自然数和得到的碎片,可以
推测经历了哪种分解方法;或者通过了解分解方法和碎片,可以推测被分解的自然数是
什么。
(被分解的6与一次去掉1的减法,可以预知实际计算后必定得到碎片5;两次减法和碎
片4、1、1,可以推测被分解数是6=4+1+1,但是实际分解方法可能是6=4+2=6=4+1+
1,也可能是6=5+1=4+1+1,但不可能是6=3+3=3+2+1)
其中人们最感兴趣的方面是分解的方法,因为计算用的技术是为实用来开发的,常用的
自然数就容易了解和对付,而做分解的计算,碎片就更加小,当然也容易对付。只要知
道了某个数经过特定计算过程分解会得到什么碎片,就可以按照用途选择需要的方法,
想要什么碎片就计算得到。
(比如已经能够验算知道在小于10的自然数中,2、3、5、7是素数,而且10可以是几个
素数相加而成,那么想要一次分解得到都是松鼠的两个碎片,就可以把10分解出是素数
的最小碎片2,验算另一个碎片8是不是素数,不是,这个分解方法不对。换别的方法,
先分解出是素数的最小碎片3,验算另一个碎片7,也是素数,分解成功了;再换别的方
法,看看是否还有可行的,可以发现能成功的方法有三种:10=3+7,10=5+5,10=7+
3,其中头尾两种不考虑碎片用途的话可以认为是等效的,但是去和别人谈判分钱时一
定要记得是不同的哦!)
问题是有些自然数非常大,组成它的基本单元1的数量非常多,仅仅一次分解的方法就N
-1种(考虑碎片的用途),能够在不完全分解时产生非常多种独立的大碎片,分解方法
复杂时,更会产生复杂的碎片群,用排列组合方法可以发现这些碎片和原来的数、分解
的方法之间的数学关系非常复杂多变,要用实际验算的方法了解其中的所有规律是不可
能的,时间、精力、技术都永远不能满足要求,而且其中很多不必要(比如碎片2在3、
4、5、6、7、8、9、10.....等等每个大于2的自然数的分解实例中都可能产生,是不同
的计算过程的结果、不同的碎片群的成员,但是去验算2在每一过程、碎片群中是否都
是实数、有理数、整数、偶数、小于被分解的自然数、小于3、大于1等等可以独立具有
的数学性质,是多余的)。
所以查清楚每个自然数(可以推广说到任何一个数)的数学性质也是非常重要的,要查
它们实际具有的任何性质——是什么数、经过各种运算后会产生什么结果、运算方法与
过程以及每步骤的结果之间的关系怎么变化,等等。
有些特殊的自然数就是数学性质也还没有查清楚的,人们就很感兴趣去查它,其中一种
就是素数——已经验算过的知道是或者不是了。
但是别的自然数呢?虽然用间接的数学方法(指对具体每个自然数而言)已经证明有无
穷多个,但是实际又已经可以证明没有验算过的自然数不全部是素数,而且还不知道不
同的素数之间,以及它们和非素数的自然数之间有什么样的关系——
(哥德巴赫猜想就是在怀疑存在这类关系之一,用一种比较容易理解的话来说,就是当
某个自然数的性质是啥啥啥的时候,比它小的若干个素数一定会分别是某某某某,而且
刚好是它被不完全分解时产生的所有碎片。),
——就让没有验算的素数躲藏在无穷多个自然数中,人们知道它们存在,但又不知道它
们具体都是由多少个基本单元构成的,以及它们旁边的数值具体是多少,也不知道它们
会被什么分解方法拆成什么性质的碎片,以及用什么已知的具体数值如何联合计算刚好
得到它们。
情况就变成几乎完全迷茫了——
很多素数的具体数值未知,它们与自身、基本单元1、以及少量特殊数值(比如2、3、5
、7等)以外的很多自然数的分解恢复的具体关系也未知,让确定某个自然数是否素数
的方法只能是进行粗略排除特殊种类(比如必定可以成功分解出约数碎片2且大于3的偶
数,等等)之后,对仍然无穷多个的数值分别进行验算或者以验算为辅助的定性证明;
而要完全根据对素数共同性质,找个正确的计算方法,直接算任意一个素数(比如指定
必须大于某个自然数N,又必须小于实际存在的任何更大的素数。相较之,偶数的算法
就已经能够,比如要求只大于12345,看个位数是奇数,连续整数的规律是奇偶相邻,
取与之连续的自然数的偏大者,作最小量的增大,加1,就是满足要求的偶数12346)。
+++++++++++++++++++
换个基本单元看素数
+++++++++++++++++++
这样麻烦是怎么造成的呢?
前面是把1作为不可再分的基本单元,现在换个思维,用任意可以存在的约数来作不可
分的单元,看看被分解数的性质变成什么了。
先看本来就不是素数的,比如6,它由六个1来组成,因为在数学运算法则中,不大于6
的自然数有1、2、3、4、5、6,其中1和6本身可以整除它,另外基本单元还可以组成2
、3来整除它,就让它不符合素数只能被基本单元和自身整除的定义了。
其它任何不是素数的自然数也是这样被否定的,就是因为组成它的基本单元刚好可以若
干等分地分解成整数大碎片,就是约数,和素数分解产生不少于两个碎片时无法等分的
性质截然不同。
现在我们故意把素数的若干个基本单元看成不可分解的,比如把7当中每两个1看成一个
新单元,不可分的量相当于2了,7当中相当于有3.5个新单元,当然不可能分解成等分
的整数个碎片了;把新单元改定义为三个1组成,7就有2.333...个新单元,也不可能得
到等分的整数碎片。
用花格子布的分割来说明,就是一块布本来印有同样形状和大小的7个格子,不许破坏
每一格的完整性,要求把布至少分割成两块相同大小的部分,可以切割的只有格子的交
界处,就无论如何不可能满足要求了,这块布就是“素数布”了。
历史上其实也有这样的情况,最著名的是“素数杀素数”。没听说过?不可能吧,当时
出场的素数分别是2和3,结果2把3杀了,但是2其实先死,因为它是桃子。
+++++++++++++++++++++
这样就可以发现,素数的基本单元不论怎么组合,大于1的碎片都不能被整数地等分。
非素数则不然,基本单元们至少可以组合成一种大于1的不可分的新单元,刚好不会剩
余(比如125中的5可以看成25个分别占5的新单元,也可以看成5个分别占25的新单元)
,当数值越来越大时,这种等分碎片的机会必定越来越多,连本来是素数的较大素数也
获得机会,只要有一种可行的等分办法,就让这个数不符合素数定义了,所以从基本单
元增加对等分机会的影响趋势看,越大的自然数就越少机会做素数,而且因为比它小的
任何自然数都越来越可能成功充当等分的碎片,这个变化规律就很可能是越来越变化的
了(意思是偏小的数将会不断加入等分队伍中,使偏大的数受到的影响不断改变)只考
虑很小数值影响的算法应该被更大的数值搅砸了,而无穷多个素数的预测,就会给无穷
多个数值带来成为等分碎片的理论机会,如果列出素数计算公式来,很可能需要无休止
地增加项次了,而且影响没法保持规律性,估计比圆周率的公式还要复杂得多吧。
这从已知素数的分布情况就看出了,越小数值的区间中,素数分布越密集,向大数方向
发展就越来越稀疏,简直是数学宇宙大爆炸的物质密度演化,也象稳定核素的安全岛越
来越稀少一样。
再来个联觉,素数就象数学笛子一样,1是声波的基频波长,想吹根尽量长的笛子玩,
又不愿让别的波长也可以出现,但是越长的空腔让也来越多的波长有机会谐振,只有基
频才能共鸣的长度越来越难找.....
真正的用途
的确有一种是做素数密码的想法,但是可能要用的是把一个数值分解成若干素数之类的
,靠分解方法和还原方法可以有很多可能来躲避猜测,这本身就说明牵扯到素数的计算
和规律极端复杂很难彻底解决,要用任意大的素数来做密码的话,也许连找到这样的数
都不现实,变成不可加密干脆不发信所以根本没有机会破解的暴汗了。
++++++++++++++++
素数的一些简单特点大概是这样的吧,基本性质好象很简单,去找到它们却非常困难。
作者的文笔不错.梅森素数一直是数学研究的热点和难点.
好素数,好文章。谢luscky!
为了科学探索,希望有更多的国人参与GIMPS项目,一起寻找超大素数。
从这篇佳作可见作者对梅森素数有较为全面的了解
科学坚果——梅森素数被松鼠会剥开,好!
好文!
今年是国际天文年,望科普作家能写一些介绍当今科学探索热门话题——地球人与外星人(ET)交流的文章。
SKY的建议很好,地球人和外星人交流的话题十分有趣.
很值得介绍,顶!
建议网友luscky撰写.这一热门话题与数学、天文学、语言学、生物学、计算机等有关.
好文章!不过,文中的"让我们谨记梅森素数最早的提出者欧几里得的教诲......"一句应改为"让我们谨记梅森素数最早的研究者欧几里得的教诲......"."梅森素数"这一术语是在20世纪初才提出的.
"若是你就降生在十四世纪......"一句应改为"若是你就降生在十五世纪......".
感谢捉虫,后者换了种说法。
OK
文章写的非常生动、有趣,但
“仅在1989年后被39158×2216193-1夺走三年”
应改为
“仅在1989年后被39158×2^216193-1夺走三年”
汪汪说法正确.216193应为指数.
216193是指数!由以下两句可见:
1903年,数学家柯尔在美国数学学会的大会上作了一个报告。他先是专注地在黑板上算出2^67-1,接着又算出193707721×761838257287,两个算式结果完全相同.
仅在1989年后被39158×2216193-1夺走三年.
是指数,在几次的排版中丢失了格式。
好文章!
梅森素数是数学的经典问题,它具有着无穷的魅力。
文章写得不错。
在梅森素数的基础研究中,有两点特别值得指出:一是“鲁卡斯-雷默方法”,另一是“周氏猜测”。
复旦说的对。
“鲁卡斯-雷默方法”用于梅森数的素性检测,“周氏猜测”揭示梅森素数的分布规律。Great!
新华网上有一篇佳作可供luscky网友今后写作时参考(见http://news.xinhuanet.com/world/2009-02/06/content_10773743.htm)
看过这一篇,我主要更想追溯先贤及来者在这个领域的探索脚步。
luscky老师,如何把高次方的上角标在网页上打出来呢?请您指教!能发邮件告诉我最好啦,谢谢
我的邮箱是wangzhr28@gmail.com
这个上标的排版技巧是桔子告诉我的,用代码
晕,代码不见了,我发你邮箱吧。