細編集の要約なし |
Aycabtabot (メッセージウォール | 投稿記録) 細 (from bot!) |
||
8行目: | 8行目: | ||
ここで、 \(a\) から外側へ \(b\) 個コピーされている。 |
ここで、 \(a\) から外側へ \(b\) 個コピーされている。 |
||
− | [[急 |
+ | [[急増加関数]]では、 \(f_{\omega \times 2+1}(n)\) が爆発の増加速度となる。 |
== 疑似コード == |
== 疑似コード == |
2014年3月24日 (月) 19:33時点における版
爆発 (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