関数の表記[]
計算方法で定義された巨大関数には「変数」「関数記号」「順序数」の3つで表記するものが多い。
そこで、それぞれに「N」「F」「O」という文字を当て、関数の表記を分類する。
- NFO型
例:超階乗配列表記、ドル関数、R関数
- FON型
例:FGH、SGH、ハーディー階層
- ON型
例:原始数列システム、バシク行列システム
- FNO型
例:ハイパーE表記
構造公理[]
文字列をA型、B型、C型の3種類に分け、括弧(今回は角括弧に統一)による順序数表記の構造を公理のような形で定義する。
※あくまでも「よく使われる構造の例」であり、これらの組み合わせで表せないものもある。
- 空構造(E)
"\([]\)"はA型である
- 代入構造(S)
数\(n\)に対して"\([n]\)"はA型である
- 係数構造(C)
A型文字列\(a\)と数\(n\)に対して"\(an\)"はB型である
- 結合構造(U)
A型文字列\(a_1\)と\(a_2\)に対して\(a_1a_2\)はA型である
A型文字列\(a\)とB型文字列\(b\)に対して"\(ab\)"はB型である
- ネスト構造(N)
A型文字列とB型文字列はC型文字列でもある
A型文字列\(a\)に対して"\([a]\)"はA型である
- 配列構造(A)
数はC型である
C型文字列\(c_1\)と\(c_2\)に対して"\(c_1,c_2\)"はC型である
C型文字列\(c\)に対して"\([c]\)"はA型で、配列と呼ぶ
- 有限レベル構造(fL)
数\(n\)とA型文字列\(a\)に対して、"\(a_n\)"はA型である
- 拡張レベル構造(eL)
数\(n\)とA型文字列\(a\)に対して、"\(a_n\)"はA型である
A型文字列\(a\)とA型文字列\({\alpha}\)について、"\(a_{\alpha}\)"はA型である
A型文字列\(a\)とB型文字列\(b\)について、"\(a_b\)"はA型である
例:ドル関数の角括弧表記→E+S+C+U+N
ヒドラゲームのヒドラ→E+U+N
超階乗配列表記→E+S+N+A
ドル関数の拡張角括弧表記→E+S+C+U+N+eL
バシク行列システム(数列表記)→U+A
配列システム[]
角括弧演算子[]
概要[]
上矢印表記の簡単な拡張
表記[]
- 自然数\(n\)に対して、\([n]\)は演算子である。
- 演算子\(A,B\)に対して、\(AB\)は演算子である。
例:\(3[5][2][2][2][1]4\)
計算法[]
- \(□\):0個以上の演算子
- \(■\):1個以上の演算子
- \(A,B,C\):自然数
(1)\(A[1]B=A^B\)
(2)\(A■[1]B=f^B(A)\) ただし、\(f(C)=A■C\)
(3)\(A□[C+1]B=A□[C][C]…([C]がB個)…[C]B\)
評価[]
\(n[n]n\approx f_{\omega^\omega}(n)\)
混合チェーン表記[]
概要[]
チェーン表記の簡単な拡張
表記[]
自然数\(n\)に対して\(→_n\)をチェーン演算子とする。
※2項演算子ではない
計算法[]
- \(\#\):0個以上のチェーンからなる式
- \(a,b,n\):自然数
(1)\(a→_1b=a^b\)
(2)\(\#(a+1)→_1(b+1)=\#(\#a→_1b+1)→_1b\)
(3)\(\#1→_nb=\#\)
(4)\(\#a→_n1=\#a\)
(5)\(\#a→_{n+1}(b+1)=\#a→_na→_{n+1}b\)
例[]
\(3→_33\)
\(=3→_23→_32\)
\(=3→_23→_23→_31\)
\(=3→_23→_23\)
\(=3→_23→_13→_22\)
\(=3→_23→_13→_13→_21\)
\(=3→_23→_13→_13\)
\(=3→_23→_1(3→_23→_12→_13)→_12\)
評価[]
\(n→_2n\approx f_{\omega^2}(n)\)
\(n→_2n→_12\approx f_{\omega^2+1}(n)\)
\(n→_2n→_1n\approx f_{\omega^2+{\omega}}(n)\)
\(n→_2n→_1n→_1n\approx f_{\omega^2+{\omega×2}}(n)\)
\(n→_2n→_21\approx f_{\omega^2×2}(n)\)
\(n→_3n\approx f_{\omega^3}(n)\)
\(n→_nn\approx f_{\omega^{\omega}}(n)\)
2-短成長階層[]
命名:hexirp[2]
- \(I_0(n)=0\)
- \(I_{\alpha+1}(n)=I_{\alpha}(n)+1\)
- \(I_{\alpha}(n)=I_{\alpha[n]}(2)\)
- \(I_{\alpha+{\beta}}(2)=I_{\alpha}(2)+I_{\beta}(2)\)
- \(I_{\alpha+{\beta}}(n)=I_{\alpha}(2)+I_{\beta}(n)\)
- \(I_{\omega}(n)=n\)
- \(I_{\omega×2}(n)=I_{\omega}(2)+I_{\omega}(n)=n+2\)
- \(I_{\omega×3}(n)=I_{\omega×2}(2)+I_{\omega}(n)=n+4\)
- \(I_{\omega×m}(n)=I_{\omega×(m-1)}(2)+I_{\omega}(n)=n+2(m-1)\)
- \(I_{\omega^2}(n)=I_{\omega×n}(2)=2+2(n-1)=2n\)
- \(I_{\omega^2×2}(n)=I_{\omega^2}(2)+I_{\omega^2}(n)=2n+4\)
- \(I_{\omega^2×3}(n)=I_{\omega^2×2}(2)+I_{\omega^2}(n)=2n+8\)
- \(I_{\omega^2×m}(n)=I_{\omega^2×(m-1)}(2)+I_{\omega^2}(n)=4(m-1)+2n\)
- \(I_{\omega^3}(n)=4n\)
- \(I_{\omega^m}(n)=2^{m-1}n\)
- \(I_{\omega^{\omega}}(n)=2^n\)
- \(I_{\omega^{\omega+1}}(n)=4n\)
- \(I_{\omega^{\omega+2}}(n)=8n\)
- \(I_{\omega^{\omega×2}}(n)=2^{n+2}\)
- \(I_{\omega^{\omega^{\omega^2}}}(n)=2^{2n}\)
- \(I_{\omega^{\omega^{\omega}}}(n)=2^{2^n}\)
- \(I_{\varepsilon_0}(n)=2↑↑n\)
- \(I_{\omega^{\varepsilon_0+1}}(n)=I_{\omega^{\varepsilon_0}×{\omega}}(n)=I_{\omega^{\varepsilon_0}}(2)×n=2^{2^2}n=16n\)
- \(I_{\omega^{\omega^{\varepsilon_0+1}}}(n)=2^{2^{2^2}n}=65536^n\)
- \(I_{\varepsilon_1}(n)\approx 2↑↑(n+2)\)
- \(I_{\varepsilon_2}(n)\approx 2↑↑(n+4)\)
- \(I_{\varepsilon_{\omega}}(n)\approx 2↑↑(2n+2)\)
- \(I_{\varepsilon_{\varepsilon_0}}(n)\approx 2↑↑(2↑↑n)\)
- \(I_{\varepsilon_{\varepsilon_{\varepsilon_0}}}(n)\approx 2↑↑(2↑↑(2↑↑n))\)
- \(I_{\zeta_0}(n)\approx 2↑↑↑n\)
- \(I_{\zeta_1}(n)\approx 2↑↑↑(n+2)\)
- \(I_{\zeta_{\zeta_0}}(n)\approx 2↑↑↑(2↑↑↑n)\)
- \(I_{\varphi(3,0)}(n)\approx 2↑↑↑↑n\)
- \(I_{\varphi({\omega},0)}(n)\approx g_{\varphi({\omega},0)}\)
- \(I_{\varphi({\omega},1)}(n)=I_{\varphi(n,{\varphi}({\omega},0)+1)}(2)\approx g_{\varphi(n,0)}(g_{\varphi(2,0)}(2))\)
- \(I_{\varphi({\omega},2)}(n)=I_{\varphi(n,{\varphi}({\omega},1)+1)}(2)\approx g_{\varphi(n,0)}(g_{\varphi(2,0)}(g_{\varphi(2,0)}(2)))\)
- \(I_{\varphi({\omega},{\omega})}(n)\approx g_{\varphi(3,0)}(n)\)
- \(I_{\varphi({\omega},{\omega}×2)}(n)\approx g_{\varphi(3,0)}(n+2)\)
- \(I_{\varphi({\omega},{\omega^2})}(n)\approx g_{\varphi(3,1)}(n)\)
- \(I_{\varphi({\omega},{\varphi(3,0)})}(n)\approx g_{\varphi(3,{\varphi(3,0)})}(n)\)
catching function[]
\(fH\)[]
- \(fH(0)={\varepsilon_0}\)
- \(fH(1)={\varepsilon_1}\)
- \(fH({\omega}={\psi_0({\omega})}\)
- \(fH({\omega+1})={\psi_0({\omega+1})}\)
- \(fH(fH(0))={\psi_0({\psi_0(0)})}\)
- \(fH({\Omega})={\psi_0({\Omega})}\)
\(fm\)[]
\(fg\)[]
\(gI\)[]
- \(gI(0)={\omega}\)
- \(gI(1)={\omega^{\omega}}\)
- \(gI(2)={\omega^{\omega^{\omega}}}\)
- \(gI({\omega})={\varepsilon_0}\)
- \(gI({\omega+1})={\varepsilon_{\varepsilon_0}}\)
- \(gI({\omega+2})={\varepsilon_{\varepsilon_{\varepsilon_0}}}\)
- \(gI({\omega×2})={\zeta_0}\)
- \(gI({\omega×2+1})={\zeta_{\zeta_0}}\)
- \(gI({\omega×3})={\varphi}(3,0)\)
- \(gI({\omega^2})={\varphi}({\omega},0)\)
- \(gI({\omega^2+1})={\varphi}({\varphi}({\omega},0),0)\)
- \(gI({\omega^2+{\omega}})={\varphi}(1,0,0)\)
カードゲーム[]
- プレーヤーは二人、カードは3種類(\(c_0,c_1,c_2\)とする)。
- カードの強さは\(c_0<c_1<c_2<c_0\)である(推移律は成り立たない)。
- カードごとに分けられた山札を用意し、プレイヤーは有限枚の手札をもってゲームを始める。
- 各ターンにおいてプレイヤーは自分の手札から1枚カードを選んで出し強いカードを出したプレイヤーを勝ちとする。
- 勝ったプレイヤーは自分が出したカードを山札に入れ、相手が出したカードを手札に加える。
- 勝敗がつかないときは、各プレイヤーは自分が出したカードを手札に戻し、
そのカードに負けるカードを山札からとって手札に加える。
このゲームをもとに、関数\(G(n)\)を以下のように定義する。
- 各プレーヤーはカードを1列に並べる。カードを出すときは先頭のカードを出し、加えるときは末尾に加える。
- 山札の枚数は無限とする。
- 手札がなくなったら負けとする。
- 両プレイヤーがn枚のカードをもってゲームを開始して、ゲームが終了したときのターン数の最大値を\(G(n)\)とする。
例(cは省略)
(0,2,0)(1,2,1)[0]→(2,0)(2,1,0)[1]→(0,2,1)(1,0,2,1)[2]→(1,2)(0,2,1,0)[3]→(1)(2,1,0,2)[4]→()(1,0,2,1)[5]
\(G(1)=1\)
(0,1)(0,0)→3696,a
(0,2)(0,0)→12895,a
(0,1)(0,2)→120,a
(0,0)(1,0)→108,a
(0,1)(1,0)→引き分け
(0,2)(1,0)→2,b
(0,1)(1,1)→111,a
(0,2)(1,1)→3,a
(0,0)(1,2)→3,b
(0,1)(1,2)→2,b
(0,2)(1,2)→4,b
\(G(2)=12895\)
#include<vector> using namespace std; int main() { vector<int> pa = {0,2}; vector<int> pb = {1,2}; bool end=false; int step=0; for (int a = 0; a < pa.size(); a++) { printf("%d", pa[a]); } printf("\n"); for (int b = 0; b < pb.size(); b++) { printf("%d", pb[b]); } printf("\n\n"); while (!(pa.empty()||pb.empty()||end)) { int ca = pa[0]; pa.erase(pa.begin()); int cb = pb[0]; pb.erase(pb.begin()); if (ca == cb) {//あいこ pa.push_back(ca); pb.push_back(cb); pa.push_back((ca + 2) % 3); pb.push_back((cb + 2) % 3); }else if ((ca==0&&cb==1)||(ca==1&&cb==2)||(ca==2&&cb==0)) {//bの勝ち pb.push_back(ca); }else { //aの勝ち pa.push_back(cb); } for (int a = 0; a < pa.size(); a++) { printf("%d", pa[a]); } printf("\n"); for (int b = 0; b < pb.size(); b++) { printf("%d", pb[b]); } printf("\n"); step++; printf("step=%d\n\n", step); if (pa.size() == pb.size()) { //引き分け end = true; for (int c = 0; c < pa.size(); c++) { if (pa[c] != pb[c]) { end = false; } } } } while (true); return 0; }
バリエーション[]
・プレイヤーを増やす
・カードの種類を増やす
ちなみにカードゲームとして面白いかは不明。「勝ったほうが次のターンで先手」「任意のタイミングで相手のカードを見てもよい」みたいなルールを追加したら割と遊べるかもしれない。
Pz関数とPmax関数[]
以下の演算記号と自然数\(a_1,a_2,・・・\)を使って表現できない最小の自然数を\(Pz(a_1,a_2,・・・)\)とする。
- 四則演算 +-×÷
- 冪乗 ^
- 階乗 !
- 根号 √
- 総和 Σ (Σn=\(\frac{n(n+1)}{2}\))
例:
\(4-{\sqrt9}=1\)
\({\sqrt9}!-4=2\)
\({\sqrt{\sqrt{\sqrt{9^4}}}}=3\)
\({\sqrt9}!-{\sqrt4}=4\)
\({\sqrt9}+{\sqrt4}=5\)
\({\sqrt4×9}=6\)
\(4+{\sqrt9}=7\)
\({\sqrt4}^{\sqrt9}=8\)
\({\sqrt{\sqrt{9^4}}}=9\)
\(4+{\sqrt9}!=10\)
\({\sqrt4}+9=11\)
\(4×{\sqrt9}=12\)
\(4+9=13\)
\(??=14\)
よって、\(Pz(4,9)≥14\)
\(1=1^{16+81}\) | \(2=1^{81}×{\sqrt{\sqrt{16}}}\) | \(3=1^{16}×{\sqrt{\sqrt{81}}}\) | \(4=1^{81}×{\sqrt{16}}\) | \(5=1^{81}+{\sqrt{16}}\) | \(6=1×{\sqrt{\sqrt{16×81}}}\) | \(7=1+{\sqrt{\sqrt{16×81}}}\) | \(8={\sqrt{81}-1^{16}}\) | \(9=1^{16}×{\sqrt{81}}\) | \(10=1^16+{\sqrt{81}}\) |
\(11={\sqrt{16×{\sqrt{81}}}}-1\) | \(12=1×{\sqrt{16×81}}\) | \(13=1+{\sqrt{16×81}}\) | \(14=16+1-{\sqrt{\sqrt{81}}}\) | \(15=16-1^{81}\) | \(16=16×1^{81}\) | \(17=16+1^{81}\) | \(18=16+{\sqrt{\sqrt{81}}}-1\) | \(19=16+1×{\sqrt{\sqrt{81}}}\) | \(20=16+{\sqrt{\sqrt{81}}}+1\) |
\(21={\sqrt{16}}!-{\sqrt{\sqrt{81}}}×1\) | \(22={\sqrt{16}}!-{\sqrt{\sqrt{81}}}+1\) | \(23={\sqrt{16}}!-1^{81}\) | \(24={\sqrt{16}}!×1^{81}\) | \(25={\sqrt{16}}!+1^{81}\) | \(26={\sqrt{16}}!+{\sqrt{\sqrt{81}}}-1\) | \(27={\sqrt{16}}!+{\sqrt{\sqrt{81}}}×1\) | \(28={\sqrt{16}}!+{\sqrt{\sqrt{81}}}+1\) | \(29={\sqrt{16}}!+{\sqrt{\sqrt{81}}}!-1\) | \(30={\sqrt{16}}!+{\sqrt{\sqrt{81}}}!×1\) |
\(31={\sqrt{16}}!+{\sqrt{\sqrt{81}}}!+1\) | \(32={\sqrt{16}}!+{\sqrt{81}}-1\) | \(33={\sqrt{16}}!+{\sqrt{81}}×1\) | \(34={\sqrt{16}}!+{\sqrt{81}}+1\) | \(35={\sqrt{16×81}}-1\) | \(36={\sqrt{16×81}}×1\) | \(37={\sqrt{16×81}}+1\) | \(38={\Sigma{\sqrt{81}}}-{\Sigma{\Sigma{\sqrt{\sqrt{16}}}}}-1\) | \(39={\Sigma{\sqrt{81}}}-{\Sigma{\Sigma{\sqrt{\sqrt{16}}}}}×1\) | \(40={\Sigma{\sqrt{81}}}-{\sqrt{16}}-1\) |
\(41={\Sigma{\sqrt{81}}}-{\sqrt{16}}×1\) | \(42={\Sigma{\sqrt{81}}}-{\sqrt{\sqrt{16}}}-1\) | \(43={\Sigma{\sqrt{81}}}-{\sqrt{\sqrt{16}}}×1\) | \(44={\Sigma{\sqrt{81}}}-1^{16}\) | \(45={\Sigma{\sqrt{81}}}×1^{16}\) | \(46={\Sigma{\sqrt{81}}}+1^{16}\) | \(47={\Sigma{\sqrt{81}}}+{\sqrt{\sqrt{16}}}×1\) | \(48={\Sigma{\sqrt{81}}}+{\sqrt{16}}-1\) | \(49={\Sigma{\sqrt{81}}}+{\sqrt{16}}×1\) | \(50={\Sigma{\sqrt{81}}}+{\sqrt{16}}+1\) |
\(51={\Sigma{\sqrt{81}}}+{\Sigma{\Sigma{\sqrt{\sqrt{16}}}}}×1\) | \(52={\Sigma{\sqrt{81}}}+{\Sigma{\Sigma{\sqrt{\sqrt{16}}}}}+1\) | \(53={\Sigma{\Sigma{\sqrt{16}}}}-{\sqrt{\sqrt{81}}}+1\) | \(54={\Sigma{\Sigma{\sqrt{16}}}}-1^{81}\) | \(55={\Sigma{\Sigma{\sqrt{16}}}}×1^{81}\) | \(56={\Sigma{\Sigma{\sqrt{16}}}}+1^{81}\) | \(57={\Sigma{\Sigma{\sqrt{16}}}}+{\sqrt{\sqrt{81}}}-1\) | \(58={\Sigma{\Sigma{\sqrt{16}}}}+{\sqrt{\sqrt{81}}}×1\) | \(59={\Sigma{\Sigma{\sqrt{16}}}}+{\sqrt{\sqrt{81}}}+1\) | \(60={\Sigma{\Sigma{\sqrt{16}}}}+{\sqrt{\sqrt{81}}}!-1\) |
\(61={\Sigma{\Sigma{\sqrt{16}}}}+{\sqrt{\sqrt{81}}}!×1\) | \(62={\Sigma{\Sigma{\sqrt{16}}}}+{\sqrt{\sqrt{81}}}!+1\) | \(63={\sqrt{16}}^{\sqrt{\sqrt{81}}}-1\) | \(64={\sqrt{16}}^{\sqrt{\sqrt{81}}}×1\) | \(65={\sqrt{16}}^{\sqrt{\sqrt{81}}}+1\) | \(66=81-16+1\) | \(67={\Sigma({\sqrt{\sqrt{16}}}+{\sqrt{81}})}+1\) | \(68={\Sigma{\sqrt{81}}}+{\sqrt{16}}!-1\) | \(69={\Sigma{\sqrt{81}}}+{\sqrt{16}}!×1\) | \(70={\Sigma{\sqrt{81}}}+{\sqrt{16}}!+1\) |
\(71={\sqrt{16}}!×{\sqrt{\sqrt{81}}}-1\) | \(72={\sqrt{16}}!×{\sqrt{\sqrt{81}}}×1\) | \(73={\sqrt{16}}!×{\sqrt{\sqrt{81}}}+1\) | \(74=81-{\Sigma{\Sigma{{\sqrt{\sqrt{16}}}}}}-1\) | \(75=81-{\Sigma{\Sigma{{\sqrt{\sqrt{16}}}}}}×\) | \(76=81-{\Sigma{\Sigma{{\sqrt{\sqrt{16}}}}}}+1\) | \(77=81-{\sqrt{16}}-1\) | \(78=81-{\sqrt{16}}×1\) | \(79=81-{\sqrt{\sqrt{16}}}×1\) | \(80=81-1^{16}\) |
\(81=81×1^{16}\) | \(82=81+1^{16}\) | \(83=81+{\sqrt{\sqrt{16}}}×1\) | \(84=81+{\sqrt{16}}-1\) | \(85=81+{\sqrt{16}}×1\) | \(86=81+{\sqrt{16}}+1\) | \(87=81+{\Sigma{\Sigma{\sqrt{\sqrt{16}}}}}×1\) | \(88=81+{\Sigma{\Sigma{\sqrt{\sqrt{16}}}}}+1\) | \(89={\Sigma{\sqrt{81}}}×{\sqrt{\sqrt{16}}}-1\) | \(90={\Sigma{\sqrt{81}}}×{\sqrt{\sqrt{16}}}×1\) |
\(91={\Sigma{\sqrt{81}}}×{\sqrt{\sqrt{16}}}+1\) | \(92={\Sigma(16-{\sqrt{\sqrt{81}}})}+1\) | \(\) | \(\) | \(\) | \(\) | \(\) | \(\) | \(\) | \(\) |
よって、\(Pz(1,16,81)≥93\)
n変数のPz関数の最大値を\(Pmax(n)\)とする。
例:\(Pmax(1)=2 (Pz(1)=2)\)
\(Pmax(2)≥14 (Pz(4,9)≥14)\)
\(Pmax(3)≥93 (Pz(1,16,81)≥93)\)
\(Pmax(m)\)と\(Pmax(n)\)で使う数と\(Pmax(m)\)を使えば\(1~Pmax(m)×Pmax(n)-1\)
までの数を作れるので、\(Pmax(m+n+1)≥Pmax(m)×Pmax(n)\)が成り立つ。
例:\(m=n=2\)とし、\(Pmax(2)=Pz(4,9)=14\)とする。
14-13×1=1 | 14-12×1=2 | 14-11×1=3 | … | 14-1×1=13 |
14×1×1=14 | 14×1+1=15 | 14×1+2=16 | … | 14×1+13=27 |
14×2×1=28 | 14×2+1=29 | 14×2+2=30 | … | 14×2+13=42 |
14×13×1=182 | 14×13+1=183 | 14×13+2=184 | … | 14×13+13=195 |
よって、\(Pmax(5)≥196\)
また、\(Pmax(3n-1)≥14^n\)
\(Pmax(3)=93\)とすると、\(Pmax(4n-1)≥93^n\)
さらに、\(Pmax(n)\)の組を2つずつ使うことにより\({\Sigma}1~({\Sigma}Pmax(n))-1\)までの数を作ることができる。よって\(Pmax(2n)≥{\Sigma}Pmax(n)\)が成り立つ。