数学中国

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
查看: 1323|回复: 21

偶数哥德巴赫猜想解的个数公式中的波动因子k

[复制链接]
发表于 2026-9-22 11:26 | 显示全部楼层 |阅读模式
理论最低值,乘以波动因子就可以接近每个偶数的哥德巴赫猜想解的个数的实际值,如下图片就是论坛朋友的波动因子公式的论述:

本帖子中包含更多资源

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

x
 楼主| 发表于 2026-9-22 11:30 | 显示全部楼层
我的《数论探秘》中没有波动因子,仅仅在第四章的第四节提到了相等于波动因子的比值(p-1)/(p-2)
如下图片所示:

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-9-22 11:30 | 显示全部楼层
本帖最后由 ysr 于 2026-9-22 04:47 编辑

我的书中的部分内容如下图片所示:


本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-9-22 11:31 | 显示全部楼层
本帖最后由 ysr 于 2026-9-22 04:44 编辑

图片如下面所示

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-9-22 11:46 | 显示全部楼层
k=∏(p-1)/(p-2)就是波动因子

网友用的是p为遍历该偶数所有奇素因子,我用的是k=∏(p1-1)/(p1-2),其中p1遍历该偶数中的所有小于方根的奇素因子,由于连乘积各项的分子略大于分母,故是增函数,咱要搞的是下限值,所以项数尽量少点儿,大于方根的因子就不再继续计算了。

而KLG=K*LG,将用来表示乘以波动因子的理论值,我的书中本来没有KLG的数据,如果有机会了 ,以后再版的《数论探秘》将加上这个数据。
我的证明用的是下限值,所以,没有用到波动因子,再版的也就是补充一下数据而已,不做应用。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-9-22 11:52 | 显示全部楼层
我的书讲的相等于波动因子的比值就是(p-1)/(p-2),这里的p是该偶数中的最小的一个奇素因子。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-9-24 13:10 | 显示全部楼层
用波动因子乘以过度筛选的连乘积CLG会怎么样呢?可能会接近实际而不会大于实际,下面试试吧!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-9-24 13:14 | 显示全部楼层
(如下文字和数据中的小于<和大于>是代表尖括号,其中的斜杠/只有在“LG/(m-1)”中间的斜杠/是除号,其他都是间隔号)
偶数/ 方根/  GM/  G/差 G-LG/ 偶数/  P/ m/ <LG/(m-1)区间理论平均值>/ LG
218090/方根467.001070662584/GM是10 / G=1539 /差为364/ /218090 /467 /<m为91>  区间的理论平均值LG/(m-1)为13.0614716990477  LG=1175.53784306443而CLG是796.171830275771
实际区间平均值G/(m-1)为17.1  KCLG=1076.73405583071
小根拆:
3+ 218087
7+ 218083
13+ 218077
43+ 218047
109+ 217981
157+ 217933
181+ 217909
241+ 217849
373+ 217717
409+ 217681
218092/方根467.003211980389/GM是16 / G=1351 /差为176/ /218092 /467 /<m为91>  区间的理论平均值LG/(m-1)为13.0614716990477  LG=1175.5486233647而CLG是796.179131590185
实际区间平均值G/(m-1)为15.0111111111111  KCLG=955.414957908222
小根拆:
5+ 218087
11+ 218081
23+ 218069
71+ 218021
89+ 218003
113+ 217979
191+ 217901
233+ 217859
263+ 217829
269+ 217823
311+ 217781
353+ 217739
359+ 217733
401+ 217691
431+ 217661
449+ 217643
218094/方根467.005353288375/GM是15 / G=2293 /差为1118/ /218094 /467 /<m为91>  区间的理论平均值LG/(m-1)为13.0614716990477  LG=1175.55940366497而CLG是796.186432904599
实际区间平均值G/(m-1)为25.4777777777778  KCLG=1609.51344104893
小根拆:
7+ 218087
11+ 218083
13+ 218081
17+ 218077
47+ 218047
73+ 218021
113+ 217981
157+ 217937
193+ 217901
271+ 217823
313+ 217781
347+ 217747
367+ 217727
397+ 217697
433+ 217661
218096/方根467.007494586543/GM是7 / G=1152 /差为-23/ /218096 /467 /<m为91>  区间的理论平均值LG/(m-1)为13.0614716990477  LG=1175.57018396524而CLG是796.193734219013
实际区间平均值G/(m-1)为12.8  KCLG=818.202341506364
小根拆:
13+ 218083
19+ 218077
127+ 217969
163+ 217933
349+ 217747
379+ 217717
409+ 217687
218098/方根467.009635874893/GM是11 / G=1125 /差为-50/ /218098 /467 /<m为91>  区间的理论平均值LG/(m-1)为13.0614716990477  LG=1175.58096426551而CLG是796.201035533427
实际区间平均值G/(m-1)为12.5  KCLG=796.201035533427
小根拆:
11+ 218087
17+ 218081
29+ 218069
191+ 217907
197+ 217901
239+ 217859
269+ 217829
317+ 217781
359+ 217739
401+ 217697
431+ 217667
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-9-24 13:15 | 显示全部楼层
通过上面的数据可以看到,虽然波动因子乘以过度筛选的连乘积CLG得到的KCLG也是波动的,但是远没有超过实际值G,虽然接近但仍然有差距,不过差距变小一点而已。
但不能用于证明,做证据需要证明到无穷仍然是小于实际的。可用于证明的是绝对下限公式,我的书中早有了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2026-9-24 13:18 | 显示全部楼层
代码如下:

Private Sub Command1_Click()
Dim a, b, c
a = Val(Text1)
b = Val(Text2)
If Right(a, 1) Mod 2 = 0 Then
a = a
Else
a = Val(a + 1)
End If

a1 = a
Do While a1 <= b
c = fenjieyinzi1(Val(a1))
c2 = fenjieyinzi2(Val(a1))
gl1 = (Val(a1)) ^ 0.5
g = Mid(c, InStr(c, "=") + 1)
sa = fenjieyinzi(Val(a1))
sa = "*" & Trim(sa)
sa = paixu1(Trim(sa))
k = paixu12(Trim(sa), Val(gl1))
lg = Mid(c2, InStr(c2, "=") + 1)
lg = Mid(lg, 1, InStr(lg, "而") - 1)
klg = Val(k) * Val(lg)
lg = Int(Val(lg))
c3 = Mid(c2, InStr(c2, "为") + 1, InStr(c2, ">") - 1)
m = Val(c3)
clg = Mid(c2, InStr(c2, "是") + 1)
kclg = Val(k) * Val(clg)
ls = fenjieyinzi3(Val(a1))
c1 = c1 & c & " /差为" & Val(g - lg) & "/" & c2 & vbCrLf & "实际区间平均值G/(m-1)为" & Val(g) / (Val(m) - 1) & "  KCLG=" & kclg & vbCrLf & "小根拆:" & vbCrLf & ls

a1 = a1 + 2
Loop
Text3 = c1
jc = "(如下文字和数据中的小于<和大于>是代表尖括号,其中的斜杠/只有在“LG/(m-1)”中间的斜杠/是除号,其他都是间隔号)" & vbCrLf
Combo1 = jc & "偶数/ 方根/  GM/  G/差 G-LG/ 偶数/  P/ m/ <LG/(m-1)区间理论平均值>/ LG" & vbCrLf & c1
End Sub

Private Sub Command2_Click()
Text1 = ""
Text2 = ""
Text3 = ""
Combo1 = ""
Form1.Cls
End Sub
Private Function fenjieyinzi(sa As String) As String
Dim x, a, b, k As String
a = Val(sa)

x = 3
If a <= 1 Or a > Int(a) Then
If a = 1 Then
fenjieyinzi = "它既不是质数,也不是合数"

Else
MsgBox "error"
End If
  
Else

Do While a / 2 = Int(a / 2) And a >= 4
  
If b = 0 Then
fenjieyinzi = fenjieyinzi & "2"
b = 1
Else
fenjieyinzi = fenjieyinzi & "*2"
End If
a = a / 2
k = a
  
Loop

Do While a > 1
Do While x <= Sqr(a)
Do While a / x = Int(a / x) And a >= x * x
  
If b = 0 Then
fenjieyinzi = fenjieyinzi & x
b = 1
Else
fenjieyinzi = fenjieyinzi & "*" & x
End If
a = a / x
Loop
  
x = x + 2
Loop
  
k = a
a = 1
Loop
  
If b = 1 Then
fenjieyinzi = fenjieyinzi & "*" & k
Else
fenjieyinzi = "这是一个质数"
End If
  
End If

End Function
Private Function fenjieyinzi1(sa As String) As String
Dim a, b
a = Val(sa)
m = Sqr(a)
a1 = 3
s = 0
Do While a1 <= m
b = a - a1
c = fenjieyinzi(Val(a1))
d = fenjieyinzi(Val(b))
If InStr(c, "*") = 0 And InStr(d, "*") = 0 Then
s = s + 1
Print a1, "+", b
'ls2 = ls2 & CStr(a1) & "+ " & CStr(b) & vbCrLf
Else
s = s
End If
a1 = a1 + 2
Loop
a2 = a1
s1 = s
Do While a2 <= a / 2
b1 = a - a2
c1 = fenjieyinzi(Val(a2))
d1 = fenjieyinzi(Val(b1))

If InStr(c1, "*") = 0 And InStr(d1, "*") = 0 Then
s1 = s1 + 1
Print a2, "+", b1
'ls2 = ls2 & CStr(a2) & "+ " & CStr(b1) & vbCrLf
Else
s1 = s1
End If
a2 = a2 + 2

Loop
fenjieyinzi1 = a & "/方根" & m & "/GM是" & s & " / G=" & s1
End Function
Private Function fenjieyinzi2(sa As String) As String
Dim a, b
a = Val(sa)
m = Sqr(a)
m1 = Int(m)
a2 = m1
a1 = 3
s = 1
b = 1
Do While a2 <= m And InStr(fenjieyinzi(Val(a2)), "*") <> 0
a2 = a2 - 1
Loop
Do While a1 <= a2
c = fenjieyinzi(Val(a1))
If InStr(Trim(c), "*") = 0 Then
s = s + 1
b = b * Val(1 - 2 / a1)
Else
s = s
End If
a1 = a1 + 2
Loop
b2 = (a2 ^ 2 / 4) * b
b1 = (a / 4) * b
s1 = s
Do While a1 <= 4 * a2
c = fenjieyinzi(Val(a1))
If InStr(Trim(c), "*") = 0 Then
s1 = s1 + 1
b = b * Val(1 - 2 / a1)
Else
s1 = s1
End If


a1 = a1 + 2
Loop
b3 = (a / 4) * b
If s = 1 Then

fenjieyinzi2 = "  /" & a & " /" & a2 & " /m为" & s & ">  区间的理论平均值LG/(m-1)为" & b2 / s - 1 & "  LG=" & b1 & "而CLG是" & b3
Else
fenjieyinzi2 = " /" & a & " /" & a2 & " /<m为" & s & ">  区间的理论平均值LG/(m-1)为" & b2 / (s - 1) & "  LG=" & b1 & "而CLG是" & b3
End If


End Function

Private Function fenjieyinzi3(sa As String) As String
Dim a, b
a = Val(sa)
m = Sqr(a)
a1 = 3
s = 0
Do While a1 <= m
b = a - a1
c = fenjieyinzi(Val(a1))
d = fenjieyinzi(Val(b))
If InStr(c, "*") = 0 And InStr(d, "*") = 0 Then
s = s + 1
Print a1, "+", b
ls2 = ls2 & CStr(a1) & "+ " & CStr(b) & vbCrLf
Else
s = s
End If
a1 = a1 + 2
Loop
a2 = a1
s1 = s
Do While a2 <= a / 2
b1 = a - a2
c1 = fenjieyinzi(Val(a2))
d1 = fenjieyinzi(Val(b1))

If InStr(c1, "*") = 0 And InStr(d1, "*") = 0 Then
s1 = s1 + 1
Print a2, "+", b1
'ls2 = ls2 & CStr(a2) & "+ " & CStr(b1) & vbCrLf
Else
s1 = s1
End If
a2 = a2 + 2

Loop
fenjieyinzi3 = ls2
End Function

Private Function paixu12(a As String, sb As String) As String
Dim i As Integer
Dim ak(), s105, cr(), k
s103 = a
Set f = CreateObject("Scripting.Dictionary")
s105 = Split(s103, "/")
   j1 = UBound(s105)
   Print j1
   k = 1
   For k1 = 1 To j1
      n1 = n1 + 1
       ReDim Preserve ak(1 To n1)
      ak(n1) = s105(n1)
      k2 = ak(n1)
      Print ak(n1)
     If k2 <> 2 And k2 < Val(sb) Then
     k = k * (k2 - 1) / (k2 - 2)
     Else
     k = k
     End If
    Next
    paixu12 = k
End Function
Private Function paixu1(a As String) As String
Dim i As Integer
Dim ak(), s105, cr(), f
s103 = a
Set f = CreateObject("Scripting.Dictionary")
s105 = Split(s103, "*")
   j1 = UBound(s105)
   Print j1
   For k = 1 To j1
      n1 = n1 + 1
       ReDim Preserve ak(1 To n1)
      ak(n1) = s105(n1)
      Print ak(n1)
    Next
   
     
        For k = 1 To j1
           
             ReDim Preserve cr(1 To k)
            m = Val(ak(k))
            f(m) = ""
      Next
   
      n = 0
      m = f.Keys
      For i = 0 To f.Count - 1
          ReDim Preserve cr(1 To i + 1)
          cr(i + 1) = m(i)
      Next
     For i = 1 To UBound(cr) - 1
        For j = i + 1 To UBound(cr)
            If cr(i) > cr(j) Then
                temp = cr(j)
                cr(j) = cr(i)
                cr(i) = temp  'c数组是排序好的
            End If
        Next j
        
       ' If i Mod 20 = 0 Then
       ' s104 = s104 & temp & "/" & vbCrLf
       ' Else
       ' s104 = s104 & temp & "/"
       ' End If
    Next i
   
      For i = 1 To UBound(cr)
        If i Mod 20 = 0 Then
          s104 = s104 & "/" & cr(i) & vbCrLf
        Else
          s104 = s104 & "/" & cr(i)
        End If
     Next
         Print temp
        
     paixu1 = s104
End Function
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-11-15 12:11 , Processed in 0.129660 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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