巨大数研究 Wiki
Advertisement
巨大数研究 Wiki

\( \newcommand{\bm}[1]{\boldsymbol #1} \newcommand{\len}{ {\rm len}} \newcommand{\cutlen}{ {\rm cutlen}} \newcommand{\if}{~{\rm if}~} \newcommand{\nat}{ {\mathbb N} } \) 亜EB数列システム には不備があると思われるので、ちゃんと拡張ブーフホルツのψに対応すべく新しい表記を作る。


記法

有限自然数数列の集合である基本数列 \(FT\) を下記のように定義する。

  1. \((1) \in FT\)
  2. \(\forall k\in \nat~(1 \leq k \rightarrow (1,\underbrace{2,4,6,8,10,\cdots,2k}_{k}) \in FT)\)


真EB数列 \(OT\) の集合を下記のように定義する。

  1. \(FT \in OT\)
  2. \(X \in FT \rightarrow X[b] \in OT\)


基本列

真EB数列の基本列展開関数 \begin{eqnarray*} [~] \colon OT \times \nat & \to & OT \\ (S,n) & \mapsto & S[n] \end{eqnarray*} を下記のように定義する。 \begin{eqnarray*} S[n]&=&\left\{\begin{array}{ll} () & {\rm if}~S=() \\ S_1 \frown S_2 \frown \cdots \frown S_{\len(S)-1} & {\rm if~} S_{\len(S)}=1\\ G_S \frown B_S(0) \frown B_S(1) \frown \cdots \frown B_S(n) & {\rm otherwise}\\ \end{array}\right.\\ S\in OT&=&(S_1,S_2,\cdots,S_{\len(S)})~(\forall kS_k \in \nat))\\ G_S &=& (S_1, S_2, \cdots, S_{r_S-1})\\ \forall k~B_S(k) &=& (S_{r_S}+k\Delta_S, S_{r_S+1}+k\Delta_S, \cdots S_{\len(S)-1}+k\Delta_S) \\ r_S &=& \left\{\begin{array}{ll} p_S(\len(S))&\if S_{\len(S)}-S_{p_S(\len(S))}=1\\ p^{k+1}_S(\len(S))+1 & \if S_{\len(S)}-S_{p_S(\len(S))}=2\\ &(k=\min\{a \in \nat|a\geq 0 \land S_{p^a_S(\len(S))}-S_{p^{a+1}_S(\len(S))}=2\}) \end{array}\right.\\ p_S(x) &=& \max\{a \in \nat|1\leq a \lt \len(S) \land S_a \lt S_{\len(S)}\}\\ \forall k~p_S^{k+1}(x)&=&p_S(p_S^k(x))\\ p_S^0(x)&=&x\\ \Delta_S&=&S_{\len(S)}-S_{p(S)}-1 \end{eqnarray*} また、\(\len(S)\) は \(S \in OT\) の要素数である。


FGH

関数 \begin{eqnarray*} f \colon S \times \nat & \to & \nat \\ (S,n) & \mapsto & f_S[n] \end{eqnarray*} を下記で定義する。

  1. \(f_{()}(n)=n\)
  2. \(f_{S}(n)=f_{S[g(n)]}(g(n)) \if S\neq ()\)
  3. \(g(n)=n+1\)


巨大数

\(f^{10^{100}}_{(1,2,4,6,8,10,12,14,\cdots,10^{100})}(10^{100})\) を真 EB 数列数とする。読み方は「しんいーびーすーれつ」。


図解

Koteitan Eb.png

~インフォーマル・プラザ~
\(S\) における \(x\) の親 \(S_{p_S(x)}\) は、自分より小さく左にある要素の中で一番右にあるものである。

ヒドラで書くときには、親と2つ差があるノードは double edge で、親と1つ差があるノードは single edge で結ばれる。

\(S_x\) の直系先祖 \(S_{p^k_S(x)}\) は、自分自身か、直系先祖の親のことを指す。(つまり、自分 \(S_x\)、親 \(S_{p_S(x)}\)、親の親 \(S_{p_S(p_S(x))}\)、親の親の親 \(S_{p^3_S(x)}\) …すべては直系先祖である)

刈り子とその親の値の差 \(S_{\len(S)}-S_{p_S(\len(S))}\) が 1 のときは、刈り子の親を bad root とする。差が 2 のときは、刈り子 \(S_{\len(S)}\) の直系先祖 \(S_{p^k_S(\len(S))}\) の中で、一番右にある double edge のみで辿れる一番古い先祖の親の一つ右のノードを bad root とする。

bad part は bad root \(S_{r_S}\) と呼ばれるノードから刈り子の1つ左までの数列である。

左に残った数列を good part \(G_S\) とする。

\(S\) に対して、最右の要素 \(S_{\len(S)}\)(刈り子;cut child)を刈り、bad part 部分が n 回繰り返しコピーしたものが \(S[n]\) となる。

bad root と bad part が少し複雑なのは、下記のように、本来は下記のピンクの部分が bad part であって、かつ、刈り子だけでなくその親の部分だけ少しオーバーラップした形でコピーがなされるからである。このとき、重なる部分は刈り子の親の家族をデグレードさせたヒドラで接合されるような形となる。

Koteitan eb2.jpg

Advertisement