Duel"Math"ters ~遥か彼方、巨大への挑戦~(中編:大きさの評価)

はじめに

数字を大きくしすぎて幾星霜、αrufαです。こちらの記事は前回の続きとなっております。ブログにあるまじき7000文字近いトンデモ記事ではございますが、まずはそちらを斜め読みで構わないので一読いただいてから、こちらの記事を読むことをお勧めします。
さて、改めて前編からいらっしゃった方へ、今回はあの手順で果たしてどれだけ大きくなるのかという話をさせていただきたいと思います。因みに今回の記事はかなり数学寄りの話が増えます。頑張ってかみ砕いて説明するように努めますが、あまり数学慣れしていないカードゲーマーの方々を置いてけぼりにするような内容でしたら、非常に申し訳ありません。また巨大数に慣れている方々へも、話をかみ砕くために曖昧な表現を多用することをご了承ください。

「ネスト」を理解する

今回の最大パワーを理解するにあたって、「ネスト」という概念が必要になります。数学世界ではすっごい便利なんですが、学校教育の範疇ではあまり使わない概念なので、まずはコレの説明から始めたいと思います。
まずわかりやすい関数を1つ用意します。
f(x)=x^2+1
中学校でも使うこういうやつですね。f(x)のxに何か数字を入れると、欲しい数が出せる、というのが関数の基本です。例えば
f(1)=1^2+1=2
f(2)=2^2+1=5
f(10)=10^2+1=101
と、まぁこんな感じですね。では、この式を1回ネストしてみます。
ネストする、というのは、f(x)のxをf(x)に置き換える動作のことを言います。
f( f(x) )=f(x)^2+1=(x^2+1)^2+1=(x^4+2x^2+1)+1=x^4+2x^2+2
xの部分がf(x)になるので、f(x)で置き換えて、もう一度置き換えることでxの式にすることができます。では、これにさっきと同じように数字を入れます。
f(f(1))=1^4+2×1^2+2=5
f(f(2))=2^4+2×2^2+2=26
f(f(10))=10^4+2×10^2+2=10202
先ほどの式に比べて、結構大きくなったことがわかるでしょうか。4乗なんてものが出てきているので当然と言えば当然ですが、2回ネスト、3回ネスト…としていけば、もっととんでもない大きさになることは容易に想像できるでしょう。本来は説明しなければならないことがまだあるのですが、本記事を読むにあたっては「ネストとは関数の中に同じ関数を入れること」「ネストをするとネスト前より強い関数になる」の2点だけ抑えて頂ければOKです。

カード効果を式にする

パワーの解析(計算できる状態にすること)をするにあたって、カード効果を数式に直す処理というのがとても大事です。まず、コンボがどれだけの大きさを持っているのかを考えていきましょう。

カード効果1:ダイナモ

コンボの中核となる部分はダイナモです。ダイナモは「自分の能力とパワーを他の1体に渡す」能力です。これをバトル時に何回も行うことでパワーが大きくなります。
今回は簡単化のために、2体のクリーチャーAとBが能力を1個ずつ持っているとします。
AがBに能力を渡すと、Aは1個、Bは2個能力を持ちます。
ここからBがAに渡すと、Aは3個、Bは2個です。
またAが渡すとAは3個、Bは5個、またまた渡してAは8個、Bが5個…
勘が鋭い方は出てきている数字の時点で「おやぁ?」となるのですが、この能力の数を表にしていきます。


ものの見事なフィボナッチ数

