Quadratic omega level

第38話 第1水族館

『この近くにおすすめの水族館があるので、専用鉄道で行きましょう』

「この世界にも魚がいるんですね」

『はい。この世界は大きいので、基本的には何でもあります』

「ということは、僕の理想の相手も・・・」

『いるかもしれませんね』

そんな感じで僕たちは雑談を交わしながら、レトロ感漂う駅にたどり着いた。駅にはSLが止まっている。行先表示には、大きくセリフ体で「F₁」とだけ書かれている。


『あのSLに乗って行きます』

「ここに来て、随分と古いものが出てきましたね」

『こう見えても、ちゃんとメンテナンスされていて、乗客も多いんですよ』

車内に入って見渡すと、40人程度の乗客が見える。乗車率にして50パーセントといったところか。


『さて、移動の合間に、目的地の予習をしておきましょう』

「水族館に行くのですよね」

『はい。この水族館の場所は、ふぃっしゅ数バージョン1と呼ばれています』

この世界では、全ての場所が数字で呼ばれるのである。もっとも、その数は大きいのだが。

(著者注: こんなことをわざわざ書くのは、前話投稿からすでに半年が経過しているからです)

『ふぃっしゅ数はバージョン1から7まであり、その全てが独特な方法で作られています。ここでは、バージョン1の定義を確認しましょう』

彼女はノートに書き始める。


mは自然数、fは関数

S(m,f(x))=(g(m),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)


mは自然数、fは関数、Sは変換

SS(m,f,S)=(S^f(m)(m,f),S^f(m))


m_0=3, f_0(x)=x+1, S_0=Sとしたとき

ふぃっしゅ数バージョン1=SS^63(m_0,f_0,S_0)の第1成分


『上から解説しますね』

「はい」

『まず、Sですが、これは「自然数と関数の組」から、「自然数と関数の組」を返す変換です』

「mとf(x)を渡すと、g(m)とg(x)が帰ってくるのですね」

『はい。gは関数なので、g(m)は自然数で、g(x)は関数になります』

(著者注: 厳密にはxは未定義の記号なのでS(m,f)=(g(m),g)と書くべきである)

『そのgの定義が、下に示されています。gは、fを使って定義されています』

「このBは何ですか?」

『Bはgを定義するうえで一時的に導入される関数です。f(x)=x+1として、挙動を試してみましょう』


B(0,n)=n+1

B(m+1,0)=B(m,1)

B(m+1,n+1)=B(m,B(m+1,n))


『いくつか値を代入してみます』


B(0,0)=0+1=1

B(0,3)=3+1=4

B(1,0)=B(0,1)=1+1=2

B(1,1)=B(0,B(1,0))=B(0,B(0,1))=B(0,2)=3

B(1,2)=B(0,B(1,1))=B(0,B(0,B(1,0)))=B(0,B(0,2))=B(0,3)=4

B(1,3)=B(0,B(0,B(0,B(1,0))))=B(0,B(0,B(0,2)))=5

B(1,n)=B(0,B(0,...B(1,0)...)) (0,がn個)=n+2

B(2,0)=B(1,1)=3

B(2,1)=B(1,B(2,0))=5

B(2,n)=3+2+2+...+2 (2がn個)=2n+3

B(3,0)=B(2,1)=5

B(3,1)=B(2,B(3,0))=B(2,5)=13

B(3,2)=B(2,B(3,1))=B(2,13)=29


「あまり大きくならないのですね」

『ここから増えていきます。繰り返し構造だけに注目して、大雑把に近似してみましょう』


B(2,n)≒2n


B(3,n)=B(2,B(2,...,B(3,0)...))

B(2,x)をn回繰り返すので≒2^n


B(4,n)=B(3,B(3,...,B(4,0)...))

B(3,x)をn回繰り返すので≒2↑↑n


B(5,n)=B(4,B(4,...,B(5,0)...))

B(4,x)をn回繰り返すので2↑↑↑n


『このように、矢印が1本増えていきます』

