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

高德纳箭头:修订间差异

来自Googology Wiki
Optimism留言 | 贡献
糕糕
Tabelog留言 | 贡献
无编辑摘要
第1行: 第1行:
'''高德纳箭头(Knuth's arrow notation, 亦称"上箭头记号")''',一种满足'''右结合律'''的二元运算。其定义如下:
'''高德纳箭头(Knuth's arrow notation,亦称"上箭头记号")''',一种满足'''右结合律'''的二元运算。它涉及对运算的递归。<ref>Guy, R. K. and Selfridge, J. L. "The Nesting and Roosting Habits of the Laddered Parenthesis." ''Amer. Math. Monthly'' '''80''', 868-876, 1973.</ref>


=== 定义 ===
高德纳箭头由如下公式递归定义:
* <math>a \uparrow b = a^{b}</math>
* <math>a \uparrow b = a^{b}</math>
* <math>a \uparrow^{c} 0 = 1</math>
* <math>a \uparrow^{c} 0 = 1</math>
* <math>a \uparrow^{c+1} (b+1) = a \uparrow^{c} ( a \uparrow^{c+1} b)</math>
* <math>a \uparrow^{c+1} (b+1) = a \uparrow^{c} ( a \uparrow^{c+1} b)</math>


其中,<math>a,c</math>均为'''正整数,'''<math>b</math>为'''自然数''',<math>a \uparrow^{c} b = a\ \underbrace{ \uparrow\uparrow\cdots\uparrow }_{c}\ b</math>.
其中,<math>a,c</math> 均为'''正整数,'''<math>b</math> 为'''自然数''',<math>a \uparrow^{c} b = a\ \underbrace{ \uparrow\uparrow\cdots\uparrow }_{c}\ b</math>


在计算高德纳箭头时,如无括号,按照从右往左的顺序计算,即:  
在计算高德纳箭头时,如无括号,按照从右往左的顺序计算,即:  
第13行: 第15行:
若将高德纳箭头的右结合律更替为左结合律,其余定义不变,将得到[[下箭号表示法|下箭头记号]]。  
若将高德纳箭头的右结合律更替为左结合律,其余定义不变,将得到[[下箭号表示法|下箭头记号]]。  


==== 性质 ====
=== 性质 ===
 
高德纳箭头有如下性质:
高德纳箭头有如下性质:


===== '''展开''' =====
==== '''展开''' ====
<math>n \uparrow^{k} m = \underbrace{n \uparrow^{k-1} n \uparrow^{k-1} \cdots \uparrow^{k-1} n }_{\text{m个n}}</math>
<math>n \uparrow^{k} m = \underbrace{n \uparrow^{k-1} n \uparrow^{k-1} \cdots \uparrow^{k-1} n }_{\text{m个n}}</math>


===== 恒等律 =====
==== 恒等律 ====
 
<math>2 \uparrow^{c+1} 2 = 2\uparrow^c2=.. .=2\uparrow2=4</math>
 
<math>1 \uparrow^{c+1} b = 1\uparrow^c1\uparrow^{c+1}(b-1)=1\uparrow^cb_2=.. .=1\uparrow b_k=1</math>
 
<math>a \uparrow^{c+1} 1 = a \uparrow^{c}a\uparrow^{c+1}0 =a\uparrow^{c} 1=...=a\uparrow1=a</math>
 
===== 增长率 =====


高德纳箭头的[[FGH]]增长率为<math>\omega</math>,特别地,
* <math>2 \uparrow^{c+1} 2 = 2\uparrow^c2=.. .=2\uparrow2=4</math>
* <math>1 \uparrow^{c+1} b = 1\uparrow^c1\uparrow^{c+1}(b-1)=1\uparrow^cb_2=.. .=1\uparrow b_k=1</math>
* <math>a \uparrow^{c+1} 1 = a \uparrow^{c}a\uparrow^{c+1}0 =a\uparrow^{c} 1=...=a\uparrow1=a</math>


