ENS — Semantics and applications to verification — 2017-2018

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 inference of the proofs is then performed by another computer program.


Nouvelles

Projects
31 mars 2018

Le projet d'interprétation abstraite est  !


Documents

Coq
2 mars 2018

Le fichier Coq du TP : Coq TP_02_03_2018.v

TP1 : Sémantique dénotationelle
9 mars 2018
Le code de base : tar.gz TP1.tar
Le sujet : TP1.pdf ou en html (recommandé).
TP2 : Typage
16 mars 2018
Le code de base : tar.gz TP2.tar
Le sujet.
TP3 : Interval analysis
6 avril 2018
Le code de base : tar.gz TP2.tar
(celui de la semaine dernière). Le sujet.
TP4 : Relational analysis
18 mai 2018
Le code de base : tar.gz TP2.tar
(celui de la semaine dernière). Le sujet.
TP5 : Reduced product
25 mai 2018
Le code de base : tar.gz TP2.tar
(celui de la semaine dernière). Le sujet.
Project
Le code de base : tar.gz project.tar
(celui de la semaine dernière). Le sujet.