BEAF:修订间差异
更多操作
无编辑摘要 |
小无编辑摘要 |
||
(未显示1个用户的2个中间版本) | |||
第1行: | 第1行: | ||
<div style="word-wrap: break-word;text-wrap: pretty;color: var(--color-subtle);font-style: italic;width:Fit-content;padding:1rem 1rem 2rem 1rem;border-left:solid #00000030 5px;background-color:var(--color-surface-2)">曾经最为重要的大数记号早早地止步于 <math>\varepsilon_{0}</math>,并最终湮没于历史的长河之中,这不禁令人扼腕叹息。<ref>曹知秋. 大数理论 | <div style="word-wrap: break-word;text-wrap: pretty;color: var(--color-subtle);font-style: italic;width:Fit-content;padding:1rem 1rem 2rem 1rem;border-left:solid #00000030 5px;background-color:var(--color-surface-2)">曾经最为重要的大数记号早早地止步于 <math>\varepsilon_{0}</math>,并最终湮没于历史的长河之中,这不禁令人扼腕叹息。<ref>曹知秋 (2025). 大数理论. ''(EB/OL)'', Vol.1, pp.126-127. https://github.com/ZhiqiuCao/Googology</ref><br /><span style='float:right'><del>------</del> 曹知秋</span></div> | ||
'''Bowers' Exploding Array Function(BEAF,鲍尔斯爆炸数组函数)'''是由乔纳森·鲍尔斯(Jonathan Bowers)发明的一种表示大数的符号系统。BEAF 类似于[[链式箭头记号|链式箭头符号]] | '''Bowers' Exploding Array Function(BEAF,鲍尔斯爆炸数组函数)'''是由乔纳森·鲍尔斯(Jonathan Bowers)发明的一种表示大数的符号系统。BEAF 类似于[[链式箭头记号|链式箭头符号]],都是一种历史记号,但强度远超后者。 | ||
BEAF | BEAF 是一个在大数历史上非常重要的数阵记号,它是[[线性数阵|单行线性数阵]](Bowers' Array Notation)和扩展数阵记号(Extended Array Notation)的超集,两者均由Bowers发明。然而,对于四维数阵以上的符号系统,目前尚无统一认可的定义。因此,严格来说,四维数阵以上的 BEAF 是未明确定义的,而四维数阵及以下的 BEAF 则是定义明确的。 | ||
== 定义 == | == 定义 == | ||
第47行: | 第47行: | ||
== 线性数阵 == | == 线性数阵 == | ||
BEAF 中的单行线性数阵是几乎所有数阵记号的基础。上文已经介绍过其原版规则,这里不再赘述。 | |||
这里介绍一种改进的线性数阵。它将经典的线性数阵改成了容易分析增长率的一元函数,将每一项的默认值改成了 0,且删除了对增长率提升没有帮助的操作。 | |||
一个合法的线性数阵表达式形如<math>F(x,a_1,a_2,\cdots,a_n)</math>,其中,<math>x,n,a_i</math>均为非负整数。 | 一个合法的线性数阵表达式形如<math>F(x,a_1,a_2,\cdots,a_n)</math>,其中,<math>x,n,a_i</math>均为非负整数。 | ||
我们用"#"表示任意序列,"Z" | 我们用"#"表示任意序列,"Z"表示由若干个 0 组成的序列。 | ||
该线性数阵的展开规则如下: | 该线性数阵的展开规则如下: | ||
# | # (基础规则)只有一项时,有 <math>F(x)=x+1</math>; | ||
# | # (后继规则)若第二项不为 0,有 <math>F(x,a+1,\#)=f^x(x)</math>,其中 <math>f(x)=F(x,a,\#)</math>。例如:<math>F(3,1,4)=F(F(F(3,0,4),0,4),0,4)</math>; | ||
# | # (删尾规则)若末项为 0,有 <math>F(\#,0)=F(\#)</math>,例如:<math>F(2,1,0)=F(2,1)</math>。 | ||
# | # (借位规则)否则,第二项为 0 且存在不为 0 的项。此时有 <math>F(x,Z,0,a+1,\#)=F(x,Z,x,a,\#)</math>。例如:<math>F(2,0,2,5)=F(2,2,1,5)</math>。 | ||
下面用[[增长层级#快速增长层级|快速增长层级]]对改进的线性数阵进行增长率分析: | 下面用[[增长层级#快速增长层级|快速增长层级]]对改进的线性数阵进行增长率分析: | ||
第96行: | 第98行: | ||
一般来说,单独的线性数阵的极限增长率为<math>\omega^\omega</math>,但其强度会随"后继规则"的变化而变化。 | 一般来说,单独的线性数阵的极限增长率为<math>\omega^\omega</math>,但其强度会随"后继规则"的变化而变化。 | ||
例如,若把第二条规则改为<math>F(x,a+1,\#)=F(x+1,a,\#)</math>,则上述分析应该在[[增长层级#哈代层级|哈代层级]]下进行,故极限函数的增长率相当于<math>H_{\omega^\omega}(x)\sim f_\omega(x)</math>。 | 例如,若把第二条规则改为 <math>F(x,a+1,\#)=F(x+1,a,\#)</math>,则上述分析应该在[[增长层级#哈代层级|哈代层级]]下进行,故极限函数的增长率相当于<math>H_{\omega^\omega}(x)\sim f_\omega(x)</math>。 | ||
对于上文中的记号,通过如下方法可以快速得到增长率: | 对于上文中的记号,通过如下方法可以快速得到增长率: | ||
# 取出一个表达式<math>F(x,a_0,a_1,\cdots,a_n)</math>; | # 取出一个表达式 <math>F(x,a_0,a_1,\cdots,a_n)</math>; | ||
# 取出<math>a_0,a_1,\cdots,a_n</math>的部分并反转,得到<math>a_n,\cdots,a_1,a_0</math>; | # 取出 <math>a_0,a_1,\cdots,a_n</math> 的部分并反转,得到 <math>a_n,\cdots,a_1,a_0</math>; | ||
# <math>F(x,a_0,a_1,\cdots,a_n)</math>的增长率即为<math>\omega^n\times{a_n}+\cdots+\omega^1\times{a_1}+\omega^0\times{a_0}</math>。 | # <math>F(x,a_0,a_1,\cdots,a_n)</math> 的增长率即为 <math>\omega^n\times{a_n}+\cdots+\omega^1\times{a_1}+\omega^0\times{a_0}</math>。 | ||
举个例子:<math>F(x,{\color{red}0},{\color{green}1},{\color{blue}1})</math>的增长率即为<math>\omega^2\times{\color{blue}1}+\omega^1\times{\color{green}1}+\omega^0\times{\color{red}0}</math>。 | 举个例子:<math>F(x,{\color{red}0},{\color{green}1},{\color{blue}1})</math> 的增长率即为 <math>\omega^2\times{\color{blue}1}+\omega^1\times{\color{green}1}+\omega^0\times{\color{red}0}</math>。 | ||
由于以上原因,(单行)线性数阵也被称为 '''<math>\omega</math> 进制数阵''',因为 <math>\omega^n\times{a_n}+\cdots+\omega^1\times{a_1}+\omega^0\times{a_0}</math> 类似于一个“<math>\omega</math> 进制数”。 | |||
另外,表达式<math>\omega^n\times{a_n}+\cdots+\omega^1\times{a_1}+\omega^0\times{a_0}</math>对于每个<math>a_i(i=0,1,\cdots,n)</math>都是“线性”的,这也是线性数阵中“线性”一词的来源。 | 另外,表达式 <math>\omega^n\times{a_n}+\cdots+\omega^1\times{a_1}+\omega^0\times{a_0}</math> 对于每个 <math>a_i(i=0,1,\cdots,n)</math> 都是“线性”的,这也是线性数阵中“线性”一词的来源。 | ||
== 拓展 == | == 拓展 == | ||
由于 BEAF 的知名度,其衍生出了十分多样的数阵记号。但大多数增长率超过 <math>\varepsilon_{0}</math> 的拓展记号是不良定义的。 | |||
<math> | === 带 & 的 BEAF === | ||
定义 <math>\&</math> 符号如下,它生成扩展数阵中的项和分隔符: | |||
<math>b\&^{k+1}a=b\&^ka(k)(b-1)\&^{k+1}a</math> | * <math>1\&^na=a</math> | ||
* <math>b\&a=a,(b-1)\&a</math> | |||
* <math>b\&^{k+1}a=b\&^ka(k)(b-1)\&^{k+1}a</math> | |||
注:在大部分版本中,<math>\&</math>的指标写在左上侧。此处写在右上侧是为了避免与<math>b^k</math>混淆。 | 注:在大部分版本中,<math>\&</math> 的指标写在左上侧。此处写在右上侧是为了避免与 <math>b^k</math> 混淆。 | ||
注:有的地方认为形如<math>b\&a</math> | 注:有的地方认为形如 <math>b\&a</math> 的表达式直接表达了一个(扩展)数阵 <math>\{a,a,\cdots,a\}</math>,实际上这是错误的。 | ||
对于扩展数阵<math>\{a_{01},a_{02},\cdots,a_{0m_0}(x_1)a_{11},\cdots,a_{1m_1}(x_2)\cdots(x_3)\cdots(x_n)a_{n1},a_{n2},\cdots,a_{nm_n}\}</math>,其展开规则如下: | 对于扩展数阵 <math>\{a_{01},a_{02},\cdots,a_{0m_0}(x_1)a_{11},\cdots,a_{1m_1}(x_2)\cdots(x_3)\cdots(x_n)a_{n1},a_{n2},\cdots,a_{nm_n}\}</math>,其展开规则如下: | ||
# 如果扩展数阵只有<math>a_{01},a_{02}</math>两项,扩展数阵的值为<math>b^p</math>。 | # 如果扩展数阵只有 <math>a_{01},a_{02}</math> 两项,扩展数阵的值为 <math>b^p</math>。 | ||
# | # 如果指数为 1,扩展数阵的值为 <math>b</math>。 | ||
# 如果某个<math>a_{km_k}=1</math>,扩展数阵的值相当于删掉<math>a_{km_k}</math>后得到的扩展数阵的值。 | # 如果某个 <math>a_{km_k}=1</math>,扩展数阵的值相当于删掉 <math>a_{km_k}</math> 后得到的扩展数阵的值。 | ||
# 如果某个<math>m_k=0</math>,而且<math>k=n</math>或<math>x_k<x_{k+1}</math>,那么扩展数阵的值相当于删掉<math>(x_k)</math>后得到的扩展数阵的值。 | # 如果某个 <math>m_k=0</math>,而且 <math>k=n</math> 或 <math>x_k<x_{k+1}</math>,那么扩展数阵的值相当于删掉 <math>(x_k)</math> 后得到的扩展数阵的值。 | ||
# 如果扩展数阵中没有分隔符,按数阵记号的规则展开。 | # 如果扩展数阵中没有分隔符,按数阵记号的规则展开。 | ||
# 如果以上规则均不适用:此时扩展数阵形如<math>\{a,b(x_1)(x_2)(x_3)\cdots(x_n)b_1,b_2,\cdots,b_t\#\}</math>,满足<math>x_1\geq{x_2}\geq\cdots\geq{x_n}</math>,<math>b_1=b_2=\cdots=b_{t-1}=1</math>。 | # 如果以上规则均不适用:此时扩展数阵形如 <math>\{a,b(x_1)(x_2)(x_3)\cdots(x_n)b_1,b_2,\cdots,b_t\#\}</math>,满足 <math>x_1\geq{x_2}\geq\cdots\geq{x_n}</math>,<math>b_1=b_2=\cdots=b_{t-1}=1</math>。 | ||
## 如果<math>t=1</math>,其展开为<math>\{b\&^{x_1}a(x_1)b\&^{x_2}a(x_2)b\&^{x_3}a(x_3)\cdots{b}\&^{x_n}a(x_n)b_1-1\#\}</math>。 | ## 如果 <math>t=1</math>,其展开为 <math>\{b\&^{x_1}a(x_1)b\&^{x_2}a(x_2)b\&^{x_3}a(x_3)\cdots{b}\&^{x_n}a(x_n)b_1-1\#\}</math>。 | ||
## 如果<math>t>1</math>,其展开为<math>\{b\&^{x_1}a(x_1)b\&^{x_2}a(x_2)b\&^{x_3}a(x_3)\cdots{b}\&^{x_n}a(x_n)a,a,\cdots,a,\{a,b-1(x_1)(x_2)(x_3)\cdots(x_n)b_1,b_2,\cdots,b_t\#\},b_t-1\#\}</math>。 | ## 如果 <math>t>1</math>,其展开为 <math>\{b\&^{x_1}a(x_1)b\&^{x_2}a(x_2)b\&^{x_3}a(x_3)\cdots{b}\&^{x_n}a(x_n)a,a,\cdots,a,\{a,b-1(x_1)(x_2)(x_3)\cdots(x_n)b_1,b_2,\cdots,b_t\#\},b_t-1\#\}</math>。 | ||
类似于数阵记号,“乘客”的定义可以如下理解: | 类似于数阵记号,“乘客”的定义可以如下理解: | ||
分隔符<math>(k)</math>给出了一个尺寸为<math>p^k</math> | 分隔符 <math>(k)</math> 给出了一个尺寸为 <math>p^k</math> 的“块”(类似于 <math>\&</math> 符号的结构),“乘客”则是驾驶员左侧的所有这样的块(不完整的用 1 补齐)去掉副驾驶员。于是上述展开规则 5. 和 6. 可以写为: | ||
# | # 复制一个这个扩展数阵的副本,并将副本中指数的值减 1。 | ||
# | # 将原本扩展数阵的驾驶员减 1,全体乘客替换为底数。 | ||
# 如果副驾驶存在,将副驾驶换为之前得到的扩展数阵副本。 | # 如果副驾驶存在,将副驾驶换为之前得到的扩展数阵副本。 | ||
=== - | === -gions 表示法 === | ||
- | -gions 表示法是基于<math>\&</math>符号的一类表示法,分为如下表示: | ||
* | * Legions(分隔符为 L1) | ||
* | * Lugions(分隔符为 L2) | ||
* | * Lagions(分隔符为 L3) | ||
* Ligions | * Ligions (分隔符为 L4) | ||
* ... | * ... | ||
== 枚举 == | == 枚举 == | ||
BEAF 及其 -gions 表示法的枚举详见 HypCos 的分析 Analysis - BEAF, FGH and SGH, [https://googology.fandom.com/wiki/User_blog:Hyp_cos/Analysis_-_BEAF,_FGH_and_SGH_(part_1) (Part1)] [https://googology.fandom.com/wiki/User_blog:Hyp_cos/Analysis_-_BEAF,_FGH_and_SGH_(part_2) (Part2)] [https://googology.fandom.com/wiki/User_blog:Hyp_cos/Analysis_-_BEAF,_FGH_and_SGH_(part_3) (Part3)]。 | |||
== 历史 == | == 历史 == | ||
数阵记号对整个大数领域的影响是重要的,其思想至今仍然可以在许多记号之中找到痕迹,而 BEAF 则是早期最为重要的数阵型记号。 | |||
在更强大的 Array 型记号(如 [[BAN]]、[[SAN]])与 Worm 型记号发明之前,由于其简洁性和极快的增长速度,BEAF 在 Googology 中颇具名气,更不用说那些用该函数定义的充满奇思妙想的命名数(如 golapulus 和传奇的 meameamealokkapoowa oompa——这是 Bowers 定义的最大数之一)。尽管克里斯·伯德(Chris Bird)和约翰·斯宾塞(John Spencer,Bowers 的朋友)协助构建了 BEAF,但通常认为该函数完全由 Bowers 独立创造。 | |||
萨比斯·赛比安(Sbiis | 萨比斯·赛比安(Sbiis Saibian)指出,是否存在一种完全符合 Bowers 规则的符号系统,是大数研究领域的一个未解决问题。尽管他仅直接提到五级超运算数阵,但这一问题可能也适用于 BEAF 的其他层级。 | ||
由于四级超运算以上的 BEAF 是'''非形式化'''的,并且对其形式化'''仍然是 Googology 中的一个重要开放问题''',因此四级超运算以上的 BEAF 的可计算性在数学上没有意义。 | |||
== 参考资料 == | == 参考资料 == | ||
<references /> | <references />{{默认排序:大数记号}} | ||
[[分类:记号]] | [[分类:记号]] |
2025年8月20日 (三) 16:08的最新版本
Bowers' Exploding Array Function(BEAF,鲍尔斯爆炸数组函数)是由乔纳森·鲍尔斯(Jonathan Bowers)发明的一种表示大数的符号系统。BEAF 类似于链式箭头符号,都是一种历史记号,但强度远超后者。
BEAF 是一个在大数历史上非常重要的数阵记号,它是单行线性数阵(Bowers' Array Notation)和扩展数阵记号(Extended Array Notation)的超集,两者均由Bowers发明。然而,对于四维数阵以上的符号系统,目前尚无统一认可的定义。因此,严格来说,四维数阵以上的 BEAF 是未明确定义的,而四维数阵及以下的 BEAF 则是定义明确的。
定义
以下是对 BEAF 工作原理的大致框架性描述。如前所述,对于原始 BEAF 在四维数阵之外的扩展,目前尚未达成共识的定义,因此这并非一个完整的定义。
一个 BEAF 表达式形如:
其中均为正整数,是自然数(序列),分别表示n级分隔符与m级分隔符,特别地,0级分隔符 是 ,
(即逗号,用于分割数组中同一行内的每个项)。
我们定义如下概念:
- 底数(base):数组的第一个元素,记为 。
- 指数(prime):数组的第二个元素,记为 。
- 驾驶员(pilot):指数之后第一个非 1 的元素,可能最早出现在第三个元素的位置。
- 副驾驶(copilot):驾驶员左侧的第一个元素。若驾驶员是某行的第一个元素,则副驾驶不存在。
- 结构(structure):数组中由低维组构成的部分。例如:一个数为0维结构,一行为1维结构,一个平面为2维结构,一个立方块为3维结构,...,以此类推。记为 。
- 前结构(previous structures)
- 前项(previous entry):驾驶员之前、且与所有其他前项在同一行的元素。
- 前行(previous row):驾驶员所在行之前、且与所有其他前行在同一平面的行。
- 前平面(previous plane):驾驶员所在平面之前、且与所有其他前平面在同一立方块的平面。
- ...
- 这些统称为“前结构”,即若驾驶员处于X维结构中,那前结构为0维到X-1维的所有结构。
- 指数块(prime block):
- 对于自然数n,某 维结构的指数块指的是该 维结构的前 个n维结构,若n维结构的个数少于 ,则使用由1填充的n维结构补充直到满足该条件。
- 对于序列 ,某 维结构的指数块指的是 维结构;若序列 内存在高级分隔符,则按BEAF定义展开。
- 飞机(airplane):包含驾驶员、所有前项以及所有前结构的指数块。
- 乘客(passengers):飞机中既非驾驶员也非副驾驶的元素。
规则
令是一个 BEAF 表达式,其值计算有以下规则:
- 主规则(Prime rule):
- 若 ,则 .
- 初始规则(Initial rule):
- 若不存在驾驶员,则 .
- 灾难性规则(Catastrophic rule):若上述两条规则均不适用,则执行以下操作:
- 驾驶员减 1;
- 副驾驶变为 原数组中指数 减 1 后的数组;
- 所有乘客变为 ;
- 数组其余部分保持不变。
线性数阵
BEAF 中的单行线性数阵是几乎所有数阵记号的基础。上文已经介绍过其原版规则,这里不再赘述。
这里介绍一种改进的线性数阵。它将经典的线性数阵改成了容易分析增长率的一元函数,将每一项的默认值改成了 0,且删除了对增长率提升没有帮助的操作。
一个合法的线性数阵表达式形如,其中,均为非负整数。
我们用"#"表示任意序列,"Z"表示由若干个 0 组成的序列。
该线性数阵的展开规则如下:
- (基础规则)只有一项时,有 ;
- (后继规则)若第二项不为 0,有 ,其中 。例如:;
- (删尾规则)若末项为 0,有 ,例如:。
- (借位规则)否则,第二项为 0 且存在不为 0 的项。此时有 。例如:。
下面用快速增长层级对改进的线性数阵进行增长率分析:
一般来说,单独的线性数阵的极限增长率为,但其强度会随"后继规则"的变化而变化。
例如,若把第二条规则改为 ,则上述分析应该在哈代层级下进行,故极限函数的增长率相当于。
对于上文中的记号,通过如下方法可以快速得到增长率:
- 取出一个表达式 ;
- 取出 的部分并反转,得到 ;
- 的增长率即为 。
举个例子: 的增长率即为 。
由于以上原因,(单行)线性数阵也被称为 进制数阵,因为 类似于一个“ 进制数”。
另外,表达式 对于每个 都是“线性”的,这也是线性数阵中“线性”一词的来源。
拓展
由于 BEAF 的知名度,其衍生出了十分多样的数阵记号。但大多数增长率超过 的拓展记号是不良定义的。
带 & 的 BEAF
定义 符号如下,它生成扩展数阵中的项和分隔符:
注:在大部分版本中, 的指标写在左上侧。此处写在右上侧是为了避免与 混淆。
注:有的地方认为形如 的表达式直接表达了一个(扩展)数阵 ,实际上这是错误的。
对于扩展数阵 ,其展开规则如下:
- 如果扩展数阵只有 两项,扩展数阵的值为 。
- 如果指数为 1,扩展数阵的值为 。
- 如果某个 ,扩展数阵的值相当于删掉 后得到的扩展数阵的值。
- 如果某个 ,而且 或 ,那么扩展数阵的值相当于删掉 后得到的扩展数阵的值。
- 如果扩展数阵中没有分隔符,按数阵记号的规则展开。
- 如果以上规则均不适用:此时扩展数阵形如 ,满足 ,。
- 如果 ,其展开为 。
- 如果 ,其展开为 。
类似于数阵记号,“乘客”的定义可以如下理解:
分隔符 给出了一个尺寸为 的“块”(类似于 符号的结构),“乘客”则是驾驶员左侧的所有这样的块(不完整的用 1 补齐)去掉副驾驶员。于是上述展开规则 5. 和 6. 可以写为:
- 复制一个这个扩展数阵的副本,并将副本中指数的值减 1。
- 将原本扩展数阵的驾驶员减 1,全体乘客替换为底数。
- 如果副驾驶存在,将副驾驶换为之前得到的扩展数阵副本。
-gions 表示法
-gions 表示法是基于符号的一类表示法,分为如下表示:
- Legions(分隔符为 L1)
- Lugions(分隔符为 L2)
- Lagions(分隔符为 L3)
- Ligions (分隔符为 L4)
- ...
枚举
BEAF 及其 -gions 表示法的枚举详见 HypCos 的分析 Analysis - BEAF, FGH and SGH, (Part1) (Part2) (Part3)。
历史
数阵记号对整个大数领域的影响是重要的,其思想至今仍然可以在许多记号之中找到痕迹,而 BEAF 则是早期最为重要的数阵型记号。
在更强大的 Array 型记号(如 BAN、SAN)与 Worm 型记号发明之前,由于其简洁性和极快的增长速度,BEAF 在 Googology 中颇具名气,更不用说那些用该函数定义的充满奇思妙想的命名数(如 golapulus 和传奇的 meameamealokkapoowa oompa——这是 Bowers 定义的最大数之一)。尽管克里斯·伯德(Chris Bird)和约翰·斯宾塞(John Spencer,Bowers 的朋友)协助构建了 BEAF,但通常认为该函数完全由 Bowers 独立创造。
萨比斯·赛比安(Sbiis Saibian)指出,是否存在一种完全符合 Bowers 规则的符号系统,是大数研究领域的一个未解决问题。尽管他仅直接提到五级超运算数阵,但这一问题可能也适用于 BEAF 的其他层级。
由于四级超运算以上的 BEAF 是非形式化的,并且对其形式化仍然是 Googology 中的一个重要开放问题,因此四级超运算以上的 BEAF 的可计算性在数学上没有意义。
参考资料
- ↑ 曹知秋 (2025). 大数理论. (EB/OL), Vol.1, pp.126-127. https://github.com/ZhiqiuCao/Googology