2007年3月30日星期五

美丽的素数 伟大的证明[转贴]

(来源: 科学网)

公元前3世纪,古希腊数学家欧几里得已经证明素数的数目是无穷的;2004年,陶哲轩和格林证明存在任意长的素数等差数列,他们的发现揭示了素数中存在的某种规律。

在数学家的眼中,素数是美丽的。就像原子之于化学家、DNA之于遗传学家,素数是自然界中全部数的最基本的结构砖块。那么究竟什么是素数呢?也许任何一位小学三年级的学生都会清楚地回答这个问题:在正整数中,除了1以外,只能被自身和1整除的数就是素数,素数从2,3,5,7,11和17开始……

美丽的素数

1,2,3……是正整数,其他数字如负数、有理数则都是以正整数为基础定义出来的,所以,研究正整数的规律非常重要。因为任何一个整数均可表示为素数的乘积,而且这个表示是唯一的,所以,研究清楚素数的问题非常重要,但从素数中是很难得到一条定理的。

公元前3世纪,古希腊数学家欧几里得已经证明素数的数目是无穷的。今天,陶哲轩和格林证明“存在任意长度的素数等差数列”,揭示了素数中存在的某种规律。

什么是等差数列呢?这是一个古老的数学课题。一个数列从第二项起,从后项减去前项所得的差是一个相同的常数,则这个数列就被称为等差数列。比如,1,3,5是一组由三个数构成的等差数列,1,3,5,7则是由4个数构成的等差数列。

用素数构成的等差数列被称为素数等差数列。比如从5开始,以12为间隔常数,就可以得到这样的序列:5,17,29,41,53,65……但对这个数列来说,只有前5个数是素数,因此,5,17,29,41,53是一个由5个素数构成的等差数列。因为65可以被5和13整除,不是素数,所以这个特定的素数等差数列不可能延展到6个数的长度。

问题出现了:由其他素数构成的等差数列会更长吗?答案是肯定的。事实上,199,409,619,829,1039,1249,1459,1669,1879,2089就是间隔常数为210的10个素数构成的等差数列。

而且,数学家们一直认为,由素数构成的等差数列可以任意长,这个猜想提出的时间太长,以至没有人知道这个问题最初是由谁提出来的。但是,在2004年前,没有数学家能证明它。

永不消失的素数

到目前为止,已知的素数等差数列的长度为23,即由23个素数构成的等差数列,而且这还是在当今最先进的计算机上找到的,这个数列的第一个数是 56211383760397,数之间的间隔常数为44546738095860,最后一位数是56211383760397+ 44546738095860×22.

根据上面的描述,一个比较清楚的事实是:随着自然数数值的增加,素数的分布变得越来越稀疏,要寻找这样的等差素数序列就越来越困难。但是,古希腊数学家知道素数是永远不会彻底消失的,自然界中有无穷多个素数。

尽管在正整数中,素数看起来是以一种随机的方式出现的,但在19世纪末,法国数学家雅克。哈达玛达(Jacques Hadamard)和比利时数学家法勒布赛(Charles de la Vallee-Poussin )证明:一种隐藏的规则存在于素数稀疏的背后。换言之,在看似混乱无序的素数数列中,一定存在某种规律。

而存在任意长的素数等差数列则是素数性质中的另外一种规律。尽管数学家一直认为“存在任意长度的素数等差数列”,但到2004年前,还没有人能证明它的存在。

有关这个问题的一个真正的进展出现在1939年,当时,荷兰数学家Johannes van der corput证明:有无穷多个由3个素数构成的等差数列。那么,由4个素数构成的等差数列的数目是不是也无穷多呢?

伟大的证明

英国大数学家Atath Brown证明,由前面三个素数和后面不超过两个素数的乘积构成的4个数的等差数列有无穷多。

1975年,匈牙利科学院的数学家施米列迪(Endre Szemeredi)证明了一个定理。如果简单地解释,这个定理的意思是在任何不会快速稀疏的整数子集中,肯定会有任意长度的等差数列。世界上只有极少数数学家能懂得这个证明,但施米列迪定理不适合于素数,因为,随着自然数的增加,素数的出现会突然变得稀疏。

