§E16.21証明述語と証明可能性述語

最終更新

形式的証明は有限列であるため、証明の正しさは自然数上の関係として符号化することができる。ただし、理論の公理集合が計算可能に列挙可能であっても、一般には公理であるかどうかを決定することはできない。本記事では、公理を出力した有限計算そのものを証明符号へ含め、この差を保ったまま証明関係を原始再帰的にする。さらに、証明可能性と無矛盾性を表す算術文を定義し、後続の導出可能性条件が入力として用いる証明符号の合成関数を構成する。

1 対象理論と三つの言語水準

算術言語をLA={0,S,+,×}L_A=\{0,S,+,\times\}とする。理論TTはLAL_Aの文からなる公理集合をもち、Q⊆TQ\subseteq Tを満たすと仮定する。さらに、TTの公理を重複を許して列挙する決定的プログラムETE_Tを一つ固定する。計算モデルは本記事の中で一つに固定し、有限個の状態と有限個のレジスタをもつ決定的レジスタ機械とする。各命令は、一つのレジスタの値を11だけ増やすこと、11だけ減らすこと、一つのレジスタが00であるかによって次の状態を分けること、または指定したレジスタの値を出力することのいずれかである。証明体系には、一階論理の Hilbert 型体系、modus ponens、一般化、および等号公理を用いる。

定義 1.1. 次の記法を区別する。

  1. Proof⁡T(p,y)\operatorname{Proof}_T(p,y)は、自然数p,yp,yに関するメタ言語の関係である。
  2. Prf⁡T(p,y)\operatorname{Prf}_T(p,y)は、二つの自由変数をもつLAL_Aの論理式である。
  3. T⊢φT\vdash\varphiは、メタ理論で述べる形式的導出の存在である。
  4. N⊨Prf⁡T(pˉ,yˉ)\mathbb N\models\operatorname{Prf}_T(\bar p,\bar y)は、標準モデルにおける算術式の真理である。

ここで、nˉ=Sn0\bar n=S^n0は標準自然数nnを表す数詞である。メタ言語の関係と対象言語の論理式を等号で同一視しない。

2 計算可能な公理列挙を有限証人へ変える

ETE_Tの一時点の配置は、状態番号と各レジスタの値を並べた有限列で符号化する。配置が初期配置であること、二配置が一回の計算規則で結ばれること、および配置が数aaを出力することは、いずれも原始再帰的な関係として選ぶ。固定された有限プログラムについては、各条件が有限個の状態番号の等号、レジスタ値の後続者と前者、零判定、および有限場合分けへ展開されるためである。

定義 2.1.AxWit⁡T(a,w)\operatorname{AxWit}_T(a,w)を、wwが配置列

C0,C1,…,CmC_0,C_1,\ldots,C_m

を符号化し、次の三条件を満たすことを表す関係とする。

  1. C0C_0はETE_Tの初期配置である。
  2. すべてのi<mi<mについて、CiC_iからCi+1C_{i+1}へ一回の正しい遷移が行われる。
  3. CmC_mではaaが出力される。

定理 2.2.AxWit⁡T(a,w)\operatorname{AxWit}_T(a,w)は原始再帰的であり、任意の自然数aaについて

a∈Ax⁡(T)⟺∃w AxWit⁡T(a,w)a\in\operatorname{Ax}(T) \quad\Longleftrightarrow\quad \exists w\,\operatorname{AxWit}_T(a,w)

が成り立つ。

証明. 有限列符号の長さと成分取得は原始再帰全関数である。初期配置の判定、局所遷移の判定、および末尾出力の判定も、固定プログラムETE_Tの有限な命令表を展開すれば原始再帰的である。従って、

AxWit⁡T(a,w)  : ⁣ ⁣⟺Len⁡(w)>0 ∧ Init⁡(Entry⁡(w,0))∧ ∀i<Len⁡(w)−1 Step⁡(Entry⁡(w,i),Entry⁡(w,i+1))∧ Out⁡(Entry⁡(w,Len⁡(w)−1),a)\begin{aligned} \operatorname{AxWit}_T(a,w)\;:\!\!\Longleftrightarrow{}& \operatorname{Len}(w)>0\ \land\ \operatorname{Init}(\operatorname{Entry}(w,0))\\ &\land\ \forall i<\operatorname{Len}(w)-1\, \operatorname{Step}(\operatorname{Entry}(w,i),\operatorname{Entry}(w,i+1))\\ &\land\ \operatorname{Out}(\operatorname{Entry}(w,\operatorname{Len}(w)-1),a) \end{aligned}

は、原始再帰関係の合成、有限場合分け、および有界全称量化によって原始再帰的である。

a∈Ax⁡(T)a\in\operatorname{Ax}(T)ならば、ETE_Tが第nn配置でaaを出力するような非負整数nnが存在する。初期配置から当該出力配置までを符号化したwwはAxWit⁡T(a,w)\operatorname{AxWit}_T(a,w)を満たす。逆に、同関係を満たすwwの各隣接配置はETE_Tの決定的な遷移規則に従い、末尾配置ではaaが出力される。従ってETE_Tは実際にaaを列挙し、a∈Ax⁡(T)a\in\operatorname{Ax}(T)である。▨

公理集合そのものの特性関数は用いていない。存在量化された有限計算証人を証明符号へ含めることが、列挙可能性と原始再帰的な検査を接続する。

3 証明符号と算術式

定義 3.1.Proof⁡T(p,y)\operatorname{Proof}_T(p,y)は、ppが有限列を符号化し、各行に論理式の符号と補助データをもち、次を満たすことを表す。

  1. 各行は、論理公理または等号公理の置換例、先行する二行への modus ponens、先行する一行への一般化、またはTTの非論理公理である。
  2. 一般化の行には変数条件を課す。すなわち§E16.18 定義 5.1のGenOK⁡\operatorname{GenOK}に従い、当該行より前にある非論理公理の行の論理式に、一般化する変数が自由に現れないことを要求する。
  3. 非論理公理の行にはwwが付随し、AxWit⁡T(a,w)\operatorname{AxWit}_T(a,w)が成り立つ。
  4. 最終行は文であり、その符号はyyである。

補助データが上の条件を満たさない入力に対しては、関係は偽と定める。行の成分数が足りない場合も、欠けた成分が条件を満たさない場合として偽になる。復号そのものが失敗する入力は無い。§E16.17 命題 2.2により任意の自然数はただ一つの有限列へ復号され、§E16.17 定義 4.1により列の長さ以上の添字に対する成分も00として定まるからである。

命題 3.2.Proof⁡T(p,y)\operatorname{Proof}_T(p,y)は原始再帰的な二項関係である。

証明. 証明列の各行について、論理式であること、公理スキーマへの代入例であること、一般化の変数条件、等号公理の有限項数の各場合、先行行の添字、および modus ponens の式の一致を符号上で検査する。各検査は、構文操作の原始再帰性から原始再帰的である。非論理公理の行はAxWit⁡T\operatorname{AxWit}_Tによって検査する。全行の正しさは、列の長さを上界とする有界全称量化である。最終行の取得とyyとの一致も原始再帰的である。原始再帰関係は合成、有限場合分け、および有界量化で閉じているため、全体も原始再帰的である。▨

単に表現可能性定理を適用するだけでは、Prf⁡T\operatorname{Prf}_Tとして得られる論理式の形が定まらず、Σ1\Sigma_1論理式そのものとして固定されるとは限らない。そこで、証明検査の算術式を次の形に固定する。以下では、受理側と棄却側の双方について有限な証人を用意し、量化子をすべて項で有界化した展開として式を固定する。受理側だけを固定すると、標準モデルで偽な入力についてQQが非標準の証人を排除することができず、否定例の証明可能性が得られない。

固定する式の量化子の形は、§E16.19 定義 2.1が定めたΔ0\Delta_0論理式とΣ1\Sigma_1論理式の類に従う。同定義は、順序の略記t<st<s、t≤st\le sに加えて加数の位置を入れ替えた略記t≼st\preccurlyeq s、t≺st\prec sを置き、四つの略記が含む∃d\exists dを有界量化子として扱うことを規約としている。数詞を代入したΔ0\Delta_0文の真偽をQQが決定することは§E16.19 補題 3.3が与える。本記事では、加法の第2引数に関係の左辺が来る≼\preccurlyeqと≺\precの向きも用いる。上界が数詞nˉ\bar nになったときにd+nˉ=Sndd+\bar n=S^ndという書き換えを経て、QQの内部で有限分解と二分法を得ることができるのがこの向きだからである。どの量化子をこの向きで有界化するかは、以下の各節で個別に述べる。

定義 3.3. 一行の符号を

Line⁡T(k,a,u,v,i,w)=SeqCode⁡(k,a,u,v,i,w)\operatorname{Line}_T(k,a,u,v,i,w) =\operatorname{SeqCode}(k,a,u,v,i,w)

とする。kkは規則タグ、aaは行の論理式、u,vu,vは先行行の添字、iiは一般化する変数、wwは非論理公理行のAxWit⁡T\operatorname{AxWit}_T証人である。未使用欄は00とする。

Acc⁡T(p,y,z)\operatorname{Acc}_T(p,y,z)を、zzが次の有限な証人 tuple を符号化することを表す有界検査式とする。

  1. n=Len⁡(p)>0n=\operatorname{Len}(p)>0と、ppをnn回復号する Cons 接頭表を含む。
  2. 各r<nr<nについて、第rr行ℓr\ell_rと、その六成分kr,ar,ur,vr,ir,wrk_r,a_r,u_r,v_r,i_r,w_rを含む。
  3. 各r<nr<nについて、Term⁡\operatorname{Term}、Formula⁡\operatorname{Formula}、Free⁡\operatorname{Free}、Sentence⁡\operatorname{Sentence}、FreeFor⁡\operatorname{FreeFor}、SubTermCode⁡\operatorname{SubTermCode}、Look⁡\operatorname{Look}、LogAx⁡\operatorname{LogAx}、およびAxWit⁡T\operatorname{AxWit}_Tのうち当該行で必要となる原始再帰検査の完全な有限計算 trace を含む。この一覧が、zzへ格納する trace の正典である。とくにTerm⁡\operatorname{Term}の trace を独立に格納する。§E16.18 定義 4.2 (2)が要求する候補項ttは、viv_iがaaに自由に現れない場合にはb=ab=aとなり、ttがara_rの部分符号であるとは限らないので、Formula⁡(ar)\operatorname{Formula}(a_r)の trace からTerm⁡(t)\operatorname{Term}(t)の値を読み出すことができないからである。一覧のうちSentence⁡\operatorname{Sentence}とLogAx⁡\operatorname{LogAx}は、上流の定義が他の判定と有界量化子から組み立てた述語であり、Acc⁡T\operatorname{Acc}_Tではこの二つを上流の定義の字面へ展開した形で用いる。従ってこの二つについて一覧がいう trace とは、展開に現れるTerm⁡\operatorname{Term}、Formula⁡\operatorname{Formula}、Free⁡\operatorname{Free}、FreeFor⁡\operatorname{FreeFor}、およびSubTermCode⁡\operatorname{SubTermCode}の評価 trace と、SubTermCode⁡\operatorname{SubTermCode}の評価が内部で用いるLook⁡\operatorname{Look}の評価 trace の全体を指す。Sentence⁡\operatorname{Sentence}自身またはLogAx⁡\operatorname{LogAx}自身の遷移列を別に置くのではない。
  4. 各r<nr<nについて Formula(ar)(a_r)が成り立ち、さらに次のいずれかが成り立つ。
    • kr=1k_r=1で LogAx(ar)(a_r)が成り立ち、未使用欄がすべて00である。
    • kr=2k_r=2で Sentence(ar)(a_r)とAxWit⁡T(ar,wr)\operatorname{AxWit}_T(a_r,w_r)が成り立ち、ur=vr=ir=0u_r=v_r=i_r=0である。
    • kr=3k_r=3でur,vr<ru_r,v_r<r、ir=wr=0i_r=w_r=0であり、ある式符号bbについてaur=ImpRaw⁡(b,ar)a_{u_r}=\operatorname{ImpRaw}(b,a_r)かつavr=ba_{v_r}=bである。
    • kr=4k_r=4でur<ru_r<r、vr=wr=0v_r=w_r=0であり、ar=AllRaw⁡(ir,aur)a_r=\operatorname{AllRaw}(i_r,a_{u_r})である。
  5. Sm=nSm=nを満たすmmが存在して、第mm行の論理式についてam=ya_m=yが成り立ち、さらに Sentence(y)(y)が成り立つ。LAL_Aには切捨て減法が無いので、最終行の添字を項n−1n-1として書かず、この形で表す。

ここで、有限列と trace の成分取得には§E16.19 定義 4.1の raw 式を用いる。各 raw 式の存在証人、Cell 表のB,CB,C、構文判定の遷移列、および計算配置列はすべてzzの成分へ入れる。

Acc⁡T\operatorname{Acc}_Tを、すべての量化子をpp、yy、zzの項で有界化した展開として固定する。

内部の存在量化子を先頭の一つの存在量化へまとめる操作は行わない。zzを証人の集約先とすることは設計の方針であって、固定する論理式の形は、あくまで内部の量化子を残したうえで各々に項の上界を与えた展開である。上界の与え方は、この定義に続く節でまとめて述べる。

検査の否定側も同じ方式で有界な証人へ変える。Rej⁡T(p,y,z)\operatorname{Rej}_T(p,y,z)を、zzが次のいずれかを示す有限な証人 tuple を符号化することを表す式とする。

  1. Len⁡(p)=0\operatorname{Len}(p)=0であること。zzはLen⁡Q0(p,0)\operatorname{Len}^{0}_Q(p,0)の証人となる復号表を含む。
  2. n=Len⁡(p)>0n=\operatorname{Len}(p)>0であり、あるr<nr<nが存在して、Formula(ar)(a_r)が成り立たないか、または条件 (d)の四つの場合がいずれも成り立たないこと。zzは復号表、当該のrr、第rr行の六成分、および各判定が否定の値で停止する完全な有限計算 trace を含む。
  3. n=Len⁡(p)>0n=\operatorname{Len}(p)>0であり、Sm=nSm=nを満たすmmについてam≠ya_m\ne yであるか、または Sentence(y)(y)が成り立たないこと。zzは復号表と当該の判定 trace を含む。

Rej⁡T\operatorname{Rej}_Tの量化子にもAcc⁡T\operatorname{Acc}_Tと同じ上界を与え、Rej⁡T\operatorname{Rej}_Tも有界化した展開として固定する。(2)の「四つの場合がいずれも成り立たない」は、modus ponens の節の∃b\exists bをb<aurb<a_{u_r}で有界化したうえで否定を取ったものである。

§E16.19 定義 2.1の略記≼\preccurlyeqを用いて、標準証明述語を

Check⁡T(p,y,z): ⁣ ⁣⟺Acc⁡T(p,y,z)∧∀z′ (z′≼z→¬Rej⁡T(p,y,z′)),\operatorname{Check}_T(p,y,z) :\!\!\Longleftrightarrow \operatorname{Acc}_T(p,y,z) \land\forall z'\,\bigl(z'\preccurlyeq z\to \neg\operatorname{Rej}_T(p,y,z')\bigr),Prf⁡T(p,y): ⁣ ⁣⟺∃z Check⁡T(p,y,z)(P)\operatorname{Prf}_T(p,y) :\!\!\Longleftrightarrow \exists z\,\operatorname{Check}_T(p,y,z) \tag{P}

と固定する。

条件 (d)の一般化の肢では、§E16.18 定義 5.1の第4節がもつ変数条件GenOK⁡\operatorname{GenOK}を改めて検査していない。同定義の直後が述べるとおり、理論の公理に由来する行はすべて文の符号をもつので、その論理式には自由な変数が現れず、GenOK⁡\operatorname{GenOK}は自動的に成り立つ。上の定義でも条件 (d)のkr=2k_r=2の肢が Sentence(ar)(a_r)を要求している。従って条件 (d)は定義 3.1 条件 (a)および定義 3.1 条件 (b)と同じ規則集合を表す。

AxWit⁡T\operatorname{AxWit}_Tの照合は、行に付随して与えられたwrw_rについての有限な検査であって探索ではない。従って、ppの復号、各行の構文判定、および最終行の照合はいずれも有限回で停止する。

4 固定した式がΔ0\Delta_0である理由

Acc⁡T\operatorname{Acc}_TとRej⁡T\operatorname{Rej}_Tに現れる量化子を四つの系統に分け、それぞれにLAL_Aの項の上界を与える。まず§E16.19 定義 4.1のDec⁡Q(s,a,t)\operatorname{Dec}_Q(s,a,t)はa<sa<sとt<st<sを含むので、Cons 符号の成分は符号自身より小さい。上でzzに格納すると定めた証人はすべてzzの成分であるから、いずれもzzより小さい。以下で「項zzで有界化する」というときは、§E16.19 定義 2.1の略記≼\preccurlyeqによる有界量化∃v≼z\exists v\preccurlyeq zまたは∀v≼z\forall v\preccurlyeq zを指す。Check⁡T\operatorname{Check}_Tが付加する全称量化子と同じ関係である。

第一の系統として、有限列算術式 API に由来する量化子と上界は次のとおりである。

  • Pair⁡Q0(a,b,c)\operatorname{Pair}^{0}_Q(a,b,c)の∃w\exists wは、連言肢w=a+bw=a+bにより項a+ba+bで有界化する。
  • Cons⁡Q0(a,t,c)\operatorname{Cons}^{0}_Q(a,t,c)の∃p\exists pは、連言肢c=Spc=Spにより項ccで有界化する。
  • Unique⁡[Pair⁡Q0]\operatorname{Unique}[\operatorname{Pair}^{0}_Q]の∀z′\forall z'は、raw 式が出力に課す上界により項(a+b)×S(a+b)+(b+b)(a+b)\times S(a+b)+(b+b)で有界化する。Unique⁡[Cons⁡Q0]\operatorname{Unique}[\operatorname{Cons}^{0}_Q]の∀z′\forall z'は、c=Spc=Spを経由して項S((a+t)×S(a+t)+(t+t))S\bigl((a+t)\times S(a+t)+(t+t)\bigr)で有界化する。
  • Tab⁡Q0(B,C,i,x)\operatorname{Tab}^{0}_Q(B,C,i,x)の∃q\exists qにはすでにq≤Bq\le Bが付いている。Cell⁡Q\operatorname{Cell}_Qの一意性節の全称量化子は、Tab⁡Q0\operatorname{Tab}^{0}_Qが含むx<M(i,C)x<M(i,C)により項M(i,C)=S((Si)×C)M(i,C)=S((Si)\times C)で有界化する。
  • Prefix⁡Q(B,C,s,k)\operatorname{Prefix}_Q(B,C,s,k)の∀j\forall jはすでにj<kj<kで有界である。その内側の∃x∃y∃a\exists x\exists y\exists aは、x<M(j,C)x<M(j,C)、y<M(Sj,C)y<M(Sj,C)、およびDec⁡Q\operatorname{Dec}_Qが与えるa<xa<xで有界化する。
  • Len⁡Q0(s,n)\operatorname{Len}^{0}_Q(s,n)の∃B∃C\exists B\exists CとAt⁡Q0(s,i,t)\operatorname{At}^{0}_Q(s,i,t)の∃B∃C\exists B\exists Cは、B,CB,Cをzzの成分として格納するので項zzで有界化する。Len⁡Q0\operatorname{Len}^{0}_Qのn≤sn\le sとAt⁡Q0\operatorname{At}^{0}_Qのi≤si\le sはすでに有界である。
  • Head⁡Q0(s,a)\operatorname{Head}^{0}_Q(s,a)の∃t\exists tは、Dec⁡Q\operatorname{Dec}_Qが与えるt<st<sで有界化する。
  • Entry⁡Q0(s,i,a)\operatorname{Entry}^{0}_Q(s,i,a)の∃n\exists nはLen⁡Q0(s,n)\operatorname{Len}^{0}_Q(s,n)が含むn≤sn\le sで有界化し、∃t\exists tは反復尾をzzの成分として格納するので項zzで有界化する。
  • Unique⁡[Len⁡Q0]\operatorname{Unique}[\operatorname{Len}^{0}_Q]の∀z′\forall z'は raw 式が含むz′≤sz'\le sで有界化する。出力の上界が字面に無いUnique⁡[Entry⁡Q0]\operatorname{Unique}[\operatorname{Entry}^{0}_Q]とUnique⁡[Concat⁡Q0]\operatorname{Unique}[\operatorname{Concat}^{0}_Q]の∀z′\forall z'は項zzで有界化する。この二つではzzより大きい出力候補を排除しないので、有界化した一意性節は元の節より弱い。この弱化はAcc⁡T\operatorname{Acc}_Tの標準モデルでの真理値を変えない。§E16.19 定理 4.5は、標準符号と固定した標準添字を代入した API 式の出力を一つの数詞へ固定しており、その証明はLen⁡Q0\operatorname{Len}^{0}_Qについて raw 式の段階で候補が一つに限られることを示し、Entry⁡Q0\operatorname{Entry}^{0}_QとConcat⁡Q0\operatorname{Concat}^{0}_Qについても、長さと各段の Cell の機能性から任意の候補出力が同じ数詞に固定されることを示しているからである。従って標準入力ではzzより大きい出力候補がそもそも存在しない。
  • Concat⁡Q0(s,t,u)\operatorname{Concat}^{0}_Q(s,t,u)の∃n\exists nはすでにn≤sn\le sで有界であり、∃B∃C∃D∃E\exists B\exists C\exists D\exists Eは項zzで有界化する。内側の∀j\forall jはj<nj<nで有界であり、∃x∃y∃a∃r∃r′\exists x\exists y\exists a\exists r\exists r'はx<M(j,C)x<M(j,C)、y<M(Sj,C)y<M(Sj,C)、a<xa<x、r<M(j,E)r<M(j,E)、r′<M(Sj,E)r'<M(Sj,E)で有界化する。

第二の系統は、構文判定の式が字面にもつ量化子である。

Sentence⁡(y)\operatorname{Sentence}(y)は§E16.18 定義 2.1によりFormula⁡(y)∧∀i≤y ¬Free⁡(y,i)\operatorname{Formula}(y)\land\forall i\le y\,\neg\operatorname{Free}(y,i)である。この全称量化子はすでに項yyで有界であり、Acc⁡T\operatorname{Acc}_Tではyyの位置にara_rまたはyyが入る。

Acc⁡T\operatorname{Acc}_Tの第4項のkr=1k_r=1の肢は、LogAx⁡(ar)\operatorname{LogAx}(a_r)を§E16.18 定義 4.2の6つの節の有限選言へ展開した形で含む。LogAx⁡\operatorname{LogAx}を独立した判定として評価し、その値を trace から読み出すのではない。この6つの節が含む存在量化子は、いずれも項yyで有界化する。ここでもyyの位置にはara_rが入る。同定義の第2項では、上流の字面がすでにi,t,a,b≤yi,t,a,b\le yを課している。第3項が課すのはi,a,b≤yi,a,b\le yであり、第3項が表示するパターンには項符号が現れないのでttは無い。第1項のa,b,ca,b,c、第4項のy=Eq⁡(t,t)y=\operatorname{Eq}(t,t)のtt、第5項と第6項のt,u,t1,u1,t2,u2t,u,t_1,u_1,t_2,u_2には上流の字面に上界が無い。しかし、これらはいずれも表示されたパターンにおいてyyの真部分符号として現れる。§E16.18 補題 1.2 (1)は、構文符号の直下に現れる項または論理式の符号が全体より小さいことを与えるので、入れ子の各段へ反復して適用すると、これらの符号はすべてyyより小さい。従って各存在量化子を∃ ⋅≤y\exists\,\cdot\le yの形へ書くことができる。6つの節が表示する構成子の等式、たとえば第2項のy=ImpRaw⁡(AllRaw⁡(i,a),b)y=\operatorname{ImpRaw}(\operatorname{AllRaw}(i,a),b)や第5項と第6項の入れ子の等式をLAL_Aの式へ展開すると、AllRaw⁡(i,a)\operatorname{AllRaw}(i,a)やAndCode⁡(Eq⁡(t1,u1),Eq⁡(t2,u2))\operatorname{AndCode}(\operatorname{Eq}(t_1,u_1),\operatorname{Eq}(t_2,u_2))のような中間の Cons 値についての存在量化子が新たに現れる。これらの中間値は、表示されたパターンにおけるyyの真部分符号か、その Cons 符号としての尾のいずれかであるから、§E16.18 補題 1.2 (1)と本節の冒頭で述べたDec⁡Q\operatorname{Dec}_Qの規則を反復して用いると、いずれもyyより小さい。従って項yyで有界化する。さらに、これらは上の定義が置いた包括規則、すなわち各 raw 式の存在証人をすべてzzの成分へ入れるという規則の対象でもあるので、項zzで有界化することもできる。6つの節が要求するTerm⁡\operatorname{Term}、Formula⁡\operatorname{Formula}、Free⁡\operatorname{Free}、FreeFor⁡\operatorname{FreeFor}、およびSubTermCode⁡\operatorname{SubTermCode}の判定は、この展開の中に現れる。これらの評価が導入する量化子は第三の系統が扱う。

第三の系統は、有限分岐評価の遷移列の走査である。

Acc⁡T\operatorname{Acc}_Tの定義の第3項が正典として挙げた trace は、§E16.17 補題 3.2の有限スタックの一段遷移を反復した遷移列、または§E16.17 補題 3.1の履歴符号の列であり、当該判定の値はその末尾から読み出される。同項が述べたとおり、Sentence⁡\operatorname{Sentence}とLogAx⁡\operatorname{LogAx}については、上流の定義の字面へ展開したときに現れる各判定の trace がこれにあたる。Acc⁡T\operatorname{Acc}_Tでは、いずれの場合も、その列の停止までの接頭部を一つの有限列符号τ\tauとしてzzの成分に格納し、次の三条件を課す。第00成分が開始状態であること、N=Len⁡(τ)N=\operatorname{Len}(\tau)とSm′=NSm'=Nについて、j≺m′j\prec m'を満たす各jjで第jj成分と第SjSj成分が一段の遷移で結ばれること、および第m′m'成分が停止状態であって、そこから当該判定の値が読み出されることである。

この系統だけは、停止時刻を項で押さえるのではなく、zzの成分として格納した trace 符号自身で押さえる。§E16.17 補題 3.2が与える停止時刻の上界は3NK(r(q))3N_K(r(q))であり、NKN_KはNK(0)=1N_K(0)=1、NK(s+1)=1+K NK(s)N_K(s+1)=1+K\,N_K(s)で定まる指数的に増大する関数である。LAL_Aの項は0,S,+,×0,S,+,\timesの合成だけからなるので、この上界を項として書くことはできない。上の三条件に現れる量化子は、Len⁡Q0(τ,N)\operatorname{Len}^{0}_Q(\tau,N)が含むN≤τN\le\tau、m′≺Nm'\prec N、およびj≺m′j\prec m'で有界であり、τ\tauがzzの成分であることから、いずれも項zzで押さえられる。各成分の取得はEntry⁡Q0\operatorname{Entry}^{0}_Qであり、その量化子には第一の系統が与えた上界を用いる。一段遷移そのものは、固定された有限個のタグ照合とHead⁡\operatorname{Head}、Tail⁡\operatorname{Tail}、Entry⁡\operatorname{Entry}、Cons⁡\operatorname{Cons}の合成であるから、新たな系統の量化子を生まない。AxWit⁡T\operatorname{AxWit}_Tの配置列についても同じ方式を用いる。こちらは証人wrw_rが行に付随して与えられるので、そもそも探索を含まない。

第四の系統は、Acc⁡T\operatorname{Acc}_TとRej⁡T\operatorname{Rej}_Tが自ら導入した量化子である。

まず、Acc⁡T\operatorname{Acc}_Tの第2項とRej⁡T\operatorname{Rej}_Tの第2項が導入する行ℓr\ell_rとその六成分kr,ar,ur,vr,ir,wrk_r,a_r,u_r,v_r,i_r,w_rの存在量化子と、ℓr=Line⁡T(kr,ar,ur,vr,ir,wr)\ell_r=\operatorname{Line}_T(k_r,a_r,u_r,v_r,i_r,w_r)、aur=ImpRaw⁡(b,ar)a_{u_r}=\operatorname{ImpRaw}(b,a_r)、ar=AllRaw⁡(ir,aur)a_r=\operatorname{AllRaw}(i_r,a_{u_r})の各等式をLAL_Aの式へ展開したときに現れる中間の Cons 値の存在量化子がある。これらはいずれも定義がzzの成分として格納すると定めたものであるから、本節の冒頭で述べた規則により項zzで有界化する。

格納の宣言が及ばない読み出しは、上界をppに取る。Rej⁡T\operatorname{Rej}_Tの第3項が格納を宣言しているのは復号表と当該の判定 trace だけであり、同項が読む第mm行とその論理式ama_mは宣言に入っていない。Rej⁡T\operatorname{Rej}_Tの第2項が先行行として読むaura_{u_r}も同様である。これらはいずれもppの成分である行の、さらにその成分であるから、本節の冒頭で述べたDec⁡Q\operatorname{Dec}_Qの規則をppから二段反復して用いると、項ppで有界化する。残りの量化子は次のとおりである。

第4項の modus ponens の肢にある∃b\exists bは、aur=ImpRaw⁡(b,ar)a_{u_r}=\operatorname{ImpRaw}(b,a_r)によりbbがaura_{u_r}の直下成分であることから、b<aurb<a_{u_r}で有界化する。aura_{u_r}は、Acc⁡T\operatorname{Acc}_Tではzzの成分であり、Rej⁡T\operatorname{Rej}_Tでは上に述べたとおり項ppで押さえられる。第5項とRej⁡T\operatorname{Rej}_Tの第3項が用いるSm=nSm=nの∃m\exists mは、m≺nm\prec nすなわち項nnで有界化する。LAL_Aには切捨て減法が無いので、最終行の添字をn−1n-1という項で書くことはできず、この存在量化子を置くほかない。全行条件の全称量化子はr<nr<nであり、Rej⁡T\operatorname{Rej}_Tの第2項の∃r\exists rも同じ上界をもつ。nn自身の存在量化子はLen⁡Q0(p,n)\operatorname{Len}^{0}_Q(p,n)が含むn≤pn\le pで有界である。最後に、本節が用いる順序の四つの略記t<st<s、t≤st\le s、t≼st\preccurlyeq s、t≺st\prec sが含む∃d\exists dは、§E16.19 定義 2.1の規約によりいずれも有界量化子として扱う。

以上により、Acc⁡T\operatorname{Acc}_TとRej⁡T\operatorname{Rej}_Tに現れるすべての量化子に、p,y,zp,y,zと外側の束縛変数から作ったLAL_Aの項の上界が与えられた。従って両者は§E16.19 定義 2.1のΔ0\Delta_0論理式である。Check⁡T\operatorname{Check}_Tが付加する全称量化子もzzで有界であるからCheck⁡T\operatorname{Check}_TもΔ0\Delta_0論理式であり、(P) はΣ1\Sigma_1論理式である。

5 受理証人と棄却証人

上で固定した二つの式が標準自然数について排他的かつ網羅的であることを、独立の命題として取り出す。この主張は以下の主結果が繰り返し用いる。

命題 5.1. 任意の標準自然数p,yp,yについて、次の二つが成り立つ。

  1. N⊨∃z Acc⁡T(pˉ,yˉ,z)\mathbb N\models\exists z\,\operatorname{Acc}_T(\bar p,\bar y,z)とN⊨∃z Rej⁡T(pˉ,yˉ,z)\mathbb N\models\exists z\,\operatorname{Rej}_T(\bar p,\bar y,z)のうち、ちょうど一方が成り立つ。
  2. N⊨∃z Acc⁡T(pˉ,yˉ,z)\mathbb N\models\exists z\,\operatorname{Acc}_T(\bar p,\bar y,z)とN⊨Prf⁡T(pˉ,yˉ)\mathbb N\models\operatorname{Prf}_T(\bar p,\bar y)は同値である。

証明. 標準自然数p,yp,yを固定する。最初に、検査が読み出す値がすべて一意に定まることを確かめる。§E16.17 命題 2.2により、任意の自然数はただ一つの有限列へ復号され、bad code は存在しない。従ってn=Len⁡(p)n=\operatorname{Len}(p)と、各r<nr<nの行ℓr=Entry⁡(p,r)\ell_r=\operatorname{Entry}(p,r)と、その六成分kr,ar,ur,vr,ir,wrk_r,a_r,u_r,v_r,i_r,w_rは標準自然数として一意に定まる。行の成分数が66に満たない場合も、§E16.17 定義 4.1が範囲外の成分を00と定めるので値は定まる。§E16.18 定理 5.2により Formula、LogAx、Sentence、Free は全域の原始再帰関係であり、定理 2.2によりAxWit⁡T\operatorname{AxWit}_Tも原始再帰関係であるから、各行で必要になる判定の値も一意に定まり、Acc⁡T\operatorname{Acc}_Tの定義の第3項が正典として挙げた trace はいずれも標準自然数として存在する。さらに§E16.19 定理 4.5により、標準符号と固定した標準添字を代入した API 式の出力はQQの内部で一つの数詞に固定される。§E16.15 定理 2.2と§E16.10 定理 6.1によりQQの定理は標準モデルで真であるから、N\mathbb Nにおける raw 式の出力もこれらの値に一致する。

網羅性を示す。

次の四つの場合が起こりうるすべてである。

Len⁡(p)=0\operatorname{Len}(p)=0の場合。Rej⁡T\operatorname{Rej}_Tの第1項が成り立つ。Len⁡Q0(p,0)\operatorname{Len}^{0}_Q(p,0)の証人となる復号表をzzへ収めればよい。

n>0n>0であり、あるr<nr<nについて Formula(ar)(a_r)が成り立たないか、またはAcc⁡T\operatorname{Acc}_Tの第4項の四つの場合がいずれも成り立たない場合。そのようなrrを一つ取り、復号表、rr、第rr行の六成分、および各判定が否定の値で停止する trace をzzへ収めると、Rej⁡T\operatorname{Rej}_Tの第2項が成り立つ。

n>0n>0であり、全行が第4項を満たすが、Sm=nSm=nを満たすmmについてam≠ya_m\ne yであるか Sentence(y)(y)が成り立たない場合。同様にzzを作るとRej⁡T\operatorname{Rej}_Tの第3項が成り立つ。

n>0n>0であり、全行が第4項を満たし、末尾の照合も成り立つ場合。上で述べたとおり各値と各 trace は存在するので、復号表、各行とその六成分、および各判定の trace を一つの標準 tuplez0z_0へ収めると、Acc⁡T\operatorname{Acc}_Tの五つの項がすべて成り立つ。

排他性を示す。N⊨Acc⁡T(pˉ,yˉ,zˉ)\mathbb N\models\operatorname{Acc}_T(\bar p,\bar y,\bar z)とN⊨Rej⁡T(pˉ,yˉ,zˉ′)\mathbb N\models\operatorname{Rej}_T(\bar p,\bar y,\bar z')を満たす標準自然数z,z′z,z'が同時に存在したとする。Rej⁡T\operatorname{Rej}_Tの第1項が成り立つ場合、Len⁡(p)=0\operatorname{Len}(p)=0である。一方Acc⁡T\operatorname{Acc}_Tの第1項はLen⁡(p)=n>0\operatorname{Len}(p)=n>0を要求する。長さの値は上で述べたとおり一意であるから、両立しない。第2項が成り立つ場合、あるr<nr<nについて Formula(ar)(a_r)または第4項の四つの場合の成立が否定される。行と六成分の値は一意であり、各判定の値も一意であるから、同じrrについて成立を主張するAcc⁡T\operatorname{Acc}_Tの第4項と両立しない。第3項が成り立つ場合も同様に、ama_mと Sentence(y)(y)の値の一意性により、Acc⁡T\operatorname{Acc}_Tの第5項と両立しない。以上で第1項を得る。

(2)を示す。Check⁡T\operatorname{Check}_Tの第1連言がAcc⁡T\operatorname{Acc}_Tであるから、N⊨Prf⁡T(pˉ,yˉ)\mathbb N\models\operatorname{Prf}_T(\bar p,\bar y)ならばN⊨∃z Acc⁡T(pˉ,yˉ,z)\mathbb N\models\exists z\,\operatorname{Acc}_T(\bar p,\bar y,z)である。逆にN⊨Acc⁡T(pˉ,yˉ,zˉ)\mathbb N\models\operatorname{Acc}_T(\bar p,\bar y,\bar z)を満たす標準自然数zzを取る。(1)の排他性により棄却証人は一つも存在しないので、Check⁡T\operatorname{Check}_Tの第2連言は空虚に成り立つ。従ってN⊨Check⁡T(pˉ,yˉ,zˉ)\mathbb N\models\operatorname{Check}_T(\bar p,\bar y,\bar z)であり、N⊨Prf⁡T(pˉ,yˉ)\mathbb N\models\operatorname{Prf}_T(\bar p,\bar y)である。▨

(2)が述べるとおり、付加した第2連言は (P) の標準モデルでの真理値を変えない。この連言を置くのは、標準モデルで偽な入力についてQQが (P) を反証することができるようにするためである。

命題 5.2.

  1. 任意の標準自然数p,yp,yについて

    Proof⁡T(p,y)⟺N⊨Prf⁡T(pˉ,yˉ)\operatorname{Proof}_T(p,y) \quad\Longleftrightarrow\quad \mathbb N\models\operatorname{Prf}_T(\bar p,\bar y)

    が成り立つ。

  2. Prf⁡T(p,y)\operatorname{Prf}_T(p,y)は§E16.19 定義 2.1の意味のΣ1\Sigma_1論理式である。すなわち、Δ0\Delta_0論理式Check⁡T\operatorname{Check}_Tを用いて∃z Check⁡T(p,y,z)\exists z\,\operatorname{Check}_T(p,y,z)の形に書かれている。

  3. Prf⁡T\operatorname{Prf}_TはProof⁡T\operatorname{Proof}_Tを肯定例と否定例の双方について数詞ごとにQQで表現する。すなわち、Proof⁡T(p,y)\operatorname{Proof}_T(p,y)ならばQ⊢Prf⁡T(pˉ,yˉ)Q\vdash\operatorname{Prf}_T(\bar p,\bar y)であり、Proof⁡T(p,y)\operatorname{Proof}_T(p,y)が成り立たないならばQ⊢¬Prf⁡T(pˉ,yˉ)Q\vdash\neg\operatorname{Prf}_T(\bar p,\bar y)である。

証明.(1)を示す。Proof⁡T(p,y)\operatorname{Proof}_T(p,y)が成り立つとする。有限な証明列を実際に復号し、各行の六成分、公理列挙の計算列、構文判定の遷移列、および各局所推論の照合結果を一つの標準 tuplez0z_0へ格納することができる。各 trace は定義した決定的検査の実行そのものであり、格納した証人はいずれもz0z_0の成分であるから、上の四つの系統が与えたすべての上界を満たす。従ってN⊨Acc⁡T(pˉ,yˉ,zˉ0)\mathbb N\models\operatorname{Acc}_T(\bar p,\bar y,\bar z_0)である。命題 5.1 (2)によりN⊨Prf⁡T(pˉ,yˉ)\mathbb N\models\operatorname{Prf}_T(\bar p,\bar y)を得る。逆にN⊨Prf⁡T(pˉ,yˉ)\mathbb N\models\operatorname{Prf}_T(\bar p,\bar y)ならば、同命題の第2項により、ある標準自然数zzについてN⊨Acc⁡T(pˉ,yˉ,zˉ)\mathbb N\models\operatorname{Acc}_T(\bar p,\bar y,\bar z)が成り立つ。その第1項と第2項がppの全行を復号し、第4項が各行を四つの許された規則のいずれかとして検証し、第5項が末尾をyyに固定する。従ってppはyyの外的なTT証明符号である。

(2)を示す。「固定した式がΔ0\Delta_0である理由」の節は、Acc⁡T\operatorname{Acc}_TとRej⁡T\operatorname{Rej}_Tに現れる量化子を四つの系統へ分け、それぞれにp,y,zp,y,zと外側の束縛変数から作ったLAL_Aの項の上界を与えた。従って両者はΔ0\Delta_0論理式である。Check⁡T\operatorname{Check}_Tが付加する全称量化子もzzで有界であるからCheck⁡T\operatorname{Check}_TはΔ0\Delta_0論理式であり、(P) はΣ1\Sigma_1論理式である。

(3)を示す。各検査 trace を作る関数と、候補 trace を照合する関係は、§E16.17 定理 4.2と§E16.18 定理 5.2で構成した有限列操作と構文検査の合成なので原始再帰的であり、検査は必ず停止する。数詞ごとの表現は、(P) を§E16.19 定理 7.1が生成する式と同一視して得るのではなく、(P) を直接展開して得る。

肯定例を示す。Proof⁡T(p,y)\operatorname{Proof}_T(p,y)とし、第1項で構成した標準受理証人をz0z_0とする。Acc⁡T(pˉ,yˉ,zˉ0)\operatorname{Acc}_T(\bar p,\bar y,\bar z_0)は数詞だけを項にもつ真の有界文であるから、§E16.19 補題 3.3 (3)によりQ⊢Acc⁡T(pˉ,yˉ,zˉ0)Q\vdash\operatorname{Acc}_T(\bar p,\bar y,\bar z_0)である。命題 5.1 (1)により棄却証人は一つも存在しないので、各標準自然数j≤z0j\le z_0についてRej⁡T(pˉ,yˉ,jˉ)\operatorname{Rej}_T(\bar p,\bar y,\bar j)は偽であり、同補題の第3項によりQ⊢¬Rej⁡T(pˉ,yˉ,jˉ)Q\vdash\neg\operatorname{Rej}_T(\bar p,\bar y,\bar j)である。同補題の第1項でz′≼zˉ0z'\preccurlyeq\bar z_0を有限選言へ分け、有限個の否定を合わせると

Q⊢∀z′ (z′≼zˉ0→¬Rej⁡T(pˉ,yˉ,z′))Q\vdash\forall z'\,\bigl(z'\preccurlyeq\bar z_0\to \neg\operatorname{Rej}_T(\bar p,\bar y,z')\bigr)

を得る。従ってQ⊢Check⁡T(pˉ,yˉ,zˉ0)Q\vdash\operatorname{Check}_T(\bar p,\bar y,\bar z_0)であり、存在導入によりQ⊢Prf⁡T(pˉ,yˉ)Q\vdash\operatorname{Prf}_T(\bar p,\bar y)である。

否定例を示す。Proof⁡T(p,y)\operatorname{Proof}_T(p,y)が成り立たないとする。第1項によりN⊭Prf⁡T(pˉ,yˉ)\mathbb N\not\models\operatorname{Prf}_T(\bar p,\bar y)である。命題 5.1 (2)により受理証人は存在せず、同命題の第1項が与える網羅性により標準の棄却証人z1z_1が存在する。Rej⁡T(pˉ,yˉ,zˉ1)\operatorname{Rej}_T(\bar p,\bar y,\bar z_1)は数詞だけを項にもつ真の有界文であるから、§E16.19 補題 3.3 (3)によりQ⊢Rej⁡T(pˉ,yˉ,zˉ1)Q\vdash\operatorname{Rej}_T(\bar p,\bar y,\bar z_1)である。QQの内部でzzを取り、Check⁡T(pˉ,yˉ,z)\operatorname{Check}_T(\bar p,\bar y,z)を仮定する。同補題の第2項によりz≺zˉ1z\prec\bar z_1またはzˉ1≼z\bar z_1\preccurlyeq zである。後者では、Check⁡T\operatorname{Check}_Tの第2連言をz′:=zˉ1z':=\bar z_1へ適用して¬Rej⁡T(pˉ,yˉ,zˉ1)\neg\operatorname{Rej}_T(\bar p,\bar y,\bar z_1)を得るので矛盾する。前者では、同補題の第1項によりzzは0ˉ,…,z1−1‾\bar0,\ldots,\overline{z_1-1}のいずれかに等しい。各j<z1j<z_1についてN⊭Acc⁡T(pˉ,yˉ,jˉ)\mathbb N\not\models\operatorname{Acc}_T(\bar p,\bar y,\bar j)である。受理証人が一つでも存在すれば、命題 5.1 (2)によりN⊨Prf⁡T(pˉ,yˉ)\mathbb N\models\operatorname{Prf}_T(\bar p,\bar y)となり、既に示した本命題の第1項によりProof⁡T(p,y)\operatorname{Proof}_T(p,y)が成り立って仮定に反するからである。従って同補題の第3項によりQ⊢¬Acc⁡T(pˉ,yˉ,jˉ)Q\vdash\neg\operatorname{Acc}_T(\bar p,\bar y,\bar j)であり、やはり矛盾する。zzを全称化するとQ⊢¬∃z Check⁡T(pˉ,yˉ,z)Q\vdash\neg\exists z\,\operatorname{Check}_T(\bar p,\bar y,z)、すなわちQ⊢¬Prf⁡T(pˉ,yˉ)Q\vdash\neg\operatorname{Prf}_T(\bar p,\bar y)である。▨

証人zzを式 (P) に明示した理由を述べる。表現可能性定理を適用してProof⁡T\operatorname{Proof}_Tを表す何らかの算術式を得るだけでは、その式がΣ1\Sigma_1論理式の形をもつとは限らない。証人をzzに集めて (P) の形を固定すると、Prf⁡T\operatorname{Prf}_Tは同値な別の式へ取り替えることなく、それ自身がΣ1\Sigma_1論理式になる。この差は導出可能性条件 D3 で効く。Prov⁡T(⌜φ⌝)\operatorname{Prov}_T(\ulcorner\varphi\urcorner)がΣ1\Sigma_1論理式として固定されていない場合には、これと同値なΣ1\Sigma_1文σ\sigmaを別に作ることになり、σ\sigmaの符号と⌜Prov⁡T(⌜φ⌝)⌝\ulcorner\operatorname{Prov}_T(\ulcorner\varphi\urcorner)\urcornerが異なる自然数になるため、符号を取り替える一段が必要になる。(P) の形で固定しておけば、この一段が生じない。後続の記事はこの点を明示して D3 を証明する。

定義 5.3.

Prov⁡T(y):=∃p Prf⁡T(p,y)\operatorname{Prov}_T(y):=\exists p\,\operatorname{Prf}_T(p,y)

と定める。固定した矛盾文を0=S00=S0とし、

Con⁡T:=¬Prov⁡T(⌜0=S0⌝)\operatorname{Con}_T:=\neg\operatorname{Prov}_T(\ulcorner 0=S0\urcorner)

と定める。Con⁡T\operatorname{Con}_Tは、固定した証明体系と固定したPrf⁡T\operatorname{Prf}_Tに相対的な一つの算術文である。

定理 5.4. 任意の標準自然数p,yp,yと任意のLAL_A文φ\varphiについて、

N⊨Prf⁡T(pˉ,yˉ)⟺Proof⁡T(p,y)\mathbb N\models\operatorname{Prf}_T(\bar p,\bar y) \quad\Longleftrightarrow\quad \operatorname{Proof}_T(p,y)

および

N⊨Prov⁡T(⌜φ⌝)⟺T⊢φ\mathbb N\models\operatorname{Prov}_T(\ulcorner\varphi\urcorner) \quad\Longleftrightarrow\quad T\vdash\varphi

が成り立つ。また、p0p_0がφ\varphiの具体的な標準証明符号ならば、

Q⊢Prf⁡T(pˉ0,⌜φ⌝),T⊢Prov⁡T(⌜φ⌝)Q\vdash\operatorname{Prf}_T(\bar p_0,\ulcorner\varphi\urcorner), \qquad T\vdash\operatorname{Prov}_T(\ulcorner\varphi\urcorner)

である。

証明. 第1の同値は命題 5.2 (1)そのものである。N⊨Prov⁡T(⌜φ⌝)\mathbb N\models\operatorname{Prov}_T(\ulcorner\varphi\urcorner)は、ある標準自然数ppが存在してN⊨Prf⁡T(pˉ,⌜φ⌝)\mathbb N\models\operatorname{Prf}_T(\bar p,\ulcorner\varphi\urcorner)となることを意味する。第1の同値により、当該条件はφ\varphiの有限なTT証明が存在することと同値である。従って第2の同値を得る。

p0p_0が具体的な証明符号ならば、Proof⁡T(p0,⌜φ⌝)\operatorname{Proof}_T(p_0,\ulcorner\varphi\urcorner)は真である。命題 5.2 (3)が与える数詞ごとの表現可能性により、Q⊢Prf⁡T(pˉ0,⌜φ⌝)Q\vdash\operatorname{Prf}_T(\bar p_0,\ulcorner\varphi\urcorner)である。存在導入によりQ⊢Prov⁡T(⌜φ⌝)Q\vdash\operatorname{Prov}_T(\ulcorner\varphi\urcorner)となり、Q⊆TQ\subseteq Tから同じ文をTTでも証明することができる。▨

例 5.5 (具体的証明の内部化).TTは等号公理から0=00=0を証明する。対応する有限証明符号をp=p_{=}とすると、メタ理論では

Proof⁡T(p=,⌜0=0⌝)\operatorname{Proof}_T(p_{=},\ulcorner0=0\urcorner)

である。表現可能性を介すると、対象理論内の文

T⊢Prov⁡T(⌜0=0⌝)T\vdash\operatorname{Prov}_T(\ulcorner0=0\urcorner)

を得る。T⊢0=0T\vdash0=0とT⊢Prov⁡T(⌜0=0⌝)T\vdash\operatorname{Prov}_T(\ulcorner0=0\urcorner)は異なる文の導出であり、同じ主張ではない。

6 証明符号を合成する関数

二つの証明列を連結するときは、後半の行が参照する行番号を前半の長さだけずらし、末尾に modus ponens の一行を加える。この有限列操作を固定しておく。

定義 6.1.n=Len⁡(p)n=\operatorname{Len}(p)、m=Len⁡(q)m=\operatorname{Len}(q)とする。一行の符号ℓ\ellに対して、ShiftLine⁡(n,ℓ)\operatorname{ShiftLine}(n,\ell)を次で定める。ℓ\ellの規則タグが modus ponens ならば二つの先行添字へnnを加え、一般化ならば一つの先行添字へnnを加え、いずれでもなければℓ\ellをそのまま返す。論理式、一般化変数、および公理列挙証人は変えない。Shift⁡n\operatorname{Shift}_nを、有限列に関する原始再帰

Shift⁡n(0)=0,Shift⁡n(Cons⁡(ℓ,t))=Cons⁡(ShiftLine⁡(n,ℓ),Shift⁡n(t))\operatorname{Shift}_n(0)=0, \qquad \operatorname{Shift}_n(\operatorname{Cons}(\ell,t)) =\operatorname{Cons}\bigl(\operatorname{ShiftLine}(n,\ell),\operatorname{Shift}_n(t)\bigr)

で定める。§E16.18 定義 1.1のImpRaw⁡\operatorname{ImpRaw}について、符号eeがImpRaw⁡(b,c)\operatorname{ImpRaw}(b,c)の形をもつときの後件ccを返す原始再帰関数をConseq⁡(e)\operatorname{Conseq}(e)とし、その形でないときは00を返すものとする。合成を

comb⁡(p,q)=Concat⁡(Concat⁡(p,Shift⁡n(q)),Cons⁡(Line⁡T(3,Conseq⁡(an−1),n−1,n+m−1,0,0), 0))(M)\operatorname{comb}(p,q)= \operatorname{Concat}\Bigl( \operatorname{Concat}\bigl(p,\operatorname{Shift}_n(q)\bigr), \operatorname{Cons}\bigl( \operatorname{Line}_T(3,\operatorname{Conseq}(a_{n-1}),n-1,n+m-1,0,0),\,0\bigr) \Bigr) \tag{M}

と定める。ここでan−1a_{n-1}はppの末尾行の論理式であり、Cons⁡(ℓ,0)\operatorname{Cons}(\ell,0)はℓ\ellただ一つからなる長さ11の列である。不正入力では値を00とする。末尾へ一行を加える操作を、独立した関数ではなく長さ11の列との連結として表しているのは、§E16.17 定義 4.1がCons⁡\operatorname{Cons}とConcat⁡\operatorname{Concat}だけを与え、末尾追加を与えないためである。

命題 6.2.comb⁡\operatorname{comb}は全域原始再帰関数である。さらに、任意のLAL_A文φ,ψ\varphi,\psiと任意の標準自然数p,qp,qについて、

Proof⁡T(p,⌜φ→ψ⌝) ∧ Proof⁡T(q,⌜φ⌝)⟹Proof⁡T(comb⁡(p,q),⌜ψ⌝)\operatorname{Proof}_T(p,\ulcorner\varphi\to\psi\urcorner) \ \land\ \operatorname{Proof}_T(q,\ulcorner\varphi\urcorner) \quad\Longrightarrow\quad \operatorname{Proof}_T\bigl(\operatorname{comb}(p,q),\ulcorner\psi\urcorner\bigr)

が成り立つ。

証明.ShiftLine⁡\operatorname{ShiftLine}は、規則タグによる有限の場合分けと成分の取得および再構成の合成なので原始再帰的である。Shift⁡n\operatorname{Shift}_nはCons⁡\operatorname{Cons}符号に関するコース再帰であり、Cons⁡(ℓ,t)\operatorname{Cons}(\ell,t)に対してt<Cons⁡(ℓ,t)t<\operatorname{Cons}(\ell,t)が成り立つので、§E16.17 補題 3.1により原始再帰的である。Cons⁡\operatorname{Cons}とConcat⁡\operatorname{Concat}は§E16.17 定理 4.2、Conseq⁡\operatorname{Conseq}は§E16.18 定理 5.2の構文操作の合成である。従って (M) は全域原始再帰関数を定める。

標準自然数p,qp,qが前件を満たすとする。n=Len⁡(p)n=\operatorname{Len}(p)、m=Len⁡(q)m=\operatorname{Len}(q)とすると、ppの末尾行の論理式は⌜φ→ψ⌝=ImpRaw⁡(⌜φ⌝,⌜ψ⌝)\ulcorner\varphi\to\psi\urcorner=\operatorname{ImpRaw}(\ulcorner\varphi\urcorner,\ulcorner\psi\urcorner)であるからConseq⁡(an−1)=⌜ψ⌝\operatorname{Conseq}(a_{n-1})=\ulcorner\psi\urcornerである。r=comb⁡(p,q)r=\operatorname{comb}(p,q)の第ss行を、s<ns<n、n≤s<n+mn\le s<n+m、s=n+ms=n+mの三領域に分けて調べる。

第1領域ではrrの第ss行がppの第ss行と一致し、参照する先行行もppの中にあるので、定義 3.1の条件がそのまま成り立つ。第2領域ではqqの第j=s−nj=s-n行がShift⁡n\operatorname{Shift}_nで移り、先行添字u,v<ju,v<jがu+n,v+n<su+n,v+n<sとなる。論理式、公理列挙証人、および一般化変数は変わらないので、modus ponens の二式の一致と一般化の本体の一致が保たれる。一般化の変数条件も、ppとqqの非論理公理の行がいずれも文の符号をもつため、連結後の全行について自動的に成り立つ。第3領域の新しい行は、第n−1n-1行がImpRaw⁡(⌜φ⌝,⌜ψ⌝)\operatorname{ImpRaw}(\ulcorner\varphi\urcorner,\ulcorner\psi\urcorner)、第n+m−1n+m-1行が⌜φ⌝\ulcorner\varphi\urcornerであることから、modus ponens の条件を満たす。末尾行の論理式は⌜ψ⌝\ulcorner\psi\urcornerであり、ψ\psiは文である。従ってProof⁡T(r,⌜ψ⌝)\operatorname{Proof}_T(r,\ulcorner\psi\urcorner)である。▨

注意 6.3 (一様な内部変換を本記事では証明しない). 上の命題は、標準自然数として与えられた証明符号についてメタ理論で述べた主張である。導出可能性条件 D2 と D3 が要求するのは、証明符号を自由変数として残したまま、対象理論の内部で

Prf⁡T(p,⌜φ→ψ⌝)∧Prf⁡T(q,⌜φ⌝)→∃r Prf⁡T(r,⌜ψ⌝),Prf⁡T(p,⌜φ⌝)→Prov⁡T(⌜Prov⁡T(⌜φ⌝)⌝)\operatorname{Prf}_T(p,\ulcorner\varphi\to\psi\urcorner) \land\operatorname{Prf}_T(q,\ulcorner\varphi\urcorner) \to\exists r\,\operatorname{Prf}_T(r,\ulcorner\psi\urcorner), \qquad \operatorname{Prf}_T(p,\ulcorner\varphi\urcorner) \to\operatorname{Prov}_T\bigl( \ulcorner\operatorname{Prov}_T(\ulcorner\varphi\urcorner)\urcorner\bigr)

を証明することである。これらは、長さの定まらない有限列に関する法則と有界量化の内部化を経由するため、対象理論の帰納法を必要とする。§E16.15 定義 2.1の七公理には帰納法公理が含まれないので、上の二つの一様な主張をQQから得ることはできない。

本記事の責務は、QQを含む理論についてPrf⁡T\operatorname{Prf}_T、Prov⁡T\operatorname{Prov}_T、Con⁡T\operatorname{Con}_Tを固定し、その標準モデルでの正確性と具体的証明の内部化を証明することに限る。上の二つの一様な内部主張は、対象理論が Peano 算術PAPAを含む場合に後続の記事が証明する。従って本記事は、導出可能性条件そのもの、不完全性定理、および第二不完全性定理を証明しない。後段の結論を本記事の証明へ用いる循環も生じない。

7 理論の無矛盾性を表す文

命題 7.1.

N⊨Con⁡T⟺T⊬0=S0\mathbb N\models\operatorname{Con}_T \quad\Longleftrightarrow\quad T\nvdash 0=S0

が成り立つ。

証明.Con⁡T\operatorname{Con}_Tの定義と定理 5.4により、

N⊨Con⁡T⟺N⊭Prov⁡T(⌜0=S0⌝)⟺T⊬0=S0\begin{aligned} \mathbb N\models\operatorname{Con}_T &\Longleftrightarrow \mathbb N\not\models\operatorname{Prov}_T(\ulcorner0=S0\urcorner)\\ &\Longleftrightarrow T\nvdash0=S0 \end{aligned}

である。▨

この命題は標準モデルについての外的な同値である。T⊢Con⁡TT\vdash\operatorname{Con}_Tを主張していない。また、自然言語で述べるすべての無矛盾性概念が同じ算術文になるとも主張していない。

8 演習

問題 8.1.

例 8.2 (公理判定と公理証人の違い). 公理集合が決定可能ならば、公理行には判定結果だけを付ければよい。公理集合が列挙可能であるだけの場合、列挙プログラムが当該公理を出力するまでの有限計算列を付ける。後者は有限なので検査可能であるが、公理でない入力については当該出力へ至る有限計算列が存在しない。この非対称性により、公理集合を決定可能であると仮定せずに有限証明を検査することができる。

次の問いに答えよ。

  1. N⊨Prov⁡T(⌜φ⌝)\mathbb N\models\operatorname{Prov}_T(\ulcorner\varphi\urcorner)とT⊢Prov⁡T(⌜φ⌝)T\vdash\operatorname{Prov}_T(\ulcorner\varphi\urcorner)の違いを述べよ。
  2. 公理証人を証明符号へ含めなければ、列挙可能だが決定不能な公理集合についてどの検査が停止しなくなるか。
  3. 命題 6.2で、前件が成立するときに生成列の最終行がψ\psiになる理由を説明せよ。
  4. 同命題が標準自然数の証明符号についての主張であり、対象理論の内部で自由変数を残した主張ではない理由を述べよ。
解答 (確認問題の解答).
  1. 前者は標準モデルでの意味論的真理であり、後者は対象理論内の形式的導出である。両者は定義 1.1が区別する別の水準の主張であり、一方から他方は従わない。
  2. 非論理公理の行が実際に公理であるかを、公理でない入力について判定する検査が停止しない可能性がある。公理集合が列挙可能であるだけの場合、列挙されないことを有限時間で確かめる手続きが一般には無いからである。
  3. 二つの入力列の末尾がそれぞれφ→ψ\varphi\to\psiとφ\varphiであり、連結後に両行を参照する modus ponens の行を末尾へ追加するからである。その行の論理式はConseq⁡(⌜φ→ψ⌝)=⌜ψ⌝\operatorname{Conseq}(\ulcorner\varphi\to\psi\urcorner)=\ulcorner\psi\urcornerである。
  4. 三領域に分ける議論が、外側の標準自然数n,mn,mに関する有限回の場合分けだからである。同じ議論を対象理論の内部で行うには、可変長の列に関する法則を対象理論が証明しなければならない。

▨

9 境界と次の段階

本記事はPrf⁡T\operatorname{Prf}_T、Prov⁡T\operatorname{Prov}_T、Con⁡T\operatorname{Con}_Tを固定し、Prf⁡T\operatorname{Prf}_TがΣ1\Sigma_1論理式であることと、証明符号の合成関数およびその外的な閉性を証明した。導出可能性条件 D2 と D3 は、外的な原始再帰関数、グラフを表す算術式、および対象理論内の存在証明を区別したうえで、対象理論が Peano 算術PAPAを含む場合に別の記事が証明する。注意 6.3の通り、本記事は一様な内部主張を扱わない。第一不完全性定理、導出可能性条件、および第二不完全性定理の結論は、本記事の証明には用いていない。

参考文献

  1. George S. Boolos, John P. Burgess, and Richard C. Jeffrey, Computability and Logic, 5th ed., Cambridge University Press, 2007.
  2. Petr Hájek and Pavel Pudlák, Metamathematics of First-Order Arithmetic, Perspectives in Logic 3, Cambridge University Press, Cambridge, 2017, originally published 1993.

前提記事