高校生の思索









まだ蝉の音も聞こえない初夏の夜,涼雨が降った。

強風になびく木々が窓の外に見える。ふと,葉っぱの表面を転がる水玉に気を留めた。

微小な流体が,プランク時間未満の更新速度で複雑な運動を実行している。

私たちがこれを完全に再現するには,難解な非線形偏微分方程式を,機微な差異も許さない正確な初期条件の下で解かなければならない。

それどころか,この運動を記述するNavier–Stokes方程式は,3次元の系に関する初期条件が与えられたとき,常に滑らかな解が存在するかどうかも未解決である。

さらに物理学者シュレーディンガーの著書「What is life?」によれば,そもそも物理法則とは,ある意味で統計的なものであり,膨大な原子が関係することによって「近似的に成立する」ものだと説明される。

ところが,今度は原子とは何かを説明しようとミクロな量子力学の立場に視点を移し,いざ物理量がとり得る「最小の離散的なまとまり」として量子を導入してみると,その性質は常識外れで,しばしば奇抜な帰結をもたらす。

しかも,系の自由度が増えると行列のサイズが指数関数的に増大するため,未だに人類はこの水滴一粒を量子レベルでシミュレーションすることさえ不可能であることに気が付く。いわゆる組合せ爆発が発生する。

しかし不思議なことに,水玉は,葉っぱの表面を転がる。あたかもそれが当たり前で,わずかな疑問さえも抱かせぬ顔をして,水滴は枝から落ちる。

計算の不可能性にもかかわらず,自然はすでにそれを"やってしまっている"。この意味では,自然そのものがある種の「計算装置」のようにも見える。

しかし自然は,ラグで重くならないし,高負荷時もフレーム落ちしたりしない。自然は,ブルースクリーンを知らないし,16進数のエラーコードも吐かない。自然はただ,計算をショートカットとして結果だけを淡々と提供し続ける。

ただし,演算子は物理法則と名付けられ,入力と出力は物理的事象という形に限定されるらしい。少々気の荒い,「神託機械」のようなものなのかもしれない。

水を流せば,流体力学の非線形偏微分方程式の解が得られる。観測にかかるコストを無視すれば,これは歴然とした「計算量O(1)による非線形偏微分方程式の解法」である。

しかし自然に「どうやって計算したの?」と問いただしても,答えは帰ってこない。

また実のところ,自然というのは私たちが観測できないだけで,頻繁にラグを起こして,定期的にエラーを吐いているのではないだろうか?仮想マシンの中で動くタイマーが,ホストの停止時間を考慮しないのとちょうど同じで,それは私たちの知り得ることではないから,実質的に意味を成さない問いだと思う。

ここから,もしかすると,"自然という計算機"を利用して複雑な計算を実行できるのではないか?あるいは,連続場で候補範囲を大幅に絞り,残りを古典計算で処理できないだろうか?という発想が生まれる。

例えば,単純な初速度のない落体の自由落下によって,自然を計算機とみなし,「ある数字の2乗」を計算する方法を考える。空気抵抗のない重力加速度 $g=10$ の理想的な状況を仮定すると,移動距離は経過時間$t$の関数として $y(t)=\frac{1}{2}gt^2=5t^2$ と表せる。

ここで,物理実験により実際に落体の自由落下を計測して $y(13)=845$ が判明したとすると,$y(13)=5 \times 13^2=845$ であるから,$13^2=\frac{845}{5}=169$ と求まる。このようにして,物理現象により任意の数字の2乗を求めることができる。

現代のコンピューターなら$13^2$は数ナノ秒で求めることができるだろうが,底が10進法で一兆桁程度の数にもなれば高速フーリエ変換で最適化しても数日のオーダーとなるだろうから,もし仮に物理実験により2乗が簡単に求まるとすれば,大きな意義を持つ。

しかし現実には根本的な問題がある。それは理想的条件の実現と,精度の高い観測だ。例えば上記の条件で一兆桁の数の2乗を求めるためには,1兆秒,すなわち約31,689年待機して,約 $5 × 10^{24} \ m$ の観測可能な宇宙の直径に迫るようなオーダーの距離を計測しなければならない。また重力加速度を10に正確に保ち続けるために,重力源も動的に変更しなければならない。これは非現実的だ。

今度は代わりにtの精度を細かくして,規模の小さい実験で求められないか考える。数式が多いと読者が離れるため計算は割愛するが,10秒以内に求めるためには,時間を1兆桁精度で読み取り,距離を2兆桁精度で検出しなければならないことが分かる。これもプランク長未満の測定を要求する非現実的な実験であり,そもそも重力加速度の有効数字を2兆桁の精度で用意することができないという点からも,実現不可能である。

