- MITの理論計算機科学者 Ryan Williams が発表した新たな証明は、メモリ資源が時間よりも強力な計算資源になりうることを示した
- 従来の 時間・空間計算量の関係に関する50年にわたる停滞を破り、あらゆるアルゴリズムをより少ないメモリで動作可能に変換する方法を提示
- 証明の核心は、省メモリシミュレーションを一般化し、アルゴリズムの空間使用量を時間の平方根レベルまで削減するという発想
- これにより、PSPACE と P クラスの違いを定量的に立証するうえで前進があり、さらに大きな隔たりの証明へつながる可能性も開かれた
- 専門家たちはこの成果を「驚くべき進展であり、新たな探求の出発点」と評価しており、今後この結果が理論計算機科学の他の難問を解く手がかりになる可能性がある
One Small Step for Space, One Giant Leap for Complexity
Ryan Williamsの新たな証明の概要
- 2024年夏、MITのRyan Williamsは自身の証明を見直す中で、誤りだと思っていたアイデアが実際には有効であることに気づいた
- 彼は、あらゆるアルゴリズムをより少ないメモリで実行可能に変換する一般的な手続きを提案した
- その結果、一部の問題は限られた時間内では解けないことを証明した
時間と空間:計算の二つの資源
- すべてのアルゴリズムは**時間とメモリ(空間)**を使う
- 従来は、特定の問題を解く際には空間が時間に比例すると考えられていた
- Williamsの証明は、空間が時間よりも強力になりうることを数学的に定式化した
理論計算機科学の始まりと歴史
- Juris Hartmanis と Richard Stearns は1960年代に 時間/空間計算量の定義を確立した
- 彼らは、問題を解くのに必要な資源に応じて問題を計算量クラスに分類する基礎を築いた
- P は妥当な時間内で解ける問題、PSPACE は妥当なメモリで解ける問題を表す
最初の進展:1975年のシミュレーション手法
- Hopcroft, Paul, Valiant は、あらゆるアルゴリズムをわずかに少ない空間で動くよう変換する普遍的シミュレーション手続きを開発した
- これは時間と空間の関連性を明らかにする第一歩となったが、その後は限界に突き当たった
- データは同じ空間を同時に占有できないという前提のため、それ以上の進展は不可能だと考えられていた
転換点:Squishy Pebbles
Williamsの決定的な飛躍
- 学生たちの発表をきっかけにCook-Mertzの手法に触れたWilliamsは、これを普遍的シミュレーションに適用するアイデアを思いついた
- 新しいシミュレーションは、アルゴリズムの空間要求量を時間の平方根レベルまで減らせる
- 彼は2025年2月、最終論文を arXivに掲載 し、学界から絶賛を受けた
この結果が意味すること
- この証明は PSPACE > P を直接証明したわけではないが、その方向へ進むための「隙間」を作った決定的な成果である
- 今後この手続きを反復的に適用してより大きな隔たりを作れれば、P vs PSPACE 問題の解決に近づける可能性がある
- これは計算機科学の最も長く続く難問の一つを解く端緒となりうる
余韻を残す結末
- Williamsはこの結果について次のように振り返った
「本当に証明したかったことそのものは証明できなかったが、最終的に証明できたことは、自分が望んでいたものよりもさらに素晴らしかった。」
2件のコメント
....え?
Hacker News のコメント
tで動作するマルチテープ・チューリングマシンは、O(sqrt(t log t))の空間でシミュレート可能ということ(通常、時間はtより長くかかる) Simulating Time With Square-Root SpacenのテープではO(n)時間のあいだ書き込めるが、2 進テープなら長さnに2^n通りの構成が存在する。空間をうまく使えば、時間に比べてはるかに大きな表現力が得られると思うO(1)メモリランダムアクセスの仮定があまりに当然視されているが、実際にはコンピュータの規模が大きくなるほどアクセスコストはO(n^(1/3))まで増える。データセンターではそれを生々しく実感できる。UMA ではなく別のモデルだったはずだP ≠ PSPACEが証明されていない以上、直感よりも数学的に立証するほうが難しい領域だPTIME=PSPACE)では、空間が大きな利得をもたらさないこともある。論文ではt/log tからsqrt(t log t)への飛躍が革新的だが、無限並列化でも乗り越えられない実体的な限界はあるはずだNを受け取り、テープの右側に1をN個書こうとすると、時間NでNマスの空間が必要に見える。それなのに、どうやってNより少ない空間でこれをシミュレートできるのか気になる。テープの任意の位置にジャンプできないチューリングマシンの構造上の性質を考えると、実際のコンピュータとの関係がどうなっているのかも気になるNビットなら、実質的にはN個の決定問題をつなげたのと同じだという説明だった