「矢印表記と同じ大きさなのですね」

『はい。では次に、fを他の関数にしたときに、Bがどうなるか見てみましょう。簡単のために、fが急増加関数でf_α(n)と近似されるとします』


B(0,n)≒f_α(n)

B(1,0)=B(0,1)≒f_α(1)

B(1,1)=B(0,B(1,0))≒f_α(f_α(1))

B(1,n)≒f^(n+1)_α(1)≒f_α+1(n)

B(2,0)=B(1,1)≒f_α(f_α(1))

B(2,1)=B(1,B(2,0))≒f_α+1(f_α(f_α(1)))

B(2,2)=B(1,B(2,1))≒f_α+1(f_α+1(f_α(f_α(1))))

B(2,n)≒f^n_α+1(f_α(f_α(1)))≒f_α+2(n)


『同様にして、B(m+1,n)がB(m,n)の繰り返しであることから、左の数だけ急増加関数の添え字が増えることが分かります』

「矢印表記のときと同じですね」

『はい。矢印表記もB関数も、繰り返しを重ねると表記の一部が1増えるという特徴があります。これでようやく、S変換に戻れます』


mは自然数、fは関数

S(m,f(x))=(g(m),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)


『g(x)=B(x,x)と定義されているので、S変換で急増加関数の添え字はωだけ増えることになります』

添え字にωが入った場合の挙動を思い出そう。添え字の最後にωが入っている場合は、そのωが()の中の数に変わる。ω^3みたいなのは、ω^2×ωとしてω^2×nになり、最後のωだけが展開される。


『では次に、S変換を複数繰り返すことを考えましょう』


x+1=f_0(x)から始めて

S変換1回≒f_ω(x)

S変換2回≒f_(ω+ω)(x)=f_ω2(x)

S変換3回≒f_(ω2+ω)(x)=f_ω3(x)


『このように、S変換n回でf_ωn(x)と近似されます』

「一つ質問良いですか」

『はい』

「g(m)の方は、どうなりましたか」

『数の方ですね。そっちはあまり重要ではないので、今は無視します』

「わかりました」

(著者注: 重要ではないものをどんどん切り捨てるのは巨大数あるあるである)


『これで、SS変換が分かるようになります。定義に戻りましょう』


mは自然数、fは関数、Sは変換

SS(m,f,S)=(S^f(m)(m,f),S^f(m))


「SS変換は、Sも取り込むのですね」

『はい。まずは、右辺の形を見てみましょう。右辺は要素が2つあるように見えますが、S^f(m)(m,f)は数と関数の2つを返すので実質3つです』

「3つのものを取って、3つのものを返すのですね」

『そうです。では、計算方法を見ていきましょう。SS変換は、3つのステップで近似できます』


Step 1. f(m)を近似する

Step 2. S^f(m)を近似する

Step 3. S^f(m)(m,f)を近似する


『これを使って、ふぃっしゅ数バージョン1を計算してみましょう。3とx+1とS変換から始めて、SS変換を63回繰り返すと完成です。1回ずつ見ていきましょう』


SS変換1回目

f(m)=4

S^f(m)=S^4 (S変換4回)

S^f(m)(m,f)≒(f_ω4(3),f_ω4(x))


(著者注: 2変数に対する≒はそれぞれが近似の関係にあることを表す)


SS変換2回目

f(m)≒f_ω4(f_ω4(3))

S^f(m)=S^f_ω4(f_ω4(3))

S^f(m)(m,f)

≒(f_ω×(f_ω4(f_ω4(3)))(f_ω4(f_ω4(3))),f_ω×(f_ω4(f_ω4(3)))(x))


SS変換3回目

f(m)

≒f_ω×(f_ω4(f_ω4(3)))(f_ω×(f_ω4(f_ω4(3)))(f_ω4(f_ω4(3))))

=f_ω×(f_ω4(f_ω4(3)))(f_ω^2(f_ω4(f_ω4(3))))

≒f_ω^2(f_ω4(f_ω4(3)))

