巨大数
きょだいすう
概要
巨大数の世界
巨大数という日本語については数学的な定義は存在しない。ここでは「Twitter」における巨大数研究者のコミュニティにおいて話題となった「大きな数を作ることを目的として作られた数」という定義案を軸にしてその世界を紹介する。対象となるのは有限の数である。例えば、この観測可能な宇宙のすべての原子を「0」であると理解して、整然と並べ「1000000… 」という列を作った際に、それでも書ききれないほどの数が存在する。 大きな数とはまさにこのような数のことであって、この小さすぎる宇宙に住む我々にとって、本来知る必要のない数である。2021年において、巨大数はまだ学問とは認知されておらず、数学としても無意味な分野とされる。研究者もアマチュアが多い。とはいえ、巨大数を定義したり解析したりするには、公理的集合論という現代数学の花形が活躍することも事実である(その使い方が無意味なのだ)。日本においては2ちゃんねるでの議論を起源としている。しかし、サブカルチャーとしての注目度は高まっており、2017年には小林銅蟲先生の漫画『寿司虚空編』が書籍化され、2019年には青土社の現代思想12月号で『巨大数の世界』として大々的な特集が組まれた。その一方で大きな課題も抱えている。巨大数の解析に用いられていた関数である「UNOCF」が「well-defined」ではないことである。解析する関数が一意の値を示さなければ巨大数の物差しとしては価値がない。これに関しては「ブーフホルツのψ関数」などの順序数崩壊関数(Ordinal Collapsing Function)の研究が盛んになってきている。ただ、その解析方法にも問題点が指摘されはじめた。現状の「解析シート」による解析は、厳密性に欠けるという。より厳密な「変換写像」による解析の普及が求められている。
巨大数の物差し
巨大数の大きさを測ることを「近似」や「解析」と呼ぶ。巨大数を解析する道具としてまず思い浮かぶのが、我々の住む広大な宇宙ではないだろうか。ところが、観測可能な直径930億光年の宇宙には、原子にしても10の80乗ほどしかないと推定されている。だが、この観測可能な宇宙は、物質のない空間がほとんどだ。そこに、例えばクォークをびっしりと詰め込んだとする。しかし、それでもその数は10の136乗ほどにしかならない。ならば、観測不可能な宇宙にまで想像を巡らせてみる。仮に宇宙が無限に広いとしよう。すると、数学的には「この観測可能な直径930億光年の宇宙と完全に原子配列が一致する空間」が存在するはずである。そこには「あなたと完全に同じ人間」がいる。では、どれほどの距離を進むと、あなたは「あなたと完全に同じ人間」に出会うのだろうか? その距離は10の10の115乗乗(単位は何でもいい)と言われている。そして、そのような途方もない大きさの宇宙にクォークをびっしりと詰め込んだとしても、しかし、その大きさは “指数関数的にしか” 増えず、例えば「トリトリ」のような巨大数が登場すると、宇宙は、巨大数を解析する道具としては役に立たなくなってしまう。そこで次に思い浮かぶのは、指数関数よりも強い、例えば「アッカーマン関数」で大きさを測るという方法だろう。しかし、すぐに同じ問題に直面する。例えば「グラハム数」であれば「Ack(3,3)」を64回合成することで近似が出来ると思われるが、「ふぃっしゅ数バージョン1」となると物理的に近似が不可能になる。「アッカーマン関数」を強化した「3変数アッカーマン関数」ならば「ふぃっしゅ数バージョン1」を近似することは可能だが、すぐに “鼬ごっこ” が始まる。「3変数アッカーマン関数」は「4変数アッカーマン関数」「5変数アッカーマン関数」... と “無限に強化できる” ので、何とかなりそうに思えるが、しかし、この強化を無限に繰り返した「多変数アッカーマン関数」では「ふぃっしゅ数バージョン3」の近似が物理的に出来ないことが知られている。そこで「巨大数の物差し」として “0から始まり有限を超えても数え続ける自然数の拡張概念” である「順序数」が活躍する。巨大数の定義に用いられる関数は、急増加関数(Fast Growing Hierarchy)を媒体にすることで、順序数(基本列が定義されている必要がある)に対応させることができると考えられている。順序数という物差しは「強化した関数で巨大数の大きさを測る」のではなく「どれだけ強化した関数か」を量化する。巨大数は有限の数であると記したが、その「巨大数を出力する関数の構造」は「可算無限が持つ構造」に対応させられるため、その研究は無限にまで及ぶ。この順序数を定義するものとして登場するのが、「カントール標準形」「ヴェブレン関数」「順序数崩壊関数(複数ある)」である。中でも「順序数崩壊関数(複数ある)」は極めて巨大な順序数を定義することで知られている。それらは、非可算無限の入力に対して可算無限を返す、集合論における計算不可能な関数であるため、巨大数の解析に用いるには、それらを有限個の文字列操作に変換した「順序崩壊関数に対応する順序数表記」が必要になる。ところが、いま現在、巨大数のメインストリームは、既存の順序数崩壊関数による解析限界を超えていると見られていて、新たな順序数崩壊関数の開発が試みられている。例えば、順序数崩壊関数としては定義されていないが、つまり停止性の保証はないが、「Rathjenのψ関数」を凌駕すると期待される「三関数」への注目が集まっている。
巨大数の分類
巨大数には、その巨大数を定義する関数の性質によって大きく二つの階級が存在する。既知の再帰関数よりも強い再帰関数を定義することを目的とした「計算可能関数の階級」と、それらをチューリングマシンで対角化するビジービーバー関数以上の関数を定義することを目的とした「計算不可能関数の階級」だ。その性質上、ビジービーバー関数は、如何なる再帰関数よりも強い。ただし、これは「ビジービーバー関数で定義される数は再帰関数で定義される数よりも絶対的に大きい」という意味ではない。以下、階級を二つに分けて、その代表的な巨大数を紹介する。なお「紹介する巨大数の順番」が「紹介する巨大数の大きさ」と必ずしも一致しているわけではないので注意されたし。
計算可能関数で定義される代表的な巨大数
6
第2回東方巨大数において、日本の巨大数のコミュニティにおいて重鎮である巨大数大好きbotにより定義された。巨大数大好きbotが投稿したのは「フラン数第四形態改」であるが、これが定義の不足により無効判定を受け、その修正として「フラン数第四形態改二」が投稿されるが、これにバグがあり整数の「6」と解析されたことに由来する。「大きな数を作ることを目的として作られた数」という「巨大数」の定義案が話題となった背景には、この「6」がネタとして親しまれているという背景があったかもしれない。
グーゴル
1920年に、ミルトン=シロッタ(Milton Sirotta)という9歳の少年により定義された。10の100乗である。十進数で表記すると「10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000」である。観測可能な直径930億光年の宇宙にある原子の数が10の80乗個であることから、このグーゴルがいかに大きいかわかるだろう。ちなみに、検索エンジンの「Google」の元ネタはこのグーゴルである。
グーゴルプレックス
1920年に、ミルトン=シロッタ(Milton Sirotta)という9歳の少年により定義された。10のグーゴル乗である。十進数で表記すると「1000000...」と「0」が「10の100乗個」も続く数となり、観測可能な直径930億光年の宇宙にある全ての原子を使っても十進数で表記することは物理的に不可能である。仏典に登場する最大の数である「不可説不可説転」は約10の37澗乗なので、グーゴルプレックスはそれよりも大きい。
メガフガスリー
クヌースのタワー表記における3↑↑3である。3の3の3乗乗であり、計算すると「7兆6255億9748万4987」である。かの「グラハム数」の出発点となる重要な数である。
トリトリ
クヌースのタワー表記における3↑↑↑3である。「3↑↑3」は「3の3の3乗乗」で「7兆6255億9748万4987」で「13桁」の数。「3↑↑4」は「3の3の3の3乗乗乗」で「3の7兆6255億9748万4987乗」で「約3兆6383億3464万0024桁」の数。「3↑↑5」は「3の3の3の3の3乗乗乗乗」で「3の3の7兆6255億9748万4987乗乗」で「約10の3兆6383億3464万0024乗桁」の数となり、グーゴルプレックスよりも遥かに大きくなる。この増大加速度において「3↑↑3↑↑3」が「3↑↑↑3」である。つまり、3の指数が7兆6255億9748万4987段もある数である。つまり「3^3^3^… 」と指数表記すると、1秒に10個の3を書けたとしても、約42180年もかかることになる。「トリトリ」の名前は、海外において熱狂的な支持者をもつ、BEAF(Bowers Exploding Array Function)の考案者ジョナサン=バウアーズ(Jonathan Bowers)によって名付けられた。ちなみに、急増加関数でトリトリを解析すると、その解析による順序数は「4」である。
グラハル
クヌースのタワー表記における3↑↑↑↑3である。「3↑↑↑3」は「3↑↑3↑↑3」で「3^3^3^…(3の指数が7兆6255億9748万4987段)」の数。「3↑↑↑4」は「3↑↑3↑↑3↑↑3」で「3^3^3^…(3の指数が3↑↑↑3段)」の数。これは「無量大数^無量大数^無量大数^…(無量大数の指数が無量大数段)」よりも「不可説不可説転^不可説不可説転^不可説不可説転^…(不可説不可説転の指数が不可説不可説転段)」よりも遥かに大きな数となる。「3↑↑↑5」は「3↑↑3↑↑3↑↑3↑↑3」で「3^3^3^…(3の指数が3↑↑↑4段)」の数。この増大加速度において「3↑↑↑3↑↑↑3」が「3↑↑↑↑3」である。この数を「3^3^3^… 」と表記すると「3^3^3^…(3の指数が3↑↑↑{3↑↑↑3-1}段)」つまり「3^3^3^…(3の指数が約3↑↑↑↑3段)」となり、十進数どころか、指数の積み重ねですら、その大きさを想像することが形骸化してしまう。テトレーションを使えば「3↑↑3↑↑3↑↑…(3のテトレーションが3↑↑↑3段)」と、その大きさをなんとか想像が出来るが、さらに矢印をひとつ増やした「3↑↑↑↑↑3」になると、そのテトレーションの積み重ねですら、その大きさを想像することが形骸化してしまい、この連鎖は矢印が増えるごとに延々と続くので「トリトリ」を超えるような巨大数の近似には、アッカーマン関数やコンウェイのチェーン表記が必要になってくる。グラハルの急増加関数の解析による順序数は「5」である。かの「グラハム数」を出力する「グラハム関数(通称)」の土台となる重要な数である。
グラハム数
1970年、ロナルド=グラハムがラムゼー理論に関連する解の上限値として定めた業務上過失巨大数だが、大きな数を広めようという意図でサイエンティフィック・アメリカンで一般に紹介された。観測可能な宇宙にあるすべての原子を使っても「3↑...↑3」と、クヌースのタワー表記で物理的に記述することはできない... というレベルですらなく、急増加関数が必要なほどの本数の「↑」が必要となる。正確には、グラハム関数「G(n)=3↑…n本…↑3」としたとき「G^64(4)」がグラハム数である。3変数のチェーン表記を用いると、3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→(3→3→4)… )と正確に表記することが出来る。また4変数のチェーン表記を用いると「3→3→64→2 < グラハム数 < 3→3→65→2」と近似できる。急増加関数の解析による順序数は「ω+1」である。2020年の11月に開催された日本巨大数協会(JGA)主催の巨大数人気投票トーナメントの決勝戦においては、『バシク行列システム』に僅差で競り勝ち、堂々の1位に輝いた。しかし巨大数のより一層の研究開発が進んだ結果巨大数の爆発的インフレが進み現在ではこのグラハム数ですら初歩的な巨大数になってしまっている(例として後述のコンウェイのチェーン表記を使って"3→3→3→3→3→3"など書くだけでグラハム数より遥かに大きな数が出来上がってしまう)。
ふぃっしゅ数バージョン1
2002年に、『巨大数論』の著者であるふぃっしゅっしゅによって定義された。ふぃっしゅ数バージョン1は「自然数と関数とS」の組に対して、SS変換を63回適用した数であると定義されている。この63という回数は「グラハム数」へのオマージュである。SS変換はS変換とS2変換のセットで構成され、S変換はアッカーマン関数を基礎としていて、そのS変換の回数を算出するのがS2変換である。急増加関数の解析による順序数は「ω^2+1」である。S変換1回目で生成されるC関数(漫画『寿司 虚空編』における表記)を使い「C(2,2)」としただけで「グラハム数」を爆発的に超えることも知られている。S変換の初期設定であるB関数(アッカーマン関数とおなじ)は「B(2,2)」が「7」である。このB関数でグラハム数に到達するには、「B(3,3)」を64回ほど合成する必要がある。S変換の要は、1回のS変換ごとに関数が「B(x,x)、C(x,x)、D(x,x)、D(x,x)、E(x,x)、… 」と強化されてゆく仕様であり、その中身は「B(0,n)=n+1」「C(0,n)=B(n,n)」「D(0,n)=C(n,n)」「E(0,n)=D(n,n)」… という強化である。
最初のSS変換ではこれを4回行い「E(D(C(61,61),C(61,61)),D(C(61,61),C(61,61)))」を出力する。この数を仮に「f₁」と置いたとき、SS変換2回目ではS変換を「4×E(f₁,f₁)」回行う。そうしてSS変換63回目に出力された「f₆₃」が、ふぃっしゅ数バージョン1である。これは「3→3→3→3」で「グラハム数」を爆発的に凌駕してしまうコンウェイのチェーン表記ですら物理的な限界に達して近似できない。物理的な限界を無視して「グラハム数→グラハム数→グラハム数→…(グラハム数がグラハム数個)」としても到達できない巨大さである。そのため、近似するには、4変数以上の多変数アッカーマン関数が必要になる。このふぃっしゅ数バージョン1は、一般書籍で登場する稀有な巨大数である。小林銅蟲先生の漫画『寿司虚空編』においては、作品の主題として語られている。また、青土社の現代思想12月号『巨大数の世界』においては、巨大な数を作るというその純粋性について、その例として言及され議論が展開されている。
ふぃっしゅ数バージョン2
2002年に、『巨大数論』の著者であるふぃっしゅっしゅによって定義された。「ふぃっしゅ数バージョン1」の拡張である。急増加関数の解析による順序数は「ω^3」である。ふぃっしゅ数バージョン1の定義を拡張しSSS変換、SSSS変換・・・とSの数をふぃっしゅ数バージョン1まで増やしても追いつけないほど巨大な数であるため近似するには5変数以上の多変数アッカーマン関数が必要である。
ふぃっしゅ数バージョン3
2002年に、『巨大数論』の著者であるふぃっしゅっしゅによって定義された。SS変換の革新的な強化に行き詰まったふぃっしゅっしゅは、それまでの「自然数と関数」から「自然数と関数」への写像を繰り返すSS変換の方向性を取りやめて、新たに「関数から関数への写像」というシステムを構築した。この「関数から関数への写像」という構造は、急増加関数における極限順序数の展開に似ている。急増加関数の解析による順序数は「ω^(ω+1)×63+1」である。これは「ふぃっしゅ数バージョン1」を「Ack(3,0,0,3)」で爆発的に凌駕してしまう多変数アッカーマン関数を以てしても、その変数を「Ack(3,0,…,0,3)」と伸ばしたところで、物理的な限界に達してしまい近似できない強さである。物理的な限界を無視し、さらに「ふぃっしゅ数バージョン1」を「F₁」と置き、なりふり構わず「Ack(F₁がF₁個 …,F₁,F₁,F₁,F₁)」としても、全くその大きさには適わない。その、ふぃっしゅ数バージョン3の要であるss(n)変換は、その定義においては「ss(2)」に留まっている。しかし、これを「ss(n)」とブーストしても、順序数は「ω^(ω+1)」から「ω^(ω+ω)」までしか伸びない。このように、多重再帰関数の上限である「ω^ω」よりも強い関数を作ることは大きな壁となっている。
ふぃっしゅ数バージョン5
2003年に、『巨大数論』の著者であるふぃっしゅっしゅによって定義された。SS変換の革新的な強化に成功しており、ふぃっしゅ数シリーズの完成形といえる。急増加関数の解析による順序数は「ε_0+1」である。この「ε_0」という順序数は、ペアノ公理でその整列性が証明可能な如何なる順序数(つまり「ω^ω^ω^ω^...」と表記される如何なる順序数)よりも大きな最小の順序数であり、ペアノ公理に基づいたカントール標準形では到達できないためヴェブレン関数が必要となる。そのヴェブレン関数では「φ(1,0)+1」と表記される。ここからは順序数で理解する他ないかもしれない。「トリトリ」で「4」、グラハルで「5」、「グラハム数」で「ω+1」、「ふぃっしゅ数バージョン1」で「ω^2+1」、「ふぃっしゅ数バージョン3」を極限まで拡張しても「ω^(ω+ω)」である。それに対して、ふぃっしゅ数バージョン5の要であるm(n)変換は「ω^ω^ω^ω^…∞」である。この途方もない順序数の大きさを感じるには、例えば「ω^ω^ω^ω」から「ω^ω^ω^ω^ω」の経路を追ってみるのがよいかもしれない。
まず、演算の掛かりを明確にするため「ω^ω^ω^ω」を「ω^(ω^(ω^ω))」と表記しよう。
順序数を「+1」することは、
例えば「クヌースのタワー表記」を「グラハム関数」に拡張したときの、
あの圧倒的で絶望的なインフレーションを意味する。
「ω^(ω^(ω^ω))」
「ω^(ω^(ω^ω))+1」
「ω^(ω^(ω^ω))+2」
「ω^(ω^(ω^ω))+3」と関数を強化し続け…
:
「ω^(ω^(ω^ω))+ω」と強化を支配し…
「ω^(ω^(ω^ω))+ω+1」無限を超えても強化を続け…
:
「ω^(ω^(ω^ω))+ω^(ω^(ω^ω))」
:
「ω^(ω^(ω^ω))+ω^(ω^(ω^ω))+ω^(ω^(ω^ω))」
:
「ω^(ω^(ω^ω))+ω^(ω^(ω^ω))+ω^(ω^(ω^ω))+…」
:
そして気の遠くなるほど遥か彼方で「ω^(ω^(ω^ω))×ω」になると「ω^(ω^(ω^ω)+1)」となる。
その「ω^(ω^(ω^ω)+1)」が「ω^(ω^(ω^ω)+2)」となるには、「ω^(ω^(ω^ω)+1)×ω」となる必要がある。
「ω^(ω^(ω^ω))」から「ω^(ω^(ω^ω)+1)」
「ω^(ω^(ω^ω)+1)」から「ω^(ω^(ω^ω)+2)」
この二つの経路の絶望的な違いがわかるだろうか?
そんな経路のインフレを繰り返し、繰り返し、その極限でインフレを支配すると…
「ω^(ω^(ω^ω)+ω)」となって…
「ω^(ω^(ω^ω)+ω+1)」無限を超え……
:
「ω^(ω^(ω^ω)+ω^(ω^ω))」絶望的に遠い…
:
「ω^(ω^(ω^ω)+ω^(ω^ω)+ω^(ω^ω))」うっ…
:
「ω^(ω^(ω^ω)+ω^(ω^ω)+ω^(ω^ω)+…)」アッ…
:
というのを支配して…
:
「ω^(ω^(ω^ω)×ω)」となって「ω^(ω^(ω^ω+1))」となる。
つまり「ω^(ω^(ω^ω+1))×ω」で「ω^(ω^(ω^ω+1)+1)」となり、
つまり「ω^(ω^(ω^ω+1)+1)×ω」で「ω^(ω^(ω^ω+1)+2)」となり、
それが「ω^(ω^(ω^ω+1)×ω)」となると「ω^(ω^(ω^ω+2))」となる。
同様にして「ω^(ω^(ω^ω+3))」となるまで、さらにその極限で「ω^(ω^(ω^ω+ω))」となって、そこから気が遠くなるほど色々あって「ω^(ω^(ω^ω×ω))」となるまでに、どれほどの経路を要するだろうか? しかし、それでもまだ「ω^(ω^(ω^(ω+1)))」であり、目的地の「ω^(ω^(ω^(ω^ω)))」は遥か彼方である。
では「ω^ω^ω^ω^ω」から「ω^ω^ω^ω^ω^ω」の経路はどうだろうか?
さらに「ω^ω^ω^ω^ω^ω」から「ω^ω^ω^ω^ω^ω^ω」の経路はどうだろうか?
この「ω」の指数をひとつ積み上げるごとに発生する、経路の重層的・超次元的・形容に困るほど凶悪なインフレーションを想像してほしい。
そして、その「ω」の指数の段数を支配し「ω」の指数の積み重ねを誤差にしまうのが「ε_0」=「ω^ω^ω^ω^…∞」であり、ふぃっしゅ数バージョン5の要であるm(n)変換の強さである。そのm(n)変換はヒドラゲームと似た動きをすることでも知られる。
ふぃっしゅ数バージョン6
2007年に、『巨大数論』の著者であるふぃっしゅっしゅによって定義された。「ふぃっしゅ数バージョン5」の拡張である。急増加関数の解析による順序数は「ζ_0+1」である。ヴェブレン関数では「φ(2,0)+1」と表記される。まず「ε_0」に対して「ε_0^ε_0^ε_0…∞」となる順序数が「ε_1」であり、同様に「ε_1」に対して「ε_1^ε_1^ε_1…∞」となる順序数が「ε_2」である。この経路で「ε_ω」に対して「ε_ω^ω^ω^…∞」となる順序数が「ε_ε_0」である。「ε_0」の経路ですら想像を絶するのに、本番はここからで「ε_0、ε_ε_0、ε_ε_ε_0、ε_ε_ε_ε_0、ε_ε_ε_ε_ε_0、… 」の極限となる順序数が「ζ_0」である。
原始数列数
2014年に、天才グーゴロジストとも称えられるバシクによって定義された。バシク行列システムの基礎である原始数列システムで定義される。急増加関数の解析による順序数は「ε_0+1」である。バシクは「ふぃっしゅ数バージョン5」を参考に、原始数列システムからバシク行列システムまでをBASIC言語に似たオリジナルの言語で考案した。バシク行列システムのプログラムを実装して定義化したのは『巨大数論』の著者であるふぃっしゅっしゅである。原始数列システムはベクレミシェフの虫と似た動きをすることで知られる。
ペア数列数
2014年に、天才グーゴロジストとも称えられるバシクによって定義された。原始数列システムを2行に拡張したペア数列システムで定義される。このペア数列数の壮烈さは、「ふぃっしゅ数バージョン6」との比較で顕著だ。「ふぃっしゅ数バージョン5」に着想を得て作られた「原始数列数」は、「ふぃっしゅ数バージョン5」と同等の強さを持つ。しかし、その、両者の拡張となる数には、巨大数研究者ですら驚嘆するほどの差がある。もちろん「ふぃっしゅ数バージョン6」の「ζ_0+1」という強さは決して弱いものではない。「ふぃっしゅ数バージョン5」の「ε_0」から、「ふぃっしゅ数バージョン6」の「ζ_0」までの間には、形容する言葉も見つからないほどの、絶望的な経路がある。されど、その強さは、ヴェブレン関数からすると、左辺の「1」が「2」に増えたに過ぎない。そのヴェブレン関数ですら、このペア数列数には無力なのだ。多変数化したヴェブレン関数はおろか、超限変数化したヴェブレン関数ですら到達不可能であるため、急増加関数で近似するには順序数崩壊関数が必要となる。急増加関数の解析による順序数は「ブーフホルツのψ関数」で「ψ₀(Ω_ω)+1」である。これは、バッハマン・ハワード順序数を超えて、竹内・フェファーマン・ブーフホルツの順序数に迫る強さである。その停止性は、p進大好きbotによって証明された。その証明にはブーフホルツのψ関数が使われている。巨大数研究が「ε_0」に到達すると、ヴェブレン関数を跳び越えて順序数崩壊関数に行くことがあるのは、このペア数列数の存在があるからだと思われる。巨大数研究の限界をインフレさせ、現在に至るまで、解析限界に向かう関所としてペア数列数は君臨している。
トリオ数列数
2014年以降に、天才グーゴロジストとも称えられるバシクによって定義された。原始数列システムを3行に拡張したトリオ数列システムで定義される。急増加関数の解析による順序数は、その加速度に対応できる順序数が2020年の時点では不明である。停止性の証明も未解決問題である。2020年現在、順序数崩壊関数の研究も盛んではあるが、未だ、トリオ数列を解析できるほど強力な順序数崩壊関数は知られていない。故に、このトリオ数列数を超えると期待される巨大数、例えば「バシク行列数」や「Y数列数」や「巨大数屋敷数」などとの、厳密な比較の方法は存在しないのが現状である。
バシク行列数
2014年以降に、天才グーゴロジストとも称えられるバシクによって定義された。原始数列システムをn行に拡張したバシク行列システムにより定義される。急増加関数の解析による順序数は、その加速度に対応できる順序数が2020年の時点では不明である。停止性の証明も未解決問題である。このバシク行列システムはプログラミング言語で定義されているが、バシク行列システムの研究家であるkoteitanによって定義の数式化もされている。また、バシクに先行して、偶然にも同じ数をkoteitanは定義している。青土社の現代思想12月号『巨大数の世界』においては、鈴木真治との討議において、ふぃっしゅっしゅがバシク行列システムを話題にしている。また、バシク行列システムは、2021年の12月に開催された日本巨大数協会(JGA)主催の巨大数人気投票トーナメント2の決勝戦において、初代王者の「グラハム数」を破った「急増加関数」を制して1位に輝いた。
6
第3回東方巨大数において巨大数大好きbotにより定義された。全角の「6」である。N原始で構成可能な数に制約を設け、有限個にしたのち、そのうち最大のものと定義されている。巨大数大好きbotは、ゆきとによる「ハイパー原始数列」という「原始数列システム」の拡張を受けて、その流れを対角化する目的でN原始を定義した。このN原始の強さは、ゆきとの「Y数列」に匹敵すると期待されている。故に、急増加関数の解析による順序数は、その加速度に対応できる順序数が2020年の時点では不明である。N原始の停止性の証明は未解決問題であるが、「6」については計算可能かどうかが不明である。
Y数列数
2018年以降に、新進気鋭のグーゴロジストであるゆきとにより定義された。Y数列はゆきとにより考案され、Naruyokoによって定義化された。ゆきとは、バシクの考案した「原始数列システム」を拡張し「ハイパー原始数列」をまず完成させた。「ハイパー原始数列」は「ペア数列システム」に近似し、その停止性は証明された。その「ハイパー原始数列」を拡張したのがY数列である。Y数列は1行ながらに「バシク行列システム」の極限にY(1,3)で達すると期待されている。その極限はY(1,ω)だが、さらにそのY(1,ω)にY^2(1,3)で到達する数列や、そのY^2(1,ω)にY^3(1,3)で到達する数列、そして、その極限であるY^ω(1,3)といった数列についてもゆきとは構想を試みた。しかし「Y^3」や「Y^4」において致命的なバグが発生してしまうという。そこで「Y^ω」に到達するための段階的な拡張を“包括的”に実行することで「Y^ω」の構想を実現する「ω-Y数列」を考案し、それはNaruyokoによって定義化されている。急増加関数の解析による順序数は、その加速度に対応できる順序数が2020年の時点では不明である。停止性の証明も未解決問題である。
段階配列数
2020年に、mrnaによって定義された。ブーフホルツのψ関数を改装した段階配列表記により定義される。急増加関数の解析による順序数は「ブーフホルツのψ関数」で「ψ₀(Ω_ω)+1」であり「ペア数列システム」や「ハイパー原始数列」と同等である。例えば「バシク行列システム」のような「非dom型」と分類される、順序数崩壊関数における共終数の概念のない、ペアノ公理でその整列性が証明不可能な表記は、その停止性の証明や解析が困難であると見られていたが、この段階配列表記や「ハイパー原始数列」は、「非dom型」でありながら、「dom型」であるブーフホルツのψ関数の展開に対応することで、研究の新たな可能性を示しているのかもしれない。また、拡張ブーフホルツのψ関数の極限にまで届く「下降段階配列表記」や、トリオ数列システムで(0,0,0)(1,1,1)(2,1,1)(3,1,1)(3,0,0)、Rathjenのψ関数で「ψ_Ω(ψ_{χ_ω(0)}(0))」に到達すると期待される「多変数段階配列表記」、さらには「三関数」と同等かそれ以上ではないかと綴られている「横ネスト段階配列表記」なども定義されていて、東方巨大数の運営であるFHLASRの主宰したイベント『即席巨大数』では、解析ツールとして拡張ブーフホルツのψ関数と共に正式に採用された。
亜原始階差ψ数
2021年に、順序数崩壊関数や順序数表記の研究家である甘露東風によって定義された。甘露東風はまず、p進大好きbotの「拡張ブーフホルツのψ関数に伴う順序数表記」の添字に、バシクの「原始数列システム」の拡張であるゆきとの「亜原始数列」を組み込んだ「亜原始ψ関数」を定義した。次に、これをさらに数列に翻訳した「亜原始階差数列」を定義した。この「亜原始階差数列」を「拡張ブーフホルツのψ関数に伴う順序数表記」の添字に組み込んだのが亜原始階差ψ数を定義する「亜原始階差ψ関数」である。甘露東風は、「数ある自称トリオ数列超え表記の中でも、亜原始階差ψは厳密な定義があるという点で大きすぎるアドバンテージがある」と述べている。
グラハム数ver ε.0.1.0
2020年に、じぇいそんによって定義された。「ふぃっしゅ数バージョン1」のS変換をアイデアの起源とする「定義ずらし」という手法を用いた「ε関数 ver ε.0.1.0」により定義される。じぇいそんによれば「定義ずらし」とは「定義からより強い定義を出力する写像」であるらしい。現在、この「ε関数 ver ε.0.1.0」が一意の数を定めるかどうかは検証待ちであり、その大きさはいかなる意味においても未知だが、じぇいそんはRathjenのψ関数を使った解析で「ψ_Ω(ψ_{χ_{M+1}(0)}(0))」に到達すると期待している。
埴輪「有限兵団造形術」
第2回幻想巨大数においてp進大好きbotにより定義された。この数の定義の心臓部である「忠誠心崩壊関数」と、巨大数研究者の注目を集めている「三関数」との比較について、あくまで「勘」であるとして「三関数」よりも強いでのはないかとp進大好きbotは述べている。しかし、大会においても未審査であり、その大きさはいかなる意味においても未知である。この「忠誠心崩壊関数」研究には「弱コンパクト基数」の崩壊を用いた巨大数の研究が必要らしい。
巨大数屋敷数
第3回東方巨大数においてp進大好きbotにより定義された。急増加関数の解析による順序数は「PTO(ZFC)+1」と推定される。これはZFC公理系でその整列性が証明可能な如何なる順序数よりも強い。巨大数屋敷はフリードマンの超越整数のシステムそのものであるが、超越整数を反復合成したに留まらない。ZFC公理系でその整列性が証明可能な順序数表記を対角化するシステムに展開規則を与えることで、厳密にPTO(ZFC)に達しているとp進大好きbotは述べている。故に、如何なる順序数も表記しない超越整数のシステムとは異なり、巨大数屋敷は順序数を表記するのだという。ただし、巨大数の解析に用いるには、その計算が複雑すぎて人間の手には負えないらしい。さらに、この巨大数屋敷は、これまで記してきた再帰関数とは一線を画すとも語られている。例えば、バシク行列システムの停止性がZFCで証明可能であるとき、巨大数屋敷が推定どおりの強さならば、当然ながらバシク行列システムよりも強い。では、バシク行列システムの停止性がZFCと独立であった場合はどうなるであろうか。しかし、巨大数屋敷は「ZFC + バシク行列システムの整礎性」を理論にして強くなるため、如何なる場合でも、巨大数屋敷はバシク行列システムよりも強くなってしまうらしい。また、ローダー数との比較においては、ローダー数のシステムは、ZFCよりも真に弱い体系であるCoCでの証明可能性を対角化するシステムであるため、巨大数屋敷の方が強いと推定されている。また、ZFCではwell-definedであることを証明できない欲張りクリーク列に対しては、欲張りクリーク列の理論であるHUGE⁺(ZFC + すべてのnに対してn-膨大基数が存在する)を理論にすることで、巨大数屋敷の方が強くなると推定される。このように、公理をシステムにすると、その公理における超越整数が優位になりがちである。一方で、任意の再帰関数fは、「ZFC + fの停止性」という公理(矛盾している場合もある)でfの停止性を示すことが出来てしまうため、「公理をいくらでも強めてよい」という仮定は「フェアではない」とp進大好きbotは述べている。超越整数のその他の拡張についても述べておく。『巨大数論』の著者であるふぃっしゅっしゅは、公理を強める拡張である「TR関数」を定義している。その「TR関数」において「ZFC+階層内階層基数」を用いた関数を「I0関数」と命名した。また、巨大数屋敷に不満の残るp進大好きbotは、超越整数の新たなる拡張として「巨大数楼閣」なるシステムと「巨大数楼閣数」という巨大数を考案している。
ミーミーミーロッカプーワ・ウンパ
海外において熱狂的な支持者をもつ、ジョナサン=バウアーズ(Jonathan Bowers)がBEAF(Bowers Exploding Array Function)で構想している巨大数うち最大の巨大数である。ただし、BEAFは急増加関数の解析でε_0以上の定義がill-definedである。そのため一意の数を定めない。もし、BEAFが最善の形で完成するとすれば、その急増加関数の解析による順序数は、バッハマン・ハワード順序数をこえるとも、竹内・フェファーマン・ブーフホルツの順序数をこえるとも、はたまた、既存の順序数崩壊関数の解析限界をこえるとも期待される。
計算不可能関数で定義される代表的な巨大数
ふぃっしゅ数バージョン4
2003年に、『巨大数論』の著者であるふぃっしゅっしゅによって定義された。ビジービーバー関数を用いるため、如何なる再帰関数よりも強い。急増加関数での近似には非再帰順序数であるチャーチ・クリーネ順序数が必要となるが、具体的な近似方法は不明である。
ラヨ数
2007年に、アグスティン=ラヨ(Agustín Rayo)によって定義された。グーゴル個以内の記号を使った一階述語論理の言葉で表現できるいかなる有限の正の整数よりも大きな最小の正の整数であると、二階述語論理の言葉で定義される。ビジービーバー関数は「グーゴル個以内の記号を使った一階述語論理の言葉」で定義可能であるので、これはビジービーバー関数よりも強い。例えば「19文字以内で記述できない最小の自然数」という巨大数の定義を考えたとする。しかし、この巨大数は19文字以内であり矛盾する。この自然言語のバグを、チューリングマシンに限定して回避したのがビジービーバー関数であり、ビジービーバー関数は算術を対角化する強さを持つ。ラヨのシステムは、この自然言語のバグを集合論の言葉に限定することで回避している。そのためチューリングマシンを含む数学を対角化すると考えられる。このラヨのシステムは、巨大数の定義方法に革新をもたらすシステムであるが、しかし、公理が指定されておらず、ラヨ数が「well-defined」であるとは言い切れない可能性が、p進大好きbotにより指摘されている。例えば、公理は矛盾していてもかまわないので、停止しない関数を停止すると証明することも可能らしいのだ。もちろん、ラヨ数が「well-defined」となる公理を作ることは可能である。
ふぃっしゅ数バージョン7
2013年に、『巨大数論』の著者であるふぃっしゅっしゅによって定義された。神託機械によりラヨ数を拡張した。よって、ラヨ数と同じく「well-defined」であるとは言い切れないと思われる。海外ではこの拡張に感化された研究が進められ、ビッグフットやサククワッチといった巨大数が定義されたが、ビッグフットとサククワッチの定義については「ill-defined」であることがp進大好きbotにより指摘された。2021年、この公理の問題を解決した「小ふぃっしゅ数バージョン7」がp進大好きbotにより定義された。
巨大数庭園数
第2回幻想巨大数においてp進大好きbotにより定義された。その際、審査員から有効判定を得ている。ラヨ数よりも大きなことが、下記のリンクに記されているが、ラヨ数が定義可能な集合論ではふぃっしゅ数バージョン7も定義可能であるため、巨大数庭園数はそれらよりも大きい。2021年の時点では、世界最大の自然数の定義と推定される。
I WIN 系と闇の世界
実は、上記で紹介した分類の他に「I WIN 系」と批判・揶揄される巨大数の分類が存在する。それらは概ね「ill-defined」であるにも関わらず、数学的な根拠もなしに、極めて大きな順序数を超える強さであると宣言したり(予想や期待を表明するのは該当しない)、かつ、その主張に対する数学的な質問に対して断固として応じようとしなかったりするその態度に対して揶揄する言葉である。故に「俺数はω-1の有限だから如何なる巨大数よりも大きので最強」みたいな荒唐無稽な主張であっても、初対面でいきなり「I WIN」と形容したりすることは無礼であると思われる。また、数学論争に応じない相手に対して、一方的に数学論争を迫れば、喧嘩に発展しかねない。海外では、そういった投稿者が荒らしになったり、脅迫まがいの行為に及んだりすることがあるらしい。たとえそれが数学的に正しい主張であっても、巨大数というジャンルは、人間関係のトラブルに巻き込まれることのある“インターネットらしい文化”であり、学問として成熟した文化では決してないことを胆に銘じて行動したいものである。この言葉の発案者であるp進大好きbotによると「大文字のみの記憶に残る人を形容する時にI WINになった」らしい。
巨大数よもやま話
世界がグラハム数人の村だったら
もしも、世界がグラハム数人の村だったら...
もしも、その村人の99%がたけのこ派だったら...
つまり、その村人の約グラハム数人がたけのこ派だったら...
次のことが云える。
「きのこ派は約グラハム数人である」
これが巨大数の力である。
では、なぜこんなことになるのか...
グラハム数はG関数を使って次のように表される。
G^64(4)
つまり...
:
G^63(4)
G^64(4)
G^65(4)
:
という増大率の中において、例えば指数関数をG^64(4)に適用したところで、G^64(4)はG^63(4)にもG^65(4)にもならないというわけである。
強いという概念
巨大数を評価するとき「強い」という言葉がよく使われる。正確には、巨大数を定義する関数の評価に使われる言葉だ。では、この「強い」とは、どのような概念なのだろうか。以下の二つの関数を比較してみる。
n+n
n+グラハム数
任意の自然数を「n」に代入して計算してみると、代入する自然数がグラハム数よりも小さいときは、「n+グラハム数」の方が大きな数になる。しかし、代入する自然数がグラハム数よりも大きくなると、「n+n」の方が大きな数になるのがわかる。このような関係にあるとき、強いと評価されるのは「n+n」である。「n+グラハム数」が「加算」であるのに対して、「n+n」は「乗算」であることが「強い」という概念の本質となっている。
加算、乗算、累乗、テトレーション、…
加算をレベル0の演算としたとき、乗算はレベル1の演算、累乗はレベル3の演算、テトレーションはレベル4の演算と形容することが出来る。この演算のレベルという形容は、実は、そのまま「順序数」に対応させることが可能だ。かの「コンウェイのチェーン表記」や「多変数アッカーマン関数」といった巨大数の物差しは、その強化された関数の強さで巨大数の大きさを測るが、しかし「順序数」は、「急増加関数」を媒体として「関数の強化の量」に対応し、巨大数を精製する関数の強さを測ることが出来る。
無限から有限を導く急増加関数
巨大数は「有限」の数である。その巨大数の研究における「無限」の役割とは、巨大数を精製する関数そのものと言っても過言ではない。「順序数」とは「0」からはじまり「無限」を超えても数え続ける、集合論における自然数の拡張概念である。
0,1,2,3,……,ω,ω+1,ω+2,ω+3,……,ω+ω,ω+ω+1,ω+ω+2,ω+ω+3,……
その順序数の媒体となる急増加関数は以下のようにシンプルな関数であり、その強さは「a」の値が有限値のときはアッカーマン関数やクヌースのタワー表記と同等である。
f 0 (n) = n+1
f a (n) = f^n a-1 (n)
上段の数式は「レベル0の演算が何かを定義している数式」であり、下段の数式は「レベルaの演算をレベル0の演算に変換する数式」である。急増加関数は、この「a」に順序数を代入して、演算のレベルを、無限を超えてさらに高めていくことが可能だ。しかし「ω」や「ω^2」といった順序数には、それよりひとつ小さな順序数が存在しない。このような順序数を「極限順序数」という。つまり、例えば「ω+2」といった順序数を代入して急増加関数の計算を進めても、それが極限順序数まで小さくなると、そこからは急増加関数の計算を進めることが出来ない。
f ω+2 (3) =
f ω+1 (f ω+1 (f ω+1 (3))) =
f ω+1 (f ω+1 (f ω (f ω (f ω (3))))) 極限順序数になると計算が止まる。
そこで、順序数が極限順序数の場合は、その基本列のn番目の項を取るというのが、急増加関数の真骨頂となっている。
f ω+2 (3) =
f ω+1 (f ω+1 (f ω+1 (3))) =
f ω+1 (f ω+1 (f ω (f ω (f ω (3))))) =
f ω+1 (f ω+1 (f ω (f ω (f 3 (3))))) 極限順序数の基本列のn番目の項を取る。
:
この事は「基本列のない順序数」を代入してしまうと、そこで急増加関数はフリーズしてしまうという事でもある。具体的には「最小の非可算順序数」以上の順序数は、急増加関数に代入できない。
f Ω+2 (3) =
f Ω+1 (f Ω+1 (f Ω+1 (3))) =
f Ω+1 (f Ω+1 (f Ω (f Ω (f Ω (3))))) 非可算順序数は基本列がないので計算が止まる。
このように、急増加関数に入力可能な順序数は可算順序数(基本列が定義されている必要がある)に限られるが、巨大数の研究において、巨大な可算順序数を得るために「基数」とよばれる非可算順序数の領域を扱うこともある。
巨大な可算順序数の世界
巨大数でまず目にするであろう「0」「1」「2」「3」「4」「5」「6」「7」「8」「9」「ω」「+」「×」「^」「(」「)」の記号を使った順序数の表記が、ペアノ公理でその整列性が証明可能な順序数を定義した「カントール標準形」である(正式には「0」「ω」「+」の記号のみで表記される)。その基本列は、巨大数の近似では「ワイナー階層」が好んで使われている。また、その極限、つまり「ω^ω^ω^ω^ω^…∞」はε_0(エプシロンゼロ)と呼ばれている。このε_0(エプシロンゼロ)は巨大数の研究においては初学者に立ちはだかる巨大な壁となっている。
ペアノ公理でその整列性が証明不可能な順序数になると、まず、登場するのが「ヴェブレン関数」である。ε_0(エプシロンゼロ)はヴェブレン関数では「φ(1,0)」と記述される。この2変数のヴェブレン関数の極限、つまり「φ(0,0),φ(φ(0,0,0),φ(φ(φ(0,0),0),0),…∞」をフェファーマン・シュッテの順序数と呼ぶ。Γ_0(ガンマゼロ)とも呼ばれる。これらは、3変数のヴェブレン関数を使うと「φ(1,0,0)」と記述される。さらに、多変数のヴェブレン関数の極限を小ヴェブレン順序数、超限変数のヴェブレン関数の極限を大ヴェブレン順序数と呼ぶ。そして、大ヴェブレン順序数より大きな順序数を得るために登場するのが「順序数崩壊関数」である。
世界で最初に登場した順序数崩壊関数が、バッハマン(Bachmann)が考案し、後にRathjenが順序数崩壊関数として作り直した「バッハマンのψ関数」で、この極限をバッハマン・ハワードの順序数と呼ぶ。そのバッハマン・ハワードの順序数より大きな順序数を定義する順序数崩壊関数が、ブーフホルツ(Buchholz)が定義した「ブーフホルツのψ関数」であり、この極限を竹内・フェファーマン・ブーフホルツの順序数と呼ぶ。この「ブーフホルツのψ関数」を使うと、大ヴェブレン順序数は「ψ₀(Ω^Ω)」であり、バッハマン・ハワードの順序数は「ψ₀(ε_{Ω+1})」であり、竹内・フェファーマン・ブーフホルツの順序数は「ψ₀(ε_{Ω_ω+1})」である。この「ε_{Ω_ω+1}」等の表記を使わないのであれば、ブーフホルツのψ関数は、その極限である竹内・フェファーマン・ブーフホルツの順序数を記述することはできない。
これら順序数崩壊関数に共通するのは、非可算順序数(ℵ_0よりも大きな基数)を崩壊させて可算順序数を得るというシステムである。その先も少し覗いてみよう。Denisは「オメガ不動点」を崩壊させる「拡張ブーフホルツのψ関数」を定義した。それに伴う順序数表記はp進大好きbotが定義している。さらに、甘露東風は、p進大好きbotによるその順序数表記を多変数に拡張した「くまくまψ関数」を定義した。そして、p進大好きbotは、その「くまくまψ関数」を順序数崩壊関数にした際に超限変数に拡張している。また、Rathjenによる「Rathjenのψ関数」は「弱マーロ基数」を崩壊させることで知られる。ちなみに、非可算順序数のかわりにチャーチ・クリーネ順序数を使うことも可能だが、「ω_1^CK」と書くより「Ω」と書く方が便利なため、チャーチ・クリーネ順序数ではなく非可算順序数が使われているらしい。ただ、非可算無限の入力に対して可算無限を返す、集合論における計算不可能な関数を、有限個の文字列操作に変換した「順序崩壊関数に対応する順序数表記」においては「共終数」の概念を使うことが出来るので、非可算順序数の方が優れていると言えるのだそうだ。
巨大数の楽しみ方
巨大数を眺めて楽しむ
巨大数を楽しむのに、いきなり「巨大数庭園数」を知る必要はない。例えば「グラハム数」ひとつでかまわない。もし、その大きさを理解することが出来たなら、その途方もない大きさを眺めたり、また、ブログなどで解説したりして楽しむことができるだろう。
巨大数を学んで楽しむ
巨大数についてもっと深く知りたいのであれば、YouTubeの巨大数チャンネルが入門に丁度いいかもしれない。本格的に知りたいという方は、ふぃっしゅっしゅ著の『巨大数論』を読むとよいだろう。PDFが無料公開されている。書籍で欲しいという方には、アマゾンのペーパーバックで出版されている。
巨大数を作って楽しむ
巨大数を作ってみたいという方は以下のリンクを参考にするとよいかもしれない。実は「世界最大の数を定義する鼬ごっこ」が究極の楽しみ方とは限らない。
<大きい>
:G
巨大数庭園数
:F
【越えられない壁】
:E
超越整数
:D
【越えられない壁があるかもしれない】
:C
バシク行列数
:B
【解析限界の壁】
:A
<小さい>
※超越整数とバシク行列数の大小関係は推定です。判明していません。
特に、日本のコミュニティで研究が盛んであるのは「A」~「C」だったりする。例えば「バシク行列数」の大きさを解明するには、「A」の研究によって「解析限界の壁」を押し上げなければならないし、「巨大数庭園数」の強さを感じるには、「E」の研究によって「越えられない壁」に向かってどれだけ進んだかの物差しが必要になって来るだろう。また、そういった「巨大数のジャンル全体に貢献しようとする研究」でなくてもいい、「自身でどれだけ大きな数を作れるか」といった楽しみ方でもいいのだ。それこそ「グラハム数よりも大きな数を作る」という目標でもかまわない。
- 巨大数研究 Wiki 原始再帰と関数の帰納的定義
- 巨大数研究 Wiki 計算可能関数の定義の書き方
- 巨大数研究 Wiki 巨大数論に現れる形式論理に関するよくある間違い
- 巨大数研究 Wiki 巨大数のためのプログラミング講座
- 巨大数研究 Wiki なるべく分かりやすいOCFの作成
- 巨大数用語集
ところで「自分の作った巨大数がどれくらいの大きさなのか?」はたまた「自分の作った巨大関数が一意の数を定義しているのか?」といった問題があろうかと思います。幸いにも、日本の巨大数コミュニティには、不定期ではありますが「東方巨大数」というイベントがあります。このイベントは「東方Project」の2次創作イベントですが、実のところ東方要素が無い作品もあります(東方要素あっても巨大数の名前に東方由来の名前をつけるだけなのが大多数だったりします)。次の大会は「東方巨大数4」ですが開催は完全に未定です。主催者は、同人サークル「FHLASR」の代表である叢武です。意に留めておくとよいかもしれません。