markdown
関数型プログラミングと型理論ポータル
lecture/information/programming-languages/foundation/関数型プログラミングと型理論ポータル-講義.n.md
関数型プログラミングと型理論ポータル
portalinformationprogramming-languageslecture
導入
この束は、λ計算から型付きλ計算・多相型・Curry–Howard対応・依存型理論へと至る学習路を整理する。関数型プログラミングの動機から出発し、計算とは何か・型とは何かを形式的に問い直す内容である。
このポータルは 情報工学ポータル から参照されている。前提として利用できる既存の講義は下の「前提コンテンツ」に示した。
全体像
この束は次の 5 層で構成される。
| 層 | ディレクトリ | 内容 |
| §A 基礎 | foundation/ | FP の動機・束縛・置換・評価戦略 |
| §B 純粋計算体系 | lambda-calculus/ | λ計算・β簡約・コンビネータ・Church encoding |
| §C 型付きλ計算 | type-theory/ | STLC・積型・多相・HM型推論 |
| §D 論理との対応 | curry-howard/ | Curry–Howard対応・依存型 |
| §E 拡張 | extensions/ | 型クラス・線形型・モナド・圏論 |
一言でいうと
関数を第一級の市民として扱う計算の形式化がλ計算であり、その項に型を付けることで「何が正しい計算か」を数学的に議論できるようになる。