数学中国

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
楼主: 愚工688

基于偶数哥猜哈-李素对计算公式改进的偶数素对计算式 Xi(M)≈ t1*c1*M/(logM)^2

[复制链接]
 楼主| 发表于 2019-1-31 20:54 | 显示全部楼层
本帖最后由 愚工688 于 2019-1-31 14:40 编辑
白新岭 发表于 2019-1-31 08:07
如果要计算一个偶数的素数对,统计它前所有偶数的素数对是没有意义的。
我之所以统计它前所有偶数的素数对 ...


今天是2019-01-31,以今天日期为随机数,计算其百倍,千倍的连续偶数的素对数量。
我的计算式: Xi(M)=t2*c1*M/(logM)^2   

  S( 2019013100 ) = 4682545    ;Xi(M)≈ 4681431.12     δxi(M)≈-0.0002379  ( t2=  1.104341 )
  S( 2019013102 ) = 3293813    ;Xi(M)≈ 3294658.61     δxi(M)≈-0.0002567  ( t2=  1.104341 )
  S( 2019013104 ) = 6471075    ;Xi(M)≈ 6472750.9      δxi(M)≈-0.0002590  ( t2=  1.104341 )
  time start =20:29:32, time end =20:29:41
  S( 20190131000 ) = 37788161  ;Xi(M)≈ 37710439.86    δxi(M)≈-0.002057  ( t2=  1.091059 )
  S( 20190131002 ) = 25877171  ;Xi(M)≈ 25828659.73    δxi(M)≈-0.001875  ( t2=  1.091059 )
  S( 20190131004 ) = 52770555  ;Xi(M)≈ 52670209.26    δxi(M)≈-0.001902  ( t2=  1.091059 )
  time start =20:29:53, time end =20:30:35
可以看到,3个大偶数的计算时间合计都不到1分钟。并且每个偶数的素对计算值的相对误差都比较小。

如果同样采用Qbasic 语言编写的程序计算 采用 π(N)为参数的计算式 Zuo(N) ~ C(N)* π(N)^2/N . 估计没有1个小时是难以完成的,这个就是使用 π(N)为参数的代价。当然如果能够采用高级一些语言编写程序,不在此列。
白先生,你编写的计算程序采用什么语言?
发表于 2019-2-1 17:10 | 显示全部楼层
对于编程来说,我可能远远不及愚工688.   我只是在验证k生素数公式时,向vfbpgyfk先生请教过编程,当时也学会点,做了几个简单的程序。那是用VFP计算n前4生素数数量的程序。在本专栏有帖子“[原创]请教vfbpgyfk先生一个编程问题”

我的大部分数据和公式是用excel软件获得的。
我看过好多帖子,对哈代公式(包括哥德巴赫猜想,孪生素数对,3个素数的和(也有人称三素数定理))好像是用数论知识得到的,里边有圆法,单位1的素数p次根,看不懂,我是一个高中生,数学根基太浅。

对于数论仅仅是自学点皮毛,群论知识知道的也不多 。
从你给重生888的回帖可以知道,你只是认为 Zuo(N) ~ C(N)* π(N)^2/N的公式是哈代公式的一种变形,而不是认为哈代公式是用素数定理后的变形。
至于称谁的公式并不重要,重要的是它能从数学理论中推到出他的公式吗?他能解释各个部分具体数学含义吗?我在帖子中,好像你提到过tongxinping,把别人的公式稍微变形成了自己的公式,当然他好久也不来此网站了。
大傻88888888把连乘积做了变形得到了哈代公式,他说如果以前没有人做过,他就是第一人证明哈代公式的,原话可能不是这么说的。

我来这里讨论,是想说明引起哈代公式偏差的原因,并不考虑计算的快与慢问题,也不是考虑精度问题,如果考虑他直接用编程统计即可。

当然寻找一种精度高计算快的方法还是一种不错的想法。

如果可行的话,可以用n/LN(N)的积分代替主项,系数还用原来的,这样的话速度与精度都会很高。

有一道简单不定方程正整数解问题,不知道愚工敢不敢兴趣,x+y=n,x,y为正整数且不能整除3,5,7三个素数,即在x,y的分解因式中没有因子3,5,7.

这是个有限问题,如果能解决它,就可以明白到底那一种表达公式是原始的,那一种公式是变形了,也会知道前边n个偶数的系数之和为2n的原因(这与取到根号前没有关系)。
 楼主| 发表于 2019-2-1 22:45 | 显示全部楼层
