
Précédent : Actions de recherche Remonter : Actions de recherche
Suivant : Utilisation du système
Le système Coq commence à avoir une communauté
importante d'utilisateurs et de contributeurs. Outre les deux
sites de notre projet, nous entretenons des collaborations avec
d'autres groupes de recherches qui collaborent à notre effort. Au
premier rang de ceux-ci, figurent nos collègues du projet Croap
de Sophia-Antipolis qui développent en Centaur, une interface
très sophistiquée baptisée CTCoq et qui travaillent
également sur la traduction des preuves formelles en langue
naturelle. Nous avons également des liens très étroits avec des
équipes de Paris 6 (Th. Hardin) et du CNAM (V. Donzeau-Gouge),
qui organisent un séminaire consacré aux systèmes Coq et
B. Nous collaborons également avec des équipes de Nancy et
de Bordeaux.
Nos utilisateurs industriels au CNET (P. Crégut et J.-F.
Monin), chez Dassault (E. Ledinot) et chez Bull (D. Bolignano)
contribuent également à notre bibliothèque de démonstrations.
Cette année, nous avons achevé de développer la version
Coq V5.10 distribuée sur Internet, en FTP, en Juillet. La
bibliothèque d'exemples a été portée dans cette nouvelle version.
Un manuel de référence [20] et
un tutorial [22] ont
été rédigés. Depuis sa diffusion, le système Coq a été
installé sur 250 sites environ et la liste de courrier
Coq-Club concerne 120 utilisateurs réguliers pour moitié
en France et pour moitié dans le reste du monde.
Des caractéristiques notables du système Coq V5.10 sont
:
- Une structure primitive de définitions mutuellement
inductives permettant des spécifications de haut niveau ainsi
qu'un ensemble de tactiques permettant d'automatiser les
preuves associées.
- Une possibilité de développer un programme dans un premier
temps et, en l'associant à une spécification, d'engendrer
automatiquement un ensemble d'obligations de preuves permettant
de justifier sa correction.
- Un système de bibliothèques mathématiques modulaires
permettant de compiler et recharger rapidement des théories
mathématiques.
- Une possibilité de charger dynamiquement des tactiques ML.
Parmi les tactiques existantes, on note des procédures de
décision pour le calcul propositionnel intuitioniste et le
calcul des prédicats direct.
- Possibilité d'introduire des notations spécifiques par
l'utilisation de grammaires et fonctions d'impression
interprétées.
Parmi les nouvelles fonctionnalités du système développées
cette année, on peut noter :
- des types co-inductifs permettant la représentation de
structures de données potentiellement infinies,
- une meilleure possibilité d'extraire des programmes ML
d'une preuve de totalité de leur spécification,
- la possibilité d'étendre dynamiquement l'analyseur lexical
par de nouveaux mots-clés,
- une possibilité de définir des types de données par
récurrence sur la structure d'un terme comme par exemple le
produit n-aire.
- une amélioration de la convivialité du système (mode
emacs, traduction automatique des définitions Coq
en LaTeX, production automatique de Makefile, etc.)
Nous expérimentons actuellement une version du système avec un
calcul de sortes plus souple qui devrait permettre de simplifier
la présentation théorique ainsi que l'organisation des
bibliothèques de base.

Précédent : Actions de recherche Remonter : Actions de recherche
Suivant : Utilisation du système