c语言判断一个数是不是等于两个素数的乘积_素数定理的介绍+非常简单的推导...

先简单的介绍一下素数定理:

素数定理(

)是素数分布理论的中心定理,是关于素数个数问题的一个命题。它告诉我们,
中大约有
个素数(
)。这个大约的意思是,随着
的增大,二者的比值会越来越趋于1。

为了用数学语言描述它,不妨定义

中所有素数的个数(至于为啥叫
,而不是叫
什么的,这是因为历史上一直这么用的缘故)。

则素数定理就可以简单的写成:

,如果嫌麻烦,也可以直接写成:

更一般的,设

,如果定义区间
以内全部素数的个数为
,这样,我们就将离散的
变为连续的
,这样定义的好处会在以下的证明中体会到。

综上,素数定理又可以写成:

以下为证明:

我们希望估算出

中所有素数的个数(
),即
。但到目前为止,我们唯一知道的有关
与素数
的定理是算数基本定理:

任何一个大于1的自然数

,如果
不为素数,那么
可以唯一分解成有限个素数的乘积:
,这里
均为素数,其中指数
是正整数,

理想很美好,现实很骨感,我们并不知道

的数量。况且,
也不一定等于
。但是,这给了我们一个思路,就是,有没有一个数的
能扯上关系?

事实上,还真的有,这个数就是“

”。

声明一下,这个“

”不是惊叹号,而是数学上的一种记号,定义:
,“
”读作“
的阶乘”。

那么

这个数神奇在什么地方呢?为了更好的体会这一点,我们再引入一个记号:“
”。若
为整数,则记为
,读作:“a整除b”。例如:
(2整除4),
(3整除6)。

我们不加证明的引入两个定理:

定理一:若

为素数,
的充分必要条件是

注意到

本身也是一个大于1的自然数,可以运用算数基本定理,将其写成素数乘积的形式。我们不妨设
,则我们有:
。这下,好处就显现出来了,由定理一,
是2到
之间的所有素数!

由此,我们得到:

整理一下我们目前的已知结论,

,而且
是2到
以内的所有素数。但是,关于
的性质,我们还是什么都不知道。

对此,我们引入第二个定理(

定理):若
按照算数基本定理的形式写成一系列素数的乘积:
,则
,其中记号
表示不超过
的最大整数。例如

接下来,我们引入第一个近似(本篇的近似很多,请做好心理准备):

注:上式右边的等号是等比数列求和公式。另外插一句话,本篇所有的“

”号的意思是:随着自变量的增大,
号的两边的比值会越来越趋于1。

现在,我们将

代入
,得到:

两边取对数可得:

再运用斯特林公式:

,可得
,综上,我们得到:
,消去一个
,可得:

现在,我们得到一个有关

以内全部素数的公式。我们将
替换成
),这一步是可行的,至于为什么?事实上,如果读者稍微学过一些伽马函数,了解一些有关该函数的性质,上面的所有推导都可通过适当的定义将
换成

跑题了,总之,我们得到了一个有关

与区间
以内全部素数的公式

注意到当

时,
单调递减且恒大于0。若
,则
。特别的,对于那一系列素数:
,显然有:

说真的,到了这一步,已经想不到有什么路可以走了。

不过有时候,回头看看起点,有时候会有点启发。讲讲历史,看看素数定理最初是怎么来的,顺便,瞻仰一下高斯的天才之处。

1849年,著名天文学家

给高斯写信,讨论质数出现频率的问题。

高斯回复道:这个问题很有意思!在57年前,也就是在我14岁的时候,偶然得到一本书。书上有一个对数表,还有一个质数表。闲来无事的我,花了一刻钟时间计算了其中1000个。发现了一个规律:质数的分布密度接近于自然对数的倒数,于是我又验算了大概一百万个,结论大体没错。

什么意思?就是在一百万里随便找一千个数,例如485001

486000,然后十五分钟以内找到这一千个数里的所有素数……

14岁、闲来无事、十五分钟、一千个数内的所有素数、总结出规律……

大神的特点就是:所有人都觉得他在装逼,只有他自己觉得很正常。

扯远了,总而言之,用数学语言把高斯发现的规律写下来就是:

写的再详细一点就是:

这样就给了我们启发:要不,看看能不能找到一个简单连续函数

? 使得对较大的
(其中
)有近似关系:

当然了,如果当

较大时,有
岂不是更好?

但是到目前为止,我们根本不知道这样的

是否存在,但是我们可以选择相信它存在,然后代进去运算。当然,这样很不严谨,不过没办法,谁让我们的数学工具就这么一点呢?怪我们自己喽。

现在,我们假设这样的

存在,考虑它的性质。首先,它的定义域显然是
,考虑到素数的个数只会增加,不会减少(毕竟素数有无穷多个),故
。 然后对于两个相邻的素数
,当这两个素数很大时应该有:

因为

,故当
时,有:

故:

注意到对于两个相邻的素数

,当这两个素数很大时应该有:

故有:

再对

进行求和:

得到:

注意到左右不等式两边至多有
的差距,也就是说,我们又可以假设:

等等,为什么感觉约等于号右边的式子有些眼熟?哦!咱们把上式变一下:

想起来了吧?是的,之前我们证明过

。故有:

两边同时求导:

,化简,得:

如果你愿意,也可以写成:

插一句,素数定理还有一种表达方式:

,不过这两种表达方式是等价的,证明很显然,因为由洛必达法则,很容易证明以下极限成立:

故有:

这就是素数定理了。不过,站在数值计算角度看,

的精确性不及
,高斯当年的眼神还是很准的。

终于,我们证明

呸!胡扯完了素数定理,简单说两句题外话。

看完以上的推导过程,如果作为一个大一或大二学生还没有几分激动的话,也许真的不适合搞基础数学研究了,数学也是讲究缘分的。至少当初亲手推导时很激动,尽管上述方法并不严密,但我却希望你们能在这并不严密的数学推导中感受到数学的美。

其实,很多数学问题最初的解决方法不一定使用了特别高深的数学工具,而是很多令后人拍案叫绝的思想。例如,欧拉解决巴塞尔问题

的方法:

首先,函数

的所有零点为
是所有非零的整数),故欧拉猜测:

接着,如果我们将

展开,则
前的系数显然为:

而由泰勒公式

,我们可以得到:

比较

的两种表达形式的
前的系数,故有:

化简,得:

是的,以上很多步骤在当时看起来非常的不严谨,但想不到后人通过严格的数学证明,发现它居然真的是对的。有的时候数学研究,不一定非要局限于你所在的领域,有时也可以先大胆的思考、尝试,然后再回过头来补全它,不要因为害怕而限制住了自己的思维。

关于素数定理,有了探索和猜想,下面需要严格的数学证明了。素数定理的第一个严格证明来自阿达玛和普桑,证明方法比较高深(用到了复变函数论)。后来塞尔伯格和厄尔多斯给出了纯初等证明(一堆繁琐的不等式估计,思路比较复杂,启发性不大),证明细节可参考华老的《数论导引》。后人们不断简化素数定理的证明,已经有好几种证明了。

对了!关于素数定理,还有一件事:

格奥尔格·弗雷德里希·波恩哈德·黎曼(1826-1866)德国数学家,黎曼几何学创始人,复变函数论创始人之一。1859年黎曼被任命为柏林科学院的通讯院士,作为见面礼,黎曼提交了他唯一关于数论的论文,也是唯一完全不包含几何概念的论文,《论小于一个给定值的素数的个数》。在这篇论文中,黎曼提出了著名的黎曼猜想:黎曼

函数的所有非平凡零点都位于
上,到目前为止,人类依然没有解决。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值