Semantics and applications to verification

Sylvain Conchon, Antoine Miné and Xavier Rival
L3, École Normale Supérieure


The course takes place in Salle R, at École Normale Supérieure, on Wednesday afternoons, from 14h (2PM) till 17h30 (5.30PM).

Lecture contents

In this lecture, we will study techniques for reasoning about programs, so as to verify correctness properties. We will first set up the foundations of the semantics of programming languages and the notion of program proofs, using Hoare triples. Then, we will formalize various kind of relevant properties (safety, liveness, security). Last, we will focus on approaches for automatic program verification (abstract interpretation based static analysis, model checking of finite systems, solving modulo theory): the inferrence of the proofs is then performed by another computer program.

Schedule and lectures material

You will find here the provisional course plan. The course plan will be updated progressively and the slides of the courses will be put on-line after each course, so, please consult this page regularly.

Lab Sessions and Project

The lab sessions are found here. The project is described here.

rival (at)
Last modified: Fri May 23 14:58:33 CEST 2014