以上の思考実験と同様に,例えば素因数分解をO(1)で求めるため,実際に音波や干渉パターン,結晶成長などで,何らかの形で「因数」に対応する自然の構造が顕れるような仕組みを作れるか探究しても,経験則として,結局「時間」「空間」「エネルギー」のいずれかが発散してしまう。

多くの異なる手法をもってしてもオーダーがO(1)に到達しないということは,もしかすると時間・空間・エネルギーは全てより上位の未知の理論により包括的に統一可能な対象であって,そのある種の総和は不等式による制約が与えられるのかもしれない。

そもそも一定の領域に存在できる情報量には,絶対的な上界(ベッケンシュタイン境界)が知られている。例えば観測可能な宇宙に存在できる情報量の上限を考えて,共移動半径を $ 4.38 \times 10^{26} m $ と仮定すると,その表面積から,境界による情報量のビット数を$ N_{bits} \leq \frac{A}{4 ln 2 {l_p}^2} \simeq 3.3 \times 10^{123} \ bits $ と見積もることができる。

これは64GBのUSBメモリに換算して約$5 \times 10^{111} $本分,Googleの全データセンターの推定合計メモリ容量3EBと比較しても$10^{104}$倍以上の莫大な情報量だ。

しかし,有限であることに変わりはない。作為的に急速に増加するように設計された計算可能関数,例えばビジービーバーにおける最大シフト数関数 $S(n)$ は,$n=6$ でこの情報量を追い抜く。つまり,自然がいかなる神託機械であろうとも,人類はこの結果 $S(6)$ を $O(1)$ で知ることはできない。

さらにこれを再帰的にネストして呼び出すような新しい関数を考える。

```Rust
fn s_nest(init: BigInt, depth: usize) ->BigInt {

// S(n: &BigInt): ビジービーバーにおける最大シフト数関数
// 計算不可能な関数ですが、ここでは神託として与えます。神様ありがとう!
let result: BigInt = S(&init);

if depth == 0 {
result
} else {
s_nest(result, depth - 1)
}

}
```

このように $ s\\_nest(init, \\ depth) $ を置くと,もはや $ s\\_nest(3, 100) $ はビックバン以降のこの時空連続体が保持しうる全情報量の総和を上回ると推察される。この値を人類が知るためには,ほぼ無限のエネルギーや空間,時間を仮定する必要がある。

より根源的には,少なくとも $n=745$ 以降は,一般的な数学の基礎となる公理系であるZFCの下において,ZFCが整合である限り,S(n)の値は決定不能であることが知られている。これは,745状態/2記号のチューリングマシンではZFCの整合を検証可能であり,S(n)の値が決定可能であるとゲーデル第二不完全性定理と矛盾するためだ。

例えばZFCが整合である仮定の下,ZFCで0=1が証明されたとき停止するマシンを考える。このマシンは永遠に停止しない。これはつまり「ZFCが整合である」ことを示すものであるが,しかしその事実自体が自己言及的で,これはZFCの整合性をZFCが証明したことになり,「ZFCはZFC自身の整合性を証明も反証もできない」と主張するゲーデル第二不完全性定理と矛盾する。

したがってZFCからはどんな具体的な数kに対しても,$S(745)=k$ を証明できない。言い換えれば 命題 $S(745)=k$ はすべてZFCで独立になることが直ちに帰結される。

ここでさらに,数学は"どこまで",普遍的真理を記述しているのだろうかという疑問が生まれる。もしもS(745)が物理現象として求められるのなら,それは自然がZFCの要請を満たしていないことを意味する。そもそも数学の出発点となる諸原理,例えばユークリッド原論に記載されているような内容は,一体何に依存しているのだろう。基本的な因果律や存在性だろうか?

結局のところ,物理法則による入力と結果の対応関係によって,自然がチューリング完全を達成する演算と同等の処理が行えるかどうかは未知数であるが,以上の議論より少なくとも自然がチューリング完全でオラクル的性質を内在している場合さえも,実質的には観測の限界によって「完全な神託機械」にはなり得ず,文字通りの神託は成しえないと言える。

要するに,自然という存在は,我々の想像を遥かに超えた精度で,複雑な現象を"計算"しているように見えるが,それを人間が同じように再現したり解析したりするのは残念ながらほぼ不可能なのだ。

人類は,感覚的に常識として納得できる「正しさ」から出発して理論を構築してきた節がある。しかし実際のところ,数学や物理学はモデル化した自然を「再現する」ための方法の一つに過ぎず,自然が私たちに合わせているのではなくて,私たちが無理に自然に合わせているだけなのかもしれない。

少なくとも21世紀の私たちは,自然をコントロールするどころか,未だに自然という基盤上で実行されているプログラムであることを自覚してさえいないようである。