15-851 Computation and Deduction
Lecture 12: Bisimulation

After finishing the proof of the progress theorem, we discuss how to prove the correctness of optimizations, such as the one in Exercise 2.12 that prevents re-evaluation of values. This is the simplest example of a change of language and therefore a particularly easy case of compilation. This is also a particlarly simple example of a bisimulation, since the computations before and after optimization can simulate each other.

The correctness proof requires parametric and hypothetical judgments and the corresponding substitution properties, and we show how they can be represented in Twelf.

This lecture given by Brigitte Pientka.

[ Home | Schedule | Assignments | Handouts | Software | Overview ]

Frank Pfenning