<math>a \uparrow^{c} b \approx f_{c+1}(b) </math>
==== 增长率 ====
高德纳箭头的 [[FGH]] 增长率为 <math>\omega</math>,特别地,<math>a \uparrow^{c} b \approx f_{c+1}(b) </math>


该推论可通过审视以下三组式子得到:
该推论可通过审视以下三组式子得到:


<math>a\uparrow b\approx f_2(b)=2^b\times b</math>
* <math>a\uparrow b\approx f_2(b)=2^b\times b</math>
 
* <math>a \uparrow^{c+1} (b+1) = a \uparrow^{c} ( a \uparrow^{c+1} b)</math>
<math>a \uparrow^{c+1} (b+1) = a \uparrow^{c} ( a \uparrow^{c+1} b)</math>
* <math>f_{c+1}(b+1)=f_{c}^{b+1}(b+1)=f_c(f_c^b(b+1))\approx f_c(f_c^b(b))=f_c(f_{c+1}(b))</math>


<math>f_{c+1}(b+1)=f_{c}^{b+1}(b+1)=f_c(f_c^b(b+1))\approx f_c(f_c^b(b))=f_c(f_{c+1}(b))</math>
==== 超运算 ====
高德纳箭头是目前已被广泛认可、基本采用的超运算记号。


===== 超运算 =====
若定义后继运算的运算等级为 0,那么 n 个高德纳箭头的运算等级为 n+2。


高德纳箭头是目前已被广泛认可、基本采用<ref>曹知秋. 大数理论: Vol.1[EB/OL]. (2025-05-16) [2025-07-02]: 35-36.</ref>的超运算记号。
=== 历史 ===
 
高德纳箭头是由 Donald Ervin Knuth 在 1976 年发明的大数记号<ref>Donald E. Knuth, ''Mathematics and Computer Science: Coping with Finiteness'', Advances in Our Ability to Compute are Bringing Us Substantially Closer to Ultimate Limitations, Science 194, pp. 1235--1242, 1976.https://cse-robotics.engr.tamu.edu/dshell/cs625/finiteness.pdf</ref>,曾在 1977 年被 Martin Gardner 用于递归地定[[葛立恒数]]。<ref>GARDNER M. Mathematical games[J]. Scientific American, 1977, 237(3): 28-38.https://raw.githubusercontent.com/AllenDowney/ModSimPy/master/papers/scientific_american_nov_77.pdf</ref>
若定义后继运算的运算等级为<math>0</math>,那么 <math>n</math> 个高德纳箭头的运算等级为 <math>n+2</math>
 
==== 历史 ====
 
高德纳箭头是由 <math>\mathrm{Donald\ Ervin\ Knuth}</math> 在1976年发明的大数记号<ref>Donald E. Knuth, ''Mathematics and Computer Science: Coping with Finiteness'', Advances in Our Ability to Compute are Bringing Us Substantially Closer to Ultimate Limitations, Science 194, pp. 1235--1242, 1976.https://cse-robotics.engr.tamu.edu/dshell/cs625/finiteness.pdf</ref>,曾在1977年被 <math> \mathrm{Martin\ Gardner} </math> 用于递归地定义[[葛立恒数]]。<ref>GARDNER M. Mathematical games[J]. Scientific American, 1977, 237(3): 28-38.https://raw.githubusercontent.com/AllenDowney/ModSimPy/master/papers/scientific_american_nov_77.pdf</ref>