本帖最后由 愚工688 于 2019-2-27 09:53 编辑
白新岭 发表于 2019-2-1 09:10
对于编程来说,我可能远远不及愚工688.   我只是在验证k生素数公式时,向vfbpgyfk先生请教过编程,当时也学 ...


关于编程,我只会使用Basic,Qbasic,计算速度应该比较慢的。
我以前计算偶数的素对,基本上使用素数连乘式计算,在偶数5万以下精度还可以。由于素数连乘式的计算值与实际数之间存在一个误差偏移问题,就是在偶数越来越大时,一个样本区域(一般取20到50个偶数)内所有偶数的素对计算值的相对误差会集中于一个很小的范围内波动,而相对误差的平均值则会逐渐的趋向于0.19附近。
因此对于大偶数的素对数量的计算,素数连乘式必须进行误差修正,才能得到高精度的计算值。
因为我对这个相对误差的偏移问题,做了大量的数据统计,掌握了一些规律,故使用修正系数的计算式Sp(m*)对于大偶数基本上能够得出比较高的计算精度。当然这个修正系数,是随着偶数增大需要进行变动的,不同大区域偶数需要不同的修正系数。
实际上,哈代公式的相对误差情况基本与我连乘式的统计情况类似。
不同点:
连乘式的素对计算值的相对误差平均值由小偶数时处于负值区域逐渐增大,在3-4万时处于0位附近,在1亿附近处于0.10附近,逐渐趋向0.19附近;
而哈代公式的相对误差平均值,有小偶数1000附近小区域时的约-0.25,缓慢增大,到100万时约-0.15;100亿时约-0.088,……,并且大偶数时相对误差分布也比较集中,即标准偏差很小。这是我通过对哈代计算值的相对误差统计发现的规律。这也是我提出《基于偶数哥猜哈-李素对计算公式 ...》原理
因此我对哈代公式是个渐近式是认可的,只是计算值与实际值很接近的偶数范围是我目前没有能力计算到的(>10^15的偶数目前没有真值筛选程序)。

去年11月,童信平在百度发帖,说我的计算式的计算精度不高,不如他的计算式。
据我所知,童除了剽窃的我1楼所介绍的Zuo(N)式外,没有看到他什么时候发过高精度的计算实例,哪来的勇气攻击我的计算式呢?而我在这里的帖子《高精度计算大偶数表为两个素数和的表法数值的实例(以当天日期为随机数选择偶数)》他也看到发过言的。
我想他除非对我计算式中采用不同的修正系数得到的高精度计算值的情况进行攻击外,是没有其它方面的。
因此,我用了一个星期左右,搞了一个计算式 Xi(M)=t1*c1*M/(logM)^2   ,基本上精度比童锁吹嘘的公式B高一些,在他要与我比较精度中的帖子中进行回击,他始终不敢回答,怂了!
我把介绍这个计算式的帖子在百度猜想吧发表,却没能发出,说是广告帖。于是就把帖子发表在这里。这就是本帖的来历。
我认为 Zuo(N)是在哈代公式中引入素数定理后得到的一个变形式。
连乘积做了变形得到了哈代公式,这个在哈代公式的百度搜索中就有两种形式的转换内容。
vfbpgyfk先生使用的excel软件,我不会使用,这个软件的计算能力还是可以的,他的数据也不错。
关于{有一道简单不定方程正整数解问题,不知道愚工敢不敢兴趣,x+y=n,……},没有兴趣了,当n比较大时有许多不同解,实际就是哥猜类问题,哪是简单不定方程正整数解问题?除非n限制了大小。

今天2019-02-01,我使用 Xi(M)=t1*c1*M/(logM)^2   ( t1=1.358-log(M)^(2.045/3)*.03178 ) 对连续偶数2019020100 的计算实例:

  S( 2019020100 ) = 8551406   ;Xi(N)≈ 8526974.64   δxi( 2019020100 )≈-0.002865
  S( 2019020102 ) = 3564151   ;Xi(N)≈ 3552906.05   δxi( 2019020102 )≈-0.003155
  S( 2019020104 ) = 3394820   ;Xi(N)≈ 3385710.38   δxi( 2019020104 )≈-0.002683  
  S( 2019020106 ) = 6419894   ;Xi(N)≈ 6401519.4    δxi( 2019020106 )≈-0.002862  
  S( 2019020108 ) = 3941995   ;Xi(N)≈ 3931531.49   δxi( 2019020108 )≈-0.002654  
  S( 2019020110 ) = 4276620   ;Xi(N)≈ 4263487.34   δxi( 2019020110 )≈-0.003071  
  time start =23:08:00      end time =23:08:26
