素數(Prime Number),亦称质数,指在一個大於1的自然数中,除了1和此整数自身外,無法被其他自然数整除的数。換句話說,只有兩個正因数(1和自己)的自然数即為素數。
比1大但不是素数的数称为合数。1和0既非素数也非合数。素数在数论中有着很重要的地位。
目录[隐藏] |
[编辑] 關於素数
最小的素数是2,也是素数中唯一的偶數(雙數);其他素数都是奇數(單數)。素數有無限多個,所以不存在最大的素數。
围绕著素数存在很多数学问题、数学猜想和数学定理。著名的有孪生素数猜想和哥德巴赫猜想。
素数序列的开头是这样:
- 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37,
- 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89,
- 97, 101, 103, 107, 109, 113 ( OEIS:A000040)
素数集合有时表示成粗体。
在抽象代数的一个分支-环论中,素元素有特殊的含义,在这个含义下,任何素数的加法的逆转也是素数。换句话说,将整数Z的集合看成是一个环,-Z是一个素元素。但是在数学领域内,提到素数时通常指正的素数。
算术基本定理證明每个大于1的正整数都可以写成素数的乘积,并且这种乘积的形式是唯一的。因此素数也被称为自然数的“建筑的基石”。例如:
關於分解的詳細方法,可見於整數分解條目。
这个定理的重要一点是,将1排斥在素数集合以外。如果1被认为是素数,那么这些严格的阐述就不得不加上一些限制条件。
0由於可以被任何數整除(因餘數一定等於0),所以它不符合素數的定義。
[编辑] 素数的數目
素數有無窮多個。現在已知最早的證明方法是歐幾里得在他的《幾何原本》中提出的。該證明方法如下:
- 假設素數有限。把所有這些有限的素數相乘以後加1,可以得到一個數。這個數無法被那些有限的素數裡的任何一個整除:因爲無論被哪一個素數除,總有餘數1。
如果該數為素數,則根據假設,它不在那些假設的素數集合中。 如果該數為合數,因為任何一個合數都可以分解為幾個素數的積;而一開始假設的那些素數都不能整除該合數,所以該合數分解得到的素因數肯定不在假設的素數集合中。 因此無論該數是素數還是合數,都意味著在假設的有限個素數之外還存在着其他素數。 對任何有限個素數的集合來說,用上述的方法永遠可以得到有一個素數不在假設的素數集合中的結論。 所以原先的假設不成立。也就是說,素數並非有限,而是有無窮多個。
其他數學家也給出了他們自己的證明。歐拉證明了全部素數的倒數之和是發散的。恩斯特·庫默的證明更爲簡潔。Hillel Furstenberg則用拓撲學加以了證明。
尽管整个素数是无穷的,仍然有人会问“100000以下有多少个素数?”,“一个随机的100位数多大可能是素数?”。素数定理可以回答此问题。
[编辑] 寻找素数
寻找在给定限度内的素数排列,埃拉托斯特尼筛法是个很好的方法。然而在实际中,我们往往是想知道一个给定数是否是素数,而不是生成一个素数排列。进而,知道是素数的概率有多大就是可以了。用素性测试迅速地检查一个给定数(例如,有几千位数的长度)是否是素数是可能的。典型的方法是随机选取一个数,然后围绕着这个数和可能的素数N检查一些方程式。重複這個過程幾次後,它可以基本确定这个数是明显的合数或者可能是素数。这种方法是不完美的:對某些测试而言,例如費馬測試,不论选取了多少随机数都有可能将一些合数判断成可能的素数,这就引出了伪素数。而像米勒-拉賓測試,雖然只要選取夠多的數字來檢驗方程式,就可以保證其檢驗出的素數性是正確的;但這個檢驗的數量太過龐大,甚至比試除法所需的還要多,在有限的時間內只能知道答案正確的機率很高,不能保證一定正確。
数学家一直努力找寻产生素数的公式,利用一条定理,可以正确产生所有的素数(参见素数公式)。历史上有许多试验的例子:17世纪初法国数学家梅森(Mersenne)在他的一个著作当中讨论了这样一种我们现在称之为梅森素数的素数,Mp=2p − 1,本来以为只要p是一个素数,n = 2p − 1就会是一个素数,这在p = 3,p = 5,p = 7都是正确的,但是p = 11时就不是素数了。目前最大的已知素数是梅森素数243112609 − 1(此数字位长度是12978189),它是在2008年8月23日由GIMPS发现。这组织也在2008年9月6日发现了目前所知第二大的已知素数237156667 − 1(此数字位长度是11185272)。
[编辑] 素數算法
- 欲求出小於x的所有素数参见素数公式
[编辑] 检验素数
检查一个正整数N是否为素数,最简单的方法就是试除法,将该数N用小于等于的所有素数去试除,若均无法整除,则N为素数。
2002年,印度人M. Agrawal、N. Kayal以及N. Saxena提出了AKS素數檢驗演算法,證明了可以在多項式時間內檢驗是否為素數。
[编辑] 已经证明的定理
- 在一个数和它的2倍之间必存在一个素数。
- 存在任意长度的素数等差数列。(格林和陶哲轩,2004年)
- 一個偶數可以寫成兩個數字之和,其中每一個數字都最多祇有9個質因數。(挪威數學家布朗,1920年)
- 一個偶數必定可以寫成一個質數加上一個合成數。(瑞尼,1948年)
- 一個偶數必定可以寫成一個質數加上一個由5個因子所組成的合成數。後來,有人簡稱這結果為 (1 + 5) (中國潘承洞,1968年)
[编辑] 未解之谜
- 哥德巴赫猜想:是否每個大於2的偶數都可寫成兩個素數之和?
- 孪生素数猜想:孪生素数就是差为2的素数对,例如11和13。是否存在无穷多的孪生素数?
- 斐波那契数列内是否存在无穷多的素数?
- 是否存在无穷多的梅森素数?
- 在n2与(n + 1)2之间是否每隔n就有一个素数?
- 是否存在无穷个形式如n2 + 1的素数?
- 黎曼猜想
[编辑] 素数的应用
素数近来被利用在密码学上,所谓的公钥就是将想要传递的信息在编码时加入素数,编码之后传送给收信人,任何人收到此信息后,若没有此收信人所拥有的密钥,则解密的过程中(实为寻找素数的过程),将会因为找素数的过程(分解质因数)过久,使即使取得信息也會無意義。
在汽車變速箱齒輪的設計上,相鄰的兩個大小齒輪齒數最好設計成素數,以增加兩齒輪內兩個相同的齒相遇嚙合次數的最小公倍數,可增強耐用度減少故障。
在害蟲的生物生長周期與殺蟲劑使用之間的關係上,殺蟲劑的素數次數的使用也得到了證明。實驗表明,素數次數地使用殺蟲劑是最合理的:都是使用在害蟲繁殖的高潮期,而且害蟲很難産生抗藥性。
以素数形式无规律变化的导弹和鱼雷可以使敌人不易拦截。
[编辑] 高斯素数
高斯素数是把素数在复数范围内的扩展。与实数中的整数定义相似,高斯素数是不能表现为1、i或本身除外的两个复整数的乘积的复整数,例如1+2i。
有的数在实数范围内是素数,但在复数范围内不是素数,例如13=(3-2i)(3+2i)。