超運算序列 是數學 中一種二元運算 的序列 ,前三項 分別為加法 、乘法 、冪 ,一般來說,除了序列中第一項的加法運算之外,序列中每一項的運算都是重複的前一項的運算(例如乘法是重複的加法:
a
⋅
b
=
a
+
a
+
a
+
⋯
+
a
⏟
b
{\displaystyle a\cdot b=\underbrace {a+a+a+\cdots +a} _{b}}
,冪是重複的乘法:
a
b
=
a
⋅
a
⋅
a
⋅
…
⋅
a
⏟
b
{\displaystyle a^{b}=\underbrace {a\cdot a\cdot a\cdot \ldots \cdot a} _{b}}
)。這些運算通稱為超運算 (或稱為hyper運算符 )。序列中的第n 項稱為超-n 運算 或第n 級的超運算 ,其符號為[n ] 。英文則由魯賓·古德斯坦 命名,當n ≥4時,由n 的希臘語 前綴 加上後綴 -ation組成(例如超-4運算 稱為tetration ,超-5運算 稱為pentation )。[ 1] 當n ≥3 時,使用高德納箭號表示法 可將超-n 運算的符號表示為(n -2)個箭頭。
超運算可通過遞歸 進行定義,對於所有正整數 a ,正整數b 和正整數n :
a
[
1
]
b
=
a
+
b
,
for
n
>
1
,
a
[
n
]
b
=
a
[
n
−
1
]
(
a
[
n
−
1
]
(
a
[
n
−
1
]
⋯
(
a
[
n
−
1
]
(
a
[
n
−
1
]
a
⏟
b
)
)
⋯
)
)
{\displaystyle a[1]b=a+b,\ {\text{for}}\ n>1,\ a[n]b=\underbrace {a[n-1](a[n-1](a[n-1]\cdots (a[n-1](a[n-1]a} _{b}))\cdots ))}
除這一最常見的定義之外,超運算還有其他的變體。(見下文 )
1914年,阿爾伯特·貝內特(Albert Bennett)最早提出了超運算,他發展出了一套交換超運算(見下文 )的理論。[ 4] 12年之後,威廉·阿克曼 定義了函數
ϕ
(
a
,
b
,
n
)
{\displaystyle \phi (a,b,n)}
[ 5] ,和超運算序列已經有了某種程度上的相似。最早的使用三個自變量的阿克曼函數 使用了同樣的遞歸法則,但有兩點與現在的超運算不同。一是它定義了
n
=
0
{\displaystyle n=0}
時為加法、
n
=
1
{\displaystyle n=1}
時為乘法、
n
=
2
{\displaystyle n=2}
時為冪運算,二是由其對
ϕ
{\displaystyle \phi }
初始條件的定義能得到
ϕ
(
a
,
b
,
3
)
=
a
[
4
]
(
b
+
1
)
{\displaystyle \phi (a,b,3)=a[4](b+1)}
,最後的運算結果與超運算不同。[ 6] [ 7] [ 8]
1947年,魯賓·古德斯坦 [ 1] 提出現在所使用的超運算序列,只是那時他使用記號
G
(
n
,
a
,
b
)
{\displaystyle G(n,a,b)}
來表示,而非今天的
a
[
n
]
b
{\displaystyle a[n]b}
。在1947年的論文中,古德斯坦還引進了冪運算之後超運算的英文名稱,即tetration、pentation、hexation等。
下表列出了曾用來表示超運算的各種符號表示法:
More information , 使用(對於 ...
名稱
符號表示
註解
高德納箭號表示法
a
↑
n
−
2
b
{\displaystyle a\uparrow ^{n-2}b}
高德納 使用(對於
n
≥
3
{\displaystyle n\geq 3}
)[ 9] ,也在相關參考書目中提及[ 10] [ 11]
古德斯坦表示法
G
(
n
,
a
,
b
)
{\displaystyle G(n,a,b)}
魯賓·古德斯坦 使用[ 1]
初始阿克曼函數
A
(
a
,
b
,
n
−
1
)
{\displaystyle A(a,b,n-1)}
與超運算並不完全相同
現代阿克曼函數
A
(
n
,
b
−
3
)
+
3
=
2
[
n
]
b
{\displaystyle A(n,b-3)+3=2[n]b}
和以2為底的超運算相同
南比爾表示法
a
⊗
n
−
1
b
{\displaystyle a\otimes ^{n-1}b}
南比爾(K. K. Nambiar)使用(對於
n
≥
1
{\displaystyle n\geq 1}
)[ 12]
框表示法
a
n
b
{\displaystyle a{\,{\begin{array}{|c|}\hline {\!n\!}\\\hline \end{array}}\,}b}
魯佐勃夫(C. A. Rubtsov)與羅莫里奧(G. F. Romerio)使用[ 13] [ 2]
上標表示法
a
(
n
)
b
{\displaystyle a{}^{(n)}b}
默納福(Robert Munafo)使用[ 14]
下標表示法
a
(
n
)
b
{\displaystyle a{}_{(n)}b}
默納福用來表示低級超運算[ 14]
方括號表示法
a
[
n
]
b
{\displaystyle a[n]b}
在一些在線論壇中使用,利於ASCII 表示
康威鏈式箭號表示法
a
→
b
→
(
n
−
2
)
{\displaystyle a\to b\to (n-2)}
約翰·何頓·康威 使用(對於
n
≥
3
{\displaystyle n\geq 3}
)
Close
1928年,威廉·阿克曼 提出了一個三自變量的函數
ϕ
(
a
,
b
,
n
)
{\displaystyle \phi (a,b,n)}
,後來發展為現有的兩個自變量的阿克曼函數 。初始的阿克曼函數與現在的超運算之間的區別更大,因為他當時使用了初始條件:對所有
n
>
2
{\displaystyle n>2}
,有
ϕ
(
a
,
0
,
n
)
=
a
{\displaystyle \phi (a,0,n)=a}
。另外他還將
n
=
0
{\displaystyle n=0}
指定為加法、
n
=
1
{\displaystyle n=1}
為乘法、
n
=
2
{\displaystyle n=2}
為冪。因而,冪運算及更高階的運算就有了完全不同的結果。
More information , ...
n
運算
註釋
0
F
0
(
a
,
b
)
=
a
+
b
{\displaystyle F_{0}(a,b)=a+b}
1
F
1
(
a
,
b
)
=
a
b
{\displaystyle F_{1}(a,b)=ab}
2
F
2
(
a
,
b
)
=
a
b
{\displaystyle F_{2}(a,b)=a^{b}}
3
F
3
(
a
,
b
)
=
a
[
4
]
(
b
+
1
)
{\displaystyle F_{3}(a,b)=a[4](b+1)}
類似超-4運算,但其迭代函數 比普通超-4運算更為複雜
4
F
4
(
a
,
b
)
=
(
x
↦
a
[
4
]
(
x
+
1
)
)
b
(
a
)
{\displaystyle F_{4}(a,b)=(x\mapsto a[4](x+1))^{b}(a)}
不要與超-5運算相混淆
Close
路莎·彼得(Rózsa Péter)還曾用
A
(
0
,
b
)
=
2
b
+
1
{\displaystyle A(0,b)=2b+1}
作初始條件,但無法形成一個超運算等級。
1984年,C.W.克萊恩肖(C. W. Clenshaw)和F.W.J.奧立弗(F. W. J. Olver)開始討論如何使用超運算以防止計算機浮點數 溢出。[ 15] 此後,很多人[ 16] [ 17] [ 18] 都開始對於超運算在浮點數表示中的應用產生興趣。在探討超-4運算時,克萊恩肖等人曾令
F
n
(
a
,
0
)
=
0
{\displaystyle F_{n}(a,0)=0}
作為初始條件,這就產生了又一個超運算等級。
More information , ...
n
運算
註釋
1
F
1
(
a
,
b
)
=
a
+
b
{\displaystyle F_{1}(a,b)=a+b}
2
F
2
(
a
,
b
)
=
a
b
=
e
ln
(
a
)
+
ln
(
b
)
{\displaystyle F_{2}(a,b)=ab=e^{\ln(a)+\ln(b)}}
3
F
3
(
a
,
b
)
=
a
b
=
e
b
ln
(
a
)
{\displaystyle F_{3}(a,b)=a^{b}=e^{b\ln(a)}}
4
F
4
(
a
,
b
)
=
a
[
4
]
(
b
−
1
)
{\displaystyle F_{4}(a,b)=a[4](b-1)}
類似超-4運算,但其迭代函數 比普通超-4運算更為複雜
5
F
5
(
a
,
b
)
=
(
x
↦
a
[
4
]
(
x
−
1
)
)
b
(
0
)
{\displaystyle F_{5}(a,b)=(x\mapsto a[4](x-1))^{b}(0)}
不要與超-5運算相混淆
Close
1914年阿爾伯特·貝內特 提出了超運算,很可能是關於超運算最早的嘗試。交換超運算通過以下遞歸法則定義:
F
n
+
1
(
a
,
b
)
=
exp
(
F
n
(
ln
(
a
)
,
ln
(
b
)
)
)
{\displaystyle F_{n+1}(a,b)=\exp(F_{n}(\ln(a),\ln(b)))}
由於a和b的對稱性,意味着所有的超運算都是可交換的。但由於序列並不包括冪運算,因此也就不能成為一個超運算等級。
More information , ...
n
運算
註釋
0
F
0
(
a
,
b
)
=
ln
(
e
a
+
e
b
)
{\displaystyle F_{0}(a,b)=\ln(e^{a}+e^{b})}
1
F
1
(
a
,
b
)
=
a
+
b
=
ln
(
e
a
e
b
)
{\displaystyle F_{1}(a,b)=a+b=\ln(e^{a}e^{b})}
2
F
2
(
a
,
b
)
=
a
b
=
e
ln
(
a
)
+
ln
(
b
)
{\displaystyle F_{2}(a,b)=ab=e^{\ln(a)+\ln(b)}}
由對數 性質而來
3
F
3
(
a
,
b
)
=
e
ln
(
a
)
ln
(
b
)
{\displaystyle F_{3}(a,b)=e^{\ln(a)\ln(b)}}
冪運算的可交換形式
4
F
4
(
a
,
b
)
=
e
e
ln
(
ln
(
a
)
)
ln
(
ln
(
b
)
)
{\displaystyle F_{4}(a,b)=e^{e^{\ln(\ln(a))\ln(\ln(b))}}}
不要與超-4運算相混淆
Close
均衡超運算於1991年首先由克萊門特·弗拉皮耶(Clément Frappier)提出[ 19] ,這種超運算是基於函數
x
x
{\displaystyle x^{x}}
的,因而與斯坦豪斯-莫澤表示法 (Steinhaus-Moser notation)有關。均衡超運算的遞歸法則是
F
n
+
1
(
a
,
b
)
=
(
x
→
F
n
(
x
,
x
)
)
log
2
(
b
)
(
a
)
{\displaystyle F_{n+1}(a,b)=(x\to F_{n}(x,x))^{\log _{2}(b)}(a)}
還有一種變化形式的特點是從左到右的順序進行求值,即:
a
+
b
=
(
a
+
(
b
−
1
)
)
+
1
{\displaystyle a+b=(a+(b-1))+1}
a
×
b
=
(
a
×
(
b
−
1
)
)
+
a
{\displaystyle a\times b=(a\times (b-1))+a}
a
b
=
(
a
(
b
−
1
)
)
×
a
{\displaystyle a^{b}=(a^{(b-1)})\times a}
令(通過°或下標)
a
(
n
+
1
)
b
=
(
a
(
n
+
1
)
(
b
−
1
)
)
(
n
)
a
{\displaystyle a_{(n+1)}b=(a_{(n+1)}(b-1))_{(n)}a}
,有初始條件
a
(
1
)
b
=
a
+
b
,
a
(
2
)
0
=
0
{\displaystyle a_{(1)}b=a+b,a_{(2)}0=0}
,且對所有
n
>
2
{\displaystyle n>2}
有
a
(
n
)
0
=
1
{\displaystyle a_{(n)}0=1}
。
這樣所產生的一個問題是,在4階時它就與通常的定義不同:
a
(
4
)
b
=
a
(
a
(
b
−
1
)
)
{\displaystyle a_{(4)}b=a^{(a^{(b-1)})}}
。出現這一問題的原因在於加法和乘法運算有一種稱為結合律 的對稱性,但這在冪運算上並不成立。由於通過這種超運算所得到的結果在3階以上都比普通的超運算更小,因而把這種超運算稱為低級超運算。
More information , ...
n
運算
註釋
0
a
+
1
{\displaystyle a+1}
後繼函數
1
F
1
(
a
,
b
)
=
a
+
b
{\displaystyle F_{1}(a,b)=a+b}
2
F
2
(
a
,
b
)
=
a
b
{\displaystyle F_{2}(a,b)=ab}
3
F
3
(
a
,
b
)
=
a
b
{\displaystyle F_{3}(a,b)=a^{b}}
冪運算
4
F
4
(
a
,
b
)
=
a
a
(
b
−
1
)
{\displaystyle F_{4}(a,b)=a^{a^{(b-1)}}}
不要與超-4運算相混淆
5
F
5
(
a
,
b
)
=
(
x
→
x
x
(
a
−
1
)
)
b
−
1
(
a
)
{\displaystyle F_{5}(a,b)=(x\to x^{x^{(a-1)}})^{b-1}(a)}
不要與超-5運算相混淆
Close
超運算等級推廣至實數 的可能結果,當
F
n
(
3
,
3
)
{\displaystyle F_{n}(3,3)}
的n為實數時。目前實數階的超運算未有相關理論能夠計算,但仍可以以近似的方式得出結果。[ 20]
在取不同的初始條件或不同的遞歸法則時,就會產生不同的運算。一些數學家擴展出了超運算的許多變體。
通常,超運算等級(hyperoperation hierarchy)
(
S
,
I
,
F
)
{\displaystyle (S,\,I,\,F)}
是一個以集合
I
{\displaystyle I}
為索引集 、基於集合
S
{\displaystyle S}
的二元運算 族
(
F
n
)
n
∈
I
{\displaystyle (F_{n})_{n\in I}}
。對於
i
,
j
,
k
∈
I
{\displaystyle i,j,k\in I}
,有:
F
i
(
a
,
b
)
=
a
+
b
{\displaystyle F_{i}(a,b)=a+b}
(加法)
F
j
(
a
,
b
)
=
a
b
{\displaystyle F_{j}(a,b)=ab}
(乘法)
F
k
(
a
,
b
)
=
a
b
{\displaystyle F_{k}(a,b)=a^{b}}
(冪)
如果不滿足最後一個條件的話,就能將交換超運算包括在內。當然,也可以明確地定義每一個超運算,但這就超出了我們討論的範圍。大多數的變體形式只包含了對於後繼函數 (即加法)的定義,而乘法則由遞歸法則來進行定義。由於這屬於對超運算等級的定義,而非等級本身的性質,很難給出形式上的定義。
對於超運算,除了古德斯坦給出的定義外,還有很多其他可能性。如果對
F
n
(
a
,
0
)
{\displaystyle F_{n}(a,0)}
和
F
n
(
a
,
1
)
{\displaystyle F_{n}(a,1)}
採用不同的初始條件,則產生的超運算在比冪運算更高階時就會有不同的結果。現今的超運算定義的條件包括對所有
n
≥
3
{\displaystyle n\geq 3}
有
F
n
(
a
,
0
)
=
1
{\displaystyle F_{n}(a,0)=1}
,而在其他形式中也有
F
n
(
a
,
0
)
=
a
{\displaystyle F_{n}(a,0)=a}
或
F
n
(
a
,
0
)
=
0
{\displaystyle F_{n}(a,0)=0}
的情況。
關於超運算的一個未解決問題是超運算等級
(
N
,
N
,
F
)
{\displaystyle (\mathbb {N} ,\mathbb {N} ,F)}
是否能推廣到
(
R
,
R
,
F
)
{\displaystyle (\mathbb {R} ,\mathbb {R} ,F)}
[ 21] :5 甚至
(
C
,
C
,
F
)
{\displaystyle (\mathbb {C} ,\mathbb {C} ,F)}
,以及
(
C
,
F
n
)
{\displaystyle (\mathbb {C} ,F_{n})}
是否能成為一個擬群 。
魯賓·古德斯坦 使用超運算序列定義了一套能表達非負整數的記數系統 [ 1] 。
Daniel Zwillinger. CRC standard mathematical tables and formulae, 31st Edition. CRC Press. 2002: 4. ISBN 1584882913 .
Eric W. Weisstein. CRC concise encyclopedia of mathematics, 2nd Edition. CRC Press. 2003: 127–128. ISBN 1584883472 .