数学中国

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
楼主: 志明

运用“连乘积公式”的基础条件,揭开误差之迷

[复制链接]
发表于 2022-2-18 23:40 | 显示全部楼层
本帖最后由 愚工688 于 2022-2-18 15:43 编辑

“连乘积公式”是符合Eratosthe筛法而推导得出的公式,在小偶数区域,是比较与实际素对的数量相近的。

示例:
例:偶数908,其√(908-2)内的最大素数是29,其半值A= 454,其分成两个素数对A±x的变量x的取值区间[0,A-3]中含有的整数为( 908/2- 2)个,
因此,其构成素对的x值的计算式是:
Sp( 908)=[( 908/2- 2)/2]*( 1/ 3)*( 3/ 5)*( 5/ 7)*( 9/ 11)*( 11/ 13)*( 15/ 17)*( 17/ 19)*( 21/ 23)*( 27/ 29)= 15

具体到每一步的含义:
1/2——[0,A-3]中满足除以2的余数不等于j2的数的发生概率;
( 1/ 3)—— [0,A-3]中满足除以3的余数不等于j3与(3-j3)的数的发生概率;
( 3/ 5)—— [0,A-3]中满足除以5的余数不等于j5与(5-j5)的数的发生概率;
( 5/ 7)—— [0,A-3]中满足除以7的余数不等于j7与(7-j7)的数的发生概率;
……
这里的j2,j3,…,jn,…,jr系偶数半值A除以素数2,3,…,n,…,r时的余数。

因此依据概率的独立事件的乘法定理:
在自然数[0,A-3]区域中除以素数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).
即有
Sp( 908)=( 908/2- 2)*P(m)=[( 908/2- 2)/2]*( 1/ 3)*( 3/ 5)*( 5/ 7)*( 9/ 11)*( 11/ 13)*( 15/ 17)*( 17/ 19)*( 21/ 23)*( 27/ 29)= 15
A= 454 ,
x= : 33 , 45 , 87 , 117 , 123 , 147 , 177 , 255 , 273 , 297 , 303 , 315 , 357 , 375 , 423 ,
M= 908 S(m)= 15 S1(m)= 15 Sp(m)≈ 15 δ(m)≈ 0 K(m)= 1 r= 29

当然大多数偶数的素对数量与计算值之间是有一点误差的,但是相对误差大多是比较小的。
在小偶数区域,符合条件a的素对实际数量与概率计算值Sp(m)是比较接近的。

如它们的值点的连线图就可以看出这一点:
图上计算值参数含义:
Sp(m)——连乘式计算值;
S(m)——偶数M的素对总数;
S1(m)——偶数M的素对中小素数大于√M的素对数量;
K(m)—— M含有的奇素因子构成的系数;
K(m)= π[(k-1)/(k-2)],
K(m)为偶数M的素因子系数,也可以称为表法数数量的波动系数。(这里素对表法数数量采用的是单记法,不含有奇素因子的偶数的素因子系数为1.。)可以从图上看到,K(m)的脉动是很规律的。







本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-18 23:46 | 显示全部楼层
本帖最后由 志明 于 2022-2-19 02:02 编辑
zengyong 发表于 2022-2-18 14:34
志明老师:
       您好!
       “连乘积公式”是遵循了素数倍数形成的规律和Eratosthe筛法推导得出的 ...


您好!

     请不要称我为老师,我不是老师,更当不了您的老师,叫我志明更合适。您的学识水平和数学知识等都比我强得多,我说的那些观点和看法,基本都是众所周知的东西,根本谈不上指导。您发的东西,我完全看不懂。我只是以前曾经用自己非常粗浅的数学知识,在这道题上作过一些探索。现在纯粹就是一个贪玩的老顽童,以玩为主(天天忙于与朋友在一起玩乐器),偶尔与网友们交流一下个人观点,

    祝您成功!
回复 支持 反对

使用道具 举报

发表于 2022-2-19 12:39 | 显示全部楼层
三人行,必有我师。谢谢!
回复 支持 反对

使用道具 举报

发表于 2022-2-19 12:41 | 显示全部楼层
本帖最后由 zengyong 于 2022-2-19 19:06 编辑

请不要诋毁或低估“连乘积”!
下图仅供参考。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

点评

若把图上各个点按照偶数大小的次序连接起来,就能够得到我在31楼图形的相应偶数区域的Sp(m)的图形。  发表于 2022-2-20 11:24
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-19 13:32 | 显示全部楼层
zengyong 发表于 2022-2-19 04:41
请不要诋毁或低估“连乘积”!
下图仅供参考。

