第97章 他不会是在瞎写吧(3 / 4)

投票推荐 加入书签 留言反馈

  然后就按下了退格键,竟然把刚刚写好的,那段堪称教科书般標准的黎曼一西格尔主和项循环计算代码————
  刪掉了一大半!
  秦飞愣了一下。
  “他干嘛?写错撤回了?”
  但接下来李东敲出的代码,却让秦飞彻底看迷糊了。
  李东没有去纠结如何加快单次计算的速度。
  他有【代码直觉】还有《黎曼绝笔》里的那种降维数学思维,他现在已经可以初步找到通往现代计算机底层逻辑的完美桥樑了。
  他在代码顶部,重新引入了一个名为⁢fftw3.h>的头文件。
  这是著名的快速傅立叶变换(fft)开源库。
  然后又在代码中定义一个密集的评估网格。
  voidmultipointevaluation grid(...)
  他將需要逐个点代入t值去硬算的黎曼zeta函数,通过构建局部多项式,强行转化为了在网格点上的泰勒级数展开。
  紧接著,李东调用了fft算法,让这些多项式在频域內进行高速相乘。
  秦飞已经把降噪耳取了下来,眼睛看著李东的电脑屏幕,呼吸都变得有些急促了。
  “等等————这特么是在干什么?”
  秦飞想用自己学过的知识去去解析这套代码背后的逻辑。
  “算黎曼zeta函数,你引个快速傅立叶变换(fft)进来干嘛?这两者八竿子打不著啊!”
  “还有这个多点求值矩阵?他把泰勒展开放在网格上————”
  突然,他好像想到了什么“他————他不是在算单点!他是在利用fft的高效卷积特性,把一个大区间內的所有零点求值,强行打包成了一个並行的多项式运算?”
  “用多点求值去分摊黎曼—西格尔公式主和项那恐怖的计算开销?”
  这其实就是黎曼写在手稿里,没未被后世学界发现的零点计算的思路。
  比后来公开的odlyzko—schonhage算法早了近一个半世纪,甚至在数学底层上,把后者的时间复杂度又往下压了整整一个维度。
  但秦飞不可能知道啊!
  在他的认知里,黎曼—西格尔公式带来的0(t^(1/2))复杂度,就是单零点计算的理论下限。
  哪怕是学界最快的0s算法,也只是工程化的极限优化,根本不可能跳出这个数学框架。
  而现在,眼前这个傢伙,他到底在干什么?是想要推翻整个计算架构吗?
  “这怎么可能?!”
  秦飞感觉他疯了。
  “把主和项展开成矩阵运算,理论上虽然能降低平均复杂度,但误差怎么控制?你这么搞,浮点数的截断误差绝对会呈指数级爆炸的!”
  然而,还没等秦飞在心里反驳完。 ↑返回顶部↑

章节目录