MPRI Course 2-36-1: Proof of Program

This page presents teaching material for Course 2-36-1 "Proof of Program" of the MPRI 2016-2017.

Organisation

Tools

Example programs for some lectures will be using the verification environment Why3. There is an on-line version of Why3 that can be used to replay the simplest examples. However, for more complex examples and for the project that require several provers, it is necessary to install Why3 and the automated provers.

You may find detailed instructions in this installation procedure.

Remark: there will be no course on January 4th.

Exam

The text of the exam, and a version including the solutions.

Project

The project was provided on January 10th.

The project consists of the formalization of several algorithms for answering range sum queries. Here is the skeleton file provided.

To install Why3 and the automated provers, follow the installation procedure.

Lectures

Slides and examples will be posted here.

Part 1: Program verification using Hoare Logic, lectured by Claude Marché.

Part 2: Separation Logic and representation predicates, lectured by Arthur Charguéraud.

Previous exams

You may have a look at the exam of 2014. Once you have solved all exercises (and not before!), you may check some of the solutions.

You may have a look at the exam of 2015. Once you have solved all exercises (and not before!), you may check some of the solutions.

You may have a look at the exam of 2016. Once you have solved all exercises (and not before!), you may check some of the solutions.

Past versions


Page generated on 2017/3/24