zengyong先生:您好!

      非常赞同您”请不要诋毁或低估‘连乘积‘!“这一观点!

      今天下雨没出去玩,转发一个很早以前的贴子,贴子中的那个图,与您发的图应该是类似的,但区域更大一些,可供参考。
http://www.mathchina.cn/bbs/foru ... p;extra=&page=1






















点评

你的图形的数太密集了,不能看出具体的偶数,只能看到随偶数增大的素对数量的发展趋势。我最多的事250/2+1个偶数范围,再多无法具体标注数值了。  发表于 2022-2-20 11:35
回复 支持 反对

使用道具 举报

发表于 2022-2-19 19:26 | 显示全部楼层
路过,看一下,!!
回复 支持 反对

使用道具 举报

发表于 2022-2-20 12:56 | 显示全部楼层
本帖最后由 愚工688 于 2022-2-20 05:23 编辑

按照“在自然数[0,A-3]区域中除以素数2,3,…,n,…,r时余数同时满足不等于j2、j3及(3-j3)、j5及(5-j5)、…、jr及(r-jr)的x值”的方法,我们可以找出全部的符合不能被√M内素数整除的素对{A-x,A+x}的数量S1(m),但是按照连乘式计算的计算值的相对误差,则会随着偶数M的增大而发生偏离0位现象。
例如:1000万以下含有最多素因子的偶数9699690,它的素对情况:
All keys of dividing  9699690  into two prime numbers:(这是一个2273kb的大文本,摘录如下)
4849723 + 4849967  4849639 + 4850051  4849631 + 4850059 ……  47 + 9699643  43 + 9699647  41 + 9699649  37 + 9699653  23 + 9699667
M= 9699690 S(m)= 124180  S1(m)= 124031  Sp(m)= 136157.51   Δ(m)= .1   K(m)= 4.38  r= 3109

可以看到偶数9699690的素对数量的连乘式计算值的相对误差是0.1,稍微大了点。这是否是偶尔现象呢?显然不是。

再看一些与9699690相邻的偶数:
G(9699670) = 38083;Sp( 9699670 )≈  41639.4 , Δ≈0.0934, k(m)= 1.33971
G(9699672) = 57905;Sp( 9699672 )≈  63543 ,   Δ≈0.0974, k(m)= 2.04444
G(9699674) = 28316;Sp( 9699674 )≈  31109.2 , Δ≈0.0986, k(m)= 1.00091
G(9699676) = 33946;Sp( 9699676 )≈  37297 ,   Δ≈0.0987, k(m)= 1.2
G(9699678) = 56791;Sp( 9699678 )≈  62161.7 , Δ≈0.0946, k(m)= 2
G(9699680) = 37868;Sp( 9699680 )≈  41441.1 , Δ≈0.0944, k(m)= 1.33333
G(9699682) = 28846;Sp( 9699682 )≈  31838.9 , Δ≈0.1038, k(m)= 1.02439
G(9699684) = 56814;Sp( 9699684 )≈  62161.7 , Δ≈0.0941, k(m)= 2
G(9699686) = 28225;Sp( 9699686 )≈  31080.9 , Δ≈0.1012, k(m)= 1
G(9699688) = 29508;Sp( 9699688 )≈  32232 ,   Δ≈0.0923, k(m)= 1.03704
G(9699690) = 124180;Sp( 9699690 )≈ 136157.5 ,Δ≈0.0965, k(m)= 4.38075

G(9699692) = 28588;Sp( 9699692 )≈  31371.4 , Δ≈0.0974, k(m)= 1.00935
G(9699694) = 28853;Sp( 9699694 )≈  31674.7 , Δ≈0.0978, k(m)= 1.01911
G(9699696) = 56629;Sp( 9699696 )≈  62161.8 , Δ≈0.0977, k(m)= 2
G(9699698) = 31437;Sp( 9699698 )≈  34600.7 , Δ≈0.1006, k(m)= 1.11325
G(9699700) = 37677;Sp( 9699700 )≈  41441.2 , Δ≈0.0999, k(m)= 1.33333
G(9699702) = 56566;Sp( 9699702 )≈  62161.8 , Δ≈0.0989, k(m)= 2
G(9699704) = 33976;Sp( 9699704 )≈  37297.1 , Δ≈0.0977, k(m)= 1.2
G(9699706) = 28220;Sp( 9699706 )≈  31121.9 , Δ≈0.1028, k(m)= 1.00132
G(9699708) = 56493;Sp( 9699708 )≈  62161.9 , Δ≈0.1003, k(m)= 2
G(9699710) = 37789;Sp( 9699710 )≈  41625.4 , Δ≈0.1015, k(m)= 1.33926

