この記事はSYSKEN Advent Calendar 2017 8日目の記事です
こんにちは
後期中間のテストで進級やばいとか言ってるいしかずです.
さて,私は以前こういう音楽ゲームのような何かを制作しました.
この音楽ゲームの名前は「Pentation↑↑↑(ペンテーション)」,バージョンアップする予定だった名前が「Pentation↑↑↑ -Graham-(ペンテーション グラハム)」というものでした.
今回の記事は,現在マイブームでこれらの名前の由来である「巨大数論」(ハイパー演算子からグラハム数まで)について,にわかながら書いていこうと思います.(技術的な話じゃないのは許して)
さて,まず最初に「巨大数」というものについて説明します.
巨大数ってなあに
今私の中で巨大数論がアツい!!!!!
巨大数とは,日常で使う数とは遥かにかけ離れるほど大きな数のことです.
とはいっても,10とか100とかはまだ日常的な範囲として,億,兆,京のような大きな数,また恒河沙,阿僧祇,那由他,不可思議,無量大数といった数は巨大数とはいえません.むしろ小さすぎて巨大数の前では0に近似できてしまいます.
例えば,「3↑↑↑3」という数があります.詳しくは後述しますが,この値をA4用紙に数字で書こうとすると,紙が多くなりすぎて地球が埋まります.どころか宇宙も埋まる,そういうレベルの数を扱うのが巨大数論というものです.「3↑↑↑3」のような数のことを巨大数と呼んだりします.
続いて,「ハイパー演算子」というものについて説明します.
ハイパー演算子ってなあに
急になんかやべーのが出てきたと思う方もいると思いますが,実際そこまで難しくはないです.
ハイパー演算子とは,演算を一般化したものです.
書き方の例としてはhyper(a,n,b),a(n)b (ただし(n)は〇で囲まれた形)と記述し,a,bはそれぞれ計算される数,計算する数を表します.残るnは演算方法を表します.
以下〇で囲まれたnは(n)と書くこととします.
は?
となると思いますので数式で説明します.(文章だとすごく説明しにくかった)まず,0番目(n=0のとき)のハイパー演算子を紹介します.
0番目のハイパー演算子
ここではhyper(a,n,b) = a(n)b =・・・の形で書かせていただきます.
0番目のハイパー演算子は以下のような形になります.
そうです,0番目のハイパー演算子は元の数に1を足すだけの演算子です.
これが基本となります.ここではまだ実質bの値は影響しません.
1番目のハイパー演算子
1番目のハイパー演算子は以下のような形になります.
「?」となる人もいると思います.
ここで,右端の「a+b」に注目してください.
a+bは,以下のように変形することができます.
いったん0番目のハイパー演算子を思い出してみてください.あれは元の数に+1をするだけの演算です.
よって,これは0番目のハイパー演算(+1)をb回繰り返したもの
ということになります.
2番目のハイパー演算子
2番目のハイパー演算子は以下のような形になります.
ここからは,少し違った定義になります.
実際のものとは少し異なる可能性がありますが,私はこういう風に解釈をしています.
このことから,1番目のハイパー演算をaがb回出るまで繰り返したもの
ということになります.
3番目のハイパー演算子
勘のいい方は大体予想がつくと思いますが,3番目のハイパー演算子は以下のような形になります.
これも,2番目のハイパー演算子と同じように定義し,
a×a×…×aをaがb回出るまで繰り返したもの,すなわち,
2番目のハイパー演算をaがb回出るまで繰り返したもの
ということになります.
ここで,abのことを,a↑bと表記することもできます.これをタワー表記と呼びます.
このタワー表記,実は後述するグラハム数や,ほかの巨大数を求めるのに重要な表記方法とされています.
以下,タワー表記で表記できるところはタワー表記を用いて表記します.
4番目のハイパー演算子
ここからはおそらく知らない人も多いであろう領域に入っていきます.
4番目のハイパー演算子は以下のような形になります.
「?」となる人も多いと思います.
このaの前に累乗みたいな形でbがついたものは,このような意味になります.
これは,aがb個コピーされた,ということになります.
また,baは,a↑↑bと表記することもできます.これは「aテトレーションb」と読みます.
ここで一度,2↑↑3,3↑↑3の値を求めてみましょう.
累乗がいくつも重なったような数は,右上から計算します.つまり,以下のように求めていきます.
はい.左の数が1増えただけで莫大に数が増えました.とはいえ,ここまではまだまだ前提知識にすぎません.まだまだ上があります.
5番目のハイパー演算子
ここまで来てもうだいたい察せるようになった方もいると思います.
そして,ここであの「ペンテーション」の登場です.
5番目のハイパー演算子は以下のような形になります.
ここで,指数表記のような形は終わり,タワー表記のみとなりました.
今表記されているa↑↑↑bを,「aペンテーションb」と読みます.
来ましたペンテーション!!!
これは以下のような意味になります.
ここで気付いた人もいてくれればうれしいのですが,私が作った音楽ゲームのタイトル「Pentation↑↑↑」の後ろの矢印はこの演算子からきています.某音楽ゲームの楽曲名のパクリではありません.(ただこのタイトルのままだと式として成り立っていないのは内緒)
さて,冒頭で「3↑↑↑3」とかいうやつが出てきたのを覚えているでしょうか.とりあえずその値を求めてみましょう.
タワー表記での計算は,右から順に行います.よって,以下のようになります.
ぱっと見ではよくわからないような結果になりましたが,最終的にこうなります.
これは,3が7,562,597,484,987個重なった数ということになります.これで明らかに巨大な数であるということがわかっていただけたかと思います.
n番目のハイパー演算子
nが3以上のとき,これらのハイパー演算子はタワー表記を用いて一般化することが可能です.
一般化した結果が以下のような式になります.
↑の右上についた数字は↑が何本あるかを表しています.
また,ペンテーションの上にヘキセーション「↑↑↑↑」と呼ばれるものもありますが,先ほどと計算方法は一緒なので説明は省きます.
余談ですが,a,bがどちらも2のとき,n=0を除いたすべてのハイパー演算の答えは4になります.もしよかったら実際に計算して確かめてみてください.
ハイパー演算子の話はこれで終わりにして,次はいよいよグラハム数について書いていきます.
グラハム数ってなあに
グラハム数とは,先ほど説明したハイパー演算子をふんだんに使って表される数です.もちろん通常の指数表記で表すことは不可能です.
グラハム数は,主に関数G(n)というものを使って計算します.
G(n)はどのような定義かというと,
です.
実際にnが1≦n≦4(ただしnは自然数)のときのG(n)の値を求めてみましょう.
結果は以下のようになります.
今回重要となるのはG(4)です.
G(4)は詳しく計算するとこのようになります.もうWordとかいうやつで書く気力が起こらないので手書きで書きましたが許してください
3が多すぎてゲシュタルト崩壊しました.
グラハム数とは,以下のものを指します.
「?」
となると思います.僕もなりました.
この64という数字は,累乗ではありません.
これは,先ほど求めたG(4)を,さらにG(n)の中に入れ(=G2(4)=G(G(4))),それをさらにG(n)の中に入れ…という操作を64回入れ子にしたものです.
つまり,こういうことになります.
とりあえず,G2(4)を計算してみましょう.
計算すると,以下のようになります.
↑↑↑…↑↑↑の下付きの中かっこは,↑が3↑↑↑↑3個ありますよーという意味です.
もちろん,先ほど説明した通り3↑↑↑↑3はとんでもない数です.
続いて,G3(4)を計算してみます.
そろそろWordで書くのがしんどくなってきたので手書きで許してください.
これは,先ほど求めたG2(4)がG()の中に入ることになるので,
つまり,3↑↑↑↑3の数だけ↑がある3↑…↑3,の数だけ↑がある3↑…↑3,ということになります.
これでもまだ全64段重ねの3段階目です.
G4(4)を計算してみます.先ほどと同じ動作を入れればいいので以下のようになります.
ここで,3↑↑↑…↑↑↑3いう構造が4段重ねになっていることがわかります.これは,Gを入れ子にした回数「4」と一致していることも分かります.
よって,最終的なグラハム数Gの値は,以下のようになります.
ようやく求まりましたね.お疲れ様でした.
巨大数論は現在シス研が活動している分野とはかけ離れており,考えれば考えるほど頭が痛くなりますが,私はすごく面白いと思っています.
やっぱり巨大数論はロマンの塊だと思います.無量大数やら宇宙の大きさやらが0に近似されるなんてヤバいですよね!!(語彙力)いつか自分でもこういった巨大数を作りたいです.
今回の記事は自分がいま熱中している巨大数論について簡単に語らせていただきました.巨大数には,今回紹介したグラハム数以外にも「多角形表記」や「ふぃっしゅ数」などといった数や演算方法も定義されています.ニコニコ動画の方にも解説動画がいくつも転がっているので,もし興味があればご閲覧いただけたら大変うれしいです!自分自身もまだまだ勉強不足なので頑張って理解していきたいと思っています.
最後に,
巨大数論はいいぞ
ここまですべて読んでくれた方はなかなかいないとは思いますが,最後までお読みいただきありがとうございました.
この記事は全部で4100文字以上ありますが,巨大数の前では実質0文字ですね!出直してきます……….
いいですね
巨大数作りました