この合計の部分に出てきている2,3,5,8,13,21,34…という数の並びなのですが、結構数学世界では「フィボナッチ数列」というお馴染みの数だったりします。名前ぐらいは聞いたことのある方も多いのではないでしょうか。フィボナッチ数列は沢山の綺麗な法則があるのですが、それについての詳しい話は、一旦横に置かせてください。
今回重要なのは一般項。一般項というのは、数列の何番目がどんな数になるかを示す式なのですが、めちゃくちゃ数が大きい領域のフィボナッチ数列の一般項は
A_n≒(1.6^n)/√5  (n>>無量大数)
でおよその数が出ます。
「およその数?」と思われるかもしれませんが、ご勘弁ください。数というのは大きくなりすぎると、正確さが犠牲になります。これから大きさの評価を行いますが、あまりにも大きすぎて普通ではありえない大きさの数が端数として切り捨てられます。この程度のおよそ加減はあっという間に誤差として消えますので、ご了承ください。
とにかくも、これにてフィボナッチ数の一般項が用意出来ました。ダイナモのカード効果に戻って組み合わせてみると、「ダイナモをn回使う=能力の数がn番目のフィボナッチ数になる」という仕組みが出来上がります。これが今回のコンボの一番基本となる、能力の増幅の部分になります。

カード効果2:循環する効果たち

ダイナモをたくさん使いたいという目的で色んなカードを使用するわけですが、他のカードたちは比較的同じように数を大きくする能力を持っています。その動きについて解説します。
前編の手順ではあまりに煩雑なので、幾つか必要な部分だけを抜き出します。
・1度攻撃を宣言する度にn回アアルカイトがクリーチャーのcipを使う
・アアルカイトの効果1回でn回エメラルーダでシールドを交換してSTで召喚を行う
・召喚するたびにn回インパクトリガーで呪文を唱える
・呪文を1回唱える度にn回ケイヴの効果でクリーチャーを出す
・クリーチャーが出たときにn回ゾルゲの能力でバトルが発生する
・バトルがはじまるときにn回ダイナモが使われる
以上が最低限必要な効果処理の概要となります。そしてそれぞれ見てもらえばわかる通り、「1回○○する度にn回××する」という文章です。つまり、これらのテキストはそれぞれ同じだけ数を大きくする力を持っていると考えていいでしょう。
とはいえ、1回目の攻撃→アアルカイトn回→1回分でエメラルーダSTがn回→ST1回がインパクトリガー呪文n回分…と繋がっているので、これらは全て内側のループを巻き込んで新しいループを作っていくわけです。
しかも最後のダイナモ能力は2倍とかそんな優しいものではなく「能力の数をn乗する」というとてつもない大きさのため、普通の掛け算とかでは全く片付きません。
ここで登場するのが、前項で説明した「ネスト」です。1つ外側のループは、内側を数式とみなした時に、丸ごとネストするのと同じ力を持っています。ただし、1回ネストではなくn回ネストですが。
ゾルゲの部分だけやっておきましょう。ダイナモの式をいったんF(x)と置いて
Z(x)=F(F(F(…F(F(F(x)))…)))   (※F( )の中身はn個繰り返しで入っている)
という風に表せます。流石に数が多くなると書くのが大変なので
F^n(x)
と置きなおします。これで内側にn個入っているという意味になります。
では次はケイヴの効果なのですが、これは
C(x)=Z^x(x)=F^F^F^F^…F^x(x)…(x)(x)(x)(x) (F^x(x)の数がx個)
って感じになります。ネスト回数が増えていくので、ネスト回数の部分である^xの所が増えていきます。この時点でだーいぶキナ臭くなってきたかと思われます。これをあと3回ぐらい詰め込むワケですが…物理的に書くのがきっつくなるので止めておきましょう。この「ネストする効果」が構築の中で一番パーツ枚数が多いです。ただし、これを踏み台にしてさらなる大爆発を決めるカードも存在しました。

カード効果3:最強の存在「ザールフェルド増幅」

中核がダイナモだとすれば、最高の火薬は恐らくザールフェルドでしょう。ザールフェルドは「呪文を唱えた時、それよりコストの小さい呪文を唱える」という効果ですが、この効果が「1つのテキスト」で収まっているのが非常に強烈でした。
先ほどの効果たちは「1つの効果につき、1つのネストをn回行う」ものだったのですが、ザールフェルドは「1つの効果でn回ネストの層を使う呪文の枚数分作る」能力として機能します。今回は9コスト~4コストまで唱えるので6層分を1発で作ることが出来ます。そしてこの効果をn回行えるように別のネストの効果で内側に入れることで、「ネストの層を作る効果」を何倍にも増幅して機能させることができました。これこそが前回記録に対して、今回の大きさが大幅に更新できた理由となります。これにて、パワーを大きくするカードの効果を一通りそろえることができました。