很显然与9699690前后的一些偶数的连乘式的计算值的相对误差都是大小差不多的。这就是使用连乘式计算偶数素对数量的计算值相对误差,则会随着偶数M的增大而发生偏离0位的现象。
但是这个偏离是有限的,趋向于0.20附近。
例如在100万亿的偶数的连乘式计算值的偏离0位将达到0.18左右。
G(1e14)=90350630388,(3.52hour,μ=.18211309 );
Sp( 100000000000000 *) = 1/(1+ .1785 )*( 100000000000000 /2 -2)*p(m) ≈ 90627630904.7 ,Δ≈0.00306584,

回复 支持 反对

使用道具 举报

发表于 2022-2-21 21:08 | 显示全部楼层
本帖最后由 朱明君 于 2022-2-21 13:23 编辑
志明 发表于 2019-9-25 07:13
三次筛除的情况如下:

      第一筛产生的误差是正差2/5, 筛后的累计误差也是正差2/5;


32以内的质数个数算法
第1步,32/2=16个奇数、,为了计算简捷我们直接将奇数1改成质数2,
第2步,(16-2)/3=4,(取整数),  4个合数  (9,15,21,27)
笫3步,(16-8)/5=1,(取整数),  1个合数      25,
32/2-(4+1)=11个质数。这11个质数两两相加时(其中包括质数自身相加),就会得到从4到62的连续偶数。   


质数的对应偶数计算公式:设奇质数为X,对应偶数为y,
则{(X^2+1)/2}-X=y,
3=2,    5=8,    7=18,    11=50,    13=72,    17=128,  19=162,-------。  
设奇质数为X, (小于该奇质数的所有质数为x1,x2,x3,…xn), 对应偶数为y,
则[(x^2+1)/2-y]/x1=Z(取整数),其中[(x^2+1)/2]>y.   
           


32=3+29=13+19

双筛
32/2=16组
第1筛去掉2的所有倍数存下8组,
1,   3,  5,  7,  9, 11, 13,15,
31,29,27,25,23,21, 19,17,
第2筛去掉除3外所有3的倍数,存下4组,                                          
1,   3,  7, 13,
31,29,25,19,
第3筛去掉除5外所有5的倍数,存下3组,
1,  3,   13,
31,29, 19,
再去掉1,存下2组,
3,  13,
29,19,


