打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

BEAF:修订间差异

来自Googology Wiki
Z留言 | 贡献
无编辑摘要
Z留言 | 贡献
无编辑摘要
第5行: 第5行:
BEAF 是一个在大数历史上非常重要的[[数阵记号]],它是[[线性数阵|单行线性数阵]](Bowers' Array Notation)和[[扩展数阵记号]](Extended Array Notation)的超集,两者均由Bowers发明。然而,对于四维数阵以上的符号系统,目前尚无统一认可的定义。因此,严格来说,四维数阵以上的 BEAF 是未明确定义的,而四维数阵及以下的 BEAF 则是定义明确的。
BEAF 是一个在大数历史上非常重要的[[数阵记号]],它是[[线性数阵|单行线性数阵]](Bowers' Array Notation)和[[扩展数阵记号]](Extended Array Notation)的超集,两者均由Bowers发明。然而,对于四维数阵以上的符号系统,目前尚无统一认可的定义。因此,严格来说,四维数阵以上的 BEAF 是未明确定义的,而四维数阵及以下的 BEAF 则是定义明确的。


=== 定义 ===
== 定义 ==
以下是对 BEAF 工作原理的大致框架性描述。如前所述,对于原始 BEAF 在四维数阵之外的扩展,目前尚未达成共识的定义,因此这并非一个完整的定义。
以下是对 BEAF 工作原理的大致框架性描述。如前所述,对于原始 BEAF 在四维数阵之外的扩展,目前尚未达成共识的定义,因此这并非一个完整的定义。


第33行: 第33行:
* '''乘客(passengers)''':飞机中既非驾驶员也非副驾驶的元素。
* '''乘客(passengers)''':飞机中既非驾驶员也非副驾驶的元素。


=== 规则 ===
== 规则 ==
 
令<math>A</math>是一个 BEAF 表达式,其值计算有以下规则:
令<math>A</math>是一个 BEAF 表达式,其值计算有以下规则:


第47行: 第46行:
#* 数组其余部分保持不变。
#* 数组其余部分保持不变。


=== 拓展 ===
== 线性数阵 ==
BEAF中的单行线性数阵是几乎所有数阵记号的基础。上文已经介绍过其原版规则,这里不再赘述。
这里介绍一种改进的线性数阵。它将经典的线性数阵改成了容易分析增长率的一元函数,将每一项的默认值改成了0,且删除了对增长率提升没有帮助的操作。
一个合法的线性数阵表达式形如<math>F(x,a_1,a_2,\cdots,a_n)</math>,其中,<math>x,n,a_i</math>均为非负整数。
 
我们用"#"表示任意序列,"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>。
 
下面用[[增长层级#快速增长层级|快速增长层级]]对改进的线性数阵进行增长率分析:
 
<math>F(x)=F(x,0)=x+1=f_0(x)</math>
 
<math>F(x,1)=F^x(x)\sim f_0^x(x)=f_1(x)</math>
 
<math>F(x,2)\sim f_1^x(x)=f_2(x)</math>
 
<math>F(x,n)\sim f_n(x)</math>
 
<math>F(x,0,1)=F(x,x)\sim f_x(x)=f_\omega(x)</math>
 
<math>F(x,1,1)=F(F(\cdots,0,1),0,1)\sim f_{\omega+1}(x)</math>
 
<math>F(x,n,1)\sim f_{\omega+n}(x)</math>
 
<math>F(x,0,2)=F(x,x,1)\sim f_{\omega+x}(x)=f_{\omega\cdot 2}(x)</math>
 
<math>F(x,0,n)\sim f_{\omega\cdot n}(x)</math>
 
<math>F(x,0,0,1)=F(x,0,x)\sim f_{\omega x}(x)=f_{\omega^2}(x)</math>
 
<math>F(x,1,0,1)\sim f_{\omega^2+1}(x)</math>
 
<math>F(x,0,1,1)=F(x,x,0,1)\sim f_{\omega^2+x}(x)=f_{\omega^2+\omega}(x)</math>
 
<math>F(x,0,0,2)=F(x,0,x,1)\sim f_{\omega^2+\omega x}(x)=f_{\omega^22}(x)</math>
 
<math>F(x,0,0,0,1)=F(x,0,0,x)\sim f_{\omega^2x}(x)=f_{\omega^3}(x)</math>
 
<math>F(x,0,0,0,0,1)\sim f_{\omega^4}(x)</math>
 
<math>F(x,\underbrace{0,\cdots,0}_n,1)\sim f_{\omega^n}(x)</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_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>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>\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>都是“线性”的,这也是线性数阵中“线性”一词的来源。


== 拓展 ==
由于BEAF的知名度,其衍生出了十分多样的数阵记号。但大多数增长率超过<math>\varepsilon_{0}</math>的拓展记号是不良定义的。
由于BEAF的知名度,其衍生出了十分多样的数阵记号。但大多数增长率超过<math>\varepsilon_{0}</math>的拓展记号是不良定义的。


==== 带&的BEAF ====
=== 带&的BEAF ===
 
定义<math>\&</math>符号如下,它生成扩展数阵中的项和分隔符:
定义<math>\&</math>符号如下,它生成扩展数阵中的项和分隔符:


第84行: 第145行:
# 如果副驾驶存在,将副驾驶换为之前得到的扩展数阵副本。
# 如果副驾驶存在,将副驾驶换为之前得到的扩展数阵副本。


==== -gions表示法 ====
=== -gions表示法 ===
 
-gions表示法是基于<math>\&</math>符号的一类表示法,分为如下表示:
-gions表示法是基于<math>\&</math>符号的一类表示法,分为如下表示:
* Legions(分隔符为L1)
* Legions(分隔符为L1)
第93行: 第153行:
* ...
* ...


=== 枚举 ===
== 枚举 ==
 
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及其-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则是早期最为重要的数阵型记号。
数阵记号对整个大数领域的影响是重要的,其思想至今仍然可以在许多记号之中找到痕迹,而BEAF则是早期最为重要的数阵型记号。


第107行: 第165行:
由于非四元 BEAF 是'''非形式化'''的,并且对其形式化'''仍然是 Googology 中的一个重要开放问题''',因此四元以上的 BEAF 的可计算性在数学上没有意义。
由于非四元 BEAF 是'''非形式化'''的,并且对其形式化'''仍然是 Googology 中的一个重要开放问题''',因此四元以上的 BEAF 的可计算性在数学上没有意义。


=== 参考资料 ===
== 参考资料 ==
<references />
<references />
[[分类:记号]]
[[分类:记号]]

2025年7月14日 (一) 10:38的版本

曾经最为重要的大数记号早早地止步于 ε0,并最终湮没于历史的长河之中,这不禁令人扼腕叹息。[1]
------ 曹知秋

Bowers' Exploding Array Function(BEAF,鲍尔斯爆炸数组函数)是由乔纳森·鲍尔斯(Jonathan Bowers)发明的一种表示大数的符号系统。BEAF 类似于链式箭头符号,都是一种历史记号,但强度远超后者。

BEAF 是一个在大数历史上非常重要的数阵记号,它是单行线性数阵(Bowers' Array Notation)和扩展数阵记号(Extended Array Notation)的超集,两者均由Bowers发明。然而,对于四维数阵以上的符号系统,目前尚无统一认可的定义。因此,严格来说,四维数阵以上的 BEAF 是未明确定义的,而四维数阵及以下的 BEAF 则是定义明确的。

定义

以下是对 BEAF 工作原理的大致框架性描述。如前所述,对于原始 BEAF 在四维数阵之外的扩展,目前尚未达成共识的定义,因此这并非一个完整的定义。

一个 BEAF 表达式形如:

{b,p,c,d,e,(n)α,β,γ,(m)}

其中b,p,c,d,e,α,β,γ均为正整数,n,m是自然数(序列),(n),(m)分别表示n级分隔符与m级分隔符,特别地,0级分隔符 (0),(即逗号,用于分割数组中同一行内的每个项)。

我们定义如下概念:

  • 底数(base):数组的第一个元素,记为 b
  • 指数(prime):数组的第二个元素,记为 p
  • 驾驶员(pilot):指数之后第一个非 1 的元素,可能最早出现在第三个元素的位置。
  • 副驾驶(copilot):驾驶员左侧的第一个元素。若驾驶员是某行的第一个元素,则副驾驶不存在。
  • 结构(structure):数组中由低维组构成的部分。例如:一个数为0维结构,一行为1维结构,一个平面为2维结构,一个立方块为3维结构,...,以此类推。记为 Xn
  • 前结构(previous structures)
    • 前项(previous entry):驾驶员之前、且与所有其他前项在同一行的元素。
    • 前行(previous row):驾驶员所在行之前、且与所有其他前行在同一平面的行。
    • 前平面(previous plane):驾驶员所在平面之前、且与所有其他前平面在同一立方块的平面。
    • ...
    • 这些统称为“前结构”,即若驾驶员处于X维结构中,那前结构为0维到X-1维的所有结构。
  • 指数块(prime block)
    • 对于自然数n,某 n+1 维结构的指数块指的是该 n+1 维结构的前 p 个n维结构,若n维结构的个数少于 p,则使用由1填充的n维结构补充直到满足该条件。
    • 对于序列 A=a1,a2,a3,,an,某 A 维结构的指数块指的是a0+a1p+a2p2++anpn 维结构;若序列 A 内存在高级分隔符,则按BEAF定义展开。
  • 飞机(airplane):包含驾驶员、所有前项以及所有前结构的指数块。
  • 乘客(passengers):飞机中既非驾驶员也非副驾驶的元素。

规则

A是一个 BEAF 表达式,其值计算有以下规则:

  1. 主规则(Prime rule)
    • p=1,则 A=b.
  2. 初始规则(Initial rule)
    • 若不存在驾驶员,则 A=bp.
  3. 灾难性规则(Catastrophic rule):若上述两条规则均不适用,则执行以下操作:
    • 驾驶员减 1;
    • 副驾驶变为 原数组中指数 p 减 1 后的数组;
    • 所有乘客变为 b
    • 数组其余部分保持不变。

线性数阵

BEAF中的单行线性数阵是几乎所有数阵记号的基础。上文已经介绍过其原版规则,这里不再赘述。 这里介绍一种改进的线性数阵。它将经典的线性数阵改成了容易分析增长率的一元函数,将每一项的默认值改成了0,且删除了对增长率提升没有帮助的操作。 一个合法的线性数阵表达式形如F(x,a1,a2,,an),其中,x,n,ai均为非负整数。

我们用"#"表示任意序列,"Z"表示由若干个0组成的序列。

该线性数阵的展开规则如下:

  1. (基础规则)只有一项时,有F(x)=x+1
  2. (后继规则)若第二项不为0,有F(x,a+1,#)=fx(x),其中f(x)=F(x,a,#)。例如:F(3,1,4)=F(F(F(3,0,4),0,4),0,4)
  3. (删尾规则)若末项为0,有F(#,0)=F(#),例如:F(2,1,0)=F(2,1)
  4. (借位规则)否则,第二项为0且存在不为0的项。此时有F(x,Z,0,a+1,#)=F(x,Z,x,a,#)。例如:F(2,0,2,5)=F(2,2,1,5)

下面用快速增长层级对改进的线性数阵进行增长率分析:

F(x)=F(x,0)=x+1=f0(x)

F(x,1)=Fx(x)f0x(x)=f1(x)

F(x,2)f1x(x)=f2(x)

F(x,n)fn(x)

F(x,0,1)=F(x,x)fx(x)=fω(x)

F(x,1,1)=F(F(,0,1),0,1)fω+1(x)

F(x,n,1)fω+n(x)

F(x,0,2)=F(x,x,1)fω+x(x)=fω2(x)

F(x,0,n)fωn(x)

F(x,0,0,1)=F(x,0,x)fωx(x)=fω2(x)

F(x,1,0,1)fω2+1(x)

F(x,0,1,1)=F(x,x,0,1)fω2+x(x)=fω2+ω(x)

F(x,0,0,2)=F(x,0,x,1)fω2+ωx(x)=fω22(x)

F(x,0,0,0,1)=F(x,0,0,x)fω2x(x)=fω3(x)

F(x,0,0,0,0,1)fω4(x)

F(x,0,,0n,1)fωn(x)

一般来说,单独的线性数阵的极限增长率为ωω,但其强度会随"后继规则"的变化而变化。

例如,若把第二条规则改为F(x,a+1,#)=F(x+1,a,#),则上述分析应该在哈代层级下进行,故极限函数的增长率相当于Hωω(x)fω(x)

对于上文中的记号,通过如下方法可以快速得到增长率:

  1. 取出一个表达式F(x,a0,a1,,an)
  2. 取出a0,a1,,an的部分并反转,得到an,,a1,a0
  3. F(x,a0,a1,,an)的增长率即为ωn×an++ω1×a1+ω0×a0

举个例子:F(x,0,1,1)的增长率即为ω2×1+ω1×1+ω0×0

由于以上原因,(单行)线性数阵也被称为ω进制数阵,因为ωn×an++ω1×a1+ω0×a0类似于一个“ω进制数”。

另外,表达式ωn×an++ω1×a1+ω0×a0对于每个ai(i=0,1,,n)都是“线性”的,这也是线性数阵中“线性”一词的来源。

拓展

由于BEAF的知名度,其衍生出了十分多样的数阵记号。但大多数增长率超过ε0的拓展记号是不良定义的。

带&的BEAF

定义&符号如下,它生成扩展数阵中的项和分隔符:

1&na=a

b&a=a,(b1)&a

b&k+1a=b&ka(k)(b1)&k+1a

注:在大部分版本中,&的指标写在左上侧。此处写在右上侧是为了避免与bk混淆。

注:有的地方认为形如b&a的表达式直接表达了一个(扩展)数阵{a,a,,a},实际上这是错误的。

对于扩展数阵{a01,a02,,a0m0(x1)a11,,a1m1(x2)(x3)(xn)an1,an2,,anmn},其展开规则如下:

  1. 如果扩展数阵只有a01,a02两项,扩展数阵的值为bp
  2. 如果指数为1,扩展数阵的值为b
  3. 如果某个akmk=1,扩展数阵的值相当于删掉akmk后得到的扩展数阵的值。
  4. 如果某个mk=0,而且k=nxk<xk+1,那么扩展数阵的值相当于删掉(xk)后得到的扩展数阵的值。
  5. 如果扩展数阵中没有分隔符,按数阵记号的规则展开。
  6. 如果以上规则均不适用:此时扩展数阵形如{a,b(x1)(x2)(x3)(xn)b1,b2,,bt#},满足x1x2xnb1=b2==bt1=1
    1. 如果t=1,其展开为{b&x1a(x1)b&x2a(x2)b&x3a(x3)b&xna(xn)b11#}
    2. 如果t>1,其展开为{b&x1a(x1)b&x2a(x2)b&x3a(x3)b&xna(xn)a,a,,a,{a,b1(x1)(x2)(x3)(xn)b1,b2,,bt#},bt1#}

类似于数阵记号,“乘客”的定义可以如下理解:

分隔符(k)给出了一个尺寸为pk的“块”(类似于&符号的结构),“乘客”则是驾驶员左侧的所有这样的块(不完整的用1补齐)去掉副驾驶员。于是上述展开规则5.和6.可以写为:

  1. 复制一个这个扩展数阵的副本,并将副本中指数的值减1。
  2. 将原本扩展数阵的驾驶员减1,全体乘客替换为底数。
  3. 如果副驾驶存在,将副驾驶换为之前得到的扩展数阵副本。

-gions表示法

-gions表示法是基于&符号的一类表示法,分为如下表示:

  • Legions(分隔符为L1)
  • Lugions(分隔符为L2)
  • Lagions(分隔符为L3)
  • Ligions (分隔符为L4)
  • ...

枚举

BEAF及其-gions表示法的枚举详见HypCos的分析Analysis - BEAF, FGH and SGH, (Part1) (Part2) (Part3)

历史

数阵记号对整个大数领域的影响是重要的,其思想至今仍然可以在许多记号之中找到痕迹,而BEAF则是早期最为重要的数阵型记号。

在更强大的Array型记号(如BANSAN)与Worm型记号发明之前,由于其简洁性和极快的增长速度,BEAF 在 Googology 中颇具名气,更不用说那些用该函数定义的充满奇思妙想的命名数(如 golapulus 和传奇的 meameamealokkapoowa oompa——这是Bowers定义的最大数之一)。尽管克里斯·伯德(Chris Bird)和约翰·斯宾塞(John Spencer,Bowers的朋友)协助构建了 BEAF,但通常认为该函数完全由Bowers独立创造。

萨比斯·赛比安(Sbiis Saibian)指出,是否存在一种完全符合Bowers规则的符号系统,是大数研究领域的一个未解决问题。尽管他仅直接提到五维数阵,但这一问题可能也适用于 BEAF 的其他层级。

由于非四元 BEAF 是非形式化的,并且对其形式化仍然是 Googology 中的一个重要开放问题,因此四元以上的 BEAF 的可计算性在数学上没有意义。

参考资料

  1. 曹知秋. 大数理论: Vol.1[EB/OL]. (2025-05-16) [2025-07-14]: 126-127. https://github.com/ZhiqiuCao/Googology