AllanBlanchard/tutoriel_wp

Frama-C and WP tutorial

TeX

83

455 commits

updated Sep 21, 2026

See the code

README

About this tutorial

Frama-C (FRAmework for Modular Analysis of C programs) is a set of interoperable program analyzers for C programs. I have used this software during all my PhD thesis and after, mostly for deductive proof using the WP plugin. So, I wrote a tutorial that allows to learn ACSL (the specification language of Frama-C) and the use of WP by practice, also getting some theorical rudiments about deductive proof.

It can be used for both learning and teaching, I hope you will have some fun with it :) .

The last stable version is available on my website in English and in French, and in the Releases section on GitHub.

An online French version is available on Zeste de Savoir.

A recent build from the master branch is available:

I'll try to keep these links up to date, since GitHub does not provide a simple way to access to the last built artifacts 😠.

Building

In order to build the files, you can use docker

docker build -t tutoriel_wp .
docker run --rm -v $PWD:/mnt -w /mnt tutoriel_wp make
c
deductive-reasoning
formal-methods
formal-specification
formal-verification
frama-c

Contributors

AllanBlanchard

420 commits

jensgerlach

16 commits

zilbuz

4 commits

AllanBlanchard/tutoriel_wp

Frama-C and WP tutorial

TeX

83

455 commits

updated Sep 21, 2026

See the code

README

About this tutorial

Frama-C (FRAmework for Modular Analysis of C programs) is a set of interoperable program analyzers for C programs. I have used this software during all my PhD thesis and after, mostly for deductive proof using the WP plugin. So, I wrote a tutorial that allows to learn ACSL (the specification language of Frama-C) and the use of WP by practice, also getting some theorical rudiments about deductive proof.

It can be used for both learning and teaching, I hope you will have some fun with it :) .

The last stable version is available on my website in English and in French, and in the Releases section on GitHub.

An online French version is available on Zeste de Savoir.

A recent build from the master branch is available:

I'll try to keep these links up to date, since GitHub does not provide a simple way to access to the last built artifacts 😠.

Building

In order to build the files, you can use docker

docker build -t tutoriel_wp .
docker run --rm -v $PWD:/mnt -w /mnt tutoriel_wp make
c
deductive-reasoning
formal-methods
formal-specification
formal-verification
frama-c

Contributors

AllanBlanchard

420 commits

jensgerlach

16 commits

zilbuz

4 commits

Languages

TeX

60.1%

Rocq Prover

20.3%

C

15.1%

Lua

4.3%