发表于 2019-2-2 11:47 | 显示全部楼层
你能从大量的数据中找到规律,并投入运用很是不错。从你的叙述中不难发现,你对连乘积也能熟练的运用。
在你的回帖中,说vfbpgyfk先生使用excel软件,那是你的误解,他多数会使用,只不过他对编程软件vfp使用起来更轻松,他是一个编程高手。我使用的是excel软件,它可以加载宏,但是它不像编程软件那样自动运行程序和计算,只能用手工输入基本数据和函数时,它才会计算,相当古板。我学会点vfp。
你说那是歌猜类问题,确实不假,但是它仅有3个条件,简单多,3*5*7=105,它的循环周期是105,也就是说每经过105个自然数,它们的值(解得组数)会按一定规律“”重复“”起来。对于实际的计算式就更少了,只有2*2*2=8个,也就是每一个条件把值分成2种情况,一个能整除它的,另一种是不能整除它的。也就是有8个算式可以计算出所有自然数对应的解组数,不敢兴趣就不勉强了。
我有一个帖子是把哥德巴赫猜想与“孪生素数猜想“合并到一起的,只不过孪生素数猜想是扩展了的素数差,即每一个偶数都可以表示成两个素数的差,它的公式与哈代公式一样,只是对每个偶数要是求解的话必须限定范围,系数采用原来的,主项都是范围值2n的代数式2n/(ln(2n))^2,它是一个不变值(当然限定范围变了,它还是随范围值的改变而改变的),即不定方程x±y=2k的素数解,限定范围为2n,对于每一个k值都有解,而且最多解组数与最少解组数有一个离∏((p-1)/(p-2))不太远的值,即大小比值有2n前最多不同因子的上述连乘积决定,它有了可比性,不像哥德巴赫猜想那样随n的增大,最少解的组数与最多解的组数拉大的很快,这里拉大的距离很慢,到2*3*5*7*11*13*17*19*23*29时,它们的比值也就是个位数,要想达到2位数的比值(即10的比例关系)其范围就非常大了。
 楼主| 发表于 2019-2-2 13:12 | 显示全部楼层
本帖最后由 愚工688 于 2019-2-2 05:39 编辑
白新岭 发表于 2019-2-2 03:47
你能从大量的数据中找到规律,并投入运用很是不错。从你的叙述中不难发现,你对连乘积也能熟练的运用。
在 ...


对于偶数的哥猜,求素数对的方法,如果从艾拉托色尼筛法出发,那么最符合其原理的计算方法无疑是素数连乘法。
判断偶数M所分成的A-x与A+x两个数是否都是素数,依据艾拉托尼筛法,可有如下2个情况:
条件a :A-x与A+x 两个数同时不能够被≤r的所有素数整除时,两个数都是素数; [r为≤√(M-2)的最大素数, 下同。]
条件b:A+x不能够被≤r的所有素数整除,而A-x等于其中某个素数,两个数都是素数;
若把x值的取值范围[0,A-3]里面符合条件a的x值的个数记为S1(m),符合条件b的x值的个数记为S2(m),由上述的两个条件,即可得到偶数M分成两个素数的全部分法数量 S(m),有
S(m)=S1(m)+S2(m) .---------(式1)
对于把偶数M分成的两个素数A-x与A+x的条件a,可看成变量x符合某种由偶数半值A所限定条件的数,其在自然数区间[0,A-3] 中的分布规律,可归纳为一个概率问题:
除以素数2,3,…,n,…,r时余数同时满足不等于j2、j3及(3-j3)、…、jn及(n-jn)、…、jr及(r -jr)的数的发生概率问题,这里的j2,j3,…,jn,…,jr系A除以素数2,3,…,n,…,r时的余数。
因此依据概率的独立事件的乘法原理,符合条件a:
除以素数2,3,…,n,…,r时余数同时满足不等于j2、j3及(3-j3)、j5及(5-j5)、…、jr及(r -jr)的x值的分布概率P(m) 有
P(m)=P(2·3·…·n·…*r)
=P(2)P(3)…P(n)…P(r) . -----------{式2}
故在[0,A-3] 中的这个自然数区域中使偶数M分成两个符合条件a的素数的x值数量的概率计算值Sp(m),有:
Sp(m)=(A-2)P(m)
= (A-2) P(2·3·…·n·…·r)
=(A-2)*P(2)P(3)…P(n)…P(r)
=(A-2)*(1/2)*f(3)*…*f(n)*…*f(r). -----------{式3}
式中:3≤ n≤r;n是素数。f(n)=(n-1)/n, [jn=0时];或f(n)=(n-2)/n, [jn>0时] 。jn系A除以n时的余数。

