\(\newcommand{\expand}{ {\rm{ expand} } }\) \(\newcommand{\if}{ {\rm{if} }~}\) \(\newcommand{\rminit}{ {\rm{ init} } }\) \(\newcommand{\nat}{ {\mathbb N} }\) \(\newcommand{\otherwise}{ {\rm{ otherwise} } }\)
大数列数 (Large Sequence Number)[1]は、BashicuHyudora が2015年に大一次数列数 の名前で定義を公開し、後に名前を変更した巨大数である。
概要[]
大数列数は、原始数列数 と同様、有限個の自然数からなる大数列と、1つの自然数のブラケットをある規則に基づいて変形していくことで、最終的にブラケットに巨大な数が残る、といった方法で計算される。
定義[]
BashicuHyudora 本人による定義は独自の言語を用いて記述され、たびたび変遷されている。オリジナルの定義は#成立時代を参照。大数列数の現在の最新の定義は、BASIC言語を改変した疑似プログラミング言語で 「BASIC言語による巨大数のまとめ」のページにてメンテナンスされている。
ちなみに、この疑似プログラミング言語の yabasic からの差異は、
- B の配列数が ∞ で初期化されている
- 改行のない if 文に末尾の endif がない
- or が | と記述されている
である。
後にkoteitanが数式的翻訳とプログラミングによる実装を与え、BashicuHyudora 本人の意図と整合的であることを BashicuHyudora とのコミュニケーションによって確認した。それぞれの詳細は#記法と#構成方法と#プログラムを参照。
記法[]
koteitan の数式的翻訳における見た感じは \begin{equation} (0,2,4,4)[10] \end{equation} のような形をしている。この場合、10 がブラケット、その左の \((0,2,4,4)\) が数列である。
構成方法[]
原始数列数と同様、数列 \( S[n] \) に関数 \(\expand(\cdot)\) を適用して、異なる大数列 \(S'[n']=\expand(S[n])\) を得る作業を、大数列部分が空列になるまで繰り返すという展開方式がとられている[2]。
以下が koteitan による数式的翻訳である: \begin{eqnarray} {\rm{大数列数}~}L&=&(\expand \circ \rminit)^{10}(n)\\ {\rm{初期化関数}~}\rminit(n)&=&(0,n)[n]\\ {\rm{展開関数}~}\expand(S[n])&=&\left\{\begin{array}{ll} n&\if S=()\\ S'[f(n)]&\if S\neq() \end{array}\right.\\ {\rm{活性化関数}~}f(n)&=&n^2\\ {\rm{大数列}~}S&=&(S_1,S_2,...,S_X)\\ {\rm{展開後}~}S'&=&\left\{\begin{array}{ll} (S_1,S_2,...,S_{X-1})&\if S_X=0\\ (S'_1,S'_2,...,S'_{X-1+rf(n)})&\otherwise \end{array}\right.\\ {\rm{展開後要素}~}S'_x&=&S_{x-r}+\Delta\\ {\rm{上昇量}~}\Delta&=&S_X-S_{X-r}-1\\ {\rm{悪い部分の長さ}~}r&=&\min\{x|x \gt 0 \land S_{X-x}\lt S_X\} \end{eqnarray}
下記に活性化関数を \(f(n)=2\) に固定した \((0,3)\) からの連続展開例を示す。
(0,3) (0,2,4) (0,2,3,4) (0,2,3,3,3) (0,2,3,3,2,3,3)
評価[]
BashicuHyudora は、大数列数について、下記のような自己評価を書いている。 \begin{eqnarray} L(x)&=&f_{\phi(\omega,0)}(x) \end{eqnarray}
プログラム[]
2022年5月11日、koteitan は、大数列数のプログラムを yabasic に移植したプログラムを jdoodle に投稿した。
このプログラムは、Stdin Input に"0,2,4,4[10]" のような表記にて大数列とブラケットを入力することで、(0,2,4,4)[10] の活性化関数 \(f(n)=n\) による連続展開を計算することができる。
歴史[]
koteitan は Google スプレットシートに大数列数の歴史をまとめた[3]。
先成立 2ch 時代[]
- 2014年8月14日、原始数列数 が2ch 巨大数探索スレッドに投稿される。
- 2014年8月14日、ペア数列数 の初版が2ch 巨大数探索スレッドに投稿される。
- 2014年8月22日、バシク行列数 の初版 がBASIC 言語による巨大数のまとめページに投稿される。
- 2015年5月24日、巨大数探索スレッド10 の 564, 619 によって大数列に似た展開例の草稿が投稿される。
- この 564 は自分ではないと BashicuHyudora は言及している。BashicuHyudora はそこから後述の大一次数列数の定義の着想を得たようである[4]。
- 後にこの 564, 619 自分であると KurohaKafka が証言した[5]。KurohaKafka は BashicuHyudora のアイデアを読み取る技術に長けていることを示す数々の功績を持つが、奇しくも BashicuHyudora もまた KurhaKafka のアイデアを読み取る能力に長けていたということであろう。
成立時代[]
- 2015年8月21日、BashicuHyudora が 大一次数列数 の名で大数列数の原型の定義を投稿する。それは次のようなプログラムであった。
A=9:dim B(infinity) for C=0 to 9 B(1)=A for D=1 to 0 step -1 A=A*A for E=0 to D if B(D-E)<B(D) or B(D)=0 then F=E:E=D next G=B(D)-B(D-F)-1 for H=1 to A*F B(D)=B(D-F)+G:D=D+1 next next next print A
- 2016年1月14日、BashicuHyudora が大一次数列数に Large primitive sequence number の英語名を付ける。
- 2017年9月7日、BashicuHyudora が B の最小インデックスを 0 から 1 に変える。
- 2018年5月26日、BashicuHyudora が B の最小インデックスを 0 に戻す。
- 2019年2月23日、BashicuHyudora が名前を 大数列数(Large Sequence Number) に変える。
異種派生時代[]
この時代には、アルゴリズムが変更され、大数列数とはもはや異種と言えるものになっている。
大数列2紀[]
- 2019年11月9日、大数列数の名前がN 階差数列数 (N Difference Sequence Number)に変更される。
- 2020年11月6日、大数列数の定義が、初期値 (0)(1)(2)...(n)[n] や別の展開関数を持つものに大きく変更される。
- 2020年12月29日、名前が大数列数に戻される。
階差数列紀[]
- 2021年1月4日、アルゴリズムが大きく変更される。
- 2021年1月22日、名前が 階差数列数(Difference Sequence Number) に変更される。
- 2021年1月30日、定義が少し修正される。
- 2022年4月9日、階差数列数がBMSの拡張と三角行列のページに移動される。
復活紀[]
- 2022年5月11日、2019年2月23日版の大数列数がほぼそのままの形でBASIC言語による巨大数のまとめのページにて復活する。
- その際、論理演算子 or が | に書き直されている。
類似の巨大数[]
これと構成法が似ている巨大数としては下記が挙げられる。
亜原始数列[]
亜原始数列はユーザー:ゆきとが2018年5月に定義した巨大数である。
差異[]
亜原始数列は大数列数に下記の変更を施したものに等しくなる。
- 活性化関数 \(f(n)\) を \(f(n)=n+1\) に変更する。
- bad part の繰り返し回数は、活性化関数をかける前の n とする。
- 関数反復合成を 2000 回に変える
- 初期値を 1 にする
The py_1 Document による LPrSS[]
- 2019年8月2日、Alex Pendris 氏に作成されDiscord サーバー Googology Server! の参加者らにて編集されている Python による巨大数の code golf プロジェクトである "The py_1 Document"[6] に、153 バイトのプログラムのうち最大の数が計算できるプログラムとして、匿名ユーザーによって大数列数に似たアルゴリズムが投稿される。
- CatIsFluffy は、このアルゴリズムを同サーバーの bot に組み込み、"LPrSS (large primitive sequence system)" という名前で運用している。
学術的不正疑惑[]
CatIsFluffy がbot のプログラムに付けたこの名前は、2016年1月14日に BashicuHyudora が大数列数の前身である大一次数列数の英語名として付けた Large primitive sequence system と同じである。
オリジナルの Large primitive sequence system のことを CatIsFluffy が知っていたかどうかは判明していないが、少なくともそのプログラムが自作のものであるとCatIsFluffyは明言しており、一方で Googology Server! の Eryx Jayakari はそれが CatIsFluffy 個人のものではなく Googology Server! の共同制作のものであると明言している[7]。
ほとんど同じ動きをするプログラムが偶然同じ名前で扱われる確率は極端に低いとは言えありえないことではないが、もし万が一オリジナルの Large primitive sequence system を知っている上で匿名ユーザーがそれとほぼ同一なものを投稿したり CatIsFluffy が同じ名前をつけ自作宣言をし Eryx Jayakari がそれを Googology Server! 発と主張している場合、適切な引用を行わずに既存の表記を盗用したことに他ならないため、匿名ユーザー、CatIsFluffy、Eryx Jayakari らの一部または全員による悪質な学術的不正となる[8]。
差異[]
The py_1 Document による LPrSS は、大数列数に下記の変更を施したものに等しい。
- 関数反復合成を1回に変える
参考文献[]
- ↑ BashicuHyudora, "BASIC言語による巨大数のまとめ 大数列数", 巨大数研究 Wiki ユーザーブログ, 2015--2022.
- ↑ koteitan, twitter, 2022.5.18.
- ↑ koteitan, "History of Large Primitive Sequence Number", Google Sheets, 2022.5.11
- ↑ Bashicu, twitter, 2022.5.9.(ただしツイートを表示できるアカウントが制限されている)
- ↑ KurohaKafka, twitter, 2022.5.17.
- ↑ Alex Pendris, et al., "The py_1 Document", Google Document, 2019/8/2--2021/10/2.
- ↑ koteitan, twitter, 2022/05/12.
- ↑ 文部科学省, 2 研究活動の不正行為等の定義.
関連項目[]
Aeton: おこじょ数・N成長階層
mrna: 段階配列表記・降下段階配列表記・多変数段階配列表記・横ネスト段階配列表記
Kanrokoti: くまくまψ関数・亜原始ψ関数・ハイパー原始ψ関数・TSS-ψ関数
クロちゃん: クロちゃん数(第一・第ニ・第三・第四)
じぇいそん: ふにゃふにゃぜぇたかんすう・\(\zeta\)関数
たろう: 多変数アッカーマン関数・2重リストアッカーマン関数・多重リストアッカーマン関数
Nayuta Ito: フラン数(第一形態・第二形態・第四形態改三)・N原始・東方巨大数4の規則の境界を突いた巨大数
バシク: 原始数列数・大数列数・ペア数列数・バシク行列システム
長谷川由紀路: 紅魔館のメイドナンバー・恋符マスタースパーク数・みくみく順序数
108Hassium: E2:B-01-Hs・L-階差数列類・E3:B-02-Hs
公太郎: 弱亜ペア数列・肉ヒドラ数列・弱ハイパーペア数列
p進大好きbot: 超限急増加関数表記・拡張ブーフホルツのψ関数に伴う順序数表記・四関数・三関数・巨大数庭園数
ふぃっしゅ: ふぃっしゅ数(バージョン1・バージョン2・バージョン3・バージョン4・バージョン5・バージョン6・バージョン7)・ マシモ関数・マシモスケール・TR関数(I0関数)
ゆきと: 亜原始数列・ハイパー原始数列・Y数列
本: 巨大数論・寿司虚空編
大会: 東方巨大数・幻想巨大数・即席巨大数・式神巨大数・お料理巨大数
掲示板: 巨大数探索スレッド
外部リンク: 日本語の巨大数関連サイト