第1章 奇事之永不终止的质数 1,2,3,4,5,……这些数字看上去非常简单,只要为前一个数字加上1,就可得出后一个数字。但如果数字不存在,我们就很迷茫。阿森纳对阵曼联,谁赢谁输,我们无从知晓,两个队都有机会。想在本书的索引中查询些什么吗?好吧,在书的中间部分找到某个数字就能中彩票,但具体在哪里无法确知。而彩票本身呢?如果没有数字的话,彩票本身便失去了存在的可能。数字这门语言在我们了解世界的过程中发挥着根本性的重要作用,这一点的确是非常神奇的。 即使在动物王国中,数字也是至关重要的。一群动物会基于他们对敌群数量的判断来决定是迎战还是逃离。它们的求生本能部分取决于一种数学能力,不过,在数字显而易见的简洁性背后,还隐藏着一个巨大的谜团。 2,3,5,7,11,13,……这些数字都是质数,即不可分解因子的数字。质数是其他所有数字的基石,就像是数学世界里的氢元素和氧元素。作为数字中的主要角色,它们就像是镶嵌在无穷无尽的数字链条之上的一颗颗闪烁的宝石。 尽管质数十分重要,但仍是人类追求知识的道路上最难解的谜团之一。我们至今无法找到所有质数,因为没有能逐个算出质数的神奇公式。它们就像是埋在地底的宝藏,但无人握有藏宝图。 本章将介绍人类已经掌握的质数知识,看看世界各地的不同文化是如何尝试对质数进行研究和记录的,以及音乐家们如何用其探索切分音的节奏。我们还要弄清楚,人类为何利用质数与外星人沟通,以及质数为何有助于确保互联网信息的安全等。在本章的结尾,我会介绍一个关于质数的数学谜团,如果你能破解这一谜团,就会得到一百万美金的奖励。不过,在了解这个数学大难题之前,我们先来看一下这个时代最热门的一个数字谜团。 1.1 贝克汉姆为何选择23号球衣? 当大卫·贝克汉姆在2003年转会至皇家马德里时,对于他为何选择身披23号球衣这件事,坊间有很多猜测。大家都认为这是个很怪的选择,因为他之前在英格兰国家队和曼联队穿的都是7号球衣。但问题是,皇家马德里的7号球衣已经披在劳尔身上,而且这位西班牙斗牛士并不打算把7号战衣让给英国帅小伙。 贝克汉姆选择23号球衣这事儿催生了很多理论,其中最广为人知的是迈克尔·乔丹理论。皇马希望打入美国市场,从此就可以向美国庞大的人口销售大量的球衣。然而,足球(美国人喜欢称其为“英式足球”)在美国并不普及,美国人喜欢打篮球和棒球,这些比赛一场可以打到100比98分而且一定会分出胜负,而足球这种一场打满90分钟却可能以0比0结束或不分输赢的比赛,美国人认为毫无意义。 根据这个理论,皇马特意做了调查,结果发现,世界上最著名的篮球运动员当属芝加哥公牛队中得分最多的迈克尔·乔丹。而乔丹在整个球员生涯中身披的正是23号战袍,皇马只需将这个号码印在足球球衣的背后,然后双手合十,祈求与乔丹的这一点关联能够发挥它的魔力,帮助他们成功打入美国市场。 有些人觉得这一理论太过投机,但他们做出的推测更加阴险。比如,尤利乌斯·凯撒在被刺杀时正好身中23刀。那么贝克汉姆选择这个数字是不祥之兆吗?还有一些人认为,贝克汉姆做出的这一选择与他所喜爱的《星球大战》相关。(在第一部《星球大战》中,莉亚公主被关押在AA23号拘留处。)也可能贝克汉姆是混沌教派的一名秘密会员?混沌教派是一个崇尚混乱的当代邪教组织,他们神秘地痴迷于数字23。 然而当我看到贝克汉姆选择这个号码时,脑中即刻浮现的是一个数学猜想。23是个质数,质数只能被其本身和1整除。17和23都是质数,因为它们无法由两个更小的数字相乘得出,而15则不然,因为它能够分解为3×5。质数是数学中最重要的数字,因为所有其他数字均是由质数相乘得来。 以数字105为例,很明显,它能够被5整除,所以可以将其分解为5×21。5是质数,不可再拆分,但是,21就不是质数,还可以继续拆分为3×7。于是,105便可以写做3×5×7。这已经是我所能够拆分的极限了。最后得到的3、5、7均为质数,正是在这几个数的基础上,105才得以构建起来。以上拆分方法可以应用在所有数字上面,因为,任何一个数字要么是质数,不可拆分,要么就不是质数,能被拆分为几个较小质数的乘积。 质数就是用于构建所有数字的砖块。正如分子是由原子组成的(有各种原子,氢原子、氧原子、钠原子、氯原子等),数字2、3、5就是数学世界里的氢原子、氦原子和锂原子。这就是它们在数学中拥有至高无上地位的原因。而对于皇马来说,显然它们也很重要。 进一步研究过皇马队后,我开始怀疑球队中或许就有一位“替补”数学家。在稍作分析后,我发现,当贝克汉姆做出转会皇马这个决定的时候,皇马的所有核心球员均身披质数号码的球衣:卡洛斯(后防中坚)3号,齐达内(中场核心)5号,劳尔和罗纳尔多(锋线尖刀)则分别为7号和11号。如此看来,贝克汉姆身披一件质数号码的球衣是不可避免的事情,而且他也非常喜爱这个号码,后来他转会洛杉矶银河队,坚持继续身披质数号码的球衣,希望用精彩的表现来赢得美国公众的芳心。 图 1-1 质数幻想足球游戏 请从本书网站上下载该游戏的PDF文件。在该游戏中,每位玩家控制3名造型简易的球员,然后选择不同的质数号码,把这些号码写在他们的后背上。接下来要借助于第2章提及的一个欧几里得足球。 球首先由第一队的一名球员控制,目的是使之通过对方球队的三名球员的防守。对方球队派出第一名球员前去应战。此时,投掷骰子,骰子共有6个面,分别为:白3、白5、白7和黑3、黑5、黑7。骰子掷出后,你就要把你的质数号码和对方球员的质数号码分别除以3、5或者7,并取余数。如果骰子为白色,你的余数需要等于或大于对手的余数。如果为黑色,则要等于或小于对手。 要想得分,你必须要通过对方球队的三名球员的防守,此后还要越过对方球队随机选出的一个质数(犹如穿越守门员)。任何情况下,如果对方胜出,那么交换控球权。得到控球权的一方将让获胜的球员去通过对方的全部三名球员的防守。如果一方射门没有得分,那么换对方拿球,该队任选一名球员开始。 游戏的胜负可以限定时间或以三球制胜的方式决出。 这种推测或许听上去不合情理,为何本该追求逻辑和理性的数学家会如此无厘头呢?不过,在我自己的足球队维尔瓦哈克尼中,我同样也身披一件质数号码球衣,因此,我感到和身着23号球衣的那个家伙有着某种关联。我们这支星期日联赛球队当然没有皇马那么阵容浩大,而且队里也没有23号球衣,因此我选择了17号球衣,这是一个很棒的质数号码,后文我会再做介绍。但我们在第一个赛季的表现并不十分理想。我们在伦敦的超级星期日联赛乙级联赛中打比赛,最终以垫底收场。幸运的是,这已经是伦敦最低级别的联赛了,我们无需有降级的顾虑,摆在面前的只有升级这一条路。 但是,如何改善球队在联赛中的地位呢?或许皇马发现了什么吧,身披质数球衣是否会带来一些心理优势呢?我当时想,可能是我们的队员大多都身披非质数号码(比如8、10、15等)的球衣吧。于是,在之后的一个赛季,我说服大家改变球衣号码,披上质数号码的球衣:2、3、5、7,直到43。球队仿佛脱胎换骨。那一赛季结束后我们升到联赛甲级,但紧接着下个赛季很快又重新跌回乙级。看来,这种质数魔法的魔力只能发挥一个赛季。现在,我们正努力寻找一项新的数学理论,以此来鼓舞队员士气。 1.2 皇马守门员是否应身披1号战袍? 如果说皇马的核心球员均身披质数号码的球衣,那么守门员该穿哪个号码的球衣呢?换句话说,以数学方式来看,1到底是不是质数呢?说是也行,说不是也行。(人人都爱这种类型的数学题目,正说反说都对。)两百年前,质数列表中是包含1的,它是第一个质数。毕竟1不可再分,而且被1整除后仍是其本身。但是现在,我们认为1不再是一个质数,因为质数最重要的一个属性就是,它们是构成所有数字的基石。只要我用一个质数乘以一个数字,便可得出一个新的数字。虽然1不可再分,但不管哪个数字乘以1后得到的依然还是它本身,基于这一点,我们把1排除在质数以外,这样一来,数字2便成了第一个质数。 最早发现质数潜能的当然并非皇马队。但究竟是哪个文明最先发现的呢?古希腊,中国,还是古埃及?事实上,在质数的发现问题上,数学家都败给了一种奇怪的小虫子。 1.3 为何美洲蝉中意17这个质数? 在北美洲的森林里,栖息着一种生命周期十分古怪的蝉类。这些蝉藏于地下长达17年,期间甚少活动,只是吸吮树木的根茎以获得养分。而在第17个年头的五月份,这些蝉只会集体钻出地面,侵入森林,而侵入每英亩[ 1英亩约为6.07亩。——编者注]森林的蝉只数量就多达百万。 蝉为了获取异性的注意会向着对方鸣叫。数量庞大的蝉只一起和鸣则会制造出极为宏大的噪音,以至于每过17年,当这种蝉进入活跃期时,当地居民往往会暂时搬离,以求耳根清净。鲍伯·迪伦便是因为1970年在普林斯顿大学攻读学位时听到周围森林里出现的刺耳蝉鸣,才写下他那首叫做《蝗虫岁月》的歌曲。 当这些蝉只成功吸引异性并完成交配后,每只雌蝉会在地面上产下大约600只卵。然后,经过6周的狂欢,所有蝉只寿终正寝,森林将重回长达17年的宁静。下一代的蝉卵在仲夏孵化,其幼虫坠落在森林地表,然后钻进泥土中,寻找到根茎以吸取养分。然后,经过又一个17年的轮回,下一场蝉的狂欢将重新上演。 这些蝉能感受到17年的时光流逝,绝对是让人不可思议的生物工程。几乎没有蝉只会提前一年或推迟一年出洞。多数动植物所遵循的年度生命周期都是受气温和季节的变化所影响的。那么这些蝉只每隔17个地球公转周期后现身一次,又是因为什么呢?人们对此并没有确切的解释。 对数学家来说,最令人好奇的一点就是这类蝉选择的数字17是一个质数。它们为什么要选择在地底下度过17年这个质数的周期呢,这仅仅是巧合吗?似乎并非如此。除了此类蝉以外,还有一些种类的蝉会在地下度过13年的时间,另外也有几种喜欢在地下生活7年。上述这些数字全是质数。而如果一只17年周期的蝉确实提早钻出地面,它不会只提早一年,而通常会提早4年,其生命周期也因此转变成13年,这一点颇为惊奇。似乎冥冥中果真有什么质数仙子在协助这些蝉只物种。然而,到底是什么在作祟呢? 科学家对此并没有给出明确的结论,到底蝉类为何青睐质数,这里有一个数学上的推测。首先讲明几点事实。一片森林中只能栖息一个种群的蝉只,因此该解释并不涉及不同种群共享一片森林的情况。在大部分年份中,总会有一种质数蝉种出现在美国某些地区。但是,2009年和2010年则是蝉类销声匿迹的年份。与此相反,2011年,数量庞大的13年周期的蝉种在美国东南部破土而出。(意外的是,2011本身刚好也是一个质数,但我并不认为蝉会聪明到这种程度。) 关于蝉的质数生命周期,迄今为止的最佳推测指出,森林中可能存在着一种蝉类的天敌,周期性地出现,而且其生命周期刚好对应蝉的出土时间,于是,它们便可饕餮不断涌现的美食了。接下来,物种的自然选择便开始发挥作用,保持质数生命周期的蝉类遭遇天敌的机会要远远小于非质数生命周期的蝉类。 图1-2 100年内,生命周期为7年的蝉类和生命周期为6年的天敌的遭遇情况 举例来说,假设其天敌每6年出现一次。那么7年生命周期的蝉类则会每42年才遭遇一次该天敌。相反,如果某种蝉类的生命周期是8年,那么其遭遇该天敌的周期则是24年;而生命周期为9年的蝉类与天敌的遭遇机会则更多,每18年就有一次。 图1-3 100年内,生命周期为9年的蝉类和生命周期为6年的天敌的遭遇情况 在北美洲广阔的森林里面,究竟哪个物种占据了最大的一个质数,竞争似乎非常激烈。蝉类应对天敌的技巧非常娴熟,以至于其天敌要么饥饿而终,要么迁徙别处,只留下有着奇怪质数周期的蝉类独自狂欢。但我们接下来将要看到,蝉类并非世界上唯一一种利用质数作为切分节奏的生物。 蝉与天敌 请在本书配套网站上下载该游戏的PDF文件。选择一种天敌和两个蝉类种群。按照6的乘法表序列来摆放天敌。每个玩家选择一种蝉类。游戏要借助于三个标准的六面骰子。通过掷骰子而显示的数字决定你选择的蝉类家族的生命周期。比如,如果数字显示为8,那么就按照8的乘法表来摆放蝉。但如果天敌已经占据了某个数字,那么就不可以再将蝉放在上面。比如,你不能把蝉放在24的位置上,因为天 敌已经在这个位置上。游戏的规则是,谁留在板上的 蝉的数量最多,谁就获胜。你可以通过改变天敌的生 命周期(从6改到其他数字)而改变游戏。 1.4 为何质数17和29对时间的终结发挥着关键作用? 二战期间,法国作曲家奥利维埃·梅西安被囚禁在德军8A战俘营中。他发现狱友中有一位黑管手、一位小提琴手和一位大提琴手。于是,他决定创作一首四重奏,由这三个人和他自己来演奏,他负责弹钢琴。结果,20世纪最伟大的乐曲之一《时间终结四重奏》问世。这首乐曲的首演观众是8A战俘营里的犯人和监狱管理人员,梅西安弹奏的则是一架从监狱仓库里寻来的破旧立式钢琴。 在第一乐章《纯洁的礼拜仪式》里,梅西安希望营造出一种时间无休无止的感觉,而质数17和29便在其中发挥了关键作用。小提琴和黑管交相奏出象征鸟的歌声的主题,而大提琴和钢琴则负责提供韵律节奏。在钢琴的韵律中,一个17音符的节奏序列循环往复,而配合该节奏的和弦序列则包含29个和弦。因此当17音符的节奏开始第二轮演奏时,和弦序列只进行到约三分之二的位置。选择质数17和29的效果就是它们分别作为韵律和和弦序列的基础,整个乐曲要到17×29个音符处才会重复。 正是这种持续变换的音乐营造出了梅西安所追求的永不终止的时间之感。这与蝉应对天敌时所采取的方法一样,与蝉的生命周期所对应的就是节奏部分,而与天敌的生命周期所对应的便是和弦的数量。两个不同的质数17和29使节奏和和弦不同步,因此,在你听到音乐复重之前,整篇乐章就已经结束了。 图1-4 梅西安《时间终结四重奏》中的《纯洁的礼拜仪式》乐章。图中,第一条竖线是17音符节奏序列终止的位置,第二条竖线是29音符的和弦序列终止的位置 梅西安并非唯一一位在音乐中使用质数的作曲家。阿尔班·贝尔格同样也在音乐中加入了一个质数标记。和大卫·贝克汉姆一样,贝尔格所选择的也是数字23——事实上,他对这一数字非常痴迷。例如,在其《抒情组曲》中,23小节的序列构成了整个音乐篇章的结构基础,而倾入到这段乐曲中的则是贝尔格与一位富有夫人之间的恋情。他用一段10小节的乐曲来描述他的情人,并将该段乐曲融入在其标志性的23小节之中,通过数学和音乐的结合,贝尔格为这段恋情赋予了生命。 像梅西安在《时间终结四重奏》中运用质数一样,数学家们近日也尝试创造了一段这样的乐曲,虽然该乐曲不是永恒的,但他们做到了使该乐曲在一千年内都不会有重复段落。为见证新千年的到来,棒客乐队的创始成员杰姆·芬纳决定要在伦敦东区创作一个音乐装置,该装置将在下一个千禧年——公元3000年时首次出现重复。这个装置也因此有了个恰当的名字,叫做“不老乐手”。 芬纳以一篇由各种不同尺寸的西藏钵和锣所演奏的乐曲为开幕曲。这篇乐曲的原始长度为20分20秒,通过使用一些类似于梅西安所用的数学方法,芬纳才能将这段乐曲延长至能够播放1000年。6份原始音乐的副本可同时演奏,但是,演奏的节奏并不相同。而且,每隔20秒,每首曲目就会重新播放,和原始重放间隔一定的时间差,不过每首曲目变换的数量并不相同。正是变换曲目的数量保证了这些曲目直到1000年后才会重新吻合。 输入该网址可以听到此段乐曲: http://longplayer.org。或通过智能手机扫描左侧 二维码来进入页面。 为质数着迷的也并非只有音乐家,似乎各领域的艺术家都对此类数字有一种共鸣。作家马克·海登在他的畅销书《深夜小狗神秘习题》中只使用质数作为章节序号。故事的叙述者是一位患有阿斯伯格综合征的名叫克里斯托弗的男孩,他喜欢数学的世界,因为他了解这个世界的运行法则——这个世界的逻辑意味着没有太多意外。相比之下,人类之间的交往则充满着变数和非逻辑性的扭曲,对此,克里斯托弗无法应对。正如克里斯托弗的自白所述:“我喜欢质数……我觉得质数就像生命。它们逻辑严密,我们永远无法窥知个中规则,哪怕用尽一生的时间来思考也不会有结果。” 质数的触角甚至延伸至电影领域。在一部未来主义惊悚片《心慌方》中,7位故事人物身陷一个类似复杂魔方的迷宫建筑物中。其中每个房间都是立方型的,各自有六扇门,分别通往迷宫内的其他房间。电影开篇时,这些人物一觉醒来后发现自己身处迷宫之中。他们对于自己如何来到这里毫无头绪,但必须设法从中逃离。可问题是其中的一些房间内还设有陷阱。他们需要找到某种方法,在进入下一个房间之前能够判断该房间是否安全,因为等待他们的很有可能是各种各样的恐怖死法,包括被烧死、被泼硫酸、被碎尸等,其中就有一个人被割成无数小块。 琼这个角色是一位数学奇才,她忽然意识到每个房间入口处的数字决定了这个房间内是否藏有陷阱。好像是如果入口处的数字全是质数,那么,这个房间就是危险的。这七人团队中的队长对这一数学推论由衷赞叹,直言“你的脑袋可真聪明”。事实证明,他们还要提防这些质数的幂,这一点则超出了聪明琼的能力范围。他们必须依赖团队中的一位身患孤独症的学者,最后,也只有这位“自闭学者”从这一质数迷宫中生还逃脱。 正如蝉类所发现的那样,掌握数学知识是我们存活于世的关键。无法调动学生学习数学的积极性的老师都可以借助《心慌方》中的各种不同的恐怖死法作为他们的宣传手段,以此来激励学生学习质数的热情。 1.5 科幻小说作家们为何钟情质数? 当科幻小说家想使书中的外星人和地球沟通时,他们往往会碰到一个难题。他们是要假定外星人极其聪明,从而能够轻易掌握地球语言呢,还是要假定他们已经发明出一种“宝贝鱼”[ 雅虎的一款在线翻译工具。——编者注]式的翻译软件,来帮助他们和地球进行沟通呢,或者,干脆设定宇宙中所有的外星人都讲英语呢? 其中一个被许多作者都采纳的解决方案正是数学是唯一一门真正的宇宙语言这个事实,而且在这门语言中,所有人都应该先讲的几个词就是构成这门语言的基石——质数。在卡尔·萨根的小说《接触》中,为SETI(搜寻地外文明计划)工作的爱莉·埃洛维捕捉到一段信号,她意识到这段信号并不是背景噪音,而是一系列的脉冲。她猜测这些脉冲代表的是二进制的数字。通过将其转换为十进制后,她突然发现其中存在着一种模式:59、61、67、71……全是质数。随着信号的持续,她更加确信这一推测,质数列表一路攀升,一直到907。于是,她得出结论,这些信号不可能是随机的。有人正在向我们打招呼。 许多数学家都认为,即使宇宙的另一边存在着不同的生物学,不同的化学,甚至不同的物理学,但是,数学肯定是相同的。即使是围绕着织女星旋转的星球上生存的智慧生物,当他阅读一本讲述质数的数学书时,他仍将59和61视为质数。正如剑桥大学著名数学家戈弗雷·哈罗德·哈代所说的那样,这些数字之所以是质数,“并不是因为我们认为它们是质数,也不是因为人类特定的思维方式使然,而是因为它们本身就是质数,因为数学现实就是这么构建的”。 或许质数是整个宇宙都共通的数字,但是,我想知道类似于刚才我提及的那些故事是否在其他星球上也正在被讲述呢?这种想法还是很有趣的。数千年来,我们研究着这些数字,不断探索出关于这些数字的真相。而且,在发现这些真理的道路中,我们在每一个脚印中都能看到一种特别的文化印记以及历史上特定时期中的数学主旨。那么,在宇宙的其他文化中,是否也发现了另外一些不同的视角,使其探索出一些我们尚不知晓的理论呢? 在建议使用质数作为交流手段方面,卡尔·萨根不是第一个,也不会是最后一个。甚至,NASA(美国国家航空航天局)也试图利用质数来和地外智慧生物建立联系。1974年,他们就通过位于波多黎各的阿雷西波无线电望远镜朝着球状的M13星团方向发送了一段讯息。之所以选择M13星团,是因其恒星数量十分庞大,讯息被智慧体接收到的概率也会更大一些。 这段讯息包含一系列的数字0和1,它们可以被排列成一张黑白像素的图片。重构的图像中包含以下内容:二进制中从1到10的数字,一段DNA结构的素描,一段表示太阳系的图像,以及一幅阿雷西波无线电望远镜的图像。由于该图像中只包含1679个像素,因此,它的清晰度并不高。但是,选择1679这个数字也是有意为之的,因为其中隐含着重构这些像素的线索。因为1679=23×73,所以要在一个长方形中构建起这幅图像只有两种可能性。23行73列的排列方式会呈现出一片混乱的图像,而23列73行的方式则呈现出正确的图像。M13星团和我们地球之间的距离是25 000光年,因此,今天我们依然在漫长的等待中。就算能够收到回应,也至少要等上50 000年的时间! 虽然质数是通用的,但人类书写质数的方式在整个数学史中经历了极大的变化,而且,这些书写方式与特定文化是密切相关的。接下来简短地回顾各大文化中质数的书写方式。 以下是哪个质数? 图 1-6 史上最早的数学研究起源于古埃及,上图便是当时的人们书写200 201的方式。早在公元前6000年,古埃及人便放弃了游牧生活,开始定居在尼罗河沿岸。随着埃及社会日益成熟,人们在记录税收、测量土地和建造金字塔方面对数字的要求也越来越高。就像记载文字那样,埃及人也使用象形字来记载数字。基于10的幂数,他们建立了一套数字体系,如同我们今天使用的十进制系统。(之所以选择10,并非是因为该数字在数学上有特别的重要性,而仅仅是因为人体结构上的一个现实——人类共有10根手指。)不过,他们尚未发明位值体系,这也是书写数字的一种方式,其中每个数字的位置分别对应10的相应幂数。比如,222中的三个2根据它们各自的位置表示的数值也各不相同。事实上,古埃及人需要创造一些新符号来表示每个不同的10的幂数。 图1-7 古埃及人对10的幂数的表述符号。其中,10是一根抽象的跟骨,100是一个绳圈,1000则是一棵睡莲 用这种象形字书写200 201这样的数字还算简单,但是,要用象形字书写质数9 999 991,就得罗列出55个符号。尽管古埃及人没有认识到质数的重要性,但他们还是发明了一些成熟的数学理论,包括计算金字塔体积的公式以及分数的概念,这也没什么大惊小怪的。不过他们标记数字的方式并不十分成熟,不同于他们的邻居古巴比伦人使用的方式。 以下是哪个质数? 图 1-8 图1-8为古巴比伦人书写数字71的方式。和埃及帝国一样,巴比伦帝国也是栖息在一条大河——幼发拉底河周围。公元前1800年,古巴比伦人就控制了当今伊拉克、伊朗及叙利亚的大部分地区。为应付帝国的运营和扩张,古巴比伦人成为管理和掌控数字的大师。他们的文字均记载在泥版上,书写者使用木棍或尖刀在湿泥版上刻下信息,然后泥板会慢慢变干。书写用的刀尖呈V型或楔形,因此,今人也称巴比伦文字为楔形文字。 大约在公元前2000年左右,古巴比伦成为最早使用位值数字系统的文化之一。但是,不同于埃及人使用的10的幂数,古巴比伦人发明出一种基于60的数字系统。其中,从1到59均由不同的符号组合来表示,而当数字达到60时,他们会在数字左侧增加1位,代表整个60,这一点和十进制中当数字超过9时把1放置在十位上的道理相同。图1-8表示的质数包括1个60和1个表示11的符号,即71。其中,59以内的数字的表示符号也和十进制系统有一些潜在的联系,因为,从1到9的数字均由横线来表示,而10则由图1-9所示的符号表示。 图 1-9 从数学角度看,以60作为底要比以10作为底更合理。60是个很容易拆分的数字,因此在计算方面会更加强大。比如有60颗豆子,我可以用多种不同方式把它们拆分开来: 60=30×2=20×3=15×4=12×5=10×6 图1-10 拆分60颗豆子的不同方式 如何用手指数出60个数 古巴比伦人选择的底数60在今天的世界中仍留有许多痕迹。比如,1分钟有60秒,1小时有60分钟,1个圆的360度=6×60度。证据显示,古巴比伦人曾以一种相当绝妙的方式,仅用手指便可以一直从1数到60。 我们都知道,人类除拇指外的每根手指均由3块骨头构成。而每只手上除拇指外有4根手指,拇指则可以指到另外4根手指上12块骨头中的任何一块。像这样地,左手可以从1数到12,右手的4根手指则用来表示你一共数过了多少个12(右手可数出4个12,加上左手4根手指上的一个12),这样,通过两只手的合作,我们就可以从1一直数到60了。 举个例子,要表示质数29,用右手的大拇指指向右手表示2个12的那根手指,左手的大拇指指向第5块骨头即可。 图 1-11 古巴比伦人离发现数学中一个十分重要的数字零只有一步之遥。人们用楔形文字书写数字3607时就会遇到一个麻烦。3607是3600,即60的平方,加上7,但是,如果我照此书写的话,结果就会像是一个60加上一个7,虽然67也是质数,但并非我要的那个。为解决这一问题,巴比伦人引入了一个小符号,用来标明该位置无需计数。于是,3607便被写成图1-12所示这样。 图 1-12 但他们并不把零本身当做一个数字。对他们来说,该符号只是用来表示位值系统中某个特定的60幂数的忽略不计。数学界要继续等待2700年的时间,直到进入公元7世纪,才由印度人首次引入了零这一数字,并对它的属性进行了探讨。古巴比伦人除发明书写数字的绝妙方式以外,还发现了第一个二次方程的解法,今天,每个孩子在学校都会学到这种解方程的方法。另外,对于有关直角三角形的毕达哥拉斯定理,他们也是最早的认识者。但并没有证据显示古巴比伦人知道质数的美妙所在。 以下是哪个质数? 图 1-13 中美洲的玛雅文明于公元200到900年间达到巅峰。整个文明从墨西哥南部一直延伸到危地马拉和萨尔瓦多。为了支持他们高超的天文运算能力,该文明发展出了一种十分成熟的数字系统,图1-13便是使用该系统书写的数字17。和古埃及人以及古巴比伦人不同的地方在于,玛雅人采用的是一个以20为底的数字系统。他们用1点表示1,2点表示2,3点表示3,就像囚犯在监狱里数日子一样,当写到5时,不再点下第五个点,而是画一条线贯穿之前的那4个点。如此,一条直线便表示数字5。 该系统是依据人类大脑能够快速分辨出较小数量这一特性而设定的,这一点的确十分有趣。我们能很快分辨出一个两个三个四个,但数量再多下去,判断就越来越难了。当玛雅人数到19(3条线4个点)后,他们便创造出一个新的位数来表示20的倍数。而再后面一位,按规律应该用来表示400(20×20)的倍数,但奇怪的是,这位数字却被用来表示360(20×18)的倍数。这种奇怪的安排源于玛雅历。在玛雅历中,一年包含18个月,一个月包含20天。(这样算下来一年只有360天。为了补足差的那5天,玛雅人又增加了一个月份来囊括这5个“坏日子”,这5天被视为凶日。) 有趣的是,和古巴比伦人一样,玛雅人也是用一个特殊符号来表示20的某个特定幂数的忽略不计。该数字系统中的每一位都关联着一位神祗,而每个位置上如果没有放置符号则被认为是对神祗的不敬。因此,玛雅人选择用一幅贝壳图画来表示空。关于该符号的创造,既有数学原因,也有玛雅人的迷信考量。和古巴比伦人相同的是,玛雅人也并未将零本身视为一个独立数字。 由于玛雅人的天文计算涉及漫长的时间周期,他们因此需要一种能够表示庞大数字的系统。其中一个时间周期是通过所谓的长计历来衡量的,该历法起始于公元前3114年的8月11日,使用5位数来计量,因此最长可计算20×20×20×18×20天,即整整7890年。2012年12月21日在玛雅历中是一个重要的日子,在这一天,玛雅历将走到13.0.0.0.0。就像汽车后座上的孩子等待汽车里程表的跳动一样,如今危地马拉人也开始为这一天的到来而兴奋,尽管在一些末日论者的眼中,这一天将是世界毁灭之日。 虽然以上都是字母而非数字,但这就是希伯来语中13的书写方式。在古犹太的根码替亚释义法传统中,希伯来字母表中的每个字母都有一个数字值。图1-14中,gimel是第三个字母,yodh是第十个字母。于是,将这两个字母组合起来便代表数字13。表1-1中详细列出了所有字母的数字值。 表 1-1 希伯来字母 对应的英文字母 数 字 值 א,aleph A 1 ב,beth B 2 ג,gimel G 3 ד,daleth D 4 ה,he H,E 5 ו,vav V,U,O 6 ז,zayin Z 7 ח,heth Ch 8 ט,teth T 9 י,yodh I,Y,J 10 כ,kaph K 20 ל,lamedh L 30 מ,mem M 40 נ,nun N 50 ס,samek S 60 (续) 希伯来字母 对应的英文字母 数 字 值 ע,ayin O,Ng 70 פ,pe P 80 צ,sadhe Tz 90 ק,qoph Q 100 ר,resh R 200 ש,sin Sh 300 ת,tav Th 400 通晓犹太卡巴拉奥义的人喜欢玩不同文字中的数字值这样的游戏,以探索其中的关联。比如,我的姓氏的数字值如下: Mem resh kaph vav samekh 40 + 200 + 20 + 6 + 60 = 326 词语“man of fame”(名人)以及“asses”(蠢驴)也对应着同样的数值。而之所以数字666被认为是兽名数目,其中一种解释就是它恰好就是罗马帝国中最凶残的一位皇帝尼禄(Nero)的名字所对应的数字值。 你可以根据表1-1中给出的数值计算你的名字所 对应的数字值。如果想知道还有哪些单词对应相 同的数字值,请访问http://bit.ly/Heidrick,或使用 智能手机扫描左侧的二维码直接进入。 虽然质数在希伯来文化中并未凸显出其重要性,但与质数相关的数字的重要性还是被凸显了出来。拿来一个数字,分解出该数字的所有乘法因子(除原数字以外),而且没有余数。如果这些因子相加以后正好得出最初那个数字,那么,该数字便被称为完全数。6是第一个完全数,除6本身以外,它能够分解出的乘法因子包括1、2和3。这三个数字全部加起来就能得到数字6。第二个完全数为28。28的乘法因子包括1、2、4、7和14,这些数字相加之后又得到28。根据犹太人的宗教信仰,世界是在6天内被创造出来的,而在犹太历中的阴历月份中,每个月只有28天。这一现象在犹太文化中发酵,他们相信完全数都具有特殊含义。 这些完全数的数学和宗教属性同样也得到了基督教评论者的注意。圣奥古斯丁(354—430)在他著名的《上帝之城》中写道:“6本身就是个完全数,并非因为上帝在6天内创造了一切。反过来说才是准确的,上帝之所以在6天内创造一切,正是因为该数字是完美的。” 有趣的是,这些完全数背后隐藏着质数的踪迹。每个完全数都对应着一个被称为梅森质数的特殊质数(本章稍后会详细介绍)。迄今为止,我们只知道47个完全数,其中最大的一个共有25 956 377位。这些完全数都是偶数,并且都可分解成2n 1(2n–1)。而且只要当2n 1(2n–1)是一个完全数时,其中的(2n–1)必为质数,反之亦然。我们尚未发现任何一个为奇数的完全数。 你可能认为图1-15表示的是质数5,它看上去非常像2+3。但实际上,中间的符号并非加号,而是中文里的数字10。以上三个数字放在一起表示两个10加上3,即23。 以下是哪个质数? 图 1-15 这种传统的中文书写方式并未使用位值体系,而是为每个不同的10的幂数提供一个符号。但在另外一种用竹签记数的系统中则采用了位值体系。这一系统是从算盘演化而来的。在算盘中,每当前一列里的数字超过10时,便另起一列。 图1-16所示是用竹签记数的系统中数字1到9所对应的符号。 图 1-16 为避免混淆,每隔一位(十位、千位、十万位……),他们会把数字翻个个,使竹签竖过来。如图1-17所示。 图 1-17 古代的中国人甚至有了负数的概念,正负数分别由不同颜色的竹签来表示。西方对于红黑墨水的使用据说正是来自于中国人对于红黑竹签的运用,但有趣的是,中国人用黑色竹签表示负数。 中国文化可能是最早认识到质数重要性的文化之一。中国人认为每个数字都有性别,偶数为阴,奇数为阳。他们还意识到某些奇数尤其特别。例如,如果有15块石头,你可以用三排五列的方式将其摆成一个规则的长方形;但如果有17块石头,则无法进行这样的排列,你只能将所有石头摆成一条直线。因此,对中国人来说,质数是一些最具阳刚气概的数字。而其他那些非质数的奇数,尽管也是阳性,但多少有些阴柔气质。 这一古中国人的视角捕捉到了质数最本质的属性——若无法将一堆石头排列为一个整齐的长方形的话,那么,石头的数量便为质数。 综上所述,我们了解到古埃及人用青蛙图片来描述数字,古玛雅人使用点和线,古巴比伦人在粘土板上刻字,古中国人排列竹签,而在希伯来文明中,字母中则包含着数字含义。虽然古代中国或许是首个认识到质数重要性的文明,但真正揭示出这些神秘数字神奇之处的则是另外一个文明——古希腊。 1.6 古希腊人如何用筛子来虚构质数? 以下是古希腊人发现的一种系统性的筛选较小质数的高效方式,目的就是找到一种能很快剔除非质数的有效方法。首先,依次写下1到100的所有数字。然后剔除掉数字1。(前文已经提到过,虽然古希腊人将1视为质数,但21世纪的我们不再这么认为了。)接下来看第二个数字2,它是第一个质数。然后将2之后每隔一个的数字全部剔除掉。这样便可以一下子将所有2的倍数都筛掉了,也就是剔除掉除2以外的所有偶数。数学家喜欢开玩笑说,因为2是唯一一个偶质数,因此2也是个奇质数(odd prime)。[ 英语中的odd既表示奇数,也表示奇怪。——译者注]不好笑吧?幽默大概并非数学家的强项。 图1-18 剔除2之后的每隔一个的数字 现在我们看到的最小的而且还未被剔除的那个数字就是3,然后再系统地剔除那些是3的倍数的数字。 图1-19 剔除3之后的每隔二个的数字 因为4已经被剔除掉了,我们直接来看数字5,然后将所有数字5以后的每隔四个数字的数字都剔除。接下来就是不断重复这一过程,每次剔除完后,回到前面最小的一个还未被排除的数字n,然后将其后每隔(n -1)个数字的数字都剔除掉: 图1-20 最后,我们便得出了100以内的所有质数 上述方法的美妙之处就在于它是非常机械化的,不需要动太多脑力就能完成。比如,数字91是质数吗?如果你使用上述方法,那么你根本就勿需思考。当你在剔除所有7之后的每隔6个数字的数字时,因为91=7×13,它就已经被剔除了。但话说回来,91的确是个不容易确定的数字,通常在我们背乘法表的时候,不会涉及13倍这么大的倍数。 以上这种系统化的操作方法是一个很好的程序算法,即通过采用一套特定指令来解决问题,这便是计算机程序的基本运行原理。这一特定算法出现在两千年前一个活跃的数学发源地:亚历山大港。亚历山大港位于当今埃及境内,是当时古希腊帝国的前哨城市之一,据称拥有全世界最好的图书馆。大约在公元前三世纪,图书管理员埃拉托斯特尼发明了这个最早的用于寻找质数的计算机程序。 它被称为埃拉托斯特尼筛法,因为,在每次剔除非质数的过程中,就好像你在使用一个网格筛子,根据不断出现的新质数设定相应网格之间的间距。第一次使用筛子时,每两条网格相隔1个数字,然后相隔2个,然后相隔4个,以此类推。唯一的问题是当我们尝试筛选较大的质数时,这个方法就不那么高效了。 除了筛选质数以及照管图书馆中的成千上万的纸莎草纸和牛皮纸卷以外,埃拉托斯特尼还计算出地球的圆周长度,以及地球和太阳及月亮之间的距离。他计算出太阳距地球804 000 000个斯塔德,不过他用的这种测量单位让人很难评估数据的准确性。我们应该以哪种运动场的长度作为一个斯塔德呢?是温布利大球场,还是小一点儿的比如洛夫特斯路的球场? 除了测量太阳系的大小以外,埃拉托斯特尼还绘制出了尼罗河的河道图,并首次给出了尼罗河频繁泛滥的准确原因:远在埃塞俄比亚的河流源头处的大雨。他还创作诗歌。尽管他有这么多成就,朋友们还是给他起了一个外号,叫做贝塔,因为他哪件事都不精通。据悉,暮年的他双目失明,绝食自尽。 你现在就可以在蛇梯棋棋盘上实践埃拉托斯特尼筛法,每剔除一个数,就把一截意面放在那个数所在的格子里。剩下的就都是质数了。 1.7 写下全部质数需要多少时间? 任何试图写下所有质数的人都将陷入无休无止的书写之中,因为这些数字是无穷无尽的。我们为何会如此坚定地相信永远也不会出现最后一个质数呢?真的会一直有新质数在前面等着我们吗?对于该问题的回答代表了人脑最伟大的成就之一,那就是利用有限的逻辑步骤捕捉到无限。 首位证明质数无穷无尽的是一位生活在亚历山大港的希腊数学家欧几里得。他是柏拉图的学生,同样生活在公元前3世纪,他大概比图书管理员埃拉托斯特尼早出生50年左右。 为证明质数的无穷无尽,欧几里得首先反证,即是否可能只存在有限的质数。倘若如此的话,通过这些有限质数的彼此相乘必须能得到所有其他数字。比如,假设你认为列表上只存在三个质数:2、3和5。那么,是否通过这三个数字不同的乘积组合,能得出所有其他数字?欧几里得想出一种方法,可以找出无法被这三个质数捕捉到的数字。首先将三个数字相乘可得到数字30。然后在其基础上加上1(这正是欧几里得的天才之举)就得到数字31。那么列表中的所有数字2、3、5都无法被31整除,不论怎么除,最后都会得到余数1。 欧几里得知道所有数字都可以通过质数之间的相乘而得出,那么31是怎么回事呢?由于它无法被2、3或5整除,因此一定存在其他不在列表上的质数创造出了31这个数字。实际上,31本身就是质数,欧几里得于是发现了一个“新”的质数。你可能会说我们直接把这个新的数字加入到列表中就万事大吉了。但是,即便如此,欧几里得又能以相同的方法再操作一次。不管质数表多么庞大,他都可以通过将列表中所有质数相乘再加上1而创建出一个新的数字,这个数字不管除以列表中哪个质数,最终都会得出余数1。因此,这一新的数字必须能够被不在列表上的质数整除。如此,欧几里得便证明出不存在一个能够包含所有质数的有限列表。因此,质数必然是无穷无尽的。 虽然欧几里得证明了质数的无穷无尽,但其中仍然存在一个问题——它并未指出这些质数的位置在哪儿。你或许认为他的方法给出了一种寻找新质数的方式。毕竟,当我们将2、3和5相乘后再加1,就得到了一个新质数31。但情况并非每每如此。例如,如果列表中包含质数2、3、5、7、11和13。将以上数字相乘后得到30030,再加1后得到数字30031。该数字无法被2至13中的任一质数整除,因为最终总会得到余数1。但它仍然不是一个质数,因为30031能被另外两个不在列表上的质数59和509整除。事实上,数学家至今仍不能判断,这种求一个有限质数列表乘积再加1的方法是否总能带来新的质数。 这里有一段我们球队身着质数球衣的视频,其中 解释了为何质数是无穷无尽的。请参考http://bit.ly/ Primenumbersfootball,或使用智能手机扫描左侧 的二维码查看。 1.8 为何我的两个女儿的中名分别叫41和43? 如果无法在一张表格中写下所有质数,那么,或许我们能找到一种模式,帮助生成新的质数。是否存在一些巧妙的办法,可以通过观察已知的质数来确定下一个质数的位置呢? 以下是我们通过埃拉托斯特尼筛法筛选出来的100以内的质数: 2、3、5、7、11、13、17、19、23、31、37、41、43、47、53、59、61、71、73、79、83、89、97 质数麻烦的地方就在于,要确定下一个质数的位置是件十分困难的事情,因为在质数序列中似乎不存在任何模式。实际上,它们看上去更像一系列的彩票号码,而非构建数学的基石。就像我们在等公交时,很可能一下子来好几辆,也有可能半天都不来一辆。质数也是这样,可能相邻的两个质数之间差距甚远,也可能在短距离内连续出现好几个质数。这便是十分典型的随机过程,在第3章中我们会就此做相关介绍。 除数字2和3以外,其他质数之间哪怕距离再近也是彼此相隔的,比如17和19,或者41和43。因为像这样的两个数字之间的数字必为偶数,因此就不可能是质数。这种相距非常近的两个质数被称为孪生质数。我对质数十分痴迷,因此,差一点就给我的双胞胎女儿分别起名叫41和43了。毕竟,克里斯·马丁和格温妮丝·帕特洛能管他们的孩子叫苹果(Apple),弗兰克·扎帕能把他的女儿分别叫月球单位(Moon Unit)和薄松饼鸽子女神(Diva Thin Muffin Pigeen),我为什么就不能给她们起名叫41和43呢?只可惜,太太对此事不那么热心,最终,这两个数字只成为我给孩子们起的“秘密”中名。 尽管随着数字越来越大,质数出现的几率也越来越小,但新的孪生质数还是经常出现在我们的视野之中,这一点还是很特别的。例如,质数1129之后的21个数字中完全没有其他质数,21个数字之后却突然出来1151和1153这两个孪生质数。而质数102 701之后连续经过了59个非质数,又一下子遇到102 761和102 763这一对孪生质数。2009年初发现的一对最大的孪生质数的位数达到了58 711位。鉴于人类可见的宇宙中所拥有的原子数量只达到80位的数量级,我们大致可以了解到上述质数是多么不可思议地大。 那么,是否还存在更大的孪生质数呢?多亏欧几里得的证明,我们知道还是会无休止地寻找出更多的新质数,但是孪生质数是否也无穷无尽呢?迄今为止,尚未有人就此提出一个像欧几里得一样巧妙的论证。 在某个阶段,孪生子似乎是解开质数谜团的关键所在。在《错把太太当帽子的人》一书中,奥利弗·萨克斯描述了一对孪生自闭学者症患者的真实故事,他们使用质数作为一种秘密语言。双胞胎兄弟坐在萨克斯诊所的椅子上,互相说着巨大的数字。一开始,萨克斯完全被他们之间的对话弄糊涂了,后来有一天晚上,他终于破解了他们之间的密码谜团。在努力牢记了一些质数后,萨克斯决定验证一下自己的推测。第二天,当双胞胎互相交换6位数字时,他也加入其中。萨克斯趁两人的质数行话出现间隙的时候,脱口而出一个7位数的质数,两位双胞胎吃了一惊。他们坐着思索了一会儿,因为7位数的质数已经超出了他们迄今为止彼此所说的质数极限。不一会儿,两人不约而同地笑了,仿佛认识了一位新朋友。 在萨克斯处治疗期间,双胞胎兄弟一直将质数位数增加到了9位。当然,假如两人只是简单地相互诉说奇数或者平方数什么的,整件事情也就不足为奇了。但这里的惊人之处在于,质数的排列完全是随机的,没有任何规律可言。对该现象的一个解释涉及两兄弟拥有的另外一项能力。他们二人时常会登上电视屏幕,向观众展示他们的惊人能力,诸如说出1901年10月23是星期三之类。算出一个指定的日子是星期几,这里面涉及一种叫做模算术或时钟算术的方法。或许这两位双胞胎也发现时钟算术也是确定质数的关键所在。 选择一个数字,比如说17,然后计算出217,之后用此数除以17得到的余数为2,这便可以证明17是一个质数。这种检验质数的方法常被误认为是中国人发现的,实际上,它是由17世纪的法国数学家皮埃尔·德·费马发现的。他证明出,如果余数不是2,便可确定17不是质数。一般来讲,如果你想检验数字p 是否为质数,那么就计算出2p,然后再用该数字除以p 。如果余数不是2,那么p 就不是质数。于是,有些人就猜测,鉴于那对双胞胎能够计算出星期几的才能,而对于星期几的计算也涉及一种类似的除以7求余数的技巧,因此,他们在确定质数时,大概便使用了上述方法。 一开始,数学家认为,如果2p 除以p 后确实得到余数2,那么p 就是质数。但是,实际上这一检验方法并不能得到如此确定的结论。341=31×11,因此341不是质数,但2341除以341后却能得出余数2。这个例子直到1819年才被人们发现,或许那对双胞胎早已掌握了更成熟的能够剔除掉341的检验方法。费马指出,该方法可以进一步扩展,当p 通过以上方法的验证之后,可以找来任何比p 小的数字n,使得n p 除以质数p 后得出余数n 。如果套进某个n 值后,上述结果不成立,那么便说明p 只是个冒名质数而已。 例如,3341除以341后得到的余数不是3,而是168。但双胞胎兄弟不可能验证完所有小于候选质数的数字:对他们来说,这需要太多的测算。不过,伟大的匈牙利质数奇才保罗·埃尔德什评估出(尽管他没有给出十分严谨的证明),要验证一个小于10150的数字是否为质数,只要通过一次费马的检验程序,就能知道该数字为非质数的几率小于1043分之一。因此,对这对双胞胎兄弟来说,或许只进行一次验证便足以让他们享受到发现质数的喜悦。 1.9 质数跳房子游戏 这是一个需要两位玩家参与的游戏,在玩游戏的过程中,如果对孪生质数有所了解,那么你的胜算几率会大增。 首先,依次写下100以内的数字,或从本书配套网站上下载质数跳房子游戏模板。第一位玩家先拿一颗筹码放在一个质数上,摆放的位置距离数字1的方格不可超过5步。下一位玩家要把一颗筹码放置在一个更大的质数上面,且距离玩家一摆放的位置不可超过5步。接下来第一位玩家照着做,并把筹码放到更大的质数上面,而且距离第二位玩家先前摆放的位置不可超过5步。无法根据规则走下一步棋的玩家便认输。游戏规则为:(1)筹码距离前面筹码的距离不得大于5步;(2)筹码必须放在质数上面;(3)筹码不能放着不动,也不能往反方向走。 图1-21 质数跳房子游戏案例,一次最多只能走5步 图1-21给出了一个典型的对战图。其中,第一位玩家输掉了比赛,因为他的筹码放在质数23上,而23之后的5个数字都不是质数。那么,玩家1能否有一个更好的开局呢?如果你仔细观察上述局面,就会发现只要过了5这一关,后面也就没有多少选择了。谁能把筹码放在5上谁就是最后的赢家,因为在后面的一轮中,他将从19走到23,从而使对手下一步无棋可走。因此,开局是至关重要的。 我们不妨来修改一下游戏规则,玩家可以移动的最大步数从5步改为7步。现在,玩家可以跳得更远一点。特别的是,双方都可以顺利地通过23这个关口,从而可以把筹码放在6步之外的29上面。那么现在,开局依然重要吗?游戏将在哪里结束呢?亲自试验一下,你就会发现,这一次的选择要比刚才多多了,尤其是当你碰到一对孪生质数时。 初看之下,由于可走的棋路很多,似乎开局无关紧要。再仔细看一下,你就会发现,如果对手把筹码放在89的位置上,那么你便输掉了游戏,因为下一个质数一直要数到97才行,而97在89的8步以外。再回顾之前走过的棋,我们会发现,67后的这一步十分重要,因为,此时你面对的是两个孪生质数71和73,对于将筹码放在哪一个质数上面,需要作出选择。这一选择将决定游戏的输赢,因为此后的每一步都是别无选择的。不管哪位玩家把筹码放在67上,他都会赢,而89则似乎没那么重要。那么,你怎么能确保一定能把筹码放在67上呢? 继续回顾前面的棋路,结果我们发现,玩家在面对质数37的时候都要做出慎重的选择。37之后,你就要把筹码放在我两个女儿的“秘密中名”的孪生质数41和43上。如果你放在41上,你肯定就能拿下这场游戏。现在看来,谁能迫使对手把筹码放在37上,谁就能左右整个棋局。用这种方法继续向回看则会揭示出,这里的确存在一个决定输赢的开局。把筹码放在5上面,此后便能保证由你自己来面对所有上述的那些关键选择,进而确保把筹码放在89上面,使对手无路可走,从而赢得游戏。 如果我们继续增加最多可以跳动的步数呢?游戏还是否一定能决出胜负呢?假如我们将最多跳动的步数定为99步,我们能确定游戏不会没完没了地进行下去吗?你总是可以在99步之内找到下一个质数来安放你的筹码吗?毕竟,大家都知道质数是无穷无尽的。因此,大概在某种情况下,你只要不停地从一个质数跳往下一个质数即可。 实际上,证明出游戏一定会结束这一点还是有可能的。不管你将最多跳跃步数设定成多大的一个数字,总会有比这个数字更大的一个范围,在其中找不到任何一个质数,这时,游戏便会终结。下面让我们来看如何找到99个非质数的连续数字。取数字100×99×98×97×…×3×2×1。这一数字称为100的阶乘,我们可以将其写为100!。接下来,我们要利用与该数字相关的一个重要事实:100!能够被从1到100之间的任何数字整除。 然后看下面的这组连续数字: 100!+2,100!+3,100!+4,…,100!+98,100!+99,100!+100 (100!+2)不是质数,因为它可以被2整除。同样,(100!+3)也不是质数,因为它能够被3整除。(100!能够被3整除,所以在此基础上加3,所得到的数字依然能够被3整除。)依此类推,以上所有数字皆非质数。比如(100!+53),由于100!能被53整除,所以加上53后依然能被53整除。以上便是99个连续的非质数数字。我们之所以从(100!+2)开始,而没有从(100!+1)开始,是因为通过这个方法,只能推断出(100!+1)能被1整除,而这一点并不能帮助我们判断该数字是否为质数。(实际上它并不是。) 因此,我们可确定当最多跳跃数设为99时,该质数跳房子游戏还是会在某一位置上终结。不过,100!已经是一个巨大得不可思议的数字,实际上,在遇到这个数字之前游戏早就结束了:在质数396 733之后就能遇到首次连续99个非质数数字。 关于跳房子游戏里,当最多跳跃步数越来越大后, 游戏将终结在何处的相关信息,你可以在以下网 站中查到:http://bit.ly/Primehopscotch。你也可以 使用智能手机扫描左侧的二维码进入网页。 该游戏明显揭示了质数在数字世界中的分布是多么地飘忽不定。初看之下,我们无从知晓下个质数的位置所在。不过,若无法找到一种巧妙的方法,来帮助我们从一个质数寻索到下一个质数,那能否至少提出一些巧妙的公式来构造质数呢? 1.10 兔子和向日葵能帮助我们找到质数吗? 数数向日葵上面的花瓣,通常有89颗,这是一个质数。一对兔子经过11代繁殖后的种群数量也是89。难道兔子和向日葵花都已发现寻找质数的秘诀了吗?事实并非如此,它们之所以喜欢89这个数字,并非因为它是质数,而是因为它正是自然中意的数字之一:它属于斐波纳契数列。这是意大利比萨的数学家斐波纳契在1202年研究兔子的繁殖方式(更多是在生物学意义上而非数学意义上)时所发现的重要的数字序列。 一开始,斐波纳契设想有一对幼兔,雌雄各一只。并将这一起始点称为月份1。到了月份2,幼兔进入成年,开始生育,并在月份3诞下一对新的幼兔。(为方便这一思想实验的进行,每一窝幼兔均包含一雌一雄。)在月份4,第一对成年兔又产下一对幼兔。而它们产下的第一对幼兔也进入了成年期,于是,现在便有两对成年兔子和一对幼兔。在月份5,两对成年兔子各产下一对幼兔。而月份4出生的那对幼兔也进入了成年期。于是,到月份5的时候,一共有三对成年兔子和两对幼兔,即总共有5对兔子。因此按月计算,兔子的对数依次为: 1,1,2,3,5,8,13,21,34,55,89,… 图1-22 斐波纳契数列是计算兔子种群增长的关键 记录这些不停繁殖的兔子是一件令人头疼的事情,斐波纳契后来找出了一个延续该序列的简单方法:只要将前面两个数字相加即可得出序列中后一个的数字。两个数字中相对大的数字代表当时兔子的对数,它们都会在下个月继续存活下去;而两个数字中较小的那一个则代表种群中成年兔子的对数,这些成年兔对将会在下个月各产下一对新的幼兔。因此,下个月的兔子对数便为这两个数字的和。 有些读者可能在阅读丹·布朗的《达芬奇密码》时读到了关于斐波纳契数列的内容。实际上,该序列就是主人公在通往圣杯的道路上第一个需要破解的密码。 喜欢这些数字的也并非只有兔子和丹·布朗。植物花瓣的数量通常也都是斐波纳契数列中的数字。延龄草有3瓣花瓣,紫罗兰有5瓣,飞燕草有8瓣,万寿菊有13瓣,菊苣有21瓣,除虫菊有34瓣,向日葵则通常有55甚至89瓣。也有一些植物的花瓣的数量是斐波纳契数列中的数字的二倍,比如某些品种的百合,其花朵由两朵花组合而成。如果你家里的花的花瓣数量不符合斐波纳契数列中的数字,那么一定是有花瓣掉落下来了吧……数学家就是这么给圆回来的。(我不想被那些愤怒的园丁寄来的信所淹没,先承认的确存在一些除枯萎花瓣以外的例外情况。比如,星状花通常的花瓣数量就是7。毕竟,生物学不像数学那么严谨。) 除花朵以外,在松果和菠萝上也可以发现斐波纳契数列中的数字。切开一只香蕉,你就会发现它是由三个部分组合而成的。而从一个苹果的茎部一刀切至底部,你就能看到一个五角星的形状。如果切开一个莎隆果,你就能看到一个八角星的形状。不管斐波纳契数列是否与兔子种群的数量、向日葵或水果的生长结构有关,这些数字总会在涉及生长的时候出现在我们的视野之中。 贝壳演变的方式同样也与这些数字存在着紧密关联。蜗牛幼虫的外壳起初很小,随着蜗牛的成长,它就会一圈接着一圈地建造房子。但是,由于施展空间有限,它只能简单地在原有房屋的基础上增加一个面积等于之前两个房间之和的新房间,这一点正和斐波纳契数列一样——后面的一个数字是此前两个数字的和。这一生长过程虽十分简单,却制造出了一个十分美妙的漩涡式形状。 图1-23 如何使用斐波纳契数列来建造一个贝壳 事实上,此类数字完全不应该以斐波纳契的名字来命名,因为他不是首个偶然发现此类数字的人。这些数字甚至不是由数学家发现的,而是由中世纪印度的诗人和音乐家发现的。印度诗人和音乐家热衷于探索长短音节组合所能构成的所有可能的节奏和结构。如果一个长音是一个短音长度的两倍,那么在一定数量的节拍中,到底会有多少种不同的组合模式呢?比如,在8个节拍中,你可以放入4个长音或8个短音。但是,在这两种极端的可能性之间还有许多不同的组合方式。 公元8世纪,印度作家维拉汉卡决定接受挑战,探索一下到底有多少种不同的节奏存在。他发现随着节拍数量的增加,可能的节奏模式的数量会按照以下序列依次增加:1,2,3,5,8,13,21,…和斐波纳契一样,他也意识到,要得到数列中的后一个数字,只需将前面的两个数字相加即可。于是,当我们想知道8个节拍中有多少种节奏的可能性时,只需查看序列中的第8个数字即可,即由13和21相加所得来的34,因此,8个节拍中共有34种不同的节奏组合。 或许相比斐波纳契兔子种群数量增长来说,对这些隐藏在节奏背后的数学的理解要更容易一些。比如,要了解8个节拍中的节奏数量,你只需要在所有6节拍的节奏中加入一个长音,或在所有7节拍的节奏中加入一个短音即可。 话说回来,斐波纳契数列和本章的主角质数之间存在着一种有趣的关联。以下是斐波纳契数列中靠前的几个数字: 1,1,2,3,5,8,13,21,34,55,89,144,… 其中,每当p 为质数时,第p 个斐波纳契数也为质数。例如,11为质数,而第11个斐波纳契数字89,亦是质数。如果这一点成立的话,那么,人们便找到了一种寻觅更大质数的好方法。只可惜,它并非总是站得住脚的。例如,虽然19是质数,但第19个斐波纳契数4181并不是质数,因为4181=37×113。到目前为止,尚未有科学家论证出,是否斐波纳契数列中有无限的数字都是质数。这一点则又是众多有关质数的未解之谜中的一个。 1.11 如何利用大米和棋盘找到质数? 传说国际象棋是由一位印度数学家发明的。国王十分感谢这位数学家,于是就请他自己说出想要得到什么奖赏。这位数学家想了一分钟后就提出请求——把1粒米放在棋盘的第1格里,2粒米放在第2格,4粒米放在第3格,8粒米放在第4格,依次类推,每个方格中的米粒数量都是之前方格中的米粒数量的2倍。 国王欣然应允,诧异于数学家竟然只想要这么一点的赏赐——但随后却大吃了一惊。当他开始叫人把米放在棋盘上时,最初几个方格中的米粒少得像几乎不存在一样。但是,往第16个方格上放米粒时,就需要拿出1公斤的大米。而到了第20格时,他的那些仆人则需要推来满满一手推车的米。国王根本无法提供足够的大米放在棋盘上的第64格上去。因为此时,棋盘上米粒的数量会达到惊人的18 446 744 073 709 551 615粒。如果我们在伦敦市中心再现这一游戏,那么第64格中的米堆将延伸至M25环城公路,其高度将超过所有建筑的高度。事实上,这一堆米粒比过去1000年来全球大米的生产总量还要多得多。 图1-24 反复加倍使数字大小迅速增加 不出所料,印度国王未能兑现他承诺给数学家的赏赐,因此,他不得不把全部财富的一半拱手相送。这大概算是数学使你致富的一种方式吧。 不过,这些大米和发现巨大的质数有何关联呢?自从希腊人证明了质数的无穷无尽以后,数学家们就一直在寻找一种睿智的方法,想构建出越来越大的质数。其中一个最佳方法是由一位叫做马兰·梅森的法国修士发现的。梅森是皮埃尔·德·费马和勒内·笛卡儿的挚友,他的作用就像是17世纪的网络集线器,不断地收到来自全欧洲科学家的信件,和这些科学家交流想法,因为他认为这些科学家能够进一步完善这些想法。 与费马的通信促使他发现了一个找到巨大质数的有力公式。这一公式的秘诀便隐藏在这个大米和棋盘的故事之中。把棋盘方格中的大米数量都加起来,通常会得出一个质数。比如,把前3个方格中的米粒1、2、4加起来,便可得到质数7。而将前5个方格中的米粒1、2、4、8、16加起来,就能得到质数31。 梅森于是设想,是否从棋盘的任何一个质数号码的方格算起,将之前的米粒加起来都会得到一个质数呢。假如果真如此,他便发现了一个寻找越来越大的质数的方法。梅森希望,只要确定一个质数号码方格,然后将至此为止所有方格中的米粒相加,就会得出一个更大的质数。 可惜,对梅森和数学都不幸的是,他的方法并不怎么管用。当我们找到号码为质数的第11个方格,并将前11个方格的米粒都加在一起时,就得到了数字2047,但很可惜,2047并不是质数,因为2047=23×89。尽管梅森的方法并不总是管用,但它依然带领我们发现了那些迄今为止最大的质数。 1.12 质数吉尼斯纪录 伊利莎白一世时,已知的最大质数是棋盘上前19个方格中大米数量的总和:524 287。而等到纳尔逊子爵参加特拉法加海战时,最大质数的纪录则增加到棋盘中前31个方格中大米数量的总和:2 147 483 647。1772年,瑞士数学家莱昂哈德·欧拉证明这个10位数的数字是质数,而这一纪录则一直保持到了1867年。 2006年9月4日,这个纪录被提升至第32 582 657个方格中大米数量的总和,当然前提是我们能有这么大的棋盘。这个新质数的数位超过980万,如果把该数字大声读出来,需要耗费一个半月的时间。该数字并非由某个巨型计算机发现,而是由一位业余数学家使用从网络上下载的软件时发现的。 当初设计者在设计这款软件时的初衷,是要利用计算机的空闲时间来做一些运算工作。其中所使用的程序采用了一个非常巧妙的策略,该策略能够用来检测梅森数是否全都是质数。检测这个980万位的数字需耗费台式电脑数月的时间,但是,和能够检测这么多数位的任何一个随机数字是否是质数的方法相比,这个策略已经十分高效了。截止2009年,共有一万多人加入这场被称为因特网梅森质数大搜索(GIMPS)的项目中。 但需要注意的是,该研究也并非百无一害。有一位GIMPS项目的参与者在美国的一家电话公司工作,他偷偷利用公司的2585台电脑搜索那些梅森质数。当公司人员发现自己的电脑要花费5分钟而非5秒钟的时间来检索电话号码的时候,他们便起了疑心。FBI最终发现了电脑运行速度变慢的原因,这名员工坦白道:“我实在难以抗拒这么强大的计算能力的诱惑。”尽管如此,这家电话公司对他追求科学的举动并无怜悯之心,最终还是开除了他。 如果你也想把自己的电脑加入到GIMPS项目中, 可以在下述网址上下载软件:http://www.mersenne. org。 或使用智能手机扫描左侧的二维码。 2006年9月以后,数学家都在屏气凝神地等待纪录突破1000万位的大关。这种期待并不只是为了学术上的发展,还有金钱上的理由——首位攻克这一大关的人将获得一笔10万美元的奖励,这笔奖励是由加利福尼亚的一个名叫电子前哨基金会(Electronic Frontier Foundation)的组织提供的,他们致力于鼓励虚拟空间内的协同合作。 两年后,新纪录诞生了,或许是离奇的命运使然,几天之内接连诞生出两个新纪录。2008年9月6日,德国业余质数猎手汉斯· 迈克尔· 埃文尼奇突然宣布,他的电脑刚刚发现了一个11 185 272位的梅森质数,此刻埃文尼奇一定认为自己中了大奖。但当他将这一发现报告给官方后,兴奋转而化为绝望,他被14天前的另一个纪录抢了先机。8月23日,加州大学洛杉矶分校(UCLA)数学系的埃德森·史密斯的电脑发现了一个更大的质数,共有12 978 189位。对UCLA来说,打破质数纪录不再是新鲜事了。该校的数学家拉斐尔·罗宾逊在20世纪50年代便发现了5个梅森质数,而在20世纪60年代初期,亚历克斯·赫尔维茨又发现了另外两个。 GIMPS项目程序的开发人员都认为这笔奖金不应只颁给那个幸运儿,他只是接受任务负责检验某个特定的梅森数字而已。于是,5000美元奖给那个软件的开发者,而自1999年以来打破过纪录的软件使用者则分享20 000美元,还有25 000美元则被捐给慈善组织,剩余的奖金颁给了加州的埃德森·史密斯。 如果你还想通过寻找质数来赚钱,那么也不必担忧,1000万位的大关已经被打破了。任何一位寻找到新的梅森质数的发现者仍将获得3000美元的奖金。如果你想获得更大额的奖金,还有1亿和10亿位的大关等着你,若打通这两个关口,你将分别获得15万和20万美元的奖金。多亏了那些伟大的希腊先贤,我们才知道这类关于质数的纪录正在前方等着我们去发现。问题是在打破新纪录之前,通货膨胀将侵蚀掉多少奖金。 如何写下一个12 978 189位的数字 埃德森·史密斯所发现的质数是一个惊人的庞大数字。要写下其全部位数,需要使用本书大小的3000页纸张,幸好,只要通过一点数学运算,我们就可以构建出一个能表示该数字的公式,从而以更简洁的方式描述该数字。 棋盘上前N 个方格中的大米数量总和为: R = 1+2+4+8+…+2N 2+2N 1 以下是找到表达此数字的公式的一个诀窍。由于R =2 R -R 这个公式过于显而易见,初看之下,它简直毫无用处。这样一个一目了然的等式到底如何能帮助我们计算出R 的值呢?在数学上,稍微换一个视角常常能带来意想不到的效果,因为变换角度之后,所有一切都突然间显得完全不同。 首先,我们来计算2 R 的值。这一点只需在等式两边都乘以2即可。但是关键在于,如果你把一个方格中的米粒数量加倍,那么,这个方格中的大米数量就等同于原先下一个方格中的大米数量。于是: 2 R = 2+4+8+16+…+2N 1+2N 下一步便是减掉一个R 。结果,等式右侧除最后一项外均被抵消掉: R = 2R-R = (2+4+8+16+…+2N 1+2N)-(1+2+4+8+…+2N 2+2N 1) = (2+4+8+16+…+2N 1) +2N-1-(2+4+8+…+2N 2+2N 1) = 2N-1 因此,棋盘上前N格中大米数量的总和便为2N-1,这便是寻找尝试打破质数纪录的公式。通过足够次数的加倍,然后在此基础上减去1,便会得出一个有可能的梅森质数(使用该公式所发现的质数称为梅森质数)。而要得到埃德森·史密斯那个12 978 189位的质数,只需将公式中的N 设为43 112 609即可。 1.13 如何用龙须面穿过整个宇宙? 大米并非唯一一种被用来探索倍数的潜力以创造巨大数字的食物,面条是另一个很好的例子。龙须面,或拉面,其传统做法都是要借助于两臂的力量把面团拉长,将其对折,然后再次拉长,从而使面条长度变为原来的两倍。每一次拉伸后,面条都会变得更长更细,但整个过程要非常快,因为面团很快就会干掉,使你前功尽弃,徒剩手中一团乱麻。 亚洲的厨师进行过拉面比赛,将面条的长度拉伸最多次的人就是冠军,而在2001年,来自中国台湾的厨师常辉宇(音译)在两分钟内将面条长度加倍了14次。最后拉出的面条细得可以穿过针眼,而面条的长度则能从常先生位于台北市中心的餐厅一直延伸至台北市郊,当他把手中这根面条切断后,共得到16 384根面条。 这就是不断加倍的威力,它能够快速创造出十分巨大的数字。假如常辉宇能够继续加倍下去,把他的面条长度加倍到46次,那么,面条的厚度就像一颗原子,而其长度将从台北一直延伸至太阳系的外围。如果将面条加倍到90次,那么,其长度将带你穿过可见宇宙的一端从而进入另外一端。若你要感受当前纪录中的最大质数究竟有多大,那么要将面条的长度加倍43 112 609次,切断后并去掉其中的一根面条,便可得出2008年发现的那个最大质数了。 1.14 电话号码为质数的概率有多大? 数学家们喜欢做的一件书呆子气的事情就是检验他们的电话号码是否为质数。我最近刚好搬了家,正要换电话号码。之前家里的电话号码不是质数(不过房屋号码是质数53),因此,我期望搬新家(新房屋的号码为“前质数”1)后能有好运。 电话公司给我的第一个号码看上去还不错,但当我把它输入到电脑中检测后,发现它可以被7整除。于是我告诉电话公司的人员:“这个号码我可能记不住……能换其他号吗?”第二个号码同样不是质数,它能被3整除。(有一个简单的方法能判断一个数字是否能被3整除,那就是把电话号码的每个数位上的数字都加起来,看这个总和能否被3整除,可以的话原数便能被3整除。)又试过3个不成功的号码后,电话公司工作人员已经十分不耐烦了,他对我说道:“先生,不管下个号码是什么,恐怕我只能给你这个了。”呜呼,算来算去,到头来竟拿到一个偶数号码! 那么,我能拿到质数电话号码的概率到底有多大呢?因为电话号码是8位数,而这8位数字成为质数的概率约有1/17。那么,随着数字位数的增加,成为质数的概率会发生什么变化呢?例如,100以内共有25个质数,这也就意味着在所有个位数和两位数中,质数的存在概率为1/4,即平均算来,当你从1数到100时,几乎每4个数字中就会有一个质数。但是,我们的数字越来越大时,遇到质数的概率也会越来越低。 表1-2列出了这种概率的变化情况。 随着数字位数的增加,质数出现的概率越来越小,但这种概率的减小却是非常有规律的。数字位数每增加一位,质数存在的概率的分母便增加2.3。最先注意到这一点的是一位15岁的少年,这位名叫卡尔·弗里德里希·高斯(17771855)的少年日后成为了数学界最伟大的人物之一。 表 1-2 位 数 质数存在比例 个位或两位 三位 四位 五位 六位 七位 八位 九位 十位 高斯的发现得益于他在生日时收到的一本数学用表书籍,这本书的背后印着一张质数表格。高斯非常着迷于这些数字,自此以后,他花费余生的时间都在努力为这个表格增加越来越多的数字。高斯是一位实验数学家,他十分乐于把玩各种数据,同时,他相信质数变稀疏的方式会依照这种一贯的规律一直延续下去,不管数字变得多么巨大,其变化情况会一直如此。 但谁能保证100位或100万位的时候不会突然出现奇怪的情况呢?质数存在概率的变化规律仍然是每增加一个数位,其概率的分母便增加2.3吗?会不会突然性情大变,让人措手不及呢?高斯则坚信该模式是一以贯之的,但直到1896年,他的这一想法才得到证实。雅克·阿达马和瓦莱·普桑这两位数学家各自独立证明出这一被称为质数定理的理论:质数的分布将按照这一贯的规律持续稀疏下去。 高斯的发现引出了一个十分强大的模型,它将会帮助人们预测出质数的众多特性。该模型为一系列的质数骰子,每个骰子上除了其中的一面写着质数两个字以外,其他表面均为空白,自然界在选择质数时就好像是依靠投掷这些骰子来确定的。 图1-25 自然界中的质数骰子 要确定每个数字是否为质数,投掷骰子即可。如果在掷出来的骰子上,写着质数的那一面在最上面,那么该数字就是质数,反之,则不是。当然,这只是一个启发性模型,我们不可能仅靠一只骰子就让100这样的数字变得不可拆分。但是,通过这种方式,我们可以得出一系列数字,它们的分布情况十分接近于质数的实际分布。通过高斯的质数定理我们能了解到一个骰子应该有多少个面。比如,对于3位数字,就使用一个六面的骰子,即立方体骰子,其中一个面上写着质数两个字;对于4位数字,则使用八面骰子;对于5位数字,则使用10.4面的骰子……当然,这些都是理论上的骰子,因为现实中并不存在10.4面体。 1.15 关于质数的百万美元难题 本章的百万美元难题便是关于这些骰子的属性的:这些骰子是公平的吗?它们在数字世界中对质数的分配是恰如其分的吗?是否会有失偏颇?有时质数给得过多,有时却给得太少?这个问题便是黎曼猜想。 波恩哈德·黎曼是高斯在德国哥廷根的一名学生。他提出了一些十分成熟的数学运算,通过这些运算,我们才得以理解这些质数骰子是如何对质数进行分配的。通过某种叫做ζ函数的东西、一些特殊的叫做虚数的数字,以及令人望而生畏的大量分析运算,黎曼得出了掌控这些骰子坠落过程的数学运算。根据他的分析,他相信这些骰子是公平的,但是无法证实这一点。证明黎曼猜想的重任就落到了后人的头上。 对于黎曼猜想的另一种诠释便是将质数和一个房间中的气体分子作比较。我们不可能知道分分秒秒每颗分子的具体位置,但物理学家们认为气体基本上是均匀分布在房间内的,不可能屋子的其中一角聚集着大量分子,另一角却呈现出完全真空的状态。黎曼猜想差不多也是这样。它并不能真的帮助我们定位某个质数的具体位置,但是,它能确保这些质数是以一种公平合理但却随机的方式分布在数字世界中的。像这样的保证对数学家来说往往已经足够了,他们藉此便足够自信地在数字的海洋中遨游。不过,在这100万美元被人拿走之前,我们始终无法确定,随着我们越来越深入地探索数学宇宙的无穷边界,质数究竟会出现什么样的变化。