数理論理学・集合論の問題
自然数全体を ( を含む)とする。カントールの対関数 を
で定める。 は全単射であるから、各 に対して をみたす がただ 1 つ存在する。これを , と書く( は原始再帰関数である)。
関数 を、累積再帰(course-of-values recursion)により
で定める( なので well-defined であり、 は原始再帰関数である)。 の値を求めよ。
この問題で使うもの
- 累積再帰(説明と入口の問題)
- カントールの対関数とその逆(説明と入口の問題)
この問題を解けるようになるまで(26 技能)
読み込み中…
右端(太枠)がこの問題で使う技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。
ヒント
行き詰まったら、上から順に 1 つずつ開いてください。
ヒント 1
を求めるには、まず を に分解し、それらの の値を再帰的に求める。 に達するまで分解を繰り返し、得られた値を下から組み立てる。
ヒント 2
の逆算は、 をみたす最大の を取り、, とする。番号を二分木と見なすと は左右を入れ替えた木の番号を与える。
ヒント 3
, , , , , となる。これから , , , , が得られる。
答えと解説
答えを見る
どこでつまずきましたか?(選ぶと、戻る場所を案内します)
解説を読む
考え方. 二分木(各内部節点がちょうど 2 つの子をもつ順序木)に次のゲーデル数をつける:葉 の番号を 、左部分木 ・右部分木 をもつ木 の番号を とする。 が全単射なので、これは二分木全体と の全単射になる。番号 の木を と書くと、 の木は である。 の定義は「左右を入れ替えたものを再帰的に作る」ことにあたり、 は の鏡像の番号である。以下、実際に計算する。
逆関数の計算. に対し をみたす最大の をとり、, とすれば , 。
の分解(木 の復元).
- : より , , 。よって 。
- : より , , 。。
- : より , , 。。
- :, , 。。
- : より , , 。。
- :。。
の計算(下から順に).
- 。
- 。
- 。
- 。
- 。
- 。
- 。
(検算:, より , となり、 が の鏡像であることと整合する。)
よって 。
別解
()。 は を用いて計算する。
より , , 。よって で、
。
小さい値の計算( と ):
-
- : , より
- : , より
- : , より
- : , より
- : , より
- : , より
したがって 。
検算: 、。