1. 具体的に計算してみる
例として、
を考えてみます。
1-1. よく見るゲーデル数化の方法
となります。
1-2. 2進数を4進数ではさむ方法
この記事のテーマです。
次のような計算を行います*1。
(1) 数列の各数を2進数にする
(2)
というように、2進数化した各数を2で挟む
(3) 全体を4進数として計算する
上記の例の場合、
であるので、
となります。
2. 増加具合を見てみる
この2つの方法の、関数としての増加具合を考えてみたいと思います。問題を簡略化するため、扱う数列をの2つとします。
なんとなく、素因数分解作戦を、4進数作戦をとしておきます。
2-1. よく見るゲーデル数化の方法
となるので、
であることを考えると、だいたい指数関数くらいの増え方をするんだろうなということが分かります。
2-2. 2進数を4進数ではさむ方法
まずの2進数表記は、小数点以下を切り捨てる関数を用いて、 桁になります。
(同様に、の2進数表記は 桁となります)
したがって、
を4進数で表記したときの桁数は、
くらいになるでしょうか。
ここで、 という 桁の4進数は、10進数に直すと
くらいになることを考えると、
くらいの関数であることが分かります。
3. まとめ
以上から分かることは、
フルの指数関数ではなく、肩が対数となるような増加度の指数関数を使ってどうにかこうにかすれば、有限数列が表現できる
ということです。
そのため、
・ という関数を使用可能とする
・通常の指数関数の使用に一部制限を加える
ような縛りプレイをしたとしても、有限数列を自然数に突っこむことが可能となります。
この という関数は、ネルソンのスマッシュ関数と呼ばれ、証明力の弱い自然数のシステムでメタ数学的議論をするために使用されているようです*2。
*1:E. Nelson, Predicative Arithmetic, Princeton University Press, 1986.
*2:Buss, S. "Nelson's Work on Logic and Foundations and Other Reflections on Foundations of Mathematics" In Diffusion, Quantum Theory, and Radically Elementary Mathematics, edited by W. Faris, Princeton University Press, Princeton and Oxford, 2006, pp.183-208.