一个长除法的故事:在 Knuth 算法 D 里挖出几十年的 Bug
来源:kolja.rs — 2026-08-13
📋 概述
作者为实现素数域算术而实现 Knuth《TAOCP》中的长除法算法 D,却在证明正确性所依赖的定理 B 时感到不对劲。他尝试自己证明确实失败,而这恰恰递给他一个几十年来一直「通过」的反例,由此他得到了一个以自己名字命名、关于算法正确性的定理;写博客过程中还顺带在 LLVM 的实现里发现了一个「bug」。
🔑 核心要点
- 作者对 Knuth 算法 D 依赖的定理 B 的证明产生怀疑。
- 失败的证明递给他一个潜藏几十年的反例。
- 写博客时又在 LLVM 的实现里发现了一个疑似 bug。
💡 金句
那看似绕远路的证明里,藏着一个让算法几十年都不出错的反例。
👍 0
👎 0
← 返回 Lobsters 首页