Curry-Howard同型対応
命題は型に対応し、証明はプログラムに対応するというもの
1958年
めっちゃ古いんやなmrsekut.icon
table:大まかな対応
論理 プログラミング
論理式 型
命題 P⊃Q 型P→Q
Pの証明 型Pの項t
命題Pが証明可能 型Pを持つ項が存在する
証明の簡約化 プログラムの評価
または bool, if..then..else
∀ 多相型
table:推論規則の対応の例
table:継続
論理 プログラミング
と、wikiに書いているが、特に黒田の方はわからんmrsekut.icon 対応する、と言ったらしい
参考
CPS変換は、二重否定による古典論理の直観主義論理への埋め込みにあたる。また、古典論理そのものは、Schemeの call-with-current-continuation 制御演算子のように、継続を直に扱うことができるプログラミング言語に対応する ref 関連
https://www.youtube.com/watch?v=uVW6Iwgw6tY
参考
pdf本
コレを読み進めていけばいい?
いろんな記事で頻繁に引用されている
記法、図法
typescript
めっちゃおもろmrsekut.icon
@lotz84_: "Lecture Notes on the Lambda Calculus" 2001, 2007, 2013年に大学で行われた講義を元に作られた120頁に渡るレクチャーノート
内容はラムダ計算、チャーチロッサーの定理、コンビネータ代数、単純型付ラムダ計算、カリーハワード同型対応、弱/強正規化など多岐に渡っている
https://pbs.twimg.com/media/FjIe72DaEAAFXxF.jpg