皆さまこんにちは.修士2年の河竹純一です.
前回の巨大数論の記事ではアッカーマン関数について触れましたが(ハイパー演算とアッカーマン関数【巨大数論】),今回はその応用としてふぃっしゅ数バージョン1を紹介しようと思います.
ふぃっしゅ数バージョン1とは何かというと,2チャンネルの巨大数探索スレッドにおいてふぃっしゅっしゅさんが考案した,大きさのみを追求して作られた巨大数の定義の一つということになります.前回紹介したアッカーマン関数は2重再帰関数でしたが,ふぃっしゅ数バージョン1はこれを拡張した多重再帰関数という分類になります.
まずはおさらいとしてアッカーマン関数の定義を確認してみます.(便宜上前回の記事とは異なる文字を使っています.)
f(x) = x+1とし,非負整数m, nに対して,
A(0, n) = f(n)
A(m+1, 0) = A(m, 1)
A(m+1, n+1) = A(m, A(m+1, n))
以上がアッカーマン関数の定義です.これを拡張することを考えます.
アッカーマン関数は2変数関数であるため,代入する数を簡易化するために以下のg(x)を定義します.
g(x) = A(x, x)
上記を追加した定義として,アッカーマン関数と区別するために新たにB(x, x)を定義します.中身は特に変わりません.
B(0, n) = f(n)
B(m+1, 0) = B(m, 1)
B(m+1, n+1) = B(m, B(m+1, n))
g(x) = B(x, x)
上記をもとにS変換という概念を導入します.
S変換は下記のような写像として定義します.
S: [m, f(x)] → [g(m), g(x)]
これは自然数と関数の組み合わせから対応関係にある新たな自然数と関数の組み合わせが出力されるような写像を意味しています.
例えば [m, f(x)] = [3, x+1] とするとアッカーマン関数に[3, 3]を代入することと同義であるため,クヌースの矢印表記を使った式より,
A(3, 3)
= 2↑6 -3
= 2^6 -3
=61
となるので,S変換の出力としては [61, B(x, x)] となります.
これを踏まえると,S変換を複数回行うことによって巨大な数が得られそうだということがわかります.
例えば上記の [3, x+1] に対してS変換を2回行うと,
1回目のS変換により,
[3, x+1] → [61, B(x, x)]
したがって2回目のS変換では,f(x) = B(x, x)となるような新たなアッカーマン関数をC(x, x)とすると
[61, B(x, x)] → [C(61, 61), C(x, x)]
となります.
2回目のS変換で得られるC(x, x)はC(0, n) = B(n, n)であるため,B(0, n) = n+1であったことを考えるとC(61, 61)というのは途方もない数になることがわかると思います.
さて,ここまででS変換について説明しましたが,ふぃっしゅ数はこれをさらに応用しています.
ふぃっしゅっしゅ氏はここまでを踏まえて,S変換を複数回行うと巨大な数と関数が得られることから,S変換を行う回数を再帰的に増やすという発想が生まれました.
そこで,S変換をf(m)回繰り返す変換をS2変換とし,このプロセスをSS変換とすると,
[m, f(x), S] の3つ組の写像として,
SS: [m, f(x), S] → [n, g(x), S2]
(ただし,g(x) = S2[m, f(x)], n = g(m))
となります.したがって先ほどの例にならって[3, x+1, S]にSS変換を1回行うことを考えると,[3, x+1]にS変換を4回(∵ f(3) = 4(回))行うことと同義であることがわかります.
S変換を4回繰り返すと,
1回目:
[3, x+1] → [61, B(x, x)]
2回目:
[61, B(x, x)] → [C(61, 61), C(x, x)]
3回目:
[C(61, 61), C(x, x)] → [D(C(61, 61), C(61, 61)), D(x, x)]
4回目:
[D(C(61, 61), C(61, 61)), D(x, x)] → [E(D(C(61, 61), C(61, 61)), D(C(61, 61), C(61, 61))), E(x, x)]
となります.
したがってn回のS変換をS^nと表すと,
SS: [3, x+1, S] → [E(D(C(61, 61), C(61, 61)), D(C(61, 61), C(61, 61))), E(x, x), S^4]
となります.
ここまででSS変換1回です.
このSS変換を63回実行した結果出力される数がふぃっしゅ数バージョン1です.
回数は有名な巨大数グラハム数にならって63回にしたとのことです.
ここまでの内容をまとめて,ふぃっしゅ数バージョン1の定義が以下です.
—
自然数と関数のペアから,自然数と関数のペアへの写像S (S変換) を以下で定義する.
S(m, f(x)) = (g(m), g(x))
ただし,g(x)は以下で与えられる.
B(0, n) = f(n)
B(m+1, 0) = B(m, 1)
B(m+1, n+1) = B(m, B(m+1, n))
g(x) = B(x, x)
自然数,関数,変換の組から同様の組を生み出す写像SS (SS変換) を以下で定義する.
SS(m, f, s) = (S^f(m)(m, f), S^f(m))
ここで,3つ組(m_0, f_0, S_0)をm_0 = 3, f_0(x) = x+1, S_0=S変換とするとき,
SS^63(m_0, f_0, S_0)
の第1成分をふぃっしゅ数バージョン1,第2成分をふぃっしゅ関数バージョン1と定義する.
—
これがふぃっしゅ数です.
すなわち,[m, f, S] の3つの要素が相互に作用してお互いを増幅している巨大数であるということです.
ここまで読んでくださった読者の方であればわかったかと思いますが,ふぃっしゅ数バージョン1というのは想像もできないほどに巨大な数になっています.
巨大数論とはこのような巨大な数の遥かな大きさや,そこにたどり着く方法に思いを馳せるという一種の娯楽でありロマンなのだと思います.私たちが無限や永遠という言葉を扱うとき,それがどれほど途方もないものかを考えることはありません.しかしながら無限や永遠を目指すとき,確かにそこにあるのが巨大数なのです.その道のりは終わることがなく,巨大数論においてもふぃっしゅ数バージョン1を凌ぐ数がまだまだ存在しています.
ちなみに最後になりますが,ふぃっしゅ数は現在バージョン7まで存在しています.
参考
フィッシュ(2017)『巨大数論 第二版』株式会社インプレスR&D (https://gyafun.jp/ln/)