『f_ω^2(f_ω4(f_ω4(3)))に比べてf_ω4(f_ω4(3))は圧倒的に小さいので、削ってしまえます』

S^f(m)=S^f_ω^2(f_ω4(f_ω4(3)))

S^f(m)(m,f)

≒(f_ω×f_ω^2(f_ω4(f_ω4(3)))(f_ω^2(f_ω4(f_ω4(3)))),f_ω×f_ω^2(f_ω4(f_ω4(3)))(x))

=(f_ω^2(f_ω^2(f_ω4(f_ω4(3)))),f_ω×f_ω^2(f_ω4(f_ω4(3)))(x))


SS変換4回目

『ω×定数よりも、ω^2の効果の方が非常に大きいので、もはやf(m)をmで近似することができてしまいます』

f(m)≒m≒f_ω^2(f_ω^2(f_ω4(f_ω4(3))))

S^f(m)=S^f_ω^2(f_ω^2(f_ω4(f_ω4(3))))

『長くなってきたので、もう1段まとめましょう』

f_ω4(f_ω4(3))>f_ω4(4)>f_ω^2(4)

f_ω4(f_ω4(3))<f_ω4(f_ω4(4))<f_ω4+1(4)<f_ω4+5(5)=f_ω^2(5)

『なので、f_ω4(f_ω4(3))の部分をf_ω^2(4)で近似します』

f(m)≒f^3_ω^2(4)

S^f(m)≒S^f^3_ω^2(4)

S^f(m)(m,f)

≒(f_ω×f^3_ω^2(4)(f^3_ω^2(4)),f_ω×f^3_ω^2(4)(x))

=(f_ω^2(f^3_ω^2(4)),f_ω×f^3_ω^2(4)(x))

=(f^4_ω^2(4),f_ω×f^3_ω^2(4)(x))

『あえてf^4_ω^2(4)をf_ω^2+1(4)とはしないことに注意してください』


SS変換5回目

f(m)≒m≒f^4_ω^2(4)

S^f(m)≒S^f^4_ω^2(4)

S^f(m)(m,f)

≒(f_ω×f^4_ω^2(4)(f^4_ω^2(4)),f_ω×f^4_ω^2(4)(x))

=(f_ω^2(f^4_ω^2(4)),f_ω×f^4_ω^2(4)(x))

=(f^5_ω^2(4),f_ω×f^4_ω^2(4)(x))


『パターンが見えてきましたね。63回目の結果は、このようになります』



SS変換63回目

f(m)≒m≒f^62_ω^2(62)

S^f(m)≒S^f^62_ω^2(62)

S^f(m)(m,f)

≒(f_ω×f^62_ω^2(4)(f^62_ω^2(4)),f_ω×f^62_ω^2(4)(x))

=(f_ω^2(f^62_ω^2(4)),f_ω×f^62_ω^2(4)(x))

=(f^63_ω^2(4),f_ω×f^4_ω^2(62)(x))


『この左側の数が、ふぃっしゅ数バージョン1です。さらに近似して、このように書かれることもあります』


f^63_ω^2(4)

≒f^63_ω^2(63)

≒f_ω^2+1(63)


『こうして、私たちはふぃっしゅ数バージョン1を近似することができました』


〔お待たせいたしました。これにて当列車は第1水族館に到着となります。水中世界をごゆっくりお楽しみください〕


『ちょうど着いたみたいですね』


僕たちは水族館に入った。赤、オレンジ、黄色、緑、水色、青、紫、ピンク、灰色・・・本当に様々な色の魚がいる。元いた世界では見たことのないような生き物もいる。

別の水槽では魚たちが不規則に、それでいて秩序だって動いている。「遺伝子プログラミング」という技術で実現しているらしい。

それにしても、どの水槽も本当にきれいだ。ここにいると、某国の製鉄所が爆撃されたとか、某アイドルグループが活動を休止したとか、そういうことから離れて、心が浄化されていく気がする。

  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る