ハイパー演算子

ハイパー演算子（ハイパーえんざんし、hyper operator）は、加算、乗算、冪乗を一般化した演算のための演算子である。
表記.
表記の制約のため、以後丸囲み文字(①,②,③,…)を丸かっこ入り文字 ("n") で表すものとする。
加算演算子を上付き(1) ("a" + "b" = "a" (1)"b")、乗算演算子を上付き(2) ("ab" = "a" (2)"b")、冪乗演算子を上付き(3) ("a""b" = "a" (3)"b")で表し、それらを一般の非負整数"n"に一般化した上付き(n) ("a" (n) "b") がハイパー演算子である。
それらを関数形式で表す hyper"n"、"n"を変数とした3変数関数 hyper も定義される。hyper1は加算、hyper2は乗算、hyper3は冪乗であり、さらにhyper4はテトレーション (tetration)、hyper5はペンテーション (pentation)、hyper6はヘキセーション (hexation)･･･と呼ばれる。
"n" = 0～4 の例は次のとおり。
hyper0は、第2被演算子 "b" の後者関数（第1オペランド "a" は無視される）とする。ただし、他の定義を使うこともある。
"n" > 4 の場合は次のように定める。これは "n" > 1 の場合全てに成り立つが、"n" = 1 では成り立たない。
他の表記法との関係.
"n" ≥ 3 に対しては、クヌースの矢印表記やコンウェイのチェーン表記との間に次の関係が成り立つ。
また、"n" ≥ 1 に対しては、Bowerの拡張演算子 (Jonathan Bowers' Extended Operator) との間に次の関係が成り立つ。
再帰的定義.
次のように再帰的に定義できる。"b" = 0のときの例外処理が"n"によって違うことに注意。
実数への拡張.
冪乗を指数関数に拡張したような、"b"、"n" の実数への自然な拡張はなされていない。
下付きハイパー演算子.
"n" ≥ 3（冪乗） 以上では結合律が成り立たないので、右からの優先順位が定められていて、
である。
それに対し、ハイパー演算子を下付きにすることで、優先順位を左からとする演算を表せる。つまり、
である。
ただし、下付きハイパー"n"+1演算子はハイパー"n"演算子を使って簡単に表せる、たとえば
（冪乗法則より）なので、本質的に新しい演算ではなく、下付きハイパー演算子の用途はあまりない。