15-317 Constructive Logic
Lecture 4: Proofs as Programs
In this lecture we establish the Curry-Howard isomorphism between
constructive proofs and pure functional programs. This isomorphism
interprets propositions as types of a program language and proofs
as terms. We can also think of this as the study of proofs via
explicitly syntactic means, namely proof terms. We find that
conjunction correspond to product types, implication corresponds to
function types, and disjunction corresponds to sum types. Truth is
becomes the unit type and falsehood the empty type.
- Reading: 04-pap.pdf
- Previous lecture: Harmony
- Next lecture: Subject Reduction
- Key concepts:
- Curry-Howard isomorphism
- Proof terms
- Propositions as type
- Synthetic judgments
- Analytic judgments
[ Home
| Schedule
| Assignments
| Handouts
| Software
]
fp@cs
Frank Pfenning
|