previous up next top index
Précédent : Récursion bien fondée Remonter : Preuves de programmes Suivant : Efficacité des programmes extraits


Traits Impératifs

Participant : Jean-Christophe Filliâtre

Dans le cadre de sa thèse, J.-C. Filliâtre étudie comment prouver des programmes impératifs, plus précisément des programmes écrits dans un langage fonctionnel comportant des aspects impératifs. Un langage fonctionnel comprenant exceptions et références fournit, dans un premier temps, un bon cadre de travail. Une manière de procéder consiste à transformer les programmes impératifs en termes fonctionnels traduisant leur sémantique. La preuve que le programme satisfait une certaine spécification se fait alors sur la traduction du programme et non sur le programme lui-même. Les monades, introduites par E. Moggi, donnent un cadre assez général pour de telles traductions : elles permettent de définir, pour un type de données T, le type des calculs de type T. J.-C. Filliâtre a défini de telles traductions et les expérimente sur des programmes de tri en place (quicksort, heapsort).