Projet : COQ

previous up next contents
Précédent : Résultats nouveaux Remonter : Résultats nouveaux Suivant : Preuves par réflection


Sous-sections


   
Modélisation et formalisation dans Coq

Résumé :

Nous étudions la formalisation de preuves provenant des domaines informatique ou mathématique. Elle permet de valider les choix faits dans l'environnement de preuve, de proposer de nouvelles fonctionnalités et de construire des bibliothèques générales.
Nous avons plus particulièrement étudié :

   
Vers le bootstrap de Coq



Participants : Bruno Barras, Benjamin Werner.

Mots clés : types inductifs, algorithmes de typage, bootstrap .

Glossaire :

Bootstrap d'un système logique formalisation d'un système logique dans ce même système, une fois admise la cohérence. L'extraction permet alors d'engendrer un programme équivalent à celui qui l'a engendré.

B. Barras a poursuivi sa formalisation en Coq d'une classe de systèmes de types. Les résultats vérifiés formellement comprennent la correction d'algorithmes de typage formant le noyau d'un vérificateur de preuves. Cette année, l'intégration des types inductifs a permis de vérifier un système de puissance équivalente à Coq lui-même, ce qui permet potentiellement de bootstrapper le système.

B. Barras, encadré dans son travail de thèse par B. Werner, a terminé sa formalisation en Coq du Calcul des Constructions Inductives. Pour cela, il aura fallu chercher une formulation suffisamment simple et modulaire des types mutuellement inductifs de Coq, de manière à pouvoir en prouver mécaniquement les résultats métathéoriques. Les Systèmes de Types Purs ont été étendus avec un constructeur de terme générique qui permet de rajouter simplement des opérateurs au calcul. Ainsi, l'ajout des types inductifs interagit assez peu avec la métathéorie usuelle.

D'autre part, ce travail comprend la formalisation d'une variante du système de marques proposé par E. Giménez, qui permet de vérifier par le typage, et non par une condition syntaxique, que les définitions récursives sont bien fondées.

Preuves en analyse



Participants : Micaela Mayero, Gilles Dowek.

Mots clés : Réels, Analyse numérique .

Micaela Mayero a totalement achevé la spécification et la preuve dans le système Coq du théorème des trois intervalles (conjecture de Steinhaus). Ceci comprend la totale remise en forme du travail effectué en 1997 ainsi que l'introduction de nouvelles spécifications et preuves plus rigoureuses concernant le théorème. Ce travail est décrit dans un article en cours de rédaction.

Micaela Mayero a ainsi développé une bibliothèque d'axiomatisation des réels qui a été intégrée aux théories de base de Coq, la preuve du théorème étant disponible comme contribution.

Micaela Mayero a abordé le problème théorique du choix d'une sorte pour le type des nombres réels, la question ést délicat si l'on veut à la fois pouvoir utiliser le principe d'élimination forte et à la fois, bien sûr, ne pas engendrer de contradiction en posant des axiomes faisant intervenir des notions de décidabilité.

Micaela Mayero étudie plus généralement l'application des méthodes formelles dans le domaine de l'analyse numérique. Elle a orienté son travail dans deux directions:

Algorithme de gestion de mémoire



Participant : Jean Duprat.

Mots clés : ramasse-miette, algorithmique distribuée .

J. Duprat s'attache à traduire en Coq des preuves parues dans des publications dans des domaines variés de l'informatique.

Cette année, il a étudié la preuve de sûreté d'un algorithme distribué de ramasse-miettes imaginé par L. Moreau [Mor97].

Cet algorithme met en jeu une machine abstraite composée d'automates d'états finis (sites) communiquant entre eux par messages. Cette machine évolue dans le temps de façon non déterministe par transitions choisies dans un ensemble fini de transitions possibles. La modélisation des liens de transmission des messages entre sites se fait par files d'attente. La preuve de sûreté met en évidence des invariants tenant compte du nombre de messages d'un type donné dans une file d'attente ou dans une famille de files d'attente et d'informations contenues dans des tables internes à chaque site. L'écriture de la preuve en Coq a induit plusieurs modifications importantes dans les spécifications et dans l'organisation des lemmes allant dans le sens d'une rigueur accrue.

Preuves en théorie des catégories



Participant : Amokrane Saïbi.

Amokrane Saïbi a fini de porter vers la version V6.2 de Coq son développement de la théorie des catégories. Il a aussi intégré dans Coq une heuristique améliorant la synthèse d'arguments implicites en présence d'enregistrements dépendants, et amélioré le langage de déclaration de coercions.


previous up next contents
Précédent : Résultats nouveaux Remonter : Résultats nouveaux Suivant : Preuves par réflection