实例:
M= 120 ,A= 60 , ≤√(M-2)的所有素数为2,3,5,7 , A除以素数2,3,5,7的余数分别是j2=0,j3=0,j5=0,j7=4;在[0,57]区间里面同时满足:x除以2的余数≠0、x除以3的余数≠0、x除以5的余数≠0、x除以7的余数≠4与3的x值
实际有 x= : 1 , 7, 13 , 19 , 23 , 29 , 37 , 41 ,43 , 47 , 49 ,( 53 ) ——括号内是S2(m)的值,下同;
代入 M= (A-x )+( A+x ) 的模式,得到120的全部素对: 59 + 61 ,53 + 67,47 + 73, 41 + 79 ,37 + 83 ,31 + 89 ,23 + 97 ,19 + 101 ,17 + 103 ,13 + 107 ,11 + 109 ,7 + 113.
M=120 ,S(m)= 12 ,S1(m)= 11 , Sp(m)= 11.05 ,δ1(m)≈0 ,δ(m)= -0.079 ,K(m)= 2.67 , r= 7
而x值的概率计算数量Sp( 120)的计算式子与相对误差δ(m)的计算式子分别为:
Sp( 120)=[( 120/2- 2)/2]*( 2/ 3)*( 4/ 5)*( 5/ 7)= 11.05
δ(120)=(11.05-12)/12=-0.95/12 = -0.079;
δ1(120)=(11.05-11)/11=0.0045≈0

显然,理论上用同样的方法,我们可以求得任意大的偶数M分成两个素数的x值的概率计算值Sp(m)以及实际上的素对数量的各个有关数值。
这就是艾氏筛法与连乘式的对应之处,每一步计算对应一个素数因子的筛选,具有确切的筛选作用。
比如,101楼的偶数计算,
S( 2019020100 ) = 8551406   ;Xi(N)≈ 8526974.64   δxi( 2019020100 )≈-0.002865
  S( 2019020102 ) = 3564151   ;Xi(N)≈ 3552906.05   δxi( 2019020102 )≈-0.003155
  S( 2019020104 ) = 3394820   ;Xi(N)≈ 3385710.38   δxi( 2019020104 )≈-0.002683  
  S( 2019020106 ) = 6419894   ;Xi(N)≈ 6401519.4    δxi( 2019020106 )≈-0.002862  
  S( 2019020108 ) = 3941995   ;Xi(N)≈ 3931531.49   δxi( 2019020108 )≈-0.002654  
  S( 2019020110 ) = 4276620   ;Xi(N)≈ 4263487.34   δxi( 2019020110 )≈-0.003071  
使用连乘式的计算:
Sp( 2019020100 *) = 1/(1+ .1406 )*( 2019020100 /2 -2)*p(m) ≈ 8550840.1 , k(m)= 2.666667 ;Δ(m)≈-0.000066;
Sp( 2019020102 *) = 1/(1+ .1406 )*( 2019020102 /2 -2)*p(m) ≈ 3562850 ,    k(m)= 1.111111 ;Δ(m)≈-0.000365;
Sp( 2019020104 *) = 1/(1+ .1406 )*( 2019020104 /2 -2)*p(m) ≈ 3395186.5 , k(m)= 1.058824 ;Δ(m)≈ 0.000108;
Sp( 2019020106 *) = 1/(1+ .1406 )*( 2019020106 /2 -2)*p(m) ≈ 6419436 ,    k(m)= 2.001967 ;Δ(m)≈-0.000071;
Sp( 2019020108 *) = 1/(1+ .1406 )*( 2019020108 /2 -2)*p(m) ≈ 3942535.3 , k(m)= 1.22952   ;Δ(m)≈ 0.000137;
同样具有比较高的计算精度。
注:p(m)就是√(M-2) 内的素数连乘式,1/(1+μ  )就是一定范围内偶数的相对误差修正系数。我设定为[15亿,21亿)的μ=0.1406.


