MPRI

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

Organisation

  • Location: video-conference, link to be announced
  • Time: Wednesday, 08:45 to 11:45.
  • First course: December 9th.
  • Project description: January 18th
  • Project due: February 25th
  • Exam: to be announced

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.

Project

The project was provided on January 18th.

The project consists of the formalization of an algorithm for solving Takuzu puzzles. A skeleton file is provided in a zip archive

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 Jean-Marie Madiot. Ask Jean-Marie by email or during the class if you'd like printable versions. Please note that the slides are subject to occasional change.

See the page installation instructions to be able to step through interactive proofs.

Past Years

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.

You may have a look at the exam of 2017. 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 2019-2020. Once you have solved all exercises (and not before!), you may check some of the solutions.


Page generated on 2021/4/13