第9話 急増化関数(有限順序数のとき)

高花秀は、ずっと待っていた。

手紙。秀はこれが最後のチャンスであると知っていた。秀は自分の持てるすべての誠心誠意を込めて、手紙をしたため、すべての勇気をふりしぼって渡した。今を逃せばもうあとは人生に後悔しかないであろう、と。


極限って知ってる?


秀は高校で数学にはまったが、結局大学入試には使わなかった。なぜなら彼は絵を描くこと、それを人生と決めたからだ。だが、ε-δ論法は知っている。


lim[x→a]f(x)=b

∀ε>0, ∃δ>0 s.t. ∀x∈R ,0<|a-x|<δ⇒|f(x)-b|<ε


冷たい文字の羅列。文字は意味を知らない人にはただの感情のない模様。意味を読み取ると、そこには人の想いが書かれている。


関数の強さは、極限を使うと表すことができる。簡単には次のような方法だ。


正の無限大に発散する2つの関数fとgがあって、

lim[n→∞]f(n)/g(n)

これが正の無限大ならばf(n)のほうが強い

正の実数に収束するなら同等の強さ

0に収束するならg(n)のほうが強い


さて、自然数→自然数の関数を考えよう。

レベル0の関数として、後者関数を持ってこよう。これは不変関数と同等の強さを持つ。


後者関数

f(n)=n+1


不変関数

f(n)=n


この2つの決定的な違いは、後者関数は合成することで、色んな数を表すことができるということだ。

f(f(n))=n+2

f^3(n)=n+3


さて、レベル0の後者関数を、

f_0(n)=n+1

と表すことにしよう。そして、この関数を何回施したかを数える関数をレベル1の関数とする。


f_1(n)=f^n_0(n)=n+n=2n


注)^は上付き文字、_は下付き文字を表し、f^n_1は、f_1のn回合成を表す、(f_1)^nという意味である。f_1^nでは、(f_1)^nかf_(1^n)かの区別をつけられないので、今回のように表記している。


レベル1の関数は2倍する関数だ。


さて、レベル1の関数を何回も繰り返して、レベル2の関数を作ろう。

f_2(n)=f^n_1(n)

さて、この関数は、2倍を何回するか?ということだから、

nにn回2倍することになる。


f_2(n)=n×2^n


俺は何度も何度も逡巡した。このまま何事も無く過ぎれば不幸は訪れないであろう。もし何か行動したら、それはほぼ確実に俺に不幸をもたらすことになる。


でもその先を見ない人生に、意味があるのか?

何の不幸もない人生より、不幸になるかもしれないが後悔の無い人生のほうが素晴らしいのではないか?

そう思ったのだ。


10年間の片想い。今までいろいろなことがあった。ケンカもすれば、一晩ずっと語り明かしたこともあった。もはや兄弟のように、そばにいた人にこの手紙を送ることが許されるのか、何度も何度も逡巡した。


f_2を繰り返すことで、レベル3の関数f_3をつくる。

f_3(n)=f^n_2(n)


これは複雑だ。具体例をみよう。

f_3(1)=f_2(1)=1×2^1=2

f_3(2)=f_2(f_2(2))=f_2(2×2^2)=f_2(8)=8×2^8=2048

これは、2^2^3よりも大きい。


f_3(3)=f_2(f_2(f_2(3)))=f_2(f_2(24))=f_2(402653184)=6.9×10^121210694

さて、f_3は実際にはこういう式の形をしている。

(3×2^3)×2^(3×2^3)×2^((3×2^3)×2^(3×2^3))

これは、2^2^2^3よりも大きいことはあきらか。


そして、f_3(4)は、2^2^2^2^3よりも大きい。

このように、下限がテトレーションになっている。当然だ。f_2は冪乗が本質であり、f_3は冪乗を繰り返しているからだ。


対角化。この話を続けるためには、これを話す必要がある。

f^a(n)における、変数の数は2つ、aとnだ。


これを次のような表に並べる。

a\n     1         2          3

1     |f^1(1) f^1(2) f^1(3)

2     |f^2(1) f^2(2) f^2(3)

3     |f^3(1) f^3(3) f^3(3)


対角化した関数gとは次のように定義したものだ。

g(n)=f^n(n)

つまり、

g(1)=f^1(1)

g(2)=f^2(2)

g(3)=f^3(3)


見てわかるように、表の斜めの対角線上に並んでいることがわかるだろう。これが対角化の由来である。

f_n+1はf_nを対角化したものだ。ここでの関数f_α(n)の定義は次のようになる。


α=0のとき

f_0(n)=n+1


α≧1の自然数のとき

f_α(n)=f^n_α-1(n)


つまり、αとは、対角化した回数を数えているのだ。


f_3はテトレーションほどの強さであり、

f_4はテトレーションの回数を数えているのでペンテーションほどの強さになる。

f_αのαはハイパーα+1演算の強さを表しているといってよい。


当たり前だが、次の極限の式が成り立つ。

α<βのとき、

lim[n→∞]f_α(n)/f_β(n)=0


そして、対角化の強さが効いて、次の極限も成り立つ。

kを定数とする。

α<βのとき、

lim[n→∞]f^k_α(n)/f_β(n)=0


なぜか?

なぜなら、kは定数なので、nを増やしていくといずれn>kとなる。βはαより大きいので、α+1≦βも成り立つ。

すると、n>kになったところで、

f_β(n)≧f_α+1(n)=f^n_α(n)≧f^k_α(n)

と評価できる。これ以降は、f_βな増加速度にf_αは圧倒されるだけである。


つまり、f_αのαは、何回繰り返しても届かないという意味で、関数を階層分けしているわけである。


俺は、全ての気持ちをこの手紙に残したかった。しかし、同時にそれをしてはならないという理性もあった。わかりやすく簡潔に書く。手紙に限らず、全ての文章の基本だ。だから、この先に進もう。


f_α(n)を対角化する。


α\n     1         2          3

1     |f_1(1) f_1(2) f_1(3)

2     |f_2(1) f_2(2) f_2(3)

3     |f_3(1) f_3(3) f_3(3)

このようにして、新たな関数

g(n)=f_n(n)

を作る。


何がおもしろいか?

あらゆる定数kに対して、

f_k(n)より、g(n)のほうが増加速度が速いことになる。なぜなら、kは定数なので、nを増やすといずれn>kとなる。

このとき、

f_k(n)<f_n(n)=g(n)

となるのは明らかだ。

さて、g(n)を、1つのnと、fを使って表すことは可能か?


不可能である。なぜなら、全ての自然数kに対してf_k(n)よりも強い関数なのだから。


しかし可能である。全て自然数より大きいが、その中で最も小さい数を仮定すればよい。これが、最小の超限順序数


ω


である。


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

作者を応援しよう!

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

応援したユーザー

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

数の探求者 えのき @enoki_fugue

★で称える

この小説が面白かったら★をつけてください。おすすめレビューも書けます。

フォローしてこの作品の続きを読もう

この小説のおすすめレビューを見る