而从素数定理出发对偶数可分成的素对数量的计算,无疑是以哈代公式为代表了。对此的计算原理我不太了解,我的计算式只是依据哈代公式而进行改进,以提高计算精度与计算速度。

而对孪生素数猜想,我没有进行过探讨。

发表于 2019-2-2 15:05 | 显示全部楼层
从你的详细分析及论述过程看,这种方法是你的原创。
只是这f(n)的取值缘由没有说清楚,实际上对jn=0时,说明偶数中的素数可以取余数0以外所有其他余数值,而单独不能取余数0,因为它一定不是该偶数的素数对(偶数本身能整除素数,那么只能有一个素数是这个偶数中的素数,另一个肯定是合数,除非有两个同样的素数,这些数的概率几乎为零,也就是说与偶数有共同因子素数不能组成偶数的素数对),这应该是f(n)取(n-1)/n值的原因。
f(n)的第二种取值如何解释呢?当偶数不能整除素数时,偶数的素数对肯定不能取两个余数,因为对于每一个素数对中的素数而言,有一个素数不能取余数0(那就是合数了,不是素数),另一个素数也不能取它中的某一个余数,因为素数都为互质数,如果它能取遍所有不为0的余数,说明它取了能整除它的数,也就是取了合数,我说的意思是一个素数肯定占另一个素数的一种余数,所以对于不能整除素数的偶数在素数的余数上只有p-2余数,通俗的说,一个素数对,要去掉2种余数才可能是素数 对,这与素数筛选是一样的,要想使一个数不被某素数整除,必须去掉一类余数,即余数为0的一类数。
这是比较牵强附会的解释。
因为这里的占比不是2次的,而是 线性的,所以就没有法组成整体1,筛法仅适用于素数个数,并不适应于偶数的素数对,因为它是2次形的。
 楼主| 发表于 2019-2-2 20:36 | 显示全部楼层
本帖最后由 愚工688 于 2019-2-2 12:40 编辑
白新岭 发表于 2019-2-2 07:05
从你的详细分析及论述过程看,这种方法是你的原创。
只是这f(n)的取值缘由没有说清楚,实际上对jn=0时,说 ...


任意偶数2A分成的两个整数可以记作A-x,A+x,因此求素对可以化作求能够构成素对的x值。这个方法就是我采用的。它避免了采用p+(N-p)模式时判断不清(N-p)的类型而只能用殆素数命名的缺陷。
x值的取值区域[0,A-3]是一个自然数的起步区域。自然数除以任意素数的余数是以该素数值为循环节周期性变化的。
在x值的取值区域[0,A-3]中除以素数n时,余数满足不等于jn 及(n-jn)的数的发生概率为(n-2)/n,(jn≠0时);或发生概率为(n-1)/n,(jn=0时);注意:jn——偶数半值A除以素数n的余数。你帖子中的理解错误。
发表于 2019-2-2 23:23 | 显示全部楼层
愚工688认为:
“连乘式的平均值由小偶数时处于负值区域逐渐增大,在3-4万时处于0位附近,在1亿附近处于0.10附近,逐渐趋向0.19附近;
而哈代公式的相对误差平均值,有小偶数1000附近时的约-0.25,缓慢增大,到100万时约-0.15;100亿时约-0.088,……,
因此我对哈代公式是个渐近式是认可的,只是计算值与实际值很接近的偶数范围是我目前没有能力计算到的。”
我认为:
连乘式的计算值与实际值之比由小偶数时小于1后逐渐增大,在3-4万时处于1附近,在1亿附近处于1.10附近,逐渐趋向1.261附近;
而哈代公式的计算值与实际值由小偶数1080附近时的约0.79,缓慢增大,到1000万时0.86168;100亿时0.90884,40亿亿时0.9493……无限大时趋近1。
连乘积和哈代公式的增长速度基本上是同步的。
发表于 2019-2-3 09:48 | 显示全部楼层
本帖最后由 重生888@ 于 2019-2-3 10:08 编辑

对下列偶数,大多数人无从下手,我可轻松计算!

2*3*5*7*11*13*17*19*23*29=6469693230        5/3*6469693230/(ln6469693230)^2=21129323
64696932300                                                     =174011910
646969323000                                                   =1457930125
6469693230000                                                 =12392054209  (对)
.......
发表于 2019-2-3 09:56 | 显示全部楼层
看来大傻8888888对各种计算式也做了详细分析。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|数学中国 ( 京ICP备05040119号 )

GMT+8, 2024-5-14 09:47 , Processed in 0.083007 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表