素数的个数为什么是无限的
2007-07-03 01:17
183 查看
按,并无新意,记录一下别人的想法而已。
如果素数是有限的,设从小到大依次是p0, p1, ..., pn (p0 < p1 < ... < pn)
设 p = p0 * p1 * ... * pn + 1
显然 p != pi ( 0 <= i <= n)
依据假设,p在素数集合之外,即为合数。
而p mod pi = 1
即p无法被任何素数整除,那么因为p本身不是素数,它就一定能被除1和其本身之外的一个数整除,既然这个数不能是素数,那么就是另外一个合数,而合数即能分解出素数因子,即p含有素数因子,和前面的推断“p无法被任何素数整除”的假定矛盾,故假设素数是有限个数的说法是错误的。
所以,素数的个数是无限的。
如果素数是有限的,设从小到大依次是p0, p1, ..., pn (p0 < p1 < ... < pn)
设 p = p0 * p1 * ... * pn + 1
显然 p != pi ( 0 <= i <= n)
依据假设,p在素数集合之外,即为合数。
而p mod pi = 1
即p无法被任何素数整除,那么因为p本身不是素数,它就一定能被除1和其本身之外的一个数整除,既然这个数不能是素数,那么就是另外一个合数,而合数即能分解出素数因子,即p含有素数因子,和前面的推断“p无法被任何素数整除”的假定矛盾,故假设素数是有限个数的说法是错误的。
所以,素数的个数是无限的。
相关文章推荐
- 为什么一般hashtable的桶数会取一个素数
- 无限上拉下拉XlistView 有时候就会出现 适配器内容已经改变,但列表视图没有收到通知。求解,为什么!内有详细说明。
- 为什么hash table的大小最好取一个不接近2^p的素数
- 哈希表的大小为什么最好是素数
- 为什么一般hashtable的桶数会取一个素数
- [置顶] 浅析神经网络为什么能够无限逼近任意连续函数?
- 为什么一般hashtable的桶数会取一个素数
- 拷贝构造函数的参数为什么必须使用引用类型(避免无限递归拷贝,但其实编译器已经强制要求了)
- 解答:为什么判断一个数是否为素数时只需开平方根就行了!
- 为什么Hashtab的大小通常取远离2^n 的素数
- 为什么求模运算要用素数(质数)—— 哈希表设计
- PAT 1013 数素数 为什么一直是19分
- 为什么一般hashtable的桶数会取一个素数
- 面试题目-为什么素数有无穷多个
- 证明:素数是无限的(欧几里德)
- 为什么判定一个素数只要将此数n被2~根号n除即可?
- 证明素数有无限多个(《具体数学》上的方法)
- hash函数为什么要选择对素数求余?
- C++拷贝构造函数的参数为什么必须使用引用类型(无限递归)
- 为什么求模运算要用素数(质数)—— 哈希表设计