- 以下の項目と混同しないように注意してください:超階乗配列表記
階乗配列表記 (Factorial Array Notation) とは、Lawrence Hollomが考案した階乗を原型とする巨大数の表記法である。
定義[]
前段階[]
階乗配列表記の前段階としてネスト階乗表記 (Nested Factorial Notation) 、およびテトレーション上矢印表記 (Tetration Up Arrow Notation) を定義する。これは以下のように定義される。
\begin{eqnarray} n!^{k+1}&=&(n!^{k})!\\ n!^{1}&=&n!\\ n\uparrow\uparrow(k+1)&=&n^{(n \uparrow\uparrow k)}\\ n \uparrow\uparrow 1&=&n\\ n!^{k}&\approx&n\uparrow\uparrow(k+1) \end{eqnarray}
ここで重要なのは最後の近似式である。このように言えるのは、ネスト階乗表記がほぼテトレーション程度の増加量であるためである。
\begin{eqnarray} n!=n!^{1}&\approx&n^{n}=n\uparrow\uparrow2\\ (n!)!=n!^{2}&\approx&n^{n^{n}}=n\uparrow\uparrow3\\ ((n!)!)!=n!^{3}&\approx&n^{n^{n^{n}}}=n\uparrow\uparrow4\\ &\vdots& \end{eqnarray}
このため、完全上矢印表記 (Complete Up Arrow Notation) は以下のように定義できる。
\begin{eqnarray} n\uparrow^{(k+1)}(m+1)&=&n\uparrow^{k}(n\uparrow^{(k+1)}m)\\ n\uparrow^{k}1&=&1\\ n\uparrow^{1}k&=&n^{k} \end{eqnarray}
単項階乗配列[]
前項での議論のように、\(n!^{n}\approx n \uparrow\uparrow n=n \uparrow\uparrow\uparrow 2\)と近似できる。ここで\(n!^{n}=n![2]\)であるような、鍵括弧を使った新しい表記である単項階乗配列 (Single Entry Factorial Arrays) を以下のように定義する。
\begin{eqnarray} n![k+1]&=&n![k]^{n}\\ n![m]^{(k+1)}&=&(n![m]^{k})![m] \end{eqnarray}
前項までの議論より難しいものの、これは\(n![m]^{k} \approx n\uparrow^{(m+1)}(k+1)\)と近似できる。
定義[]
これらの前段階を踏まえ、階乗配列表記は以下のように定義できる。
\begin{eqnarray} n![\clubsuit]^{(k+1)}&=&(n![\clubsuit])![\clubsuit]^{k}\\ n![1]\clubsuit&=&(n!)!\clubsuit\\ n![\cdots[a+1,\clubsuit]&=&n![\cdots[a,\clubsuit]^{n}\\ n![\diamondsuit{\color{blue}[}\triangle,1,[\cdots[a+1,\clubsuit{\color{blue}]\clubsuit}]&=&n![\diamondsuit{\color{blue}[}\triangle{\color{red}[}\triangle,1,[\cdots[a,\clubsuit{\color{red}]},[\cdots[1,\clubsuit{\color{blue}]\clubsuit}]\\ n![\diamondsuit[1]\clubsuit]&=&n![\diamondsuit,n,\clubsuit]\\ n![\clubsuit,1]{\color{blue}\clubsuit}&=&n![\clubsuit]{\color{blue}\clubsuit} \end{eqnarray}
ここで各記号は以下の意味である
- \(\clubsuit\): 任意の配列の一部 (空を含む)
- \(\diamondsuit\): \(1\)と\([\)のみで構成された配列の一部 (\(]\)を含まない)
- \(\triangle\): \(1\)のみで構成された配列の一部
一部の簡単な例は以下のようになる。
\begin{eqnarray} n![1]^{1}&=&n![1]=n!\\ n![1]^{n}&=&n\underbrace{![1]![1]\cdots![1]![1]}_{n}=((\cdots((n\underbrace{!)!)!\cdots!)!)!}_{n}\\ n![2]^{1}&=&n![2]=n\underbrace{![1]![1]\cdots![1]![1]}_{n}=((\cdots((n\underbrace{!)!)!\cdots!)!)!}_{n}\\ n!\underbrace{[[\cdots[[}_{x}1\underbrace{]]\cdots]]}_{x}&=&n!\underbrace{[[\cdots[}_{x-1}n\underbrace{]\cdots]]}_{x-1}\\ n![k]&=&n![k-1]^{n}=n\underbrace{![k-1]![k-1]\cdots![k-1]![k-1]}_{n}\\ n![1,2]&=&n![[1,1],1]=n![[1]]=n![n]\\ n![1,k]&=&n![[1,k-1],1]=n![[1,k-1]] \end{eqnarray}
計算例[]
\begin{eqnarray} 3![1]^{1}&=&3![1]=3!=6\\ 3![1]^{2}&=&3![1]![1]=3![1]=(3!)!=6!=720\\ 3![1]^{3}&=&3![1]![1]![1]=3![1]![1]=(3!)![1]=((3!)!)!=720!\approx2.60122\times10^{1746}\\ 3![2]^{1}&=&3![2]=3![1]![1]![1]=720!\\ 3![2]^{2}&=&3![2]![2]=720![2]=720\underbrace{![1]![1]\cdots![1]![1]}_{720}\\ \end{eqnarray} \begin{eqnarray} 3![1,1]&=&3![1]=3!=6\\ 3![1,2]&=&3![[1,1],1]=3![[1]]=3![[3]]=3![2]![2]![2]=(3![1]![1]![1])![2]![2]=(3!^{3})![2]![2]\\ 3![1,3]&=&3![[1,2],1]=3![[1,2]]=3![[[1,1],1]]=3![[[1]]]=3![[3]]\\ &=&3![[2]]![[2]]![[2]]=(3![[1]]![[1]]![[1]])![[2]]![[2]]\\ &=&((3![3])![[1]]![[1]])![[2]]![[2]]=((3![2]![2]![2])![[1]]![[1]])![[2]]![[2]] \end{eqnarray} \begin{eqnarray} 3![1,1,2]&=&3![1,[1,1],1]=3![1,[1]]=3![1,3]\\ 3![1,1,3]&=&3![1,[1,2],1]=3![1,[[1,1],1],1]=3![1,[[1]]]=3![1,[3]]\\ &=&3![[1,[2]],[[1]]]=3![[[1,[1]],[[1]]],[[1]]]=3![[[1,3],[[1]]],[[1]]]\\ &=&3![[[[1,2],1],[[1]]],[[1]]]=3![[[[[1,1],1],1],[[1]]],[[1]]]\\ &=&3![[[[[1]]],[[1]]],[[1]]]=3![[[[3]],[[1]]],[[1]]] \end{eqnarray}
出典[]
- Lawrence Hollom. "Factorial Array Notation". Extremely big numbers.