Lecture 10: Program Equivalence
Lecture outline
- Discussion: when are two programs the same? Why do we care?
- Behavioral equivalence, extensionality
- Motivating intensional equality
- Harmonious typing rules
- Equivalence as normal forms
- Deriving reduction rules from typing rules
- Metatheory (mentioned throughout)
- Canonical forms
- Substitution
- Weakening
- Progress and Preservation