第 4 章では、二階命題論理のあらゆる証明が、カーネルの受理する項に変換できると主張した(定理 4.1)。本付録ではその主張を精密に述べ、完全に証明する。変数と仮定の扱いを明確にすれば証明は短く、論理の判断の導出に関する帰納法であり、各ケースは第 4 章の表の一行を左から右へ読んだものにあたる。
考え方
論理における導出は規則適用の木であり、第 4 章の変換は各論理規則を一つの型付け規則と対にしたので、自然な方針は、導出を葉から上へたどり、各節点で、対になる型付け規則が与える型付け導出を組み立てることである。仮定は変数の参照になり、含意の導入は λ に、含意の除去は適用になる。二つの量化子規則は、Sort0 上の λ と、型への適用になる。
注意を要する細部が二つあり、どちらも文脈に関わる。
- 論理の規則は、どの命題変数がスコープ内にあるかを述べないが、命題変数 P は仮定 P:Sort0 が文脈に入ってはじめて使えるので、型付けの側はそれを知る必要がある。そこで精密な主張は、命題変数の明示的なリスト Θ を携える。
- 型付け規則は文脈を右側に拡張するが、第 4 章の変換 Δ∗ は、すべての命題変数をすべての仮定の前に置く。任意の並び順を許したほうが証明は楽なので、以下で定義する意味で論理の判断を表現するあらゆる文脈について定理を証明する。
精密な主張
定理 4.1 では、どの命題変数がスコープ内にあるかが暗黙になっていた。証明のためにこれを明示し、
Θ;Δ⊢φ,
と書く。ここで Θ は相異なる命題変数のリストであり、Δ または φ に自由に現れる命題変数はすべて Θ に属する。命題変数を明示すると、第 4 章の規則は次のようになる。
Θ;Δ⊢φφ∈Δ;(Hyp)Θ;Δ⊢φ→ψΘ;Δ,φ⊢ψ;(→-intro)Θ;Δ⊢ψΘ;Δ⊢φ→ψΘ;Δ⊢φ;(→-elim)
Θ;Δ⊢∀P.φΘ,P;Δ⊢φP∈/Θ;(∀-intro)Θ;Δ⊢φ[P↦ψ]Θ;Δ⊢∀P.φFV(ψ)⊆Θ;(∀-elim)
Δ に自由に現れる命題変数はすべて Θ にあり、P はそこにないので、第 4 章の側条件 P∈/FV(Δ) は、いまや P∈/Θ から従う。論理式は α 同値を除いて扱うので、束縛された P はつねに側条件を満たすように改名できる。第 4 章と同じく、φ∗→ψ∗ は、x を新鮮な変数として Π(x:φ∗).ψ∗ を表す。
第 4 章の文脈 Δ∗ は、命題変数を先に並べ、仮定をその後に並べるが、証明では文脈を右側に拡張する必要があるので、任意の順序を許すのが都合がよい。
定義 A.1(表現). 文脈 Γ が (Θ;Δ) を表現するとは、⊢Γ;ok であり、Γ が各 P∈Θ に対する仮定 P:Sort0 を一つずつと、各 χ∈Δ に対する仮定 h:χ∗ を一つずつ、何らかの順序で並べたものからなることをいう。
定理 A.2(定理 4.1 の精密な形). Θ;Δ⊢φ であり、Γ が (Θ;Δ) を表現するならば、ある項 t について Γ⊢t:φ∗ が成り立つ。
定理 4.1 は Γ=Δ∗ という特別な場合であり、Θ が自由な命題変数を列挙するとき、文脈 Δ∗ はちょうど必要な仮定を含む。それが整形式であることは、命題変数がスコープに入れば各仮定の型 χ∗ は命題なので、後述の補題 A.3 と規則 C-Ext から従う。
変換についての事実
変換 φ↦φ∗ は代入と可換である。
(φ[P↦ψ])∗=φ∗[P↦ψ∗].
両辺とも P の自由な出現を ψ∗ で置き換えるのであり、変換は命題変数に対してその名前を保つ以外に何もしないので、これは φ に関する定型的な帰納法で示せる。主証明の ∀-elim のケースはこの等式に依存する。
次の補題は、第 13 章の宇宙構造が入ってくる唯一の箇所であり、変換されたすべての論理式が命題である、すなわち型 Sort0 を持つことを述べる。これがなければ、型付け規則 T-Lam を仮定に適用できず、∀-elim のケースで量化子を任意の論理式で具体化できない。
補題 A.3(論理式は命題である). ⊢Γ;ok であり、すべての P∈FV(φ) について (P:Sort0)∈Γ ならば、Γ⊢φ∗:Sort0 である。
φ に関する帰納法による。
命題変数 P の場合、仮定から (P:Sort0)∈Γ なので、T-Var により Γ⊢P:Sort0 である。
φ→ψ の場合、帰納法の仮定から Γ⊢φ∗:Sort0 なので、新鮮な x について Γ,x:φ∗ は C-Ext により整形式である。この拡張した文脈で ψ に帰納法の仮定を適用すると Γ,x:φ∗⊢ψ∗:Sort0 が得られ、T-Pi により Γ⊢Π(x:φ∗).ψ∗:Sortimax(0,0)=Sort0 となる。
∀Q.χ の場合、Q∈/dom(Γ) となるように Q を改名する。T-Sort により Γ⊢Sort0:Sort1 なので、Γ,Q:Sort0 は C-Ext により整形式である。この文脈で χ に帰納法の仮定を適用すると Γ,Q:Sort0⊢χ∗:Sort0 が得られ、T-Pi により Γ⊢Π(Q:Sort0).χ∗:Sortimax(1,0)=Sort0 となる。
証明
定理 A.2 を、Θ;Δ⊢φ の導出に関する帰納法で、表現するすべての文脈 Γ について同時に証明する。各ケースは、第 4 章の表の右列に示した型付け導出を組み立てる。
仮定(Hyp). この規則は φ∈Δ から Θ;Δ⊢φ を結論する。Γ は (Θ;Δ) を表現するので仮定 h:φ∗ を含み、T-Var により Γ⊢h:φ∗ である。
→-intro. 前提は Θ;Δ,φ⊢ψ、結論は Θ;Δ⊢φ→ψ である。補題 A.3 により Γ⊢φ∗:Sort0 なので、新鮮な h について、文脈 Γ,h:φ∗ は C-Ext により整形式であり、(Θ;Δ,φ) を表現する。前提とこの文脈に帰納法の仮定を適用すると、ある t について Γ,h:φ∗⊢t:ψ∗ が得られ、T-Lam により
Γ⊢λ(h:φ∗).t:Π(h:φ∗).ψ∗.
となる。ψ∗ の自由変数は命題変数であり、h はそのどれでもないので、h は ψ∗ に現れず、この Π は非依存的で、この型は φ∗→ψ∗ である。
→-elim. 前提は Θ;Δ⊢φ→ψ と Θ;Δ⊢φ である。帰納法の仮定から、x∈/FV(ψ∗) となる Γ⊢f:Π(x:φ∗).ψ∗ と、Γ⊢a:φ∗ が得られる。T-App により Γ⊢fa:ψ∗[x↦a] であり、x は ψ∗ に現れないので代入は何もせず、ψ∗[x↦a]=ψ∗ である。
∀-intro. 前提は P∈/Θ を満たす Θ,P;Δ⊢φ、結論は Θ;Δ⊢∀P.φ である。Θ の変数を新鮮な変数に改名しても導出が保たれることは定型的な帰納法で示せるので、必要なら P を改名して P∈/dom(Γ) と仮定する。T-Sort と C-Ext により Γ,P:Sort0 は整形式であり、(Θ,P;Δ) を表現する。帰納法の仮定から Γ,P:Sort0⊢t:φ∗ が得られ、T-Lam により
Γ⊢λ(P:Sort0).t:Π(P:Sort0).φ∗,
となり、これは ∀P.φ の変換である。
∀-elim. 前提は FV(ψ)⊆Θ を満たす Θ;Δ⊢∀P.φ、結論は Θ;Δ⊢φ[P↦ψ] である。帰納法の仮定から Γ⊢f:Π(P:Sort0).φ∗ が得られる。ψ の命題変数はすべて Θ にあり、したがって Γ に仮定 Q:Sort0 を持つので、補題 A.3 により Γ⊢ψ∗:Sort0 である。T-App により
Γ⊢fψ∗:φ∗[P↦ψ∗]=(φ[P↦ψ])∗,
となり、最後のステップは前節の代入の等式である。
論理のすべての規則を扱ったので、定理はあらゆる導出について成り立つ。
組み立てるすべての型付け導出は、束縛変数の名前を除いて型を構文的にのみ比較するので、この証明は T-Conv を一度も必要としない。変換が必要になるのは、第 II 部の帰納型のように、論理に計算を加えたときだけである。
覚えておくこと
- 定理の精密な形は命題変数の明示的なリスト Θ を携え、(Θ;Δ) を任意の順序で表現するあらゆる文脈について主張を証明する。
- 変換されたすべての論理式は Sort0 に住み(補題 A.3)、これは ∀ のケースで非述語性を使っており、∀-elim が量化子を任意の論理式で具体化できるのはそのおかげである。
- 証明は導出に関する帰納法であり、各論理規則はちょうど一つの型付け規則に対応し、Hyp は T-Var に、二つの導入は T-Lam に、二つの除去は T-App に対応する。
- 論理には計算がないので、T-Conv は一度も使われない。