回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-23 20:13 | 显示全部楼层
本帖最后由 志明 于 2022-2-23 12:32 编辑
朱明君 发表于 2022-2-21 13:08
32以内的质数个数算法
第1步,32/2=16个奇数、,为了计算简捷我们直接将奇数1改成质数2,
第2步,(16 ...


您好!

    您说的是连乘积筛法的历次筛除情况。我是运用“区域分析法“对32这个实例进行分析。以此说明,“区域分析法“通过对连乘积筛除过程中累计误差分布情况的分析,可以证明连乘积公式对误差具备调控功能,可以进一步证明连乘积公式的误差率不会无限增大,确认连乘积公式的计算值是相对合理的近似值。

    在此,按“区域分析法“的思路与方法讲详细一点。

    第一筛: 筛除素数5的倍数时,实际就是在32/5分析区范围内(从1至32/5这个区域),1、2、3、4、5、6这6个整数分别与5的乘积要被筛除,即:筛除掉1×5=5、2×5=10、3×5=10、4×5=20、5×5=20、6×5=30这6个数。

  按连乘积公式计算,第一筛应筛除32×1/5=32/5个数。而在32/5分析区范围内(从1至32/5)这个区域内,实际的有效数是1、2、3、4、5、6、这6个整数。也就是分析区内的有效数值比公式计算值少2/5。当分析区范围内的有效数值比公式计算值更小时,把这种情况叫作负差(6-32/5=-2/5)。根据分析推理可知:分析区内的有效数值与公式计算值有误差时,此次筛除会出现与其误差的绝对值相等,方向相反的误差。

     由于分析区范围内出现了负差2/5,因此,此次筛除会出现正差2/5。事实情况也是这样:

    按连乘积公式计算,筛除后应留下32×(1-1/5)=128/5,实际32筛除6个数后余下26个有效数值,比公式计算值多2/5。(26-128/5=2/5)

    第一次筛除产生的误差是正差2/5,筛除后的累计误差也是正差2/5。

  第二筛:筛除素数3的倍数时,实际就是在32/3分析区范围内(从1至32/3这个区域),剔除5的倍数之后的1、2、3、4、6、7、8、9这8个整数(注意:在32/3分析区范围内,5和10这2个整数在第一筛中被筛除),分别与3的乘积要被筛除,即:筛除掉1×3=3、2×3=6、3×3=9、4×3=12、6×3=18、7×3=21、8×3=24、9×3=27这8个数。

  按连乘积公式计算,第二筛应筛除32×(1-1/5)×1/3=128/5×1/3=128/15个数。而在32/3分析区范围内(从1至32/3这个区域),剔除5的倍数之后的有效数是1、2、3、4、6、7、8、9这8个整数。分析区范围内的有效数值比公式计算值少8/15,(8-128/15=-8/15)即:分析区范围内出现了负差8/15。根据分析推理可知:此次筛除会出现正差8/15。

  并知:第一次筛除产生了正差2/5,第二次筛除产生了正差8/15,两次筛除后的累计误差是正差14/15。(2/5+8/15=14/15)
  
  实际情况也是这样,按公式计算,第二筛后应留下32×(1-1/5)×(1-1/3)=32×4/5×2/3=256/15个数,实际筛除后留下的是18个数(32-6-8=18),有效数值18,比公式计算值256/15大14/15,(18-256/15=14/15),第二筛后的累计误差是正差14/15。

  第三筛:筛除素数2的倍数时,实际就是在32/2分析区范围内(从1至32/2这个区域),剔除5和3的倍数之后的1、2、4、7、8、11、13、14、16这9个整数(注意:在32/2分析区范围内,3、5、6、9、10、12、15这7个整数在第一、第二筛中被筛除,因此,只留下9个整数),分别与2的乘积要被筛除,即:筛除1×2=2、2×2=4、4×2=8、7×2=14、8×2=16、11×2=22、13×2=26、14×2=28、16×2=32这9个数。

  按连乘积公式计算,第三筛应筛除32×(1-1/5)×(1-1/3)×1/2=128/15个数,而在32/2分析区范围内(从1至32/2这个区域),剔除5和3的倍数之后有效数是1、2、4、7、8、11、13、14、16这9个整数。分析区范围内的有效数值比公式计算值多8/15,(9-128/15=7/15)即:分析区范围内出现了正差7/15。由此可知:此次筛除会出现负差7/15。

  并知:第一次筛除产生了正差2/5,第二次筛除产生了正差8/15,第三次筛除产生了负差7/15,三次筛除合计的累计误差是正差7/15。(2/5+8/15-7/15=7/15)

  实际情况也是这样,按公式计算,第三筛后应留下
32×(1-1/5)×(1-1/3)×(1-1/2)=32×4/5×2/3×1/2=128/15个数,
  
  而实际三次筛除后留下的是9个数(32-6-8-9=9),有效数值是9,比公式计算值128/15大7/15,(9-128/15=7/15),第三筛后的累计误差是正差7/15。

  分析推理:

  因为分析区的最大范围可达到从1至A/2(A表示任意一个较大的偶数),分析区之外的范围最小时只是从A/2至A。因此,当误差率相对较大,分析区也相对较大时。之前的累计误差不可能全部聚集在分析区之外的区域。在分析区范围内,必然会出现与筛除之前累计误差同方向的误差。因而,此次筛除必然会产生与之前累计误差方向相反的误差,冲减之前的累计误差。

  例如:在第三次筛除时,筛除之前的累计误差率相对较大(正差14/15),分析区范围也相对较大(从1至32/2)。在这个相对较大的分析区范围内,就出现了与之前累计误差同方向的误差(正差7/15),第三筛就产生了与筛除之前累计误差方向相反的负差(-7/15),把之前的累计误差正差14/15冲减成正差7/15。这是“连乘积公式”自身对误差具有的调控功能在发挥作用。以此可进一步证明连乘积公式的误差率不会无限增大,可确认连乘积公式的计算值是相对合理的近似值。

点评

我的算法能得到正确的质数个数  发表于 2022-2-26 21:43
你的方法有误差,是你不能解决重复合数造成的,  发表于 2022-2-26 19:25
回复 支持 反对

使用道具 举报

发表于 2022-2-23 21:14 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-23 02:28 , Processed in 0.103698 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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