1 数詞ごとの表現
定義 1.1. k ≥ 1 k\ge1 k ≥ 1 とし、R ⊆ N k R\subseteq\mathbb N^k R ⊆ N k を関係とする。L A L_A L A 論理式ρ R ( x 1 , … , x k ) \rho_R(x_1,\ldots,x_k) ρ R ( x 1 , … , x k ) がR R R をQ Q Q で数詞ごとに表現する (numeralwise representation of a relation ) とは、任意の標準自然数n 1 , … , n k n_1,\ldots,n_k n 1 , … , n k について次が成り立つことをいう。
R ( n 1 , … , n k ) ⟹ Q ⊢ ρ R ( n ‾ 1 , … , n ‾ k ) , ¬ R ( n 1 , … , n k ) ⟹ Q ⊢ ¬ ρ R ( n ‾ 1 , … , n ‾ k ) . \begin{aligned}
R(n_1,\ldots,n_k)&\quad\Longrightarrow\quad
Q\vdash\rho_R(\overline n_1,\ldots,\overline n_k),\\
\neg R(n_1,\ldots,n_k)&\quad\Longrightarrow\quad
Q\vdash\neg\rho_R(\overline n_1,\ldots,\overline n_k).
\end{aligned} R ( n 1 , … , n k ) ¬ R ( n 1 , … , n k ) ⟹ Q ⊢ ρ R ( n 1 , … , n k ) , ⟹ Q ⊢ ¬ ρ R ( n 1 , … , n k ) .
この定義では、R ( n 1 , … , n k ) R(n_1,\ldots,n_k) R ( n 1 , … , n k ) が成り立つ場合のQ ⊢ ρ R ( n ‾ 1 , … , n ‾ k ) Q\vdash\rho_R(\overline n_1,\ldots,\overline n_k) Q ⊢ ρ R ( n 1 , … , n k ) だけでなく、成り立たない場合のQ ⊢ ¬ ρ R ( n ‾ 1 , … , n ‾ k ) Q\vdash\neg\rho_R(\overline n_1,\ldots,\overline n_k) Q ⊢ ¬ ρ R ( n 1 , … , n k ) も要求される。
定義 1.2. k ≥ 1 k\ge1 k ≥ 1 とし、f : N k → N f\colon\mathbb N^k\to\mathbb N f : N k → N を全関数とする。L A L_A L A 論理式φ f ( x 1 , … , x k , y ) \varphi_f(x_1,\ldots,x_k,y) φ f ( x 1 , … , x k , y ) がf f f をQ Q Q で強く数詞ごとに表現する (strong numeralwise representation of a function ) とは、任意の標準入力n 1 , … , n k n_1,\ldots,n_k n 1 , … , n k とm = f ( n 1 , … , n k ) m=f(n_1,\ldots,n_k) m = f ( n 1 , … , n k ) について
Q ⊢ ∀ y ( φ f ( n ‾ 1 , … , n ‾ k , y ) ↔ y = m ‾ ) Q\vdash\forall y\bigl(
\varphi_f(\overline n_1,\ldots,\overline n_k,y)
\leftrightarrow y=\overline m\bigr) Q ⊢ ∀ y ( φ f ( n 1 , … , n k , y ) ↔ y = m ) が成り立つことをいう。
この定義では、正しい出力m ‾ \overline m m がφ f \varphi_f φ f を満たすことと、任意の出力候補がm ‾ \overline m m に限られることが同時に要求される。一方、自由な入力変数についてのQ ⊢ ∀ x ⃗ ∃ ! y φ f ( x ⃗ , y ) Q\vdash\forall\vec x\exists!y\,\varphi_f(\vec x,y) Q ⊢ ∀ x ∃ ! y φ f ( x , y ) は、この定義の要求に含まれない。
2 有界量化子とΔ 0 \Delta_0 Δ 0 論理式・Σ 1 \Sigma_1 Σ 1 論理式
固定した標準入力についての有限検証を述べる前に、量化子に上界を与える書き方と、そのように上界を与えた量化子だけで作る論理式の類を定める。ここで定める二つの類は、証明述語に固有のものではない。二つの類は、Robinson 算術Q Q Q を含む理論について一般に用いられる。
四つの略記の∃ d \exists d ∃ d を有界量化子として扱う規約は、次の二つの事実を根拠とする。標準モデルでは、四つの略記のいずれについても証人d d d はs s s の値以下であるから、この規約のもとでもN \mathbb N N における決定可能性は保たれる。一方、Q Q Q では加法の単調性が証明されないため、Q Q Q の内部では証人の大小そのものを用いることができない。しかし、Q Q Q の内部でこの規約が必要になるのは、数詞を代入した場合だけである。数詞を代入した場合には、補題 3.3 により得られる有限分解によって、証人の候補が有限個の数詞に限られる。本記事と後続の記事でΔ 0 \Delta_0 Δ 0 論理式について主張することは、いずれもこの二つの事実のどちらかを用いて証明される。
≼ \preccurlyeq ≼ の定義ではt t t が加法の第2引数に置かれるので、t t t が数詞n ˉ \bar n n ˉ のときはd + n ˉ = S n d d+\bar n=S^nd d + n ˉ = S n d を§E19.15 定義 2.1 (Q4) 、§E19.15 定義 2.1 (Q5) の固定回数の適用で得ることができる。一方、≤ \le ≤ の定義に現れる項n ˉ + d \bar n+d n ˉ + d の加法の第2引数は変数d d d であるため、n ˉ + d \bar n+d n ˉ + d には二つの公理を適用することができない。したがって、≤ \le ≤ については同じ書き換えを行うことができない。≼ \preccurlyeq ≼ と≺ \prec ≺ は、この書き換えが必要になる箇所でだけ用いる。
3 固定上界の有限分解と展開
補題 3.1. r r r を固定した標準自然数とする。Q Q Q では、自由変数x x x について
x < r ‾ ↔ ( x = 0 ‾ ∨ ⋯ ∨ x = r − 1 ‾ ) , x ≤ r ‾ ↔ ( x = 0 ‾ ∨ ⋯ ∨ x = r ‾ ) \begin{aligned}
x<\overline r&\leftrightarrow
(x=\overline0\lor\cdots\lor x=\overline{r-1}),\\
x\le\overline r&\leftrightarrow
(x=\overline0\lor\cdots\lor x=\overline r)
\end{aligned} x < r x ≤ r ↔ ( x = 0 ∨ ⋯ ∨ x = r − 1 ) , ↔ ( x = 0 ∨ ⋯ ∨ x = r ) を有限回の公理適用で証明することができる。r = 0 r=0 r = 0 の第1の選言は空である。
補題 3.2. r r r を標準自然数とし、θ ( i , z ⃗ ) \theta(i,\vec z) θ ( i , z ) を任意のL A L_A L A 論理式とする。Q Q Q では、固定数詞r ‾ \overline r r による有界全称条件を有限連言へ展開することができる。すなわち
Q ⊢ ∀ i ( i < r ‾ → θ ( i , z ⃗ ) ) ↔ ⋀ j < r θ ( j ‾ , z ⃗ ) . Q\vdash
\forall i\,(i<\overline r\to\theta(i,\vec z))
\leftrightarrow
\bigwedge_{j<r}\theta(\overline j,\vec z). Q ⊢ ∀ i ( i < r → θ ( i , z )) ↔ j < r ⋀ θ ( j , z ) . r = 0 r=0 r = 0 の右辺は恒真式とする。
証明. 補題 3.1 により、
Q ⊢ i < r ‾ ↔ ( i = 0 ‾ ∨ ⋯ ∨ i = r − 1 ‾ ) Q\vdash i<\overline r
\leftrightarrow(i=\overline0\lor\cdots\lor i=\overline{r-1}) Q ⊢ i < r ↔ ( i = 0 ∨ ⋯ ∨ i = r − 1 ) である。左辺の有界全称条件からは、i = j ‾ i=\overline j i = j を各j < r j<r j < r について代入してθ ( j ‾ , z ⃗ ) \theta(\overline j,\vec z) θ ( j , z ) を得る。逆に右辺の有限連言を仮定する。i < r ‾ i<\overline r i < r を満たすi i i は表示した有限選言のいずれかの数詞に等しいため、等号の置換可能性によりθ ( i , z ⃗ ) \theta(i,\vec z) θ ( i , z ) を得る。i i i を全称化すると左辺が従う。r = 0 r=0 r = 0 では候補の選言と右辺の連言がともに空であり、同じ論証が成り立つ。▨
この補題は、自由変数r r r に関する一様な帰納法を述べたものではない。証明では、各標準自然数r r r に対して別々の有限導出を構成する。
数詞を代入した有界文についてQ Q Q が真偽を決定することを、次の補題で述べる。この補題の証明でも、固定した標準自然数ごとに長さの異なる有限導出を構成し、Q Q Q 内の帰納法を用いない。
補題 3.3.
任意の標準自然数m m m について
Q ⊢ ∀ z ( z ≼ m ˉ ↔ ( z = 0 ˉ ∨ ⋯ ∨ z = m ˉ ) ) , Q ⊢ ∀ z ( z ≺ m ˉ ↔ ( z = 0 ˉ ∨ ⋯ ∨ z = m − 1 ‾ ) ) \begin{aligned}
Q&\vdash\forall z\,\bigl(z\preccurlyeq\bar m\leftrightarrow
(z=\bar0\lor\cdots\lor z=\bar m)\bigr),\\
Q&\vdash\forall z\,\bigl(z\prec\bar m\leftrightarrow
(z=\bar0\lor\cdots\lor z=\overline{m-1})\bigr)
\end{aligned} Q Q ⊢ ∀ z ( z ≼ m ˉ ↔ ( z = 0 ˉ ∨ ⋯ ∨ z = m ˉ ) ) , ⊢ ∀ z ( z ≺ m ˉ ↔ ( z = 0 ˉ ∨ ⋯ ∨ z = m − 1 ) )
である。m = 0 m=0 m = 0 の第2の選言は空とする。
任意の標準自然数m m m についてQ ⊢ ∀ z ( z ≺ m ˉ ∨ m ˉ ≼ z ) Q\vdash\forall z\,(z\prec\bar m\lor\bar m\preccurlyeq z) Q ⊢ ∀ z ( z ≺ m ˉ ∨ m ˉ ≼ z ) である。
δ ( x ⃗ ) \delta(\vec x) δ ( x ) を定義 2.1 のΔ 0 \Delta_0 Δ 0 論理式とする。任意の標準自然数n ⃗ \vec n n について、N ⊨ δ ( n ⃗ ) \mathbb N\models\delta(\vec n) N ⊨ δ ( n ) ならばQ ⊢ δ ( n ⃗ ‾ ) Q\vdash\delta(\overline{\vec n}) Q ⊢ δ ( n ) であり、N ⊭ δ ( n ⃗ ) \mathbb N\not\models\delta(\vec n) N ⊨ δ ( n ) ならばQ ⊢ ¬ δ ( n ⃗ ‾ ) Q\vdash\neg\delta(\overline{\vec n}) Q ⊢ ¬ δ ( n ) である。
証明. 主張 (1) を示す。z ≼ m ˉ z\preccurlyeq\bar m z ≼ m ˉ は∃ d ( d + z = m ˉ ) \exists d\,(d+z=\bar m) ∃ d ( d + z = m ˉ ) である。左から右を示す。§E19.15 定義 2.1 (Q3) をz z z へm + 1 m+1 m + 1 回適用すると、z z z は0 ˉ , … , m ˉ \bar0,\ldots,\bar m 0 ˉ , … , m ˉ のいずれかに等しいか、あるe e e についてz = S m + 1 e z=S^{m+1}e z = S m + 1 e である。最後の場合、§E19.15 定義 2.1 (Q5) をm + 1 m+1 m + 1 回用いるとd + S m + 1 e = S m + 1 ( d + e ) d+S^{m+1}e=S^{m+1}(d+e) d + S m + 1 e = S m + 1 ( d + e ) であり、m ˉ = S m 0 \bar m=S^m0 m ˉ = S m 0 と合わせて§E19.15 定義 2.1 (Q2) でm m m 個の後続者を消すとS ( d + e ) = 0 S(d+e)=0 S ( d + e ) = 0 を得るので、§E19.15 定義 2.1 (Q1) に反する。右から左は、各j ≤ m j\le m j ≤ m について§E19.15 補題 4.1 によりm − j ‾ + j ˉ = m ˉ \overline{m-j}+\bar j=\bar m m − j + j ˉ = m ˉ が得られることによる。≺ \prec ≺ の同値は、z ≺ m ˉ z\prec\bar m z ≺ m ˉ がS z ≼ m ˉ Sz\preccurlyeq\bar m S z ≼ m ˉ であることと、S z = 0 ˉ Sz=\bar0 S z = 0 ˉ が§E19.15 定義 2.1 (Q1) に反すること、およびS z = S j ˉ Sz=S\bar j S z = S j ˉ から§E19.15 定義 2.1 (Q2) でz = j ˉ z=\bar j z = j ˉ が従うことから得る。
主張 (2) を示す。§E19.15 定義 2.1 (Q3) をz z z へm m m 回適用すると、z z z は0 ˉ , … , m − 1 ‾ \bar0,\ldots,\overline{m-1} 0 ˉ , … , m − 1 のいずれかに等しいか、あるd d d についてz = S m d z=S^md z = S m d である。前者の各場合は主張 (1) によりz ≺ m ˉ z\prec\bar m z ≺ m ˉ を与える。後者では、§E19.15 定義 2.1 (Q4) 、§E19.15 定義 2.1 (Q5) をm m m 回用いてd + m ˉ = S m d = z d+\bar m=S^md=z d + m ˉ = S m d = z を得るのでm ˉ ≼ z \bar m\preccurlyeq z m ˉ ≼ z である。m = 0 m=0 m = 0 では最初の選言が空であり、§E19.15 定義 2.1 (Q4) のd + 0 = d d+0=d d + 0 = d から0 ˉ ≼ z \bar0\preccurlyeq z 0 ˉ ≼ z である。
主張 (3) をδ \delta δ の構成に関するメタ理論の帰納法で示す。数詞を代入した後、各量化子の上界と各原子式の項は閉項である。任意の閉項t t t についてQ ⊢ t = t N ‾ Q\vdash t=\overline{t^{\mathbb N}} Q ⊢ t = t N が成り立つことを、項の構成に関するメタ理論の帰納法で先に確かめる。t t t が0 0 0 のときは自明であり、t = S u t=Su t = S u のときは帰納法の仮定と等号の合同から従う。t = u + u ′ t=u+u' t = u + u ′ とt = u × u ′ t=u\times u' t = u × u ′ のときは、帰納法の仮定で両辺を数詞へ移したうえで、§E19.15 補題 4.1 により得られるQ ⊢ a ‾ + b ‾ = a + b ‾ Q\vdash\overline a+\overline b=\overline{a+b} Q ⊢ a + b = a + b とQ ⊢ a ‾ × b ‾ = a b ‾ Q\vdash\overline a\times\overline b=\overline{ab} Q ⊢ a × b = ab を用いる。原子式t = s t=s t = s については、両辺を値の数詞へ移したうえで、同補題により真の場合の等号の証明と偽の場合のQ ⊢ a ‾ ≠ b ‾ Q\vdash\overline a\ne\overline b Q ⊢ a = b が得られる。順序の略記t ≤ s t\le s t ≤ s 、t < s t<s t < s 、t ≼ s t\preccurlyeq s t ≼ s 、t ≺ s t\prec s t ≺ s については、閉項の値を数詞へ移したうえで、≤ \le ≤ と< < < には補題 3.1 を、≼ \preccurlyeq ≼ と≺ \prec ≺ には主張 (1) を適用して証人の候補を有限個の数詞へ分け、各候補について数詞の等式を§E19.15 補題 4.1 で判定する。命題結合子の場合は、部分式についての帰納法の仮定と命題論理の有限導出で閉じる。有界量化∀ v ≤ t δ ′ \forall v\le t\,\delta' ∀ v ≤ t δ ′ と∃ v ≤ t δ ′ \exists v\le t\,\delta' ∃ v ≤ t δ ′ は、t t t の値を数詞r ˉ \bar r r ˉ へ移した後、補題 3.1 により得られる同値v ≤ r ˉ ↔ ( v = 0 ˉ ∨ ⋯ ∨ v = r ˉ ) v\le\bar r\leftrightarrow(v=\bar0\lor\cdots\lor v=\bar r) v ≤ r ˉ ↔ ( v = 0 ˉ ∨ ⋯ ∨ v = r ˉ ) により、v = 0 ˉ , … , r ˉ v=\bar0,\ldots,\bar r v = 0 ˉ , … , r ˉ についての有限連言と有限選言へ展開されるので、各項に帰納法の仮定を適用することができる。上界が< < < で与えられる全称量化については、補題 3.2 により同じ展開が直接得られる。上界が< < < で与えられる存在量化は同じ補題 3.1 の第1の同値で、上界が≼ \preccurlyeq ≼ 、≺ \prec ≺ で与えられる有界量化は主張 (1) の有限分解で、それぞれ同様に扱う。▨
4 Q における有限列算術式 API
自然数上の対関数と有限列符号は§E19.17 定義 1.1 と§E19.17 定義 2.1 で固定し、Len、Entry、Concat の原始再帰性は§E19.17 定理 4.2 で証明した。本節では同じ外的な符号値を用いる。自然数上で固定した Pair、Cons、Len、Entry、Concat をQ Q Q の内部で扱うため、外側の関数名を算術言語の関数記号として追加せず、各関数のグラフを表す有限なL A L_A L A 論理式を固定する。
順序の略記x < y x<y x < y とx ≤ y x\le y x ≤ y は、定義 2.1 で固定したものを用いる。以下の各略記は、右辺へそのまま展開することができる。そのため、各略記は新しい対象言語記号ではない。
まず、対と Cons の raw 式を次のように固定する。
Pair Q 0 ( a , b , c ) : ⟺ ∃ w ( w = a + b ∧ c ≤ ( w × S w ) + ( b + b ) ∧ c + c = ( w × S w ) + ( b + b ) ) , Cons Q 0 ( a , t , c ) : ⟺ ∃ p ( Pair Q 0 ( a , t , p ) ∧ c = S p ) . \begin{aligned}
\operatorname{Pair}^{0}_Q(a,b,c)
&:\!\!\Longleftrightarrow
\exists w\bigl(w=a+b\land
c\le (w\times Sw)+(b+b)\land
c+c=(w\times Sw)+(b+b)\bigr),\\
\operatorname{Cons}^{0}_Q(a,t,c)
&:\!\!\Longleftrightarrow
\exists p\bigl(\operatorname{Pair}^{0}_Q(a,t,p)\land c=Sp\bigr).
\end{aligned} Pair Q 0 ( a , b , c ) Cons Q 0 ( a , t , c ) : ⟺ ∃ w ( w = a + b ∧ c ≤ ( w × S w ) + ( b + b ) ∧ c + c = ( w × S w ) + ( b + b ) ) , : ⟺ ∃ p ( Pair Q 0 ( a , t , p ) ∧ c = S p ) .
第1式は2 c = ( a + b ) ( a + b + 1 ) + 2 b 2c=(a+b)(a+b+1)+2b 2 c = ( a + b ) ( a + b + 1 ) + 2 b を表す。付加した有界条件は、標準自然数上では自動的に成り立つ。この有界条件は、固定入力における任意の出力候補を有限個の数詞へ分けるために用いる。
可変長の復号履歴は、Cons 列の Len または Entry を用いずに、一つの有限表についての条件を述べる式で表す。項の略記
M ( i , C ) : = S ( ( S i ) × C ) M(i,C):=S((Si)\times C) M ( i , C ) := S (( S i ) × C )
と、次の二式を固定する。
Tab Q 0 ( B , C , i , x ) : ⟺ x < M ( i , C ) ∧ ∃ q ( q ≤ B ∧ B = ( q × M ( i , C ) ) + x ) , Cell Q ( B , C , i , x ) : ⟺ Tab Q 0 ( B , C , i , x ) ∧ ∀ z ( Tab Q 0 ( B , C , i , z ) → z = x ) . \begin{aligned}
\operatorname{Tab}^{0}_Q(B,C,i,x)
&:\!\!\Longleftrightarrow
x<M(i,C)\land
\exists q\bigl(q\le B\land B=(q\times M(i,C))+x\bigr),\\
\operatorname{Cell}_Q(B,C,i,x)
&:\!\!\Longleftrightarrow
\operatorname{Tab}^{0}_Q(B,C,i,x)\land
\forall z\bigl(\operatorname{Tab}^{0}_Q(B,C,i,z)\to z=x\bigr).
\end{aligned} Tab Q 0 ( B , C , i , x ) Cell Q ( B , C , i , x ) : ⟺ x < M ( i , C ) ∧ ∃ q ( q ≤ B ∧ B = ( q × M ( i , C )) + x ) , : ⟺ Tab Q 0 ( B , C , i , x ) ∧ ∀ z ( Tab Q 0 ( B , C , i , z ) → z = x ) .
M ( i , C ) M(i,C) M ( i , C ) は文字どおりL A L_A L A の項S ( ( S i ) × C ) S((Si)\times C) S (( S i ) × C ) である。Tab の存在変数q q q にもq ≤ B q\le B q ≤ B を課したため、B , C , i B,C,i B , C , i が固定数詞なら Cell の全称節は二つの固定有界探索へ展開することができる。
Cell は復号履歴を一つの式で表すための証明内の補助関係にすぎず、有限列を表す公開 API ではない。公開する列の符号は引き続き右入れ子の Cons 符号だけである。
補題 4.2. m 0 , … , m r m_0,\ldots,m_r m 0 , … , m r を二つずつ互いに素な正の標準自然数とし、x 0 , … , x r x_0,\ldots,x_r x 0 , … , x r を標準自然数とする。このとき、すべてのi ≤ r i\le r i ≤ r について
B ≡ x i ( m o d m i ) B\equiv x_i\pmod{m_i} B ≡ x i ( mod m i ) を満たす標準自然数B B B が存在する。
証明. 最初に Bézout の等式を Euclid の互除法から導く。正の自然数a , b a,b a , b に除法を反復し、
r k − 1 = q k r k + r k + 1 , 0 ≤ r k + 1 < r k r_{k-1}=q_kr_k+r_{k+1},
\qquad 0\le r_{k+1}<r_k r k − 1 = q k r k + r k + 1 , 0 ≤ r k + 1 < r k とする。正の余りは真に減少するため、有限回で余り0 0 0 に達する。最後の非零余りd d d は、各等式を逆向きにたどるとa , b a,b a , b の公約数であり、a , b a,b a , b の任意の公約数は各余りを割るためd d d も割る。したがってd = gcd ( a , b ) d=\gcd(a,b) d = g cd( a , b ) である。また、最後の非零余りから等式を順に逆代入すると、整数u , v u,v u , v が存在して
d = u a + v b d=ua+vb d = u a + v b となる。
互いに素な二法m , n m,n m , n について、u m + v n = 1 um+vn=1 u m + v n = 1 を満たす整数u , v u,v u , v を取る。剰余α , β \alpha,\beta α , β に対して
x = α v n + β u m x=\alpha vn+\beta um x = α v n + β u m とおけば、x ≡ α ( m o d m ) x\equiv\alpha\pmod m x ≡ α ( mod m ) かつx ≡ β ( m o d n ) x\equiv\beta\pmod n x ≡ β ( mod n ) である。x x x をm n mn mn で割った非負の余りをB B B とすれば、B B B は同じ二つの合同式を満たす。これで二法の場合が従う。
法の個数に関する有限帰納法を用いる。一法m 0 m_0 m 0 の場合は、x 0 x_0 x 0 をm 0 m_0 m 0 で割った非負の余りをB 0 B_0 B 0 とすればよい。最初のk + 1 k+1 k + 1 個の合同式を満たす数をB k B_k B k とし、
M k = ∏ i = 0 k m i M_k=\prod_{i=0}^{k}m_i M k = i = 0 ∏ k m i とおく。各i ≤ k i\le k i ≤ k についてgcd ( m i , m k + 1 ) = 1 \gcd(m_i,m_{k+1})=1 g cd( m i , m k + 1 ) = 1 なので、
Bézout の等式からu i m i ≡ 1 ( m o d m k + 1 ) u_im_i\equiv1\pmod{m_{k+1}} u i m i ≡ 1 ( mod m k + 1 ) を満たす整数u i u_i u i を取ることができる。これらを掛け合わせると
( ∏ i = 0 k u i ) M k ≡ 1 ( m o d m k + 1 ) \left(\prod_{i=0}^{k}u_i\right)M_k\equiv1\pmod{m_{k+1}} ( i = 0 ∏ k u i ) M k ≡ 1 ( mod m k + 1 ) となるため、M k M_k M k とm k + 1 m_{k+1} m k + 1 は互いに素である。二法の場合を、法M k , m k + 1 M_k,m_{k+1} M k , m k + 1 と剰余B k , x k + 1 B_k,x_{k+1} B k , x k + 1 へ適用する。得られたB k + 1 B_{k+1} B k + 1 は最初のk + 1 k+1 k + 1 個の合同式を保ち、新しい合同式も満たす。有限帰納法により結論を得る。この論証は標準自然数と整数についての有限なメタ理論上の証明であり、外部の中国剰余定理もQ Q Q 内の帰納法も用いていない。▨
補題 4.3. x 0 , … , x r x_0,\ldots,x_r x 0 , … , x r を標準自然数の有限列とする。ある標準自然数B , C B,C B , C が存在し、すべての固定したi ≤ r i\le r i ≤ r について
Q ⊢ ∀ z ( Cell Q ( B ‾ , C ‾ , i ‾ , z ) ↔ z = x i ‾ ) Q\vdash\forall z\bigl(
\operatorname{Cell}_Q(\overline B,\overline C,\overline i,z)
\leftrightarrow z=\overline{x_i}\bigr) Q ⊢ ∀ z ( Cell Q ( B , C , i , z ) ↔ z = x i ) が成り立つ。
証明. C C C を1 , … , r 1,\ldots,r 1 , … , r のすべてで割り切れ、かつx i < 1 + ( i + 1 ) C x_i<1+(i+1)C x i < 1 + ( i + 1 ) C をすべてのi ≤ r i\le r i ≤ r で満たす正の標準自然数とする。例えばr ! ( 1 + max i ≤ r x i ) r!\,(1+\max_{i\le r}x_i) r ! ( 1 + max i ≤ r x i ) を必要ならさらに大きく取ればよい。M i = 1 + ( i + 1 ) C M_i=1+(i+1)C M i = 1 + ( i + 1 ) C とおく。M i − ( i + 1 ) C = 1 M_i-(i+1)C=1 M i − ( i + 1 ) C = 1 なので、M i M_i M i はC C C と互いに素である。i < j i<j i < j とし、d d d をM i M_i M i とM j M_j M j の正の公約数とする。差を取るとd d d は( j − i ) C (j-i)C ( j − i ) C を割る。d d d とC C C は互いに素であるから、Bézout の等式を用いるとd d d はj − i j-i j − i を割る。一方、j − i j-i j − i はC C C を割るためM i ≡ 1 ( m o d j − i ) M_i\equiv1\pmod{j-i} M i ≡ 1 ( mod j − i ) である。従ってd d d は1 1 1 を割り、M i M_i M i とM j M_j M j は互いに素である。したがって補題 4.2 により、次の合同式をすべてのi ≤ r i\le r i ≤ r について満たす標準自然数B B B が存在する。
B ≡ x i ( m o d M i ) B\equiv x_i\pmod{M_i} B ≡ x i ( mod M i ) 対応する商をq i q_i q i とすればq i ≤ B q_i\le B q i ≤ B である。
固定したB , C , i B,C,i B , C , i に対する Cell の強い検証は、補題 3.1 だけで行うことができる。
Tab のz < M ( i , C ) z<M(i,C) z < M ( i , C ) によりz z z は固定個の数詞へ、存在するq ≤ B q\le B q ≤ B によりq q q も固定個の数詞へ分かれる。各組ではB = q × M ( i , C ) + z B=q\times M(i,C)+z B = q × M ( i , C ) + z は数詞だけの等式であるから、§E19.15 補題 4.1 により正しい一組を証明し、ほかの組を§E19.15 定義 2.1 (Q1) 、§E19.15 定義 2.1 (Q2) で否定することができる。したがってQ Q Q は Cell の存在連言と任意候補の一意性連言を直接証明し、表示した双条件を得る。ここでは本記事後半の一般表現可能性定理を用いていない。▨
補題 4.4. Q Q Q は、自由な入力に対する PairQ _Q Q 、ConsQ _Q Q 、LenQ _Q Q 、EntryQ _Q Q 、ConcatQ _Q Q の出力機能性を証明する。例えば任意の添字変数i i i について
Q ⊢ ∀ s ∀ u ∀ v ( Entry Q ( s , i , u ) ∧ Entry Q ( s , i , v ) → u = v ) Q\vdash\forall s\forall u\forall v\bigl(
\operatorname{Entry}_Q(s,i,u)\land\operatorname{Entry}_Q(s,i,v)\to u=v\bigr) Q ⊢ ∀ s ∀ u ∀ v ( Entry Q ( s , i , u ) ∧ Entry Q ( s , i , v ) → u = v ) である。ただし、自由な入力における出力の存在をQ Q Q が証明するとは主張しない。
証明. 一般に Unique[ R ] ( x ⃗ , u ) [R](\vec x,u) [ R ] ( x , u ) と Unique[ R ] ( x ⃗ , v ) [R](\vec x,v) [ R ] ( x , v ) を仮定する。第1の式の全称節を第2の式により得られるR ( x ⃗ , v ) R(\vec x,v) R ( x , v ) へ適用するとv = u v=u v = u を得る。等号の対称律からu = v u=v u = v である。この論証はR R R の算術的性質を使わない純粋な一階論理の導出である。五つの API 式はすべて Unique の形で定義したので、各機能性がQ Q Q で証明される。
Unique の第1連言は raw 計算の存在を要求するため、この定義だけから全入力での出力存在は従わない。▨
定理 4.5. a , b a,b a , b を標準自然数とし、p = pair ( a , b ) p=\operatorname{pair}(a,b) p = pair ( a , b ) 、c ′ = Cons ( a , b ) c'=\operatorname{Cons}(a,b) c ′ = Cons ( a , b ) とする。このとき
Q ⊢ ∀ z ( Pair Q ( a ‾ , b ‾ , z ) ↔ z = p ‾ ) , Q ⊢ ∀ z ( Cons Q ( a ‾ , b ‾ , z ) ↔ z = c ′ ‾ ) . \begin{aligned}
Q&\vdash\forall z\bigl(
\operatorname{Pair}_Q(\overline a,\overline b,z)
\leftrightarrow z=\overline p\bigr),\\
Q&\vdash\forall z\bigl(
\operatorname{Cons}_Q(\overline a,\overline b,z)
\leftrightarrow z=\overline{c'}\bigr).
\end{aligned} Q Q ⊢ ∀ z ( Pair Q ( a , b , z ) ↔ z = p ) , ⊢ ∀ z ( Cons Q ( a , b , z ) ↔ z = c ′ ) . a 0 , … , a n − 1 a_0,\ldots,a_{n-1} a 0 , … , a n − 1 を任意の標準有限列とし、その外的な符号をc c c とする。任意の固定した標準自然数i i i について、
Q ⊢ ∀ z ( Len Q ( c ‾ , z ) ↔ z = n ‾ ) , Q\vdash\forall z\bigl(\operatorname{Len}_Q(\overline c,z)
\leftrightarrow z=\overline n\bigr), Q ⊢ ∀ z ( Len Q ( c , z ) ↔ z = n ) , および
{ Q ⊢ ∀ z ( Entry Q ( c ‾ , i ‾ , z ) ↔ z = a i ‾ ) ( i < n ) , Q ⊢ ∀ z ( Entry Q ( c ‾ , i ‾ , z ) ↔ z = 0 ‾ ) ( i ≥ n ) \begin{cases}
Q\vdash\forall z\bigl(\operatorname{Entry}_Q(\overline c,\overline i,z)
\leftrightarrow z=\overline{a_i}\bigr)&(i<n),\\
Q\vdash\forall z\bigl(\operatorname{Entry}_Q(\overline c,\overline i,z)
\leftrightarrow z=\overline0\bigr)&(i\ge n)
\end{cases} { Q ⊢ ∀ z ( Entry Q ( c , i , z ) ↔ z = a i ) Q ⊢ ∀ z ( Entry Q ( c , i , z ) ↔ z = 0 ) ( i < n ) , ( i ≥ n ) が成り立つ。また、標準列a ⃗ , b ⃗ \vec a,\vec b a , b の符号をc , d c,d c , d 、連結列の符号をe e e とすれば
Q ⊢ ∀ z ( Concat Q ( c ‾ , d ‾ , z ) ↔ z = e ‾ ) Q\vdash\forall z\bigl(\operatorname{Concat}_Q(\overline c,\overline d,z)
\leftrightarrow z=\overline e\bigr) Q ⊢ ∀ z ( Concat Q ( c , d , z ) ↔ z = e ) が成り立つ。
証明. a , b a,b a , b を固定すると PairQ 0 ^{0}_Q Q 0 のw w w は固定数詞a + b ‾ \overline{a+b} a + b に等しい。候補出力z z z は PairQ 0 ^{0}_Q Q 0 に加えた固定上界以下なので、補題 3.1 で有限個の数詞へ分けることができる。z + z = ( w × S w ) + ( b + b ) z+z=(w\times Sw)+(b+b) z + z = ( w × S w ) + ( b + b ) を固定数詞計算で調べるとz = p ‾ z=\overline p z = p だけが残る。正しい数詞は同じ計算から raw 式を満たすため、Unique の連言も含めて PairQ _Q Q の双条件を得る。
ConsQ 0 ^{0}_Q Q 0 では Pair の raw 出力が同じ議論でp ‾ \overline p p に固定され、z = S p z=Sp z = S p からz = c ′ ‾ z=\overline{c'} z = c ′ が従う。これにより ConsQ _Q Q の双条件も得る。
c 0 = c c_0=c c 0 = c 、c j + 1 = Tail ( c j ) c_{j+1}=\operatorname{Tail}(c_j) c j + 1 = Tail ( c j ) とおくと、外側の標準計算によりc 0 , … , c n = 0 c_0,\ldots,c_n=0 c 0 , … , c n = 0 と各a j = Head ( c j ) a_j=\operatorname{Head}(c_j) a j = Head ( c j ) が具体的な数詞として得られる。
PairQ 0 ^{0}_Q Q 0 には出力の固定上界を入れたので、固定した入力a , t a,t a , t について候補p p p を有限分解し、数詞計算により正しい pair 値だけを残すことができる。Cons についてもc = S p c=Sp c = S p から同じことが従う。したがって各標準c j > 0 c_j>0 c j > 0 について
Q ⊢ ∀ a ∀ t ( Dec Q ( c j ‾ , a , t ) ↔ ( a = a j ‾ ∧ t = c j + 1 ‾ ) ) Q\vdash\forall a\forall t\bigl(
\operatorname{Dec}_Q(\overline{c_j},a,t)
\leftrightarrow
(a=\overline{a_j}\land t=\overline{c_{j+1}})\bigr) Q ⊢ ∀ a ∀ t ( Dec Q ( c j , a , t ) ↔ ( a = a j ∧ t = c j + 1 ) ) (4.5.1) \text{(4.5.1)} (4.5.1) を得る。a , t < c j a,t<c_j a , t < c j は補題 3.1 により有限個の数詞へ分かれるため、式 (4.5.1) は Pair の一般的な逆関数定理をQ Q Q 内で用いたものではない。
長さの正しい候補を作る。標準表c 0 , … , c n c_0,\ldots,c_n c 0 , … , c n に対して補題 4.3 で構成したB , C B,C B , C を数詞として代入する。各 Cell と各式 (4.5.1) を用い、j < n j<n j < n を固定有限選言へ分けるとQ ⊢ Len Q 0 ( c ‾ , n ‾ ) Q\vdash\operatorname{Len}^{0}_Q(\overline c,\overline n) Q ⊢ Len Q 0 ( c , n ) を得る。ここでn ≤ c n\le c n ≤ c は、正である間に Tail が真に減少する外側の有限計算から得た数詞不等式である。
任意の候補z z z について LenQ 0 ( c ‾ , z ) ^{0}_Q(\overline c,z) Q 0 ( c , z ) を仮定する。z ≤ c ‾ z\le\overline c z ≤ c なので、z = 0 ‾ , … , c ‾ z=\overline0,\ldots,\overline c z = 0 , … , c へ有限分解することができる。z = k ‾ z=\overline k z = k を一つ固定する。
Prefix の第0 Cell と各段の Cell の機能性を用い、式 (4.5.1) をk k k またはn n n まで有限回適用すると、第j j j Cell の値はc j ‾ \overline{c_j} c j に限られる。k < n k<n k < n なら終端 Cell の値0 0 0 とc k > 0 c_k>0 c k > 0 が矛盾する。k > n k>n k > n なら Prefix の第n n n 段がx = c n = 0 x=c_n=0 x = c n = 0 とx ≠ 0 x\ne0 x = 0 を同時に要求するため矛盾する。したがってk = n k=n k = n だけが残る。これにより
Q ⊢ ∀ z ( Len Q 0 ( c ‾ , z ) ↔ z = n ‾ ) Q\vdash\forall z\bigl(
\operatorname{Len}^{0}_Q(\overline c,z)\leftrightarrow z=\overline n\bigr) Q ⊢ ∀ z ( Len Q 0 ( c , z ) ↔ z = n ) を得る。raw 式の存在と一意性を得たため、Unique を加えた LenQ _Q Q についても同じ双条件が成り立つ。
Entry を検証する。i < n i<n i < n なら標準表c 0 , … , c i c_0,\ldots,c_i c 0 , … , c i を AtQ 0 ^{0}_Q Q 0 の証人とし、式 (4.5.1) の Head 成分から出力a i ‾ \overline{a_i} a i を得る。任意の候補では Len の直前の一意性からn n n が固定され、At の Prefix と Cell の機能性から反復尾がc i ‾ \overline{c_i} c i に固定され、式 (4.5.1) から Head がa i ‾ \overline{a_i} a i に固定される。i ≥ n i\ge n i ≥ n では Len がn ‾ \overline n n に固定され、
EntryQ 0 ^{0}_Q Q 0 の第2選言が出力を0 0 0 に固定する。固定数詞i , n i,n i , n のi < n i<n i < n とn ≤ i n\le i n ≤ i の場合分けも七公理からの有限数詞計算である。よって範囲内と範囲外の両方で、EntryQ _Q Q の表示した双条件を得る。
最後に Concat を検証する。第1表にc 0 , … , c n c_0,\ldots,c_n c 0 , … , c n 、第2表に
e j = Concat ( c j , d ) ( 0 ≤ j ≤ n ) e_j=\operatorname{Concat}(c_j,d)\qquad(0\le j\le n) e j = Concat ( c j , d ) ( 0 ≤ j ≤ n ) を入れると、e 0 = e e_0=e e 0 = e 、e n = d e_n=d e n = d 、e j = Cons ( a j , e j + 1 ) e_j=\operatorname{Cons}(a_j,e_{j+1}) e j = Cons ( a j , e j + 1 ) である。二つの標準有限表の Cell、式 (4.5.1) 、および固定入力に対する ConsQ _Q Q の存在を並べれば
ConcatQ 0 ( c ‾ , d ‾ , e ‾ ) ^{0}_Q(\overline c,\overline d,\overline e) Q 0 ( c , d , e ) を得る。任意の候補出力では、長さの議論がn n n と第1表の各c j , a j c_j,a_j c j , a j を固定する。第2表の終端はe n = d e_n=d e n = d に固定されるので、j = n − 1 , … , 0 j=n-1,\ldots,0 j = n − 1 , … , 0 の順に ConsQ _Q Q の固定入力一意性を有限回用いると、第0 Cell と出力候補はe ‾ \overline e e に固定される。n = 0 n=0 n = 0 では第0 Cell が同時に候補出力とd d d を表し、Cell の機能性から直ちに一致する。
以上は、各標準列と各固定添字について、§E19.15 定義 2.1 (Q3) による有限分解、§E19.15 定義 2.1 (Q1) 、§E19.15 定義 2.1 (Q2) による数詞の分離、§E19.15 定義 2.1 (Q4) –§E19.15 定義 2.1 (Q7) による固定数詞計算を有限回並べた導出である。P A PA P A の帰納法も、本記事後半の原始再帰関数の一般表現可能性も、Len または Entry を Cell の定義に用いる循環もない。▨
例 4.6. c = SeqCode ( 4 , 1 , 7 ) c=\operatorname{SeqCode}(4,1,7) c = SeqCode ( 4 , 1 , 7 ) とする。定理 4.5 により、
Q ⊢ ∀ z ( Len Q ( c ‾ , z ) ↔ z = 3 ‾ ) , Q ⊢ ∀ z ( Entry Q ( c ‾ , 2 ‾ , z ) ↔ z = 7 ‾ ) , Q ⊢ ∀ z ( Entry Q ( c ‾ , 5 ‾ , z ) ↔ z = 0 ‾ ) \begin{aligned}
Q&\vdash\forall z\bigl(\operatorname{Len}_Q(\overline c,z)
\leftrightarrow z=\overline3\bigr),\\
Q&\vdash\forall z\bigl(\operatorname{Entry}_Q(\overline c,\overline2,z)
\leftrightarrow z=\overline7\bigr),\\
Q&\vdash\forall z\bigl(\operatorname{Entry}_Q(\overline c,\overline5,z)
\leftrightarrow z=\overline0\bigr)
\end{aligned} Q Q Q ⊢ ∀ z ( Len Q ( c , z ) ↔ z = 3 ) , ⊢ ∀ z ( Entry Q ( c , 2 , z ) ↔ z = 7 ) , ⊢ ∀ z ( Entry Q ( c , 5 , z ) ↔ z = 0 ) が成り立つ。三つの導出は、自由な列符号に対する一様な全域性ではなく、固定した数詞c ‾ \overline c c に対する有限検証である。
5 初期関数と合成
原始再帰関数の規約は§E18.7 定義 2.1 に従う。初期関数は単項零関数Z ( x ) = 0 Z(x)=0 Z ( x ) = 0 、単項後続者S ( x ) = x + 1 S(x)=x+1 S ( x ) = x + 1 、正アリティの射影P i k P_i^k P i k である。
補題 5.1. 次の式は各初期関数を強く数詞ごとに表現する。
φ Z ( x , y ) : ⟺ y = 0 , φ S ( x , y ) : ⟺ y = S x , φ P i k ( x 1 , … , x k , y ) : ⟺ y = x i . \begin{aligned}
\varphi_Z(x,y)&:\!\!\Longleftrightarrow y=0,\\
\varphi_S(x,y)&:\!\!\Longleftrightarrow y=Sx,\\
\varphi_{P_i^k}(x_1,\ldots,x_k,y)&:\!\!\Longleftrightarrow y=x_i.
\end{aligned} φ Z ( x , y ) φ S ( x , y ) φ P i k ( x 1 , … , x k , y ) : ⟺ y = 0 , : ⟺ y = S x , : ⟺ y = x i .
証明. 固定した標準入力を代入する。零関数と射影では、表示した式自体がy = 0 ‾ y=\overline0 y = 0 またはy = n i ‾ y=\overline{n_i} y = n i である。後続者ではS n ‾ S\overline n S n は定義によりn + 1 ‾ \overline{n+1} n + 1 である。等号の反射律、対称律、推移律から、各場合にQ ⊢ ∀ y ( φ ( y ) ↔ y = m ‾ ) Q\vdash\forall y(\varphi(y)\leftrightarrow y=\overline m) Q ⊢ ∀ y ( φ ( y ) ↔ y = m ) を得る。▨
補題 5.2. f : N m → N f\colon\mathbb N^m\to\mathbb N f : N m → N とg 1 , … , g m : N k → N g_1,\ldots,g_m\colon\mathbb N^k\to\mathbb N g 1 , … , g m : N k → N が強く数詞ごとに表現されるとする。
h ( x ⃗ ) = f ( g 1 ( x ⃗ ) , … , g m ( x ⃗ ) ) h(\vec x)=f(g_1(\vec x),\ldots,g_m(\vec x)) h ( x ) = f ( g 1 ( x ) , … , g m ( x )) に対して
φ h ( x ⃗ , y ) : ⟺ ∃ z 1 ⋯ ∃ z m ( ⋀ j = 1 m φ g j ( x ⃗ , z j ) ∧ φ f ( z 1 , … , z m , y ) ) \varphi_h(\vec x,y):\!\!\Longleftrightarrow
\exists z_1\cdots\exists z_m
\left(
\bigwedge_{j=1}^m\varphi_{g_j}(\vec x,z_j)
\land\varphi_f(z_1,\ldots,z_m,y)
\right) φ h ( x , y ) : ⟺ ∃ z 1 ⋯ ∃ z m ( j = 1 ⋀ m φ g j ( x , z j ) ∧ φ f ( z 1 , … , z m , y ) ) はh h h を強く数詞ごとに表現する。
証明. 標準入力n ⃗ \vec n n を固定し、b j = g j ( n ⃗ ) b_j=g_j(\vec n) b j = g j ( n ) 、c = f ( b 1 , … , b m ) c=f(b_1,\ldots,b_m) c = f ( b 1 , … , b m ) とおく。帰納法の仮定により
Q ⊢ ∀ z j ( φ g j ( n ⃗ ‾ , z j ) ↔ z j = b j ‾ ) Q\vdash\forall z_j\bigl(
\varphi_{g_j}(\overline{\vec n},z_j)\leftrightarrow z_j=\overline{b_j}\bigr) Q ⊢ ∀ z j ( φ g j ( n , z j ) ↔ z j = b j ) が各j j j について得られる。したがってφ h ( n ⃗ ‾ , y ) \varphi_h(\overline{\vec n},y) φ h ( n , y ) の存在量化された各z j z_j z j はb j ‾ \overline{b_j} b j へ順に消去することができる。f f f に関する仮定を固定入力b ⃗ \vec b b へ適用すると
Q ⊢ φ h ( n ⃗ ‾ , y ) ↔ y = c ‾ Q\vdash\varphi_h(\overline{\vec n},y)\leftrightarrow y=\overline c Q ⊢ φ h ( n , y ) ↔ y = c を得る。y y y を全称閉包して必要な強い表現が従う。▨
6 原始再帰と有限計算列
ℓ ≥ 1 \ell\ge1 ℓ ≥ 1 の場合を先に扱う。f : N ℓ → N f\colon\mathbb N^\ell\to\mathbb N f : N ℓ → N とg : N ℓ + 2 → N g\colon\mathbb N^{\ell+2}\to\mathbb N g : N ℓ + 2 → N から
h ( x ⃗ , 0 ) = f ( x ⃗ ) , h ( x ⃗ , r + 1 ) = g ( x ⃗ , r , h ( x ⃗ , r ) ) \begin{aligned}
h(\vec x,0)&=f(\vec x),\\
h(\vec x,r+1)&=g(\vec x,r,h(\vec x,r))
\end{aligned} h ( x , 0 ) h ( x , r + 1 ) = f ( x ) , = g ( x , r , h ( x , r ))
を作る。LenQ _Q Q 、EntryQ _Q Q は定義 4.1 の式である。
Base f ( x ⃗ , s ) : ⟺ ∃ b ( Entry Q ( s , 0 , b ) ∧ φ f ( x ⃗ , b ) ) , Step g ( x ⃗ , s , i ) : ⟺ ∃ u ∃ v ( Entry Q ( s , i , u ) ∧ Entry Q ( s , S i , v ) ∧ φ g ( x ⃗ , i , u , v ) ) , Run h ( x ⃗ , r , s ) : ⟺ Len Q ( s , S r ) ∧ Base f ( x ⃗ , s ) ∧ ∀ i ( i < r → Step g ( x ⃗ , s , i ) ) , φ h ( x ⃗ , r , y ) : ⟺ ∃ s ( Run h ( x ⃗ , r , s ) ∧ Entry Q ( s , r , y ) ) . \begin{aligned}
\operatorname{Base}_f(\vec x,s)
&:\!\!\Longleftrightarrow
\exists b\bigl(\operatorname{Entry}_Q(s,0,b)\land\varphi_f(\vec x,b)\bigr),\\
\operatorname{Step}_g(\vec x,s,i)
&:\!\!\Longleftrightarrow
\exists u\exists v\bigl(
\operatorname{Entry}_Q(s,i,u)\land
\operatorname{Entry}_Q(s,Si,v)\land
\varphi_g(\vec x,i,u,v)\bigr),\\
\operatorname{Run}_h(\vec x,r,s)
&:\!\!\Longleftrightarrow
\operatorname{Len}_Q(s,Sr)\land
\operatorname{Base}_f(\vec x,s)\land
\forall i\,(i<r\to\operatorname{Step}_g(\vec x,s,i)),\\
\varphi_h(\vec x,r,y)
&:\!\!\Longleftrightarrow
\exists s\bigl(\operatorname{Run}_h(\vec x,r,s)\land
\operatorname{Entry}_Q(s,r,y)\bigr).
\end{aligned} Base f ( x , s ) Step g ( x , s , i ) Run h ( x , r , s ) φ h ( x , r , y ) : ⟺ ∃ b ( Entry Q ( s , 0 , b ) ∧ φ f ( x , b ) ) , : ⟺ ∃ u ∃ v ( Entry Q ( s , i , u ) ∧ Entry Q ( s , S i , v ) ∧ φ g ( x , i , u , v ) ) , : ⟺ Len Q ( s , S r ) ∧ Base f ( x , s ) ∧ ∀ i ( i < r → Step g ( x , s , i )) , : ⟺ ∃ s ( Run h ( x , r , s ) ∧ Entry Q ( s , r , y ) ) .
補題 6.1. f f f とg g g が強く数詞ごとに表現されるなら、上のφ h \varphi_h φ h はh h h を強く数詞ごとに表現する。パラメータ列の長さℓ = 0 \ell=0 ℓ = 0 の場合にも、基底値を一つの自然数c c c とし、Base f \operatorname{Base}_f Base f をEntry Q ( s , 0 , c ‾ ) \operatorname{Entry}_Q(s,0,\overline c) Entry Q ( s , 0 , c ) に置き換えれば同じ結論が成り立つ。この場合のh h h は再帰引数r r r をもつ一変数関数である。
証明. 最初にℓ ≥ 1 \ell\ge1 ℓ ≥ 1 とし、標準入力n ⃗ , r \vec n,r n , r を固定する。外側の自然数計算で
a 0 = f ( n ⃗ ) , a j + 1 = g ( n ⃗ , j , a j ) ( 0 ≤ j < r ) a_0=f(\vec n),
\qquad
a_{j+1}=g(\vec n,j,a_j)\quad(0\le j<r) a 0 = f ( n ) , a j + 1 = g ( n , j , a j ) ( 0 ≤ j < r ) という実際の有限計算列を作る。その Cons 符号をc c c とする。定理 4.5 により、Q Q Q は
LenQ ( c ‾ , r + 1 ‾ ) _Q(\overline c,\overline{r+1}) Q ( c , r + 1 ) と、各j ≤ r j\le r j ≤ r に対する
EntryQ ( c ‾ , j ‾ , a j ‾ ) _Q(\overline c,\overline j,\overline{a_j}) Q ( c , j , a j ) を、一意出力の形で証明する。
f f f の強い表現をn ⃗ \vec n n に適用するとQ ⊢ φ f ( n ⃗ ‾ , a 0 ‾ ) Q\vdash\varphi_f(\overline{\vec n},\overline{a_0}) Q ⊢ φ f ( n , a 0 ) である。g g g の強い表現を各固定入力( n ⃗ , j , a j ) (\vec n,j,a_j) ( n , j , a j ) に適用すると
Q ⊢ φ g ( n ⃗ ‾ , j ‾ , a j ‾ , a j + 1 ‾ ) Q\vdash\varphi_g(
\overline{\vec n},\overline j,\overline{a_j},\overline{a_{j+1}}) Q ⊢ φ g ( n , j , a j , a j + 1 ) である。これらはj = 0 , … , r − 1 j=0,\ldots,r-1 j = 0 , … , r − 1 の有限個の証明である。補題 3.2 により有限連言を固定有界全称条件へ戻すと、Q ⊢ Run h ( n ⃗ ‾ , r ‾ , c ‾ ) Q\vdash\operatorname{Run}_h(\overline{\vec n},\overline r,\overline c) Q ⊢ Run h ( n , r , c ) を得る。最後の成分を存在導入して
Q ⊢ φ h ( n ⃗ ‾ , r ‾ , a r ‾ ) Q\vdash\varphi_h(\overline{\vec n},\overline r,\overline{a_r}) Q ⊢ φ h ( n , r , a r ) となる。これが正しい出力の存在である。
次に任意の候補y y y を取り、φ h ( n ⃗ ‾ , r ‾ , y ) \varphi_h(\overline{\vec n},\overline r,y) φ h ( n , r , y ) を仮定する。存在証人s s s を固定する。Run h \operatorname{Run}_h Run h の基底節から、
EntryQ ( s , 0 , b ) _Q(s,0,b) Q ( s , 0 , b ) とφ f ( n ⃗ ‾ , b ) \varphi_f(\overline{\vec n},b) φ f ( n , b ) を同時に満たす自然数b b b が存在することが得られる。f f f の強い表現からb = a 0 ‾ b=\overline{a_0} b = a 0 である。補題 4.4 の添字0 0 0 における機能性により、s s s の第0 0 0 成分として現れる任意の候補もa 0 ‾ \overline{a_0} a 0 に等しい。
ここからj = 0 , … , r − 1 j=0,\ldots,r-1 j = 0 , … , r − 1 を外側で有限回処理する。補題 3.2 で展開した第j j j の Step 節から、自然数u , v u,v u , v が存在して
Entry Q ( s , j ‾ , u ) , Entry Q ( s , j + 1 ‾ , v ) , φ g ( n ⃗ ‾ , j ‾ , u , v ) \operatorname{Entry}_Q(s,\overline j,u),
\quad
\operatorname{Entry}_Q(s,\overline{j+1},v),
\quad
\varphi_g(\overline{\vec n},\overline j,u,v) Entry Q ( s , j , u ) , Entry Q ( s , j + 1 , v ) , φ g ( n , j , u , v ) となる。固定添字での Entry の機能性と、それ以前の有限段で得た成分値からu = a j ‾ u=\overline{a_j} u = a j である。g g g の固定入力( n ⃗ , j , a j ) (\vec n,j,a_j) ( n , j , a j ) における強い表現からv = a j + 1 ‾ v=\overline{a_{j+1}} v = a j + 1 となる。再び Entry の機能性により第j + 1 j+1 j + 1 成分の任意の候補がa j + 1 ‾ \overline{a_{j+1}} a j + 1 に等しい。
この有限な論証をr r r 回連結すると、第r r r 成分の候補y y y はa r ‾ \overline{a_r} a r に等しい。したがって
Q ⊢ ∀ y ( φ h ( n ⃗ ‾ , r ‾ , y ) → y = a r ‾ ) . Q\vdash\forall y\bigl(
\varphi_h(\overline{\vec n},\overline r,y)\to y=\overline{a_r}\bigr). Q ⊢ ∀ y ( φ h ( n , r , y ) → y = a r ) . 既に証明したφ h ( n ⃗ ‾ , r ‾ , a r ‾ ) \varphi_h(\overline{\vec n},\overline r,\overline{a_r}) φ h ( n , r , a r ) と等号の置換可能性から逆向きも従い、
Q ⊢ ∀ y ( φ h ( n ⃗ ‾ , r ‾ , y ) ↔ y = a r ‾ ) Q\vdash\forall y\bigl(
\varphi_h(\overline{\vec n},\overline r,y)
\leftrightarrow y=\overline{a_r}\bigr) Q ⊢ ∀ y ( φ h ( n , r , y ) ↔ y = a r ) を得る。
ℓ = 0 \ell=0 ℓ = 0 では外側の計算列をa 0 = c a_0=c a 0 = c 、a j + 1 = g ( j , a j ) a_{j+1}=g(j,a_j) a j + 1 = g ( j , a j ) とする。基底で関数f : N 0 → N f\colon\mathbb N^0\to\mathbb N f : N 0 → N を導入せず、閉じた数詞等式
EntryQ ( s , 0 , c ‾ ) _Q(s,0,\overline c) Q ( s , 0 , c ) を用いる。step 関数g g g は二変数、得られるh h h は一変数なので、すべて正のアリティである。残りの有限列検証と一意性の論証は同一である。
いずれの場合も、r r r は固定した標準自然数であり、対象理論内の帰納法は用いていない。また、自由なr r r について計算列の存在をQ Q Q が証明するとは主張していない。▨
7 原始再帰関数と関係の表現定理
定理 7.1. 次が成り立つ。
任意の正のアリティk ≥ 1 k\ge1 k ≥ 1 と任意の原始再帰全関数f : N k → N f\colon\mathbb N^k\to\mathbb N f : N k → N に対して、f f f をQ Q Q で強く数詞ごとに表現するL A L_A L A 論理式φ f ( x ⃗ , y ) \varphi_f(\vec x,y) φ f ( x , y ) が存在する。
任意の正のアリティk ≥ 1 k\ge1 k ≥ 1 と任意の原始再帰関係R ⊆ N k R\subseteq\mathbb N^k R ⊆ N k に対して、R R R を肯定例と否定例の双方でQ Q Q に数詞ごとに表現するL A L_A L A 論理式ρ R ( x ⃗ ) \rho_R(\vec x) ρ R ( x ) が存在する。
証明. 主張 (1) を、原始再帰関数を生成する有限な式の構造に関する帰納法で証明する。初期関数の場合は補題 5.1 による。合成の場合は補題 5.2 による。原始再帰の場合は補題 6.1 による。パラメータ列が空の場合も同補題で扱っており、一変数の再帰関数を得る。したがって、各構成子で強い一意出力を保ったまま、すべての正アリティ原始再帰全関数を表現することができる。
主張 (2) を示す。原始再帰関係R R R の特性関数を
χ R ( n ⃗ ) = { 1 R ( n ⃗ ) , 0 ¬ R ( n ⃗ ) \chi_R(\vec n)=
\begin{cases}1&R(\vec n),\\0&\neg R(\vec n)\end{cases} χ R ( n ) = { 1 0 R ( n ) , ¬ R ( n ) とする。χ R \chi_R χ R はR R R と同じ正のアリティをもつ原始再帰全関数である。主張 (1) により、その強い表現式φ χ R ( x ⃗ , y ) \varphi_{\chi_R}(\vec x,y) φ χ R ( x , y ) が存在する。そこで
ρ R ( x ⃗ ) : ⟺ φ χ R ( x ⃗ , 1 ‾ ) \rho_R(\vec x):\!\!\Longleftrightarrow
\varphi_{\chi_R}(\vec x,\overline1) ρ R ( x ) : ⟺ φ χ R ( x , 1 ) と定める。
R ( n ⃗ ) R(\vec n) R ( n ) ならχ R ( n ⃗ ) = 1 \chi_R(\vec n)=1 χ R ( n ) = 1 なので、強い表現からQ ⊢ φ χ R ( n ⃗ ‾ , 1 ‾ ) Q\vdash\varphi_{\chi_R}(\overline{\vec n},\overline1) Q ⊢ φ χ R ( n , 1 ) 、すなわちQ ⊢ ρ R ( n ⃗ ‾ ) Q\vdash\rho_R(\overline{\vec n}) Q ⊢ ρ R ( n ) を得る。¬ R ( n ⃗ ) \neg R(\vec n) ¬ R ( n ) ならχ R ( n ⃗ ) = 0 \chi_R(\vec n)=0 χ R ( n ) = 0 であり、強い表現は
Q ⊢ φ χ R ( n ⃗ ‾ , 1 ‾ ) ↔ 1 ‾ = 0 ‾ Q\vdash
\varphi_{\chi_R}(\overline{\vec n},\overline1)
\leftrightarrow\overline1=\overline0 Q ⊢ φ χ R ( n , 1 ) ↔ 1 = 0 を与える。§E19.15 定義 2.1 (Q1) からQ ⊢ 1 ‾ ≠ 0 ‾ Q\vdash\overline1\ne\overline0 Q ⊢ 1 = 0 なのでQ ⊢ ¬ ρ R ( n ⃗ ‾ ) Q\vdash\neg\rho_R(\overline{\vec n}) Q ⊢ ¬ ρ R ( n ) である。したがって肯定例と否定例の双方が表現される。▨
8 定数値と主張の境界
命題 8.1. 各標準自然数c c c について、C c ( x ) = c C_c(x)=c C c ( x ) = c は単項原始再帰関数であり、
φ C c ( x , y ) : ⟺ y = c ‾ \varphi_{C_c}(x,y):\!\!\Longleftrightarrow y=\overline c φ C c ( x , y ) : ⟺ y = c によって強く数詞ごとに表現される。
証明. C 0 = Z C_0=Z C 0 = Z である。C c + 1 = S ∘ C c C_{c+1}=S\circ C_c C c + 1 = S ∘ C c として、外側で固定したc c c 回だけ後続者と合成すればC c C_c C c を作ることができる。入力変数x x x は残るのでアリティは1 1 1 である。表示したグラフ式は任意の固定入力でy = c ‾ y=\overline c y = c そのものであり、強い表現条件を満たす。▨
閉じた定数値だけが必要なら数詞c ‾ \overline c c を用いる。零変数関数または零変数関係を定理 7.1 の base case へ加えてはならない。
注意 8.2. 定理 7.1 により各標準入力n ⃗ \vec n n についてQ ⊢ ∀ y ( φ f ( n ⃗ ‾ , y ) ↔ y = f ( n ⃗ ) ‾ ) Q\vdash\forall y(\varphi_f(\overline{\vec n},y)\leftrightarrow y=\overline{f(\vec n)}) Q ⊢ ∀ y ( φ f ( n , y ) ↔ y = f ( n ) ) が得られる。この無限個のメタ理論上の結論から、一つの文Q ⊢ ∀ x ⃗ ∃ ! y φ f ( x ⃗ , y ) Q\vdash\forall\vec x\exists!y\,\varphi_f(\vec x,y) Q ⊢ ∀ x ∃ ! y φ f ( x , y ) は従わない。したがって、Q Q Q の任意の非標準モデルでφ f \varphi_f φ f が外側の関数f f f を非標準入力へ外延的に延長すると主張していない。
例 8.3. 加法は二変数原始再帰関数である。言語に+ + + が既にあるため
φ a d d ( x 1 , x 2 , y ) : ⟺ y = x 1 + x 2 \varphi_{\rm add}(x_1,x_2,y):\!\!\Longleftrightarrow y=x_1+x_2 φ add ( x 1 , x 2 , y ) : ⟺ y = x 1 + x 2 を選べる。固定した標準入力m , n m,n m , n では§E19.15 補題 4.1 によりQ ⊢ m ‾ + n ‾ = m + n ‾ Q\vdash\overline m+\overline n=\overline{m+n} Q ⊢ m + n = m + n である。等号の置換可能性からQ ⊢ ∀ y ( y = m ‾ + n ‾ ↔ y = m + n ‾ ) Q\vdash\forall y(y=\overline m+\overline n\leftrightarrow y=\overline{m+n}) Q ⊢ ∀ y ( y = m + n ↔ y = m + n ) を得る。
9 演習
問題 9.1.
恒等関数f ( n ) = n f(n)=n f ( n ) = n と論理式φ ( x , y ) = ( y = x ∨ y = S x ) \varphi(x,y)=(y=x\lor y=Sx) φ ( x , y ) = ( y = x ∨ y = S x ) について、すべての標準自然数n n n でQ ⊢ φ ( n ‾ , n ‾ ) Q\vdash\varphi(\overline n,\overline n) Q ⊢ φ ( n , n ) が成り立つが、φ \varphi φ はf f f を強く数詞ごとに表現しないことを示せ。また、φ f \varphi_f φ f が一変数関数f f f を強く数詞ごとに表現するならば、m ≠ f ( n ) m\neq f(n) m = f ( n ) を満たす標準自然数n , m n,m n , m についてQ ⊢ ¬ φ f ( n ‾ , m ‾ ) Q\vdash\neg\varphi_f(\overline n,\overline m) Q ⊢ ¬ φ f ( n , m ) であることを示せ。
有限列( x 0 , x 1 , x 2 ) = ( 2 , 0 , 3 ) (x_0,x_1,x_2)=(2,0,3) ( x 0 , x 1 , x 2 ) = ( 2 , 0 , 3 ) について、補題 4.3 の証明の構成に従いC = 8 C=8 C = 8 とする。M i = 1 + ( i + 1 ) C M_i=1+(i+1)C M i = 1 + ( i + 1 ) C (i = 0 , 1 , 2 i=0,1,2 i = 0 , 1 , 2 )が条件を満たし二つずつ互いに素であることを確かめ、すべてのi i i についてB ≡ x i ( m o d M i ) B\equiv x_i\pmod{M_i} B ≡ x i ( mod M i ) を満たす最小の非負整数B B B を求めよ。
補題 4.2 の仮定のもとで、二つの解B , B ′ B,B' B , B ′ は∏ i = 0 r m i \prod_{i=0}^{r}m_i ∏ i = 0 r m i を法として合同であり、0 ≤ B < ∏ i = 0 r m i 0\leq B<\prod_{i=0}^{r}m_i 0 ≤ B < ∏ i = 0 r m i を満たす解がただ一つ存在することを示せ。また、法が二つずつ互いに素であるという仮定を外すと解が存在しない例を挙げよ。
前者関数pd ( 0 ) = 0 \operatorname{pd}(0)=0 pd ( 0 ) = 0 、pd ( n + 1 ) = n \operatorname{pd}(n+1)=n pd ( n + 1 ) = n について、論理式φ ( x , y ) = ( ( x = 0 ∧ y = 0 ) ∨ x = S y ) \varphi(x,y)=((x=0\land y=0)\lor x=Sy) φ ( x , y ) = (( x = 0 ∧ y = 0 ) ∨ x = S y ) がpd \operatorname{pd} pd をQ Q Q で強く数詞ごとに表現することを、定理 7.1 を用いずにQ Q Q の公理から示せ。
論理式ρ ( x , y ) = ∃ d ( d + x = y ) \rho(x,y)=\exists d\,(d+x=y) ρ ( x , y ) = ∃ d ( d + x = y ) が二項関係m ≤ n m\leq n m ≤ n をQ Q Q で数詞ごとに表現することを示せ。すなわち、m ≤ n m\leq n m ≤ n ならばQ ⊢ ρ ( m ‾ , n ‾ ) Q\vdash\rho(\overline m,\overline n) Q ⊢ ρ ( m , n ) 、m > n m>n m > n ならばQ ⊢ ¬ ρ ( m ‾ , n ‾ ) Q\vdash\neg\rho(\overline m,\overline n) Q ⊢ ¬ ρ ( m , n ) であることを示せ。
一変数関数f f f がφ f ( x , y ) \varphi_f(x,y) φ f ( x , y ) で強く数詞ごとに表現され、一項関係R R R がρ R ( y ) \rho_R(y) ρ R ( y ) で数詞ごとに表現されるとする。ψ ( x ) = ∃ y ( φ f ( x , y ) ∧ ρ R ( y ) ) \psi(x)=\exists y\,(\varphi_f(x,y)\land\rho_R(y)) ψ ( x ) = ∃ y ( φ f ( x , y ) ∧ ρ R ( y )) が関係{ n ∣ R ( f ( n ) ) } \{n\mid R(f(n))\} { n ∣ R ( f ( n ))} を数詞ごとに表現することを示せ。また、f f f を恒等関数、φ f \varphi_f φ f を 1 のφ \varphi φ 、ρ R ( y ) = ( y = 1 ‾ ) \rho_R(y)=(y=\overline1) ρ R ( y ) = ( y = 1 ) とすると、ψ \psi ψ は{ n ∣ n = 1 } \{n\mid n=1\} { n ∣ n = 1 } を数詞ごとに表現しないことを示せ。
解答 (確認問題の解答).
等号の反射律からQ ⊢ n ‾ = n ‾ Q\vdash\overline n=\overline n Q ⊢ n = n であり、選言の導入によりQ ⊢ φ ( n ‾ , n ‾ ) Q\vdash\varphi(\overline n,\overline n) Q ⊢ φ ( n , n ) である。Q ⊢ ∀ y ( φ ( n ‾ , y ) ↔ y = n ‾ ) Q\vdash\forall y\,(\varphi(\overline n,y)\leftrightarrow y=\overline n) Q ⊢ ∀ y ( φ ( n , y ) ↔ y = n ) と仮定する。§E19.15 定理 2.2 と健全性により、この文は標準モデルで真である。しかしy y y にn + 1 n+1 n + 1 を割り当てると、S n ‾ S\overline n S n の値はn + 1 n+1 n + 1 であるからφ ( n ‾ , y ) \varphi(\overline n,y) φ ( n , y ) は真であり、y = n ‾ y=\overline n y = n は偽である。これは矛盾であるから、φ \varphi φ はf f f を強く数詞ごとに表現しない。とくにQ ⊢ φ ( n ‾ , n + 1 ‾ ) Q\vdash\varphi(\overline n,\overline{n+1}) Q ⊢ φ ( n , n + 1 ) であり、φ \varphi φ では誤った出力についての否定例が得られない。
φ f \varphi_f φ f がf f f を強く表現し、k = f ( n ) ≠ m k=f(n)\neq m k = f ( n ) = m とする。強い表現の全称文をm ‾ \overline m m で具体化するとQ ⊢ φ f ( n ‾ , m ‾ ) → m ‾ = k ‾ Q\vdash\varphi_f(\overline n,\overline m)\to\overline m=\overline k Q ⊢ φ f ( n , m ) → m = k である。§E19.15 補題 4.1 によりQ ⊢ ¬ ( m ‾ = k ‾ ) Q\vdash\neg(\overline m=\overline k) Q ⊢ ¬ ( m = k ) であるから、対偶によりQ ⊢ ¬ φ f ( n ‾ , m ‾ ) Q\vdash\neg\varphi_f(\overline n,\overline m) Q ⊢ ¬ φ f ( n , m ) である。
C = 8 C=8 C = 8 は1 1 1 と2 2 2 で割り切れ、M 0 = 9 M_0=9 M 0 = 9 、M 1 = 17 M_1=17 M 1 = 17 、M 2 = 25 M_2=25 M 2 = 25 であり、x 0 = 2 < 9 x_0=2<9 x 0 = 2 < 9 、x 1 = 0 < 17 x_1=0<17 x 1 = 0 < 17 、x 2 = 3 < 25 x_2=3<25 x 2 = 3 < 25 であるから条件を満たす。9 = 3 2 9=3^2 9 = 3 2 、17 17 17 、25 = 5 2 25=5^2 25 = 5 2 は共通の素因数をもたないので二つずつ互いに素である。B ≡ 0 ( m o d 17 ) B\equiv0\pmod{17} B ≡ 0 ( mod 17 ) よりB = 17 k B=17k B = 17 k とおく。17 ≡ − 1 ( m o d 9 ) 17\equiv-1\pmod 9 17 ≡ − 1 ( mod 9 ) であるから− k ≡ 2 ( m o d 9 ) -k\equiv2\pmod 9 − k ≡ 2 ( mod 9 ) 、すなわちk ≡ 7 ( m o d 9 ) k\equiv7\pmod9 k ≡ 7 ( mod 9 ) である。k = 7 + 9 l k=7+9l k = 7 + 9 l とおくとB = 119 + 153 l B=119+153l B = 119 + 153 l であり、119 ≡ 19 ( m o d 25 ) 119\equiv19\pmod{25} 119 ≡ 19 ( mod 25 ) 、153 ≡ 3 ( m o d 25 ) 153\equiv3\pmod{25} 153 ≡ 3 ( mod 25 ) であるから19 + 3 l ≡ 3 ( m o d 25 ) 19+3l\equiv3\pmod{25} 19 + 3 l ≡ 3 ( mod 25 ) 、すなわち3 l ≡ 9 ( m o d 25 ) 3l\equiv9\pmod{25} 3 l ≡ 9 ( mod 25 ) である。3 3 3 は25 25 25 と互いに素であるからl ≡ 3 ( m o d 25 ) l\equiv3\pmod{25} l ≡ 3 ( mod 25 ) であり、最小の非負解はl = 3 l=3 l = 3 、B = 119 + 459 = 578 B=119+459=578 B = 119 + 459 = 578 である。実際、578 = 9 ⋅ 64 + 2 = 17 ⋅ 34 = 25 ⋅ 23 + 3 578=9\cdot64+2=17\cdot34=25\cdot23+3 578 = 9 ⋅ 64 + 2 = 17 ⋅ 34 = 25 ⋅ 23 + 3 である。解は9 ⋅ 17 ⋅ 25 = 3825 9\cdot17\cdot25=3825 9 ⋅ 17 ⋅ 25 = 3825 を法として一意であるから、578 578 578 が最小の非負整数である。
正の整数a , b a,b a , b が互いに素で、整数n n n がa a a とb b b で割り切れるならばa b ab ab で割り切れることを示す。Bézout の等式によりu a + v b = 1 ua+vb=1 u a + v b = 1 を満たす整数u , v u,v u , v を取るとn = u n a + v n b n=una+vnb n = u na + v nb であり、b ∣ n b\mid n b ∣ n からa b ∣ u n a ab\mid una ab ∣ u na 、a ∣ n a\mid n a ∣ n からa b ∣ v n b ab\mid vnb ab ∣ v nb であるからa b ∣ n ab\mid n ab ∣ n である。B , B ′ B,B' B , B ′ を二つの解とすると、すべてのi i i についてm i ∣ B − B ′ m_i\mid B-B' m i ∣ B − B ′ である。M k = ∏ i = 0 k m i M_k=\prod_{i=0}^km_i M k = ∏ i = 0 k m i についてM k ∣ B − B ′ M_k\mid B-B' M k ∣ B − B ′ をk k k についての帰納法で示す。k = 0 k=0 k = 0 は仮定である。M k ∣ B − B ′ M_k\mid B-B' M k ∣ B − B ′ ならば、補題 4.2 の証明で示したとおりM k M_k M k とm k + 1 m_{k+1} m k + 1 は互いに素であるから、前の事実によりM k + 1 ∣ B − B ′ M_{k+1}\mid B-B' M k + 1 ∣ B − B ′ である。よってB ≡ B ′ ( m o d M r ) B\equiv B'\pmod{M_r} B ≡ B ′ ( mod M r ) である。
補題 4.2 の解B B B をM r M_r M r で割った非負の余りB 0 B_0 B 0 も、各m i m_i m i がM r M_r M r を割るのですべての合同式を満たし、0 ≤ B 0 < M r 0\leq B_0<M_r 0 ≤ B 0 < M r である。0 ≤ B 0 , B 1 < M r 0\leq B_0,B_1<M_r 0 ≤ B 0 , B 1 < M r を満たす二つの解はM r ∣ B 0 − B 1 M_r\mid B_0-B_1 M r ∣ B 0 − B 1 かつ∣ B 0 − B 1 ∣ < M r |B_0-B_1|<M_r ∣ B 0 − B 1 ∣ < M r を満たすので等しい。よって範囲内の解はただ一つである。仮定を外した例としてm 0 = 2 m_0=2 m 0 = 2 、m 1 = 4 m_1=4 m 1 = 4 、x 0 = 0 x_0=0 x 0 = 0 、x 1 = 1 x_1=1 x 1 = 1 を取ると、B ≡ 1 ( m o d 4 ) B\equiv1\pmod4 B ≡ 1 ( mod 4 ) ならばB B B は奇数であり、B ≡ 0 ( m o d 2 ) B\equiv0\pmod2 B ≡ 0 ( mod 2 ) と両立しないので解は存在しない。
n = 0 n=0 n = 0 の場合、Q ⊢ ∀ y ( φ ( 0 , y ) ↔ y = 0 ) Q\vdash\forall y\,(\varphi(0,y)\leftrightarrow y=0) Q ⊢ ∀ y ( φ ( 0 , y ) ↔ y = 0 ) を示す。φ ( 0 , y ) \varphi(0,y) φ ( 0 , y ) を仮定する。第一の選言肢0 = 0 ∧ y = 0 0=0\land y=0 0 = 0 ∧ y = 0 からはy = 0 y=0 y = 0 が従う。第二の選言肢0 = S y 0=Sy 0 = S y は§E19.15 定義 2.1 (Q1) と等号の対称律に反するので、そこからもy = 0 y=0 y = 0 が従う。逆にy = 0 y=0 y = 0 ならば、反射律とあわせて0 = 0 ∧ y = 0 0=0\land y=0 0 = 0 ∧ y = 0 が成り立ち、φ ( 0 , y ) \varphi(0,y) φ ( 0 , y ) である。演繹定理と一般化により主張を得る。
n = k + 1 n=k+1 n = k + 1 の場合、k + 1 ‾ = S k ‾ \overline{k+1}=S\overline k k + 1 = S k であり、Q ⊢ ∀ y ( φ ( S k ‾ , y ) ↔ y = k ‾ ) Q\vdash\forall y\,(\varphi(S\overline k,y)\leftrightarrow y=\overline k) Q ⊢ ∀ y ( φ ( S k , y ) ↔ y = k ) を示す。φ ( S k ‾ , y ) \varphi(S\overline k,y) φ ( S k , y ) を仮定する。第一の選言肢はS k ‾ = 0 S\overline k=0 S k = 0 を含み、§E19.15 定義 2.1 (Q1) に反するので、そこからy = k ‾ y=\overline k y = k が従う。第二の選言肢S k ‾ = S y S\overline k=Sy S k = S y からは§E19.15 定義 2.1 (Q2) によりk ‾ = y \overline k=y k = y 、すなわちy = k ‾ y=\overline k y = k が従う。逆にy = k ‾ y=\overline k y = k ならば関数合同公理によりS k ‾ = S y S\overline k=Sy S k = S y であり、φ ( S k ‾ , y ) \varphi(S\overline k,y) φ ( S k , y ) である。pd ( k + 1 ) = k \operatorname{pd}(k+1)=k pd ( k + 1 ) = k であるから、いずれの場合も強い表現の条件が成り立つ。
m ≤ n m\leq n m ≤ n ならば、§E19.15 補題 4.1 によりQ ⊢ n − m ‾ + m ‾ = n ‾ Q\vdash\overline{n-m}+\overline m=\overline n Q ⊢ n − m + m = n であり、存在導入によりQ ⊢ ρ ( m ‾ , n ‾ ) Q\vdash\rho(\overline m,\overline n) Q ⊢ ρ ( m , n ) である。
m > n m>n m > n とする。固定したm m m について、§E19.15 定義 2.1 (Q5) をm m m 回、§E19.15 定義 2.1 (Q4) を一回用いるとQ ⊢ d + m ‾ = S m d Q\vdash d+\overline m=S^md Q ⊢ d + m = S m d を得る。d + m ‾ = n ‾ d+\overline m=\overline n d + m = n を仮定するとS m d = S n 0 S^md=S^n0 S m d = S n 0 であり、§E19.15 定義 2.1 (Q2) をn n n 回用いてS m − n d = 0 S^{m-n}d=0 S m − n d = 0 を得る。m − n ≥ 1 m-n\geq1 m − n ≥ 1 であるから左辺はS ( S m − n − 1 d ) S(S^{m-n-1}d) S ( S m − n − 1 d ) の形であり、§E19.15 定義 2.1 (Q1) に反する。したがってQ ⊢ ¬ ( d + m ‾ = n ‾ ) Q\vdash\neg(d+\overline m=\overline n) Q ⊢ ¬ ( d + m = n ) であり、一般化によりQ ⊢ ∀ d ¬ ( d + m ‾ = n ‾ ) Q\vdash\forall d\,\neg(d+\overline m=\overline n) Q ⊢ ∀ d ¬ ( d + m = n ) 、すなわちQ ⊢ ¬ ρ ( m ‾ , n ‾ ) Q\vdash\neg\rho(\overline m,\overline n) Q ⊢ ¬ ρ ( m , n ) である。変数d d d を加法の第一引数に置いたので、固定した数詞m ‾ \overline m m にQ Q Q の加法公理を適用することができる。
標準自然数n n n を取り、m = f ( n ) m=f(n) m = f ( n ) とおく。強い表現をm ‾ \overline m m で具体化し、反射律m ‾ = m ‾ \overline m=\overline m m = m を用いるとQ ⊢ φ f ( n ‾ , m ‾ ) Q\vdash\varphi_f(\overline n,\overline m) Q ⊢ φ f ( n , m ) である。R ( m ) R(m) R ( m ) ならばQ ⊢ ρ R ( m ‾ ) Q\vdash\rho_R(\overline m) Q ⊢ ρ R ( m ) であり、存在導入によりQ ⊢ ψ ( n ‾ ) Q\vdash\psi(\overline n) Q ⊢ ψ ( n ) である。¬ R ( m ) \neg R(m) ¬ R ( m ) ならばQ ⊢ ¬ ρ R ( m ‾ ) Q\vdash\neg\rho_R(\overline m) Q ⊢ ¬ ρ R ( m ) である。φ f ( n ‾ , y ) ∧ ρ R ( y ) \varphi_f(\overline n,y)\land\rho_R(y) φ f ( n , y ) ∧ ρ R ( y ) を仮定すると、強い表現によりy = m ‾ y=\overline m y = m であり、等号の置換可能性によりρ R ( m ‾ ) \rho_R(\overline m) ρ R ( m ) となって矛盾する。よってQ ⊢ ¬ ( φ f ( n ‾ , y ) ∧ ρ R ( y ) ) Q\vdash\neg(\varphi_f(\overline n,y)\land\rho_R(y)) Q ⊢ ¬ ( φ f ( n , y ) ∧ ρ R ( y )) であり、一般化と存在量化子の定義によりQ ⊢ ¬ ψ ( n ‾ ) Q\vdash\neg\psi(\overline n) Q ⊢ ¬ ψ ( n ) である。
後半の例ではψ ( x ) = ∃ y ( ( y = x ∨ y = S x ) ∧ y = 1 ‾ ) \psi(x)=\exists y\,((y=x\lor y=Sx)\land y=\overline1) ψ ( x ) = ∃ y (( y = x ∨ y = S x ) ∧ y = 1 ) である。n = 0 n=0 n = 0 は{ n ∣ n = 1 } \{n\mid n=1\} { n ∣ n = 1 } に属さないが、標準モデルでy y y に1 1 1 を割り当てるとy = S 0 y=S0 y = S 0 とy = 1 ‾ y=\overline1 y = 1 がともに真であるから、ψ ( 0 ‾ ) \psi(\overline0) ψ ( 0 ) は標準モデルで真である。§E19.15 定理 2.2 と健全性によりQ ⊬ ¬ ψ ( 0 ‾ ) Q\nvdash\neg\psi(\overline0) Q ⊬ ¬ ψ ( 0 ) であり、ψ \psi ψ は否定例を表現しない。前半の証明で強い表現の一意性を用いた段が、この例では成り立たない。
▨