2002年,两位20多岁的数学家着手证明施米列迪定理在某种特定性质的素数子集中也成立,他们希望能证明:有无穷多个由4个素数构成的等差数列。为了证明这个问题,陶和格林用了两年多的时间分析证明施米列迪定理的4个完整证明的背后因素。

陶哲轩说:“我们研究施米列迪定理并努力推进它,以便它能解决素数的问题。为了实现这个目标,我们借用这4个证明方法来建造一个施米列迪定理的扩展版。每次当格林和我陷入困境时,其中一个证明的思想总能解决我们的问题。”

两年后,用了一个非常漂亮的方法,格林和陶哲轩解决了问题,但结果实在惊人。2004年4月18日,两人宣布:他们证明了“存在任意长度的素数等差数列”,也就是说,对于任意值K,存在K个成等差级数的素数。例如 K=3,有素数序列3, 5, 7 (每两个差2)……K=10,有素数序列 199, 409, 619, 829, 1039, 1249, 1459, 1669, 1879, 2089 (每两个差210)。他们将长达 50页的论文——《素数含有任意长度的等差数列》——张贴在当日的预印本网站上,并向《美国数学年鉴》(Annals of Mathematics)投稿。

这是一项惊人的成就,他们的发现揭示了素数中存在的某种规律。这是一项伟大的成就,他们的证明立即在国际学术界引起轰动。2004年5月21日出版的美国《科学》杂志报道说,“两位数学家用数论中一个令人眩晕的突破结束了一个问题。”

《发现》杂志将陶哲轩和格林在素数方面的研究评选为2004年100项最重要的发现之一;2004年出版的《现代数论导引》已经引用这篇尚未正式发表的论文所涉及的工作。

据最新消息,格林和陶哲轩的这篇论文已被《美国数学年鉴》接受,即将出版。(王丹红/编译整理)

程序员四大忌 你该如何避免[转帖]

来源:希赛社区 更多内容请登陆:http://bbs.csai.cn/bbs/index.asp

一忌:轻易言败,没有自信

  没有永不放弃精神的程序员,只是一个有程序员名号的假程序员。一个真正的程序员,知道在程序设计的过程中,可能会遇到不计其数的困难和问题,可能有极多的挫折和失败,而成功只有一次。

  就为解决一个问题,我们可能连续十几甚至几十小时的坐在计算机前不停的工作。一个问题解决了,可能又有其它的问题出现。而你要是不能坚持下来,可能从前的一切努力都流失了。轻易言败的人请不要做程序员,你不可能成功。执着是最可贵的。

  执着的程序员都是相信自己的人,每时每刻都会鼓励自己,你做的出来,你能解决,你会成功。这样他才能坚持下去。

二忌:浮华不实,自满自大

  夸夸奇谈的人不是优秀的程序员。整个程序设计的过程就是一个研究学习,应用,再研究学习,再应用的过程。一名优秀的程序员决不会认为自己足够好了,不需要再提高了。自满自足的人不会是好程序员,会很快落后以致落伍。所以越是优秀的程序员越是感觉自己懂得少,不会在人前故意卖弄,这并不是故作谦虚,而是实实在在的感受,亲自体会才能明白。

  浮华的程序员会不懂装懂,不停的强调语言的优劣,平台的好坏。追求所谓最新最时尚的技术,停留在表面问题上。或假做深沉,用不适合的方式做不适合的事情。就像孔已己一样,以为知道"茴"字有四种写法就是学问。最后是简单的作不好,困难的也作不好。

三忌:死气沉沉,不求甚解

  优秀的程序员是充满激情和活力的程序员。求知欲和创造欲是原动力。有求知欲你才能不停的学习,有创造欲你才能不停的超越自己。死气沉沉的程序员已经对程序设计失去了兴趣,很快就会主动或被迫离开。

  创造不是指你要发明什么别人不知道的技术或方法,而是说不能仅仅知道怎么做,还要知道为什么这样做。之后你才能创造,其实程序设计的整个过程就是创造的过程。

四忌:强调客观,忽略自身

  很多程序员都是在失败的时候强调客观因素,而优秀的程序员的程序员都是先反省自己。要明白自己缺陷,再努力去学习。没有人事事都做的成功,也没有人生来就什么会做。所以失败了,多想想自身的原因,这样你才会不停的进步,而不是留在原地抱怨。