高德纳箭头:修订间差异
来自Googology Wiki
更多操作
小 糕糕 |
小无编辑摘要 |
||
第1行: | 第1行: | ||
'''高德纳箭头(Knuth's arrow | '''高德纳箭头(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> | |||
<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> | ||
==== 超运算 ==== | |||
高德纳箭头是目前已被广泛认可、基本采用的超运算记号。 | |||
若定义后继运算的运算等级为 0,那么 n 个高德纳箭头的运算等级为 n+2。 | |||
=== 历史 === | |||
高德纳箭头是由 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>\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> | ||
=== | === 直观理解 === | ||
高德纳箭头本质上是一种高级运算“折叠”低级运算的记号。 | 高德纳箭头本质上是一种高级运算“折叠”低级运算的记号。 | ||
后继是最基础的运算,表现为 | 后继是最基础的运算,表现为 n+1。 | ||
在 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\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^{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>{}^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 \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]
定义
高德纳箭头由如下公式递归定义:
其中, 均为正整数, 为自然数,。
在计算高德纳箭头时,如无括号,按照从右往左的顺序计算,即:
若将高德纳箭头的右结合律更替为左结合律,其余定义不变,将得到下箭头记号。
性质
高德纳箭头有如下性质:
展开
恒等律
增长率
高德纳箭头的 FGH 增长率为 ,特别地,。
该推论可通过审视以下三组式子得到:
超运算
高德纳箭头是目前已被广泛认可、基本采用的超运算记号。
若定义后继运算的运算等级为 0,那么 n 个高德纳箭头的运算等级为 n+2。
历史
高德纳箭头是由 Donald Ervin Knuth 在 1976 年发明的大数记号[2],曾在 1977 年被 Martin Gardner 用于递归地定葛立恒数。[3]
而本人并未在论文中使用高德纳箭头或超运算来估计 Graham问题 的上界,而是使用了类似 ACKERMANN函数 的递归函数 ,和分别近似为 的函数。[4][5]
直观理解
高德纳箭头本质上是一种高级运算“折叠”低级运算的记号。
后继是最基础的运算,表现为 n+1。
在 n+m 中,运算 + 折叠了对 n 的 m 次后继运算,即
.
在 中,运算 折叠了对 n 的 m 次 + 运算,即
.
在 ( ) 中,运算 折叠了对 n 的 m 次 运算,即
.
在 ( ) 中,运算 折叠了对 n 的 m 次 运算,即
. (注意是右结合)
以此类推。最终,我们得到了高德纳箭头的形式化定义:
在 中,运算 折叠了对 n 的 m 次 运算,即
计算示例
参考资料
- ↑ Guy, R. K. and Selfridge, J. L. "The Nesting and Roosting Habits of the Laddered Parenthesis." Amer. Math. Monthly 80, 868-876, 1973.
- ↑ 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
- ↑ 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
- ↑ 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
- ↑ 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