依存型
一階の依存型を持つ λ Π {\displaystyle \lambda \Pi } 型システムは、単純型付きラムダ計算の関数型(矢印型)を依存積型に一般化することで得られる。これは論理学におけるLogical Framework LF (en:Logical framework#LF)に対応する。
依存型は、プログラミングと論理学のつながりを深めるために作られた。
1934年にハスケル・カリーは、当時考えられていた数学的なプログラミング言語で使われていた型が、命題論理の公理系と同じパターンに従っていることを発見した。さらに、命題論理の証明それぞれに対して、プログラミング言語における関数(項)が対応していることもわかった。カリーの挙げた例の一つは、単純型付きラムダ計算と直観主義論理の対応である。
述語論理は命題論理に量化子を加えたものである。ハワードとド・ブラウンは型付きラムダ計算に依存関数のための型("任意の"に対応する)と依存ペアのための型("存在する"に対応する)を加えることで、述語論理に対応するプログラミング言語を作り出した。
(これを含むいくつかの業績により、命題を型と見なす考え方はカリー=ハワード同型対応という名前で知られている。)