previous up next contents
Précédent : Utilisation de Lp. Remonter : Vérification formelle de Suivant : Unification

Utilisation de Coq.

Le travail de B. Heyd se divise en deux parties :

La première phase a consisté au codage de la théorie dans COQ.gif De façon complémentaire à B. Chetali, qui a choisi un modèle syntaxique, B. Heyd a gardé le modèle état-transition proposé par Chandy et Misra. Le choix de ce modèle a été motivé par la simplicité de codage.

Le langage logique de COQ, à savoir le Calcul Inductif des Constructions, est une variété de la théorie des types. Ce langage est vraiment puissant et l'utilisation des définitions inductives est un plus. En effet, l'internalisation du principe d'induction et les tactiques d'utilisation pour de telles définitions permettent un codage plus léger et des preuves plus brèves. Ensuite, contrairement aux autres implantations d'UNITY, la formalisation de l'ensemble des actions du programme ne correspond pas à une liste mais à celle plus intuitive d' ensemble. L'opérateur de sûreté capture toujours la structure du programme, non plus ``physiquement'', mais par une hypothèse. Cela a pour intérêt de ne tenir compte de la structure du programme que dans la démonstration d'exemples et non plus dans celle des règles dérivées de la théorie. Enfin, l'utilisation des types dépendants rend la formalisation de la notion d'état plus cohérente.

D'un point de vue théorique, Sandersgif démontre que la logique est inconsistante par l'utilisation de l'axiome de substitution dans les preuves, et incomplète sinon. En s'appuyant sur ces travaux, sur ceux de Misragif et en collaboration avec Pierre Crégut (CNET-Lannion), une version d'UNITY incluant l'axiome de substitution et étant intuitionniste, consistante et compositionnelle a été mise au point et implantée[26].

La seconde phase est l'utilisation de l'outil sur divers exemples (division euclidienne, lecteur-rédacteur, ascenseur) afin de comprendre la méthodologie concernant la preuve des différentes propriétés. Actuellement, B. Heyd et P. Crégut s'intéressent à la vérification d'un protocole réel du CNET, l'ABT/DT ( ATM Block Transfert/Delayed Transmission). Une extension d'UNITY au temps réel est à l'étude.


previous up next contents
Précédent : Utilisation de Lp. Remonter : Vérification formelle de Suivant : Unification