和圆法的理论框架。
筛法的核心思想,是用一个“筛子”去过滤掉那些不想要的数。
比如要研究素数,就先列出所有整数,然后筛掉所有2的倍数、3的倍数、5的倍数剩下的就是素数。
但筛法有个问题:筛子太密的时候,误差项会失控。
肖宿想了一个办法,既然不能一次筛到底,那就分层筛。
他把筛的过程拆成了好几层,每一层只负责筛掉一部分合数,同时保留足够的结构信息,最后再把各层的结果用一种巧妙的方式叠加起来。
这个思路来源於他去年处理加权度量构造时的经验。
当时他在研究有理双曲奇点邻近的度量问题时,面对的是一个非常类似的困境:
直接在奇点上做计算会发散,但如果把奇点周围的空间分层展开,一层一层地逼近,最后再取极限,就能得到一个收敛得非常好的结果。
把连续空间的技巧移植到离散的整数集合上,这件事说起来简单,做起来却难如登天。
但肖宿最不怕的就是鸿沟,只是短暂思考了一段时间,他就开始了对这个方法的构造。
他做的第一步是下定义,也就是分清楚什么是层。
他先把从2到n的所有整数,按照它们的最小素因子的大小,分成了若干个层次。
这个分层方式的好处是,每一层內部的数在某种意义下是“均匀”的,筛起来误差项的增长速度会慢很多。
坏处是,层的数量k本身就是一个需要精心选择的参数。
k太小,层数不够,误差项还是会堆积;k太大,层数太多,每一层的计算复杂度会爆炸。
肖宿花了一个星期的时间,反覆调整这个参数,最终找到了一个微妙的平衡点。
这个平衡点不是一个固定的数字,而是一个依赖於n的函数,当n变化的时候,最优的层数也会跟著变化。
他把这个函数写成了一组递推关係式,密密麻麻地占据了草稿纸的整整五页。
然后第二步就是赋予权重。
分层之后,每一层筛出来的数,是不能直接相加的。
因为不同层的数在最终的计数中贡献的“分量”是不一样的,如果简单粗暴地加起来,就会像把不同面额的硬幣混在一起数,数出来的总数毫无意义。
肖宿需要给每一层赋一个权重。
这个权重要能够精確地反映该层中的数在哥德巴赫分解中的“重要性”。
换句话说,如果一个数更容易作为大偶数的素数加项出现,那么它的权重就应该比其他数更高。
这个想法本身並不新鲜。
陈景润的权重是一个相对简单的、静態的函数,而肖宿需要的权重必须是一个动態的、隨层次变化而变化的算子。
他把这个算子命名为“分层权函数”,用希腊字母w加上下標来表示。
而推导这组相容性条件又花了他四天时间。
当最后一个不等號在草稿纸上落定,他终於长舒一口气。
他给这种方法起了个名字:分层筛法。
👉&128073; 当前浏览器转码失败:请退出“阅读模式”显示完整内容,返回“原网页”。