Formal Methods for Software Development TDA294/DIT271, LP1, HT2019

Lecture Notes: Dynamic Logic

In this lecture we discuss the basic principles of sequent calculus for (Java) dynamic logic. A core concept is symbolic execution, which is achieved using the concept of explicit state updates. We discuss how programs are gradually transformed into (parallel) updates. Then, we discuss how various complications of a real-world language like Java are treated in the calculus.


W. Ahrendt, Oct 15, 2019