第102章 世界开始承认它(1 / 11)
德国时间凌晨两点。
柏林工业大学,计算几何与组合算法实验室。
克劳斯已经连续三十多个小时没有合眼了。
他面前的六块屏幕上,全是滚动的终端日誌和密密麻麻的json结构树。
三天前,当他第一次用江临提供的那个被称为mps的核验包,在半径r=10的范围內跑出绿色的no periodic patches found时,他在那个只有七八个顶级算法研究者的私密小群里,说了一句话。
this is not nonsense.
但那天晚上,他的导师,实验室的负责人,做了三十年组合优化的老教授,把他叫进了办公室。
老教授只问了他一个问题。
“你跑的,是他写的代码?”
克劳斯点头。
老教授摇了摇头。
“那不叫復现。”
克劳斯一愣。
“克劳斯,你想过没有。如果他的证明里,藏著一个连他自己都没意识到的错误。而恰好,他写的核验代码里,也藏著一个能把这个错误正好遮住的bug。”
“那你跑他的代码,跑一万遍,跑到天荒地老,你看到的,永远是他那个漂亮的绿字。”
“你不是在验证真理。你是在重复他可能犯下的同一个错误。”
克劳斯瞬间明白了导师的意思,背后渗出一层冷汗。
要想真正独立地验证这块砖,唯一的办法,是把江临那个乾净漂亮的mps包扔到一边。
只拿著那篇论文里,用纯数学语言写下的图形定义、四类大块的替代规则、边界读法约定。
然后,从一行空白的代码开始,用一套完全不同的语言,一套完全不同的底层框架,把整个核验系统,重新造一遍。
如果两套从零开始,彼此之间没有任何一行共享代码的系统,最终吐出来的东西,分毫不差地撞在了一起。
那才叫復现。
那才叫真理。
於是,过去三天,克劳斯没碰江临的python。
他用rust,从顶点坐標的代数整数编码开始,一砖一瓦地重写。
他自己实现状態生成,自己写哈希,自己做等价类合併。
甚至故意换了一套和论文完全不同的內部命名习惯,就是为了逼著自己,去真正理解每一步背后的数学,而不是无意识地抄。
报错,排查,重跑。
再报错,再重跑。
此刻,凌晨两点。 ↑返回顶部↑
柏林工业大学,计算几何与组合算法实验室。
克劳斯已经连续三十多个小时没有合眼了。
他面前的六块屏幕上,全是滚动的终端日誌和密密麻麻的json结构树。
三天前,当他第一次用江临提供的那个被称为mps的核验包,在半径r=10的范围內跑出绿色的no periodic patches found时,他在那个只有七八个顶级算法研究者的私密小群里,说了一句话。
this is not nonsense.
但那天晚上,他的导师,实验室的负责人,做了三十年组合优化的老教授,把他叫进了办公室。
老教授只问了他一个问题。
“你跑的,是他写的代码?”
克劳斯点头。
老教授摇了摇头。
“那不叫復现。”
克劳斯一愣。
“克劳斯,你想过没有。如果他的证明里,藏著一个连他自己都没意识到的错误。而恰好,他写的核验代码里,也藏著一个能把这个错误正好遮住的bug。”
“那你跑他的代码,跑一万遍,跑到天荒地老,你看到的,永远是他那个漂亮的绿字。”
“你不是在验证真理。你是在重复他可能犯下的同一个错误。”
克劳斯瞬间明白了导师的意思,背后渗出一层冷汗。
要想真正独立地验证这块砖,唯一的办法,是把江临那个乾净漂亮的mps包扔到一边。
只拿著那篇论文里,用纯数学语言写下的图形定义、四类大块的替代规则、边界读法约定。
然后,从一行空白的代码开始,用一套完全不同的语言,一套完全不同的底层框架,把整个核验系统,重新造一遍。
如果两套从零开始,彼此之间没有任何一行共享代码的系统,最终吐出来的东西,分毫不差地撞在了一起。
那才叫復现。
那才叫真理。
於是,过去三天,克劳斯没碰江临的python。
他用rust,从顶点坐標的代数整数编码开始,一砖一瓦地重写。
他自己实现状態生成,自己写哈希,自己做等价类合併。
甚至故意换了一套和论文完全不同的內部命名习惯,就是为了逼著自己,去真正理解每一步背后的数学,而不是无意识地抄。
报错,排查,重跑。
再报错,再重跑。
此刻,凌晨两点。 ↑返回顶部↑