
n > 2 and m > 1 の時の n {{{1}}} m を計算しようとすると、こうなります。
爆発 (Explosion) は、BEAFで \(a\ \{\{\{1\}\}\}\ b = \{a,b,1,3\}\) と書く関数である[1]。
直感的には、爆発はこのように定義出来る。
\[a\ \{\{\{1\}\}\}\ b = a\ \{\{a\ \{\{a \ldots \{\{a\}\} \ldots a\}\}\ a\}\}\ a\]
ここで、 \(a\) から外側へ \(b\) 個コピーされている。
急増加関数では、 \(f_{\omega \times 2+1}(n)\) が爆発の増加速度となる。
疑似コード[]
以下が、爆発の疑似コードの例である。
function explosion(a, b): result := a repeat b - 1 times: result := hyperexpansion(a,a,result) return result function hyperexpansion(a, b, n): result := a repeat b - 1 times: if n = 1: result := hyper(a,a,result+2) else: result := hyperexpansion(a, result, n - 1) return result
function hyper(a, b, n): if n = 1: return a + b result := a repeat b - 1 times: result := hyper(a, result, n - 1) return result