而<math>\mathrm{Ronald\ Graham}</math>本人并未在论文中使用高德纳箭头或超运算来估计 [[葛立恒数#葛立恒问题|Graham问题]] 的上界,而是使用了类似 [[ACKERMANN函数]] 的递归函数 <math>F(m,n)</math>,和分别近似为 <math>2 \uparrow\uparrow n,2 \uparrow\uparrow\uparrow n</math> 的函数<math>TOWER(n),WOW(n)</math>。<ref>GRAHAM R L, ROTHSCHILD B L. Ramsey’s theorem for ff-parameter sets[J]. Transactions of the American Mathematical Society, 1971, 159: 257-292. https://www.ams.org/journals/tran/1971-159-00/S0002-9947-1971-0284352-8/S0002-9947-1971-0284352-8.pdf
而<math>\mathrm{Ronald\ Graham}</math>本人并未在论文中使用高德纳箭头或超运算来估计 [[葛立恒数#葛立恒问题|Graham问题]] 的上界,而是使用了类似 [[ACKERMANN函数]] 的递归函数 <math>F(m,n)</math>,和分别近似为 <math>2 \uparrow\uparrow n,2 \uparrow\uparrow\uparrow n</math> 的函数<math>TOWER(n),WOW(n)</math>。<ref>GRAHAM R L, ROTHSCHILD B L. Ramsey’s theorem for ff-parameter sets[J]. Transactions of the American Mathematical Society, 1971, 159: 257-292. https://www.ams.org/journals/tran/1971-159-00/S0002-9947-1971-0284352-8/S0002-9947-1971-0284352-8.pdf
第57行: 第49行:
  https://people.dm.unipi.it/dinasso/ULTRABIBLIO/Graham_Rothschild_Spencer%20-%20Ramsey%20Theory%20(2nd%20edition).pdf</ref>
  https://people.dm.unipi.it/dinasso/ULTRABIBLIO/Graham_Rothschild_Spencer%20-%20Ramsey%20Theory%20(2nd%20edition).pdf</ref>


==== '''直观理解''' ====
=== 直观理解 ===
高德纳箭头本质上是一种高级运算“折叠”低级运算的记号。
高德纳箭头本质上是一种高级运算“折叠”低级运算的记号。


后继是最基础的运算,表现为 <math>n+1</math>.
后继是最基础的运算,表现为 n+1。
 
在<math>n+m</math>中,运算 <math>+</math> 折叠了对 <math>n</math> 的 <math>m</math> 次后继运算,即


在 n+m 中,运算 + 折叠了对 n 的 m 次后继运算,即
  <math>\ n+m=n+\underbrace{1+1+\cdots+1}_{\text{m个1}}</math>.
  <math>\ n+m=n+\underbrace{1+1+\cdots+1}_{\text{m个1}}</math>.
 
在 <math>n\times m</math> 中,运算 <math>\times</math> 折叠了对 n 的 m 次 + 运算,即  
在<math>n\times m</math>中,运算 <math>\times</math> 折叠了对 <math>n</math> <math>m</math> <math>+</math> 运算,即  
 
  <math>\ n\times m=\underbrace{n+n+\cdots+n}_{\text{m个n}}</math>.
  <math>\ n\times m=\underbrace{n+n+\cdots+n}_{\text{m个n}}</math>.
 
在 <math>n^{m}</math> ( <math>n\uparrow m</math> ) 中,运算 <math>\uparrow</math> 折叠了对 n 的 m 次 <math>\times</math> 运算,即  
在 <math>n^{m}</math> ( <math>n\uparrow m</math> ) 中,运算<math>\uparrow</math>折叠了对 <math>n</math> <math>m</math> 次 <math>\times</math> 运算,即  


  <math>\ n^{m}=\underbrace{n\times n\times \cdots \times n}_{\text{m个n}}</math>.
  <math>\ n^{m}=\underbrace{n\times n\times \cdots \times n}_{\text{m个n}}</math>.


在 <math>{}^m\!n</math> ( <math>n\uparrow \uparrow m</math> ) 中,运算<math>\uparrow \uparrow</math>折叠了对 <math>n</math> <math>m</math> 次 <math>\uparrow</math> 运算,即
在 <math>{}^m\!n</math> ( <math>n\uparrow \uparrow m</math> ) 中,运算 <math>\uparrow \uparrow</math> 折叠了对 n 的 m 次 <math>\uparrow</math> 运算,即


  <math>\ n\uparrow \uparrow m=\underbrace{n\uparrow n\uparrow \cdots \uparrow n}_{\text{m个n}}=\underbrace{n^{n^{n^{\cdots}}}}_{\text{m个n}}</math>. (注意是右结合)
  <math>\ n\uparrow \uparrow m=\underbrace{n\uparrow n\uparrow \cdots \uparrow n}_{\text{m个n}}=\underbrace{n^{n^{n^{\cdots}}}}_{\text{m个n}}</math>. (注意是右结合)
第80行: 第68行:
以此类推。最终,我们得到了高德纳箭头的形式化定义:
以此类推。最终,我们得到了高德纳箭头的形式化定义:


在<math>n \uparrow^{k} m</math>中,运算<math>\uparrow^{k}</math>折叠了对 <math>n</math> <math>m</math> 次 <math>\uparrow^{k-1}</math> 运算,即
在 <math>n \uparrow^{k} m</math> 中,运算 <math>\uparrow^{k}</math> 折叠了对 n 的 m 次 <math>\uparrow^{k-1}</math> 运算,即


  <math>\ n \uparrow^{k} m = \underbrace{n \uparrow^{k-1} n \uparrow^{k-1} \cdots \uparrow^{k-1} n }_{\text{m个n}}</math>
  <math>\ n \uparrow^{k} m = \underbrace{n \uparrow^{k-1} n \uparrow^{k-1} \cdots \uparrow^{k-1} n }_{\text{m个n}}</math>
第89行: 第77行:


<math>\begin{align} 3 \uparrow\uparrow\uparrow\uparrow 4\  & = 3\uparrow\uparrow\uparrow3\uparrow\uparrow\uparrow3\uparrow\uparrow\uparrow3 \\ & = 3\uparrow\uparrow\uparrow3\uparrow\uparrow\uparrow\underbrace{3^{3^{3^{\cdots}}}}_{7625597484987} \\ & = 3\uparrow\uparrow\uparrow(\ \underbrace{3\uparrow\uparrow3\uparrow\uparrow\cdots\uparrow\uparrow3}_{\underbrace{3^{3^{3^{\cdots}}}}_{7625597484987}}\ ) \\ & = \underbrace{3\uparrow\uparrow3\uparrow\uparrow\cdots\uparrow\uparrow3}_{\underbrace{3\uparrow\uparrow3\uparrow\uparrow\cdots\uparrow\uparrow3}_{\underbrace{3^{3^{3^{\cdots}}}}_{7625597484987}}}\end{align}</math>
<math>\begin{align} 3 \uparrow\uparrow\uparrow\uparrow 4\  & = 3\uparrow\uparrow\uparrow3\uparrow\uparrow\uparrow3\uparrow\uparrow\uparrow3 \\ & = 3\uparrow\uparrow\uparrow3\uparrow\uparrow\uparrow\underbrace{3^{3^{3^{\cdots}}}}_{7625597484987} \\ & = 3\uparrow\uparrow\uparrow(\ \underbrace{3\uparrow\uparrow3\uparrow\uparrow\cdots\uparrow\uparrow3}_{\underbrace{3^{3^{3^{\cdots}}}}_{7625597484987}}\ ) \\ & = \underbrace{3\uparrow\uparrow3\uparrow\uparrow\cdots\uparrow\uparrow3}_{\underbrace{3\uparrow\uparrow3\uparrow\uparrow\cdots\uparrow\uparrow3}_{\underbrace{3^{3^{3^{\cdots}}}}_{7625597484987}}}\end{align}</math>
==== 参考资料 ====
 
=== 参考资料 ===
<references />
<references />
[[分类:记号]]
[[分类:记号]]
[[分类:入门]]
[[分类:入门]]

2025年7月4日 (五) 07:54的版本

高德纳箭头(Knuth's arrow notation,亦称"上箭头记号"),一种满足右结合律的二元运算。它涉及对运算的递归。[1]

定义

高德纳箭头由如下公式递归定义:

  • ab=ab
  • ac0=1
  • ac+1(b+1)=ac(ac+1b)

其中,a,c 均为正整数,b自然数acb=a c b

在计算高德纳箭头时,如无括号,按照从右往左的顺序计算,即:

ambnc=am(bnc)

若将高德纳箭头的右结合律更替为左结合律,其余定义不变,将得到下箭头记号

性质

高德纳箭头有如下性质:

展开

nkm=nk1nk1k1nm个n

恒等律

  • 2c+12=2c2=...=22=4
  • 1c+1b=1c1c+1(b1)=1cb2=...=1bk=1
  • ac+11=acac+10=ac1=...=a1=a

增长率

高德纳箭头的 FGH 增长率为 ω,特别地,acbfc+1(b)

该推论可通过审视以下三组式子得到:

  • abf2(b)=2b×b
  • ac+1(b+1)=ac(ac+1b)
  • fc+1(b+1)=fcb+1(b+1)=fc(fcb(b+1))fc(fcb(b))=fc(fc+1(b))

超运算

高德纳箭头是目前已被广泛认可、基本采用的超运算记号。

若定义后继运算的运算等级为 0,那么 n 个高德纳箭头的运算等级为 n+2。

历史

高德纳箭头是由 Donald Ervin Knuth 在 1976 年发明的大数记号[2],曾在 1977 年被 Martin Gardner 用于递归地定葛立恒数[3]

Ronald Graham本人并未在论文中使用高德纳箭头或超运算来估计 Graham问题 的上界,而是使用了类似 ACKERMANN函数 的递归函数 F(m,n),和分别近似为 2n,2n 的函数TOWER(n),WOW(n)[4][5]

直观理解

高德纳箭头本质上是一种高级运算“折叠”低级运算的记号。

后继是最基础的运算,表现为 n+1。

在 n+m 中,运算 + 折叠了对 n 的 m 次后继运算,即

 n+m=n+1+1++1m个1.

n×m 中,运算 × 折叠了对 n 的 m 次 + 运算,即

 n×m=n+n++nm个n.

nm ( nm ) 中,运算 折叠了对 n 的 m 次 × 运算,即

 nm=n×n××nm个n.

mn ( nm ) 中,运算 折叠了对 n 的 m 次 运算,即

 nm=nnnm个n=nnnm个n. (注意是右结合)

以此类推。最终,我们得到了高德纳箭头的形式化定义:

nkm 中,运算 k 折叠了对 n 的 m 次 k1 运算,即

 nkm=nk1nk1k1nm个n

计算示例

33 =333=3(333)=3(327)=37625597484987=3337625597484987


34 =3333=333337625597484987=3( 3333337625597484987 )=3333333337625597484987

参考资料

  1. Guy, R. K. and Selfridge, J. L. "The Nesting and Roosting Habits of the Laddered Parenthesis." Amer. Math. Monthly 80, 868-876, 1973.
  2. Donald E. Knuth, Mathematics and Computer Science: Coping with Finiteness, Advances in Our Ability to Compute are Bringing Us Substantially Closer to Ultimate Limitations, Science 194, pp. 1235--1242, 1976.https://cse-robotics.engr.tamu.edu/dshell/cs625/finiteness.pdf
  3. GARDNER M. Mathematical games[J]. Scientific American, 1977, 237(3): 28-38.https://raw.githubusercontent.com/AllenDowney/ModSimPy/master/papers/scientific_american_nov_77.pdf
  4. GRAHAM R L, ROTHSCHILD B L. Ramsey’s theorem for ff-parameter sets[J]. Transactions of the American Mathematical Society, 1971, 159: 257-292. https://www.ams.org/journals/tran/1971-159-00/S0002-9947-1971-0284352-8/S0002-9947-1971-0284352-8.pdf
  5. GRAHAM R L, ROTHSCHILD B L, SPENCER J H. Ramsey theory: Vol. 20[M]. John Wiley & Sons, 1991. https://people.dm.unipi.it/dinasso/ULTRABIBLIO/Graham_Rothschild_Spencer%20-%20Ramsey%20Theory%20(2nd%20edition).pdf