信息化的本质分享 http://blog.sciencenet.cn/u/Babituo

博文

分析一下沈卫国老师的歌氏猜想的证明思路

已有 4058 次阅读 2012-8-1 23:12 |个人分类:信息探索|系统分类:科研笔记| 歌德巴赫猜想

沈老师邀请我为他的思路写个验证程序。很感兴趣,就先大致了解了一下沈老师的思路,感觉真的有趣。
为了正确理解沈老师的思路,以便为写程序做准备,先来仔细分析一下沈老师的思路。
参考沈老师的这篇文章来分析:
 
沈老师提出的第一个命题是:
1.任何偶数N,满足两个奇数相加等于它的奇数对共有N/4个(取整)。
理解:
偶数N,一定可以写成2*K;
如果从数1开始计自然数的个数,计到N,也就是计到2*K,是有N个数。
如果从数1开始计偶数的个数,计到N,也就是计到2*K,就是只有K个数, K是N的一半,也就是N/2。
在自然数中,从1到K,总共有多少个奇数呢?这要看K是奇数还是偶数。
如果K是奇数则有(K+1)/2个,如果K是偶数,则就是K/2个,不管是哪个,反正,只要N确定,这个个数就是确定的,不妨设为L个。于是,我们得到L个奇数,就是0<x<N/2之间的奇数个数。
用N减去L个奇数中的每一个奇数,一定得到另外L个奇数,而且,得到的奇数和减去的奇数,就是一对和等于N的奇数对。
所以,任何偶数,满足两个奇数相加等于它的奇数对共有L对。
当N/2是偶数时,L=N/4
当N/2是奇数时,L=(N/2+1)/2 = (N+2)/4 与 “取整(N/4)”应该是一致的。
简单验证:
设N=6和10
(N+2)/4分别为:2,3
N/4分别为:1.5和2.5,四舍5入地取整,相当于各加0.5,也得2,3。
早先认为这个是新猜想,是没有深入考虑的误判。
 
命题2:对任何大偶数N,对于素数S<Sqrt(N),在组成N的所有奇数对中,两个奇数中都含有S因子的奇数对占全部奇数对总数(N/4)的1/S
命题3:对任何大偶数N,对于素数S<Sqrt(N),在组成N的所有奇数对中,两个奇数中只有一个奇数含有S因子的奇数对占全部奇数对总数(N/4)的2/S
理解:
因为组成N的奇数对有 L=取整(N/4)对,设这些奇数对组成集合 D = {D1,D2,D3...Di...DL},
那么,Di为奇数对(ji,jci),其中,ji = 2 * i -1, jci = N -ji;(1<=i=<L)
那么,所有ji组成一个奇数集合:J1 ={1,3,5,7...ji...jL},共有L个连续的奇数。
由于S是小于Sqrt(N)的素数,所以,S必然包含于J1,不妨设:S = jk; 那么,k=(S+1)/2;
因为S是素数,所以,S一定是在J1中第1个出现含有因子S的元素,
那么,在J1中出现的第2个含有S因子的元素如果存在,就必然是3S,第3个就应该是5S,依次是7S,9S,...。
也就是:相邻2个元素之间的差是:2S,
由于J1是奇数的集合,所以相邻2个元素之间间隔的元素的个数,就是S个。这是因为从1到2S之间有S个奇数,S个偶数。
也就是说,在J1集合中,从jk开始,每间隔S个元素,就出现一个有S因子的奇数,直到超出jL的范围。
假设:J1中包含S因子的元素的集合为:{jk,j(k+s),j(k+2s),j(k+3s),...,j(k+ns)},则元素个数就是n+1个,
那么:k+ns<=L,n<=(L-k)/s, n+1<=(L-k)/S +1
令: Ms1 = (L-k)/S +1 = (L-(S+1)/2)/S + 1 =(2L+S-1)/(2S)= L/S - 1/(2S) + 1/2
那么,在组成N的所有奇数对中,奇数对的第一个奇数含有素数S为因子的奇数对的个数,就是Ms1个。
 
奇数对的第二个奇数的集合是:J2 ={N-1,N-3,N-5,N-7,...,N-ji,...,N-jL},也共有L个连续的奇数。
按升序排列,集合是:J2={N-jL,N-jL+2,N-jL+4,...,N-ji,...,N-5, N-3, N-1},共L个连续奇数。
由于L>S,所以,J2中必然至少有一个元素是包含S因子的奇数。同上假设是j2k,
那么:j2k=N-jL+(k-1)*2=P*S,表示J2中的第k个元素是S的P倍。
同J1理,如果J2中有多个包含S因子的奇数,那么就是:P*S,(P+1)*S,...,(P+Ms2)*S
也是连续的Ms2个奇数。
因为S<sqrt(N),jk2<N,所以,P<S,(P+1)<S,...,P+Ms2<S
由J2与J1的对称特性可知,Ms2=Ms1=L/S - 1/(2S) + 1/2;
也就是说:在组成N的所有奇数对中,奇数对的第二个奇数含有素数S为因子的奇数对的个数,也是Ms1个。
 
由于J2与J1完全对称,所以,对于两个集合中含有S因子的奇数而言,只可能出现2种情况之一:
1.正好在J1的第一个含S因子的奇数,就是S和倒序后的J2的第一个含S因子的奇数P*S是一对奇数;
2.在J1的第一个含S因子的奇数,就是S和倒序后的J2的第一个含S因子的奇数P*S不是一对奇数;
如果是第一种情况,整个集合D中包含的含S因子的奇数都就是Ms1对;
否则,就是2*Ms1对,
因为两个奇数集合中的含S因子的奇数是均匀分布的,两个奇数集合又是对称的,
所以,第1个配对错开,就会全部错开。第一个配对成功,就会全部配对成功。
实际上正好含S因子奇数全部对称配对的概率应该是非常小的,而错开配对的概率是大的,
也就是说,集合D中含S因子的奇数对的个数,绝大多数情况下是2Ms1对,也就是2L/S-1/S+1对。
在极端情况下是:L/S - 1/(2S) + 1/2对。
这两种情况正是沈老师提到的奇数对中两个奇数都是有S因子的奇数,和只有1个奇数有S因子的情况。
值得一提的是,这两种情况是互斥的,也就是,实际情况只可能是这两种情况之一。
不可能同时出现在一个N对应的奇数对中,既有只有1个奇数是含S因子的奇数对,又有2个奇数都是含S因子的奇数对的情况。
这个结论看上去和沈老师的命题有些许差异,但2倍的关系是一致的。
以极端情况为例,偏差是:
取整(L/S)- 取整(L/S-1/(2S)+1/2)
从直觉上判定,这个偏差最大是±1。
关键看"取余(L/S)-1/(2S)+1/2"这部分是否会出现绝对值大于1的情况。
也就是,当"取余(L/S)-1/(2S)>1/2"时,误差会有1。这是有可能的。
这说明,沈老师的命题2,3基本正确,但稍有不严格,不知道这种不严格是否会给后续推导带来影响。
 
沈老师接下来做了一个操作:筛。
就是把集合D中,所有含有S为因子的奇数的奇数对从D中去掉(S为小于Sqrt(N)的每个素数)。
这意味着:剩下的集合D如果还存在至少1对的话,这对奇数对就一定是一对素数。哥氏猜想立即就得证了。
我不知道这算不算是一个严格的数学证明,但我第一感基本确认这个思路是合理的,甚至就是正确的。
 
因为N是足够大的偶数,所以N/2必然大于Sqrt(N),
于是,在筛过的D中所剩的所有奇数对(如果有的话)的第一个奇数,必定都是大于Sqrt(N),小于N/2的奇数,而这个奇数,必定是素数。因为不是素数的奇数,一定是之前某素数的倍数,已经被筛掉了。反过来说,如果在区间(Sqrt(N),N/2]之间已经不存在保留在D中的奇数了的话,D就应该已经被筛空了。
D被筛空的可能性是存在的,因为所有的素数,都可能在伴随另一半分别大于或小于N/2的素数S的合数被筛掉。
所以,经过这一筛,要么D被筛空,要么存在的奇数对就全是素数对。需要证明:经过筛后,在区间(Sqrt(N),N/2)之间总能还留有至少一个奇数对的前半数。
实际上是不是总能这样,需要验证,因为,真正的素数对,也可能在之前已经被筛掉了。如偶数10,在筛3为第一素数的奇数对时,已经把(3,7)这对素数对筛掉了,但(5,5)不会被筛掉,因为5>sqrt(10),筛后的D不是空的。
 
明白了“含素数及其合数的奇数对筛子”的道理,再回到沈老师的思路上来,就更好理解了。
现在的关键问题变为:集合D经过含素数S及其合数的奇数对筛子筛过之后,还剩不剩至少一对奇数对?S为小于Sqrt(N)的每个素数。
前面讲到“含素数S及其合数的奇数对”的个数最多可能有的是(2L/S-1/S+1)对,亦即(2L+S-1)/S对,沈老师对此做了近似处理,简化地认为就是2L/S对这么多。也就是L*(2/S)这么多对。这个近似又带来一些不严格,是否影响到最终结论,暂时未知。暂且认为不影响。
令:S={S1,S2,S3,...,Sn} Sn<Sqrt(N),是小于Sqrt(N)的素数的集合,共有n个。
与之对应的“含素数S及其合数的奇数对”的个数:C={c1,c2,c3,...cn},ci=(2L+Si-1)/Si,ci~=L*(2/Si).
 
现在开始筛
1.先在D中筛掉S1的“含素数S1及其合数的奇数对”的个数,L-L(2/S1)=L(1-2/S1).即:剩下L(1-2/S1)对。
2.再来筛S2的“含素数S2及其合数的奇数对”的个数的时候遇到一点麻烦:因为“含素数S1及其合数的奇数对”与“含素数S2及其合数的奇数对”可能有交集,在筛“含素数S1及其合数的奇数对”时,应该已经筛掉了一部分“含素数S2及其合数的奇数对”,交集就是S1*S2的奇数倍的奇数对应的奇数对。所以,不能直接在剩下的奇数对上直接减去L(2/S2),这样会多减了一次交集的个数。沈老师这时又抛出了一个论断,认为:在筛过S1后剩下的奇数对,假设是L1对中,“含素数S2及其合数的奇数对”仍然满足关系有L1(2/S2)对。
这个论断要成立的话,必须有:被筛掉的交集的数量,占总筛掉的数量的比例,也是2/S2.
这不难理解:因为被筛的L(2/S1)在L中的分布是均匀的,L(2/S2)在L中的分布也是均匀的,只是和S1对应的密度不同,所以,L(2/S2)在L(2/S1)中的分布也是均匀的,而且分布密度和在L中的分布密度必须是一样的,否则,就会出现L(2/S2)在L中分布不均匀的矛盾。
举例说,每隔3个元素筛掉一个元素,叠加每隔5个元素筛掉一个元素时,在隔3筛之前,之中和之后都是叠加平均每隔5筛一个元素。
 
于是,假设L1,L2,L3,...,Ln分别是经过S1,S2,S3,...,筛过后剩下的元素的个数。
就有:L(i+1) = Li(1-2/Si)
Ln=L*(1-2/S1)*(1-2/S2)*(1-2/S3)...*(1-2/Sn)
Ln就是最后剩下的元素的个数,如果Ln>=1,哥氏猜想就是对的。
{S1,S2,S3,...,Sn} Sn<Sqrt(N),是小于Sqrt(N)的连续的素数的集合,共有n个。为{3,5,7,11,...Sn}
Ln=L*(1-2/3)*(1-2/5)*(1-2/7)*(1-2/11)*...*(1-2/Sn)
  =L*(1/3)*(3/5)*(5/7)*(9/11)*(11/13)*...*((Sn-2)/Sn).............(1)
比较上式(1)与下式(2):
Ln'= L*(1/3)*(3/5)*(5/7)*(7/9)*(9/11)*(11/13)*...*((Sn-2)/Sn)........(2)
不难发现,(2)式右边是在(1)式右边基础上补充了素数间隔的奇数为分母的一个真分数因子。添加这些因子只能使Ln减小。
也就是Ln>Ln'
而Ln'化简后是L/Sn。
Sn是小于并最接近于Sqrt(N)的素数。所以,即使取Sn=Sqrt(N),仍然会有Ln>Ln'成立。
也就是:Ln>L/sqrt(N)
 因为:L=取整(N/4)
 所以:Ln>取整(N/4)/sqrt(N)
要使Ln>1,只需
取整(N/4)> sqrt(N)
N>16就可。
 
整个思路理解完毕,只剩下2个近似处理的影响需要验证。
 
第一个近似处理应该对思路没有影响,因为是在极端的情况下做的近似,而极端情况按正常情况处理已经是2倍的筛除量了,2倍的筛除量比1个点的筛除误差来说,1个点的筛除误差可以忽略,也就是说,少筛1个不会比多筛1倍筛得少,筛多了,还有剩,筛得少就更有剩。
 
第二个近似处理是把(2L+S-1)/S近似处理为2L/S.
二者相差(S-1)/S
当S足够大的时候,相差接近1
也就是说,按2L/S的比例来筛的话,可能在S足够大的时候,每个S都少筛掉了1个。只要2L/S的余数的分子大于1,就少筛了1个。
这个近似可能要命了。
 
先请沈老师看看我的理解是否正确完整。
如果确认理解到位,我就可以编程验证了。
 
接下来还要看一下,如果不做近似二处理,应该会是怎样的。
或者,反过来做近似处理更合理:(2L+S-1)/S~=2L/S+1=(2L+S)/S
就有:
L(i+1) = Li(1-2/Si)-1
即:
L1 = L(1-2/3)-1=(L-3)/3
L2 = L1(1-2/5)-1=(3L1-5)/5=(L-(3+5))/5
L3 = L2(1-2/7)-1=(5L2-7)/7=(L-(3+5+7))/7
 
。。。 
Ln = (L-(3+5+7+...+Sn))/Sn              //经检查,这里有错
   = L/Sn - (3+5+7+...+Sn)/Sn
 
L4 = L3(1-2/11)-1 = (9L3-11)/11 =(9(L-(3+5+7))/7-11)/11=(((9L-9(3+5+7))-77)/7)/11
无法约简通式。
 
大概验算一下:
N=64
L=N/4=16
Sn<=sqrt(64)=8-->7
Ln=16/7-(3+5+7)/7=1/7
Ln>0 但Ln<1,
验算不对,问题出在筛多了,在筛1倍素数因子的奇数时,可能多筛掉了素数对。如(3,61),(5,59),(7,57)都不该筛掉,但按照沈老师的思路就会被筛掉。多筛掉这些素数对后,沈老师在剩下的奇数对中的无根据的近似处理又会少筛掉一些奇数对个数,导致筛完奇数对个数的结果大于1的结论。
 
再验算122
N=124
L=N/4=31
Sn<=sqrt(124)->11,S={3,5,7,11}
L3 = (L-(3+5+7))/7 = (31-15)/7 = 16/7
L4 = L3(1-2/11)-1 = (16/7)(9/11)-1=(144-11)/11>1
验算通过
 
再验172
N=172
L=N/4=43
Sn = sqrt(172)->13,S={3,5,7,11,13}
L3 = (L-(3+5+7))/7 = (43-15)/7 = 28/7 = 4
L4 =  L3(1-2/11)-1 = 25/11
L5 =  L4(1-2/13)-1 = 12/13<1
验算失败 
 
所以,沈老师思路中真正不严密的地方是:
在其思路中多筛掉的奇数对和少筛掉的奇数对抵消后,筛完的结果还有剩。
这是一个无法证明的“新的猜想”,没有摆脱猜想变换的陷阱,不能成为证明。甚至,其思路本身就是不符合证明逻辑的。因为,多筛掉的怎么能用少筛来弥补得到剩下的大于1的结论呢?不符合逻辑。严格的数数应该一个都不多筛掉,也一个不少筛,结果有剩,才符合逻辑。
 
当然,对这个新的猜想,当然可以编程或者手工地去验证,这和枚举直接验证哥氏猜想并没有任何逻辑复杂度上的区别。
这样的编程仍旧可以是很好的练习题。留给感兴趣的爱好者作为练习了。我就不再编来玩了。
 


http://blog.sciencenet.cn/blog-33982-598085.html

上一篇:球面剖切圆的绘图算法问题(已解决,附程序下载)
下一篇:毕业20年感言

2 杨正瓴 洪昆辉

该博文允许注册用户评论 请点击登录 评论 (21 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2021-9-27 07:19

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部