実際に計算してみよう

お待たせしました、お待たせしすぎたかもしれません。これで必要な計算材料がそろったので実際の計算を始めることが出来ます。
ただn回ネストだの、nをn番目のフィボナッチ数にするだの書きましたが、つまり「コンボを開始する時の初期値」が無いと話になりません。
それがどの程度なのか確認してみましょう。
必要なのは攻撃前のダイナモと、実はちゃっかりレシピに入っているヴァリヴァリウスによるマジボンバーで出される時に発生する1回目のゴッドリンクです。
まずクリーチャーの数は、メインデッキ65枚から、コンボで場にいないカード12枚を引き、そこにGR12枚、次元8枚、ドルマゲドン1組を合わせた74体です。このクリーチャーたちにダイナモと《アドレナリン・マックス》で効果を分配していくと、ここでフィボナッチ数と同じ威力が出せます。ただ、実際に必要な効果が8体ほどあるので、このクリーチャーたちを除いた66体分の増幅になります。
66体をアドレナリン・マックスで折り返しながら効果を分配していくと
66×66÷2=2178(番目)
のフィボナッチ数を見ればいいので、最初に書いたものよりちょっと精度のいい近似式を使って
{(1+√5)^2178}−{(1−√5)^2178}/(2^2178×√5)≒6.692×10^454
と出ました。この時点で450桁以上の数が飛び出してますが、まだスタート地点に立っていないことにご注意ください。あと6.692とか使い物にならないので切り捨てます。
ここで初めてG・リンクが始まります。中央G・リンク1回あたりテキストの数が74倍されていくので、ざっとこれを10^454回行います。
これでテキスト数は 74^10^454(個)。このままだとちょっと使いづらいので雑に切り捨てて 10^10^10^2  としちゃいましょう。なんのこっちゃ解らない方も多いと思いますのでちょっと説明しますと、指数というのは括弧を使わずに上に積んでいくと、右上から順番に計算されていきます。
(10^10)^10=10^(10×10)=10^100
10^10^10=10^(10^10)=10^10000000000
計算順序を間違えるとこれぐらいの差が出来ます。ご注意ください。なお今回は「下側」になります。でかぁい、説明不要(棒読み)
で、これが初期値となります。我々は今スタートラインに立ちました。
ダイナモをバトル1回分詰め込むと、1.6^nなので 1.6^10^10^10^2
1.6が邪魔でめんどいので 10^10^10^10 に切り捨てます。5段より4段の方がちっこいよ。
ゾルゲ1セットにバトルはn回詰め込まれているので、ネストすると 10↑↑(10^10^10^10) 回。まだまだ前回記録でも使ったやつ。後ろの数がもう誤差なんで 10↑↑10 に切り捨てます。詳しいことはリンク張っときます。
ゾルゲ1セット=クリーチャー1体出すなら、クリーチャーを出すケイヴ1セット分で 10↑↑10↑↑10↑↑…↑↑10↑↑1010↑↑↑10 になります。
ケイヴは呪文1回で1セット反応します、が、ここで真打ザールフェルド。
1回ネストで↑が1つ増えるのですが、こいつは呪文1枚ごとに稼いでいきます。呪文1枚目で10↑↑↑10、2枚目が10↑↑↑↑10、6枚あるので10↑↑↑↑↑↑↑↑↑10
さて、そろそろ↑の本数も伸びすぎますので、新しい武器、「チェーン表記」の出番。
チェーン表記は、矢印表記に対して 
(前の数)→(後ろの数)→(矢印の本数)
とあらわされる表記。単純にコレだけ、ってワケでは無いですが、一旦はこれで何とかします。
今は 10↑↑↑↑↑↑↑↑↑10 なので 10→10→9 と表現できます。
そして、呪文を唱えるのはインパクトリガー(+ロマノフZ)の仕事。召喚1回を参照するインパクトリガーは、1セットで 10→10→(10→10→9) まで矢印の本数を増やします。中身が増えた状態でネストしようとすると、この形のままでは不便なので、チェーン表記の強化版(拡張)で
(前の数)→(後ろの数)→(矢印の本数)→(矢印の本数レベル)→(矢印の本数レベルのレベル)→(矢印の本数レベルのレベルの…)
という表記方法があります。
今まで使ってたチェーンの一番後ろがとてつもない数(曖昧な表現でごめんなさい)になった時、そのひとつ後ろを+1できるというルール(書いてないところは1)があります。
なので 10→10→(10→10→9)(→1) =10→10→10→2 となります。
そしてデッドルナおよびエメラルーダ1セットは、召喚に対するネストになるので、 
10→10→10→(10→10→10→2)=10→10→10→10→2
同じようにアアルカイト1セットが 
10→10→10→10→(10→10→10→10→2)=10→10→10→10→10→2
さいごにこれら全てが攻撃1回で成立し、攻撃は11回行えるので
10→10→10→10→10→11 ≒ 10→10→10→10→10→10
となって、ゲーム勝利で値が出力されて終わりとなります。
パワーとテキスト数がどんだけ同じなの?という話ですが、両方基本は足し算で増えていくため、おおよそパワーの数は効果の数千倍、ドラギリアスの効果を考慮に入れても2^(効果数)乗なので最後に11を10に切り捨てた部分よりはるかに小さい誤差で収まります。

実際どんな大きさなの?

さて、取り出すことができました、パワー10→10→10→10→10→10とかいうヨクワカラナイナニカですが、じゃあどんな大きさなの?という話になってきます。数学世界であれば、n→n→n→…→n→n (n個繋がってる)ものをCg関数 Cg(n)で表し、急増加関数 f_ω^2(n)ぐらい、これに当てはめると今回の記録はf_ω^2(6)<デュエマ<f_ω^2(7) と表現できます、が。こんなのDMPに言ったところで何にも解らない(なんならCg関数自体が巨大数世界でもそんなに使わない)と思われるので、他の物を頑張って用意してみましょう。
ここに取り出しますはギネスブック。ここに載っている数に「グラハム数」というものがあります。これは「数学の証明に使われた中で世界一大きな数」というもので、名前はガンダム由来などではなく、実在する数学者のグラハムさん。まぁ、なんとなくですがめっちゃ大きい数なんだろうなぁと思っていただければなと思いつつ、この数の大きさがチェーン表記で
おおよそ 3→3→64→2 です。チェーン表記の大小は、矢印の本数を比べて多い方が大きいです。…デュエマはギネスブックを置き去りにしました。
因みに先ほど書いたCg関数というのは、このチェーン表記を考えたコンウェイさんという数学者の発案で生まれたものなので、デュエマはコンウェイさんには勝てなかった。強弱関係で言うなら
グラハムさん<デュエマ<コンウェイさん
と思っていれば良いです。因みに大きさバトルという意味ではコンウェイさんの上にはアッカーマンさん(多変数アッカーマン関数)なんて人もいます。その日人類は思い出した、巨大数に支配されていた恐怖を。
因みにこの計算のアレコレを教えてくれた数学の先生方は、チェーンを遥か無限に伸ばそうとしてもまるで勝てないぐらいでっかい数いっぱい作ってます。マジで果てがありません、協力者求む。

一旦のおわりに

いかがだったでしょうか、中編とは銘打ちましたが、一旦は計算部分についてはこれで以上となります。後編は、個人的な感想と今回の研究で見つけたながらも運用できなかったカードと共に未来への展望を書いていきたいと思います。


この記事が気に入ったらサポートをしてみませんか?