Harvey 2026 整数乗算アルゴリズムが O(n log n) の壁を破る
概要
David Harvey が2026年10月に発表したアルゴリズムは、2つの n ビット整数の乗算において o(n log n) ビット演算を達成し、2021年の Harvey-van der Hoeven アルゴリズムによる長年の O(n log n) の限界を改善しました。この結果は、FFT ベースの畳み込みにおけるバタフライ演算の回数を減らす新しい テンソル増幅 技術と、多数の独立した DFT を、素朴に期待されるよりも少ないスライス呼び出しで評価する洗練されたガジェットに依存しています。著者はすべての詳細を確認していませんが、広範な LLM 支援による検証によって裏付けられたコミュニティのコンセンサスは、この主張を もっともらしい かつ 潜在的に正しい と見なしています。
1. なぜ o(n log n) が重要なのか
要点: 対数因子の指数を 1 未満に減らすことができれば、整数乗算は古典的な FFT に基づく任意のアルゴリズムよりも漸近的に高速になり、O(n log n) が数十年にわたって最適であるという信念を覆すことになります。
影響:
- 実行時間が O(n (log n)^α) となる、整数乗算の新しい 指数 α < 1 を導入します。論文では α≈0.9983 と報告されており、微小ですが数学的に重要な改善です。
- Schönhage-Strassen (1971) と 2021 年の O(n log n) アルゴリズム以来続いてきた壁を破ります。
- テンソル増幅とガジェット構築というテンプレートを提供し、これを洗練させることで α をさらに低く、おそらく推測されている 1/2 の下限に向かって押し下げることができるかもしれません。
2. 新しいアルゴリズムの高水準な構造
2.1. 2021年のアルゴリズムに基づく
2021年の Harvey-van der Hoeven アルゴリズムは、整数乗算を環 R = C[y]/(y^r + 1) 上の 高次元離散フーリエ変換 (DFT) に帰着させます。主要なコストは FFT の バタフライ演算 から生じ、これが O(n log n) の項に寄与します。
2.2. テンソル増幅のアイデア
- A を 2 × 2 のバタフライ行列とします。サイズ 2^m のベクトルに対する A^{⊗ m} の計算には、通常 m·2^{m-1} 回のスライス呼び出し(バタフライ適用)が必要です。
- ある プログラム が A^{⊗ m} を g < m 回のスライス呼び出しで計算できる場合、プログラムを再帰的にテンソル展開することで、サイズ 2^{mk} の入力に対して (g/m)^k の係数を得ます。これにより、実行時間は n^{log g / log m} · 2^{n-1}、すなわち α = log g / log m < 1 として O(N (log N)^α) となります。
- 鍵となるのは、適度な m に対して そのようなプログラムを見つける ことと、それを増幅することです。
2.3. ガジェット
Harvey は、A^{⊗ m} の W 個の独立したコピー を、素朴な W·m 回のスライス呼び出しよりも少ない回数で評価する ガジェット を説明しています。その構成は以下の通りです。
- バタフライのユニタリ版 C (C = (1/√2)·B) を使用します。
- スライス呼び出し Cv(方向固有のバタフライ)と、ブール回路モデルでは無料である再ラベル付け(線形置換)を導入します。
- レジスタを F₂^m の部分空間に編成し、慎重に選択された直交ベクトルを使用して、スライス呼び出しを、多くのレジスタを同時に進める 制御された 操作に変換します。
- 部分空間間の線形関係を利用することで、ガジェットはレジスタごとに定数係数を節約し、スライス呼び出しの総数を W·m から W·m − Θ(|T|) に減らします。ここで |T| はパラメータ h(基礎となる3要素部分集合のサイズ)に関して3次です。
h が十分に大きい場合(著者の計算によると h ≥ 22)、節約はオーバーヘッドを上回り、スライス呼び出しの正味の削減をもたらします。
3. 構成の詳細なウォークスルー
3.1. 記法の復習
- C₂: 2次元複素ベクトル空間。
- (C₂)^{⊗ m}: テンソル冪。サイズ 2^m の配列を表します。
- F₂^m: バイナリアドレス空間。ベクトルは v と書かれます。
- Cv: 方向 v に C を適用するスライス呼び出し(つまり、ペア (x, x+v) に対して)。
- Φ_U: 部分空間 U に対する Cv の積を実装する線形演算子。
- U, U^⊥: ドット積に関する非退化部分空間とその直交補空間。
3.2. ベビープログラム(セクション 7.5)
ベビープログラムは、適度な次元 h ≥ 8 で動作し、主要な節約を実証します。
- レジスタは、データ (x_T, y_S)、サイド (A_{S,T})、および 中央 (c_i, c_*) に分割されます。
- 各レジスタは関連する部分空間 U を保持します。スライス呼び出し Cv は、基礎となる値を変更せずに U を更新します。
- 8つのステップ のシーケンスは、変換フェーズ(部分空間を成長させるためのスライス呼び出しの追加)と ミックスアップフェーズ(同じ部分空間を共有するレジスタの線形結合)を交互に行います。
- スライス呼び出しの総数は W·h − 2|T| + 2(h² + h) となり、|T| = Θ(h³) であるため、十分に大きな h に対して W·h よりも小さくなります。
3.3. メインプログラムへのスケーリング(セクション 7.6)
メインプログラムは、ベビー構成を m = h³ 次元に持ち上げます。
- アドレスは F₂^{m} = (F₂^{h})^{⊗ 3}、つまり h × h × h のビット配列になります。
- データレジスタは、すべてのトリプル (a₁,a₂,a₃)∈T³ に対するトリプル x_{a₁,a₂,a₃}、y_{a₁,a₂,a₃} になります。
- 3つの ステージ が各テンソル次元に沿ってベビープログラムを適用し、毎回スライス方向をテンソル膨張させます(v → v⊗v_{a₂}⊗v_{a₃} など)。
- 3つのステージの後、すべてのレジスタは C^{⊗ m}、つまり畳み込みに必要な完全な DFT によって変換されています。
- スライス呼び出しの総数は W·m − Θ(|T|²) に簡略化され、これも大きな h に対して素朴な W·m よりも厳密に小さくなります。
4. コミュニティの反応と未解決の問題
| コメンター | 要点 | 関連性 |
|---|---|---|
| jdb1729 | 正式な Lean 証明が存在します(α≈1−2⁻¹⁴·³⁸)。 | もっともらしさを確認し、機械検証済みの基盤を提供します。 |
| Kapura | 著者は論文を読んでいないことを認め、LLM の説明に依存しています。 | LLM が理解を仲介する新しい研究ワークフローを浮き彫りにします。 |
| kenferry | LLM(Claude Fable 5.1)は人間とは異なり、論文を即座に「理解」しているように見えます。 | AI が正しさを主張する際の信頼と検証に関する懸念を引き起こします。 |
| DannyBee | モデルはまだ g < m のプログラムを生成できず、それが不可能かもしれない理由を論じています。 | 潜在的な障壁を示唆します:各スライス呼び出しは非ゼロエントリを最大で2倍にしかできません。 |
| flebron | O 記法と o 記法の区別を強調します。 | 改善が 厳密に サブ O(n log n) であることを明確にします。 |
| Eji1700 | 実用的な影響は今のところ限定的であり、改善は漸近的です。 | 短期的な応用に対する現実的な期待を設定します。 |
未解決の技術的質問(著者によって特定されたもの):
- 線形演算の数と合成1の冪根 – それらがテンソル増幅とどのように相互作用するか。
- 2021年のアルゴリズムにおける次元パラメータ d を増やす効果。
- チューリングモデルにおけるデータ再配置コスト – 現在は無視されていますが、完全な複雑性の主張には不可欠です。
- より小さなガジェットの発見 – より良いガジェットは α をさらに低く、おそらく推測されている 1/2 に向かって押し下げる可能性があります。
5. 関連する問題への影響
- 整数乗算の指数: 論文は α を O(n (log n)^α) を満たす指数の下限として定義しています。新しい限界は α < 1 を示し、α = 1 という以前の信念を覆します。
- ネットワークコーディングの下限: Afshani ら [AFKL19] のブール回路の下限と組み合わせると、この結果は Li-Li ネットワークコーディング予想を 反証 します。
- 有限体上の多項式乗算: 現在の最先端は O(n log n · 4^{log* n}) [HvdH19] です。この技術は条件付きの O(n (log n)^α) アルゴリズムを示唆しますが、無条件の改善はまだ知られていません。
- 素数列挙アルゴリズム: Harvey 自身の素数列挙の研究 [Har26] は F₂[x] での高速乗算に依存しています。条件付きの多項式乗算の改善が実現すれば、新しい限界はボトルネックを改善する可能性があります。
6. 発見における AI の役割
Harvey のノートは、理解の大部分が LLM(Claude Fable 5.1)から得られた という点で異例です。
- 著者はモデルに密度の高い38ページの原稿を 説明 するよう依頼しました。
- モデルはステップバイステップの明確化を提供し、重要な増幅トリックを特定し、ベビープログラムの健全性チェック実装を生成しました。
- このワークフローは、人間の専門家が AI 推論の オーケストレーター として機能し、洞察の唯一の源泉ではないという 新しい研究パラダイム を示しています。
コミュニティの混合した反応—画期的な進歩への興奮と、不透明な AI の説明への過度の依存への注意—は、AI 支援数学に関するより広い議論を反映しています。
7. 展望
このアルゴリズムの 漸近的な改善は本物です(ガジェットと増幅の議論が成り立つと仮定)。次のマイルストーンは以下の通りです。
- 形式的検証(例:Lean 証明)により、残る疑念を排除します。
- チューリングモデルへの拡張。データ移動コストを考慮します。
- ガジェットの最適化 により α をさらに下げ、おそらく理論上の 1/2 の壁に近づけます。
- 実用的な影響の探求。定数係数が合理的になれば、高精度ライブラリへの統合など。
これらのステップが成功すれば、この結果は整数乗算の教科書の項目を書き換えるだけでなく、AI をフロンティア理論計算機科学における 第一級の協力者 として確固たるものにするでしょう。
8. 参考文献
- [AFKL19] Afshani, Freksen, Kamma, Larsen. Lower bounds for multiplication via network coding, ICALP 2019.
- [Har26] D. Harvey. Faster enumeration of primes, arXiv:2606.22851, 2026.
- [HvdH19] D. Harvey & J. van der Hoeven. Faster polynomial multiplication over finite fields, J. Complexity 54 (2019).
- [HvdH21] D. Harvey & J. van der Hoeven. Integer multiplication in time O(n log n), Ann. of Math. 193 (2021).
- [HvdH22] D. Harvey & J. van der Hoeven. Polynomial multiplication over finite fields in time O(n log n), J. ACM 69 (2022).
- [HvdH25] D. Harvey & J. van der Hoeven. Integer multiplication is at least as hard as matrix transposition, arXiv:2503.22848, 2025.
- [LL04] Z. Li & B. Li. Network coding in undirected networks, CISS 2004.
- [TC26a-c] The Company. Integer multiplication below n log n (GitHub, 2026).
- 追加のコミュニティコメントは記事全体に引用されています。
Sources
関連
- Dispatch
- Dispatch
- Dispatch
- Dispatch
- Dispatch