直観主義命題論理の含意導入は、仮定から結論を導く証明を作り、その仮定を解除してを得る。単純型付きラムダ計算の抽象は、型の変数を受け取って型の項を返し、型をもつ。本記事では、仮定へ変数名を付けた含意断片の自然演繹を用いて、この対応を導出木の単位で証明する。さらに、含意導入の直後に含意除去を行う局所的な迂回が、ベータ簡約に対応することを示す。
1 含意断片と仮定ラベル
命題変数の集合をとし、含意断片の論理式を
によって定める。同じ集合を単純型付きラムダ計算の基本型記号の集合として用い、論理式と単純型を同じ帰納的構文で表す。
定義 1.1. 仮定文脈 (assumption context)は、変数から含意断片の論理式への有限部分関数である。判断を、次の三規則から生成される有限導出木とする。
導出木の各仮定出現には、その仮定を表す変数ラベルを付ける。はラベルの仮定出現を解除する。束縛された仮定ラベルの名前だけが異なる導出をアルファ同値とみなす。
通常の含意断片の自然演繹は、同じ論理式を複数回仮定することを許す。仮定ラベルによって出現を区別すれば、どの導入規則がどの仮定を解除するかが明確になる。文脈を有限部分関数としたことは、解除されるラベルを新鮮に選ぶ規約であり、論理式そのものの重複を禁じない。
2 導出から証明項を作る
定義 2.1. 仮定ラベル付き導出の 証明項 (proof term)を、最後の規則に関して次のように定める。
定理 2.2.がの導出ならば
は単純型付きラムダ計算の型付け判断として導出可能である。
証明.の導出木に関して帰納法を用いる。最後がならばであり、型付けの変数規則からである。
最後がならば、直前の導出はである。帰納法の仮定からを得る。型付けの抽象規則により
である。
最後がならば、直前の二導出に対する帰納法の仮定から
を得る。型付けの適用規則からである。三規則のすべてについて対応する型付け規則を得た。▨
3 型付けから導出を復元する
型付け規則は、仮定ラベル付き自然演繹の三規則と同じ木構造をもつ。
定理 3.1.が単純型付きラムダ計算の型付け導出
ならば、の仮定ラベル付き自然演繹が存在して
となる。
証明.の最後の型付け規則に関して帰納法を用いる。
変数規則の場合、かつである。自然演繹のを用いると、証明項はになる。
抽象規則の場合、、であり、直前の導出はである。帰納法の仮定からの導出を得る。を適用するとを得て、その証明項はである。
適用規則の場合、であり、ある型が存在して
である。二つの直前の導出へ帰納法の仮定を適用し、得られた自然演繹へを適用する。証明項は、アルファ同値を除いてである。三つの型付け規則を尽くしたため結論を得る。▨
系 3.2 (含意断片の Curry–Howard 対応). 仮定ラベル付き自然演繹の導出木と、単純型付きラムダ計算の型付け導出木は、アルファ同値を除いて相互に変換することができる。対応は次の表で与えられる。
| 論理 | ラムダ計算 |
|---|---|
| 仮定 | 変数 |
| 含意導入 | ラムダ抽象 |
| 含意除去 | 関数適用 |
| 命題 | 型 |
| の導出 | 型の項 |
証明.定理 2.2と定理 3.1の構成を比較する。各構成は、変数規則を仮定規則へ、抽象規則を含意導入へ、適用規則を含意除去へ写す。従って、一方の導出木へ二つの構成を順に適用すると、各節点で元と同じ規則が復元される。束縛変数と解除仮定のラベルは新鮮な名前へ変更される場合があるため、同一性はアルファ同値を除いて成り立つ。▨
例 3.3 (恒等命題の証明項). 仮定からを得て、を解除するととなる。対応する証明項は
である。
例 3.4 (含意の合成).、、を仮定する。含意除去を二回用いるととを得る。三つの仮定を解除すると
を得る。対応する項はである。
4 証明の代入
含意導入で解除する仮定を、別の導出によって置き換える操作を定義する。ラムダ項側では捕獲回避代入が同じ役割を担う。
補題 4.1.がの導出であり、がの導出であるとする。に現れるラベルの未解除仮定をで置き換えると、の導出が存在し、
である。
証明.の最後の規則に関して帰納法を用いる。最後が仮定規則でラベルがならば、導出全体をで置き換える。証明項の両辺はである。別の仮定ラベルならば導出を変更せず、証明項の代入も当該変数を変更しない。
最後が含意除去ならば、二つの直前の導出へ帰納法の仮定を適用し、得られた二導出へ再び含意除去を適用する。証明項の等式は、適用に対する代入の再帰式から従う。
最後がならば、をの自由変数、の定義域およびの外へ改名する。この代表元ではであるため、直前の導出へ帰納法の仮定を適用し、再びを用いる。証明項側でも、捕獲回避代入は抽象の本体へ入る。従って、すべての規則で導出の置換と証明項の捕獲回避代入が一致する。▨
5 局所的な迂回とベータ簡約
含意を導入した直後に同じ含意を除去すると、導入で一時的に置いた仮定を、除去に用いた証明で直接置き換えることができる。
定義 5.1. 次の形の導出を考える。
この導出を、補題 4.1が与えるへ置き換える操作を、含意の局所的な迂回除去 (local detour reduction) という。導出木の任意の部分木で同じ置換を許す。
定理 5.2. 含意の局所的な迂回除去を一回行う前後の導出をとする。このとき
である。逆に、型付け導出の証明項に現れるβ基は、対応する自然演繹導出における含意導入の直後の含意除去を表し、そのβ基の縮約は局所的な迂回除去に対応する。
証明. 根にある局所的迂回の証明項は、証明項抽出の定義から
である。ベータ簡約の基本規則と補題 4.1により
となる。
迂回が導出木の内部にある場合、証明項では対応するβ基が抽象の本体、適用の左項、または適用の右項の内部にある。ベータ簡約は全項文脈について閉じているため、同じ一段簡約を項全体へ持ち上げることができる。
逆向きを示す。型付け可能なβ基の型付け導出を反転すると、左項の最後の規則は抽象規則であり、項全体の最後の規則は適用規則である。対応する自然演繹では、前者が、後者がなので、含意導入の直後に同じ含意を除去している。縮約後のは導出の代入が与える証明項である。従って両方向の局所対応が成り立つ。▨
注意 5.3 (局所対応から正規化は従わない).定理 5.2は、一つの局所的な迂回と一段のベータ簡約の対応を述べる。任意の導出が有限回の迂回除去で正規形へ到達することや、任意の簡約列が停止することは主張していない。自然演繹の正規化と単純型付きラムダ計算の強正規化には、別の証明が必要である。
6 演習
問題 6.1. 次の問いに答えよ。
- の自然演繹と対応する証明項を書け。
- に対応する局所的な迂回を、仮定導出、含意導入、含意除去の順に記述せよ。
- 定理 5.2だけでは強正規化を結論することができない理由を述べよ。
解答 (確認問題の解答).
1では、仮定とへ含意除去を適用し、証明項を得る。2では、仮定からを得てを解除しを導き、の導出へ適用した後、仮定の出現をの導出で置換する。3では、定理が各β基の一段対応だけを示し、すべての簡約列の有限性や正規形の存在を証明していないことを述べる。▨
7 境界と次の段階
本記事の対応は含意断片だけに限定される。連言と積型、選言と和型、偽と空型の対応は扱っていない。また、局所的な迂回除去を定義して一段対応を証明したが、自然演繹の正規化、ラムダ項の正規化、および強正規化は扱っていない。これらの結果は証明論で別に証明される。