07.11.2013 Views

Une Boite `a Outils Pour la Preuve Formelle de Syst`emes Séquentiels

Une Boite `a Outils Pour la Preuve Formelle de Syst`emes Séquentiels

Une Boite `a Outils Pour la Preuve Formelle de Syst`emes Séquentiels

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

INTRODUCTION 11<br />

<strong>la</strong> vérification <strong>de</strong> <strong>de</strong>scriptions fonctionnelles <strong>de</strong> machines, en particulier <strong>la</strong> métho<strong>de</strong> <strong>de</strong>s<br />

assertions <strong>de</strong> Floyd et les techniques d’exécution symbolique <strong>de</strong> programmes.<br />

W. Hunt a utilisé le démonstrateur <strong>de</strong> Boyer-Moore pour effectuer <strong>la</strong> vérification<br />

d’un petit microprocesseur [79]. Ce démonstrateur travaille sur un sous-ensemble <strong>de</strong> <strong>la</strong><br />

logique du premier ordre (seuls les quantificateurs universels sont autorisés), et permet<br />

l’utilisation du principe d’induction dans les preuves. L’utilisation du démonstrateur <strong>de</strong><br />

D. Boyer-Moore pour <strong>la</strong> preuve <strong>de</strong> matériel a été poursuivie, en particulier en Europe par<br />

l’équipe <strong>de</strong> D. Borrione [20].<br />

M. Gordon a développé un autre formalisme, appelé LCF-LSM [67, 68], construit<br />

au-<strong>de</strong>ssus du système LCF (Logic of Computable Functions) développé par R. Milner à<br />

Edimbourg pour <strong>la</strong> génération interactive <strong>de</strong> preuves formelles. La couche LSM (Logic of<br />

Sequential Machines) rajoutée par M. Gordon étend le calcul <strong>de</strong> LCF avec <strong>de</strong>s <strong>de</strong>scriptions<br />

comportementales du CCS (Calculus of Communicating Systems). Ce système a lui aussi<br />

étéutilisépourvérifierunpetitordinateur[68],maisn’aeuaucuneimplicationindustrielle.<br />

Le travail <strong>de</strong> H. G. Barrow [9] est très proche <strong>de</strong> celui <strong>de</strong> M. Gordon, excepté qu’il utilise<br />

PROLOG comme démonstrateur.<br />

La logique du premier ordre a une gran<strong>de</strong> puissance d’expression qui permet son utilisation<br />

directe comme formalisme <strong>de</strong> <strong>de</strong>scription <strong>de</strong> matériel, mais <strong>la</strong> puissance d’expression du<br />

premier ordre rend impossible l’automatisation <strong>de</strong>s preuves [36]. Un démonstrateur <strong>de</strong><br />

cette puissance ne peut pas réaliser tout seul <strong>la</strong> preuve <strong>de</strong> correction d’un circuit non<br />

trivial. L’utilisateur doit être capable <strong>de</strong> conduire <strong>la</strong> preuve, le système n’étant là que<br />

pour lui éviter <strong>de</strong> fastidieuses réécritures <strong>de</strong> formules. Par exemple, le système LCF offre<br />

<strong>de</strong>s primitives <strong>de</strong> constructions <strong>de</strong> preuves appelées “tactics” et “tacticals”. Les premières<br />

permettent <strong>de</strong> décomposer les problèmes à résoudre en sous-problèmes, et les secon<strong>de</strong>s<br />

<strong>de</strong> combiner les premières pour construire <strong>de</strong>s preuves complexes. Les preuves effectuées<br />

avec les systèmes cités ci-<strong>de</strong>ssus ont d’ailleurs été faites par les logiciens/mathématiciens<br />

créateurs <strong>de</strong> ces outils, et ont été longues à réaliser. Or il n’est pas envisageable à court<br />

terme <strong>de</strong> <strong>de</strong>man<strong>de</strong>r aux concepteurs <strong>de</strong> circuits <strong>de</strong> <strong>de</strong>venir aussi spécialistes <strong>de</strong> logique<br />

formelle, ni d’associer à chaque équipe <strong>de</strong> conception un logicien <strong>de</strong> haut niveau. L’objectif<br />

<strong>de</strong> développer <strong>de</strong>s outils <strong>de</strong> vérification automatiques a conduit d’autres équipes, dont celle<br />

du Centre <strong>de</strong> Recherche <strong>de</strong> BULL [5, 6], vers <strong>de</strong>s voies différentes.<br />

Un système logique décidable et assez puissant pour exprimer et résoudre les problèmes<br />

<strong>de</strong> vérification <strong>de</strong> matériel, à partir du moment où ils se situent sur un domaine<br />

d’interprétation fini, est <strong>la</strong> logique propositionnelle. En 1986, R. E. Bryant propose [27]<br />

une nouvelle forme canonique <strong>de</strong>s formules propositionnelles, les Graphes <strong>de</strong> Décision<br />

Binaires, ou BDDs. Cette forme puissante et compacte permet pour <strong>la</strong> première fois <strong>de</strong><br />

prouver complètement <strong>la</strong> correction <strong>de</strong> gros additionneurs (32 bits et plus). En 1987, une<br />

forme améliorée <strong>de</strong>s BDDs, appelée Graphes <strong>de</strong> Décisions Typés ou TDGs, est proposée<br />

par J. P. Billon [18]. Cette forme, plus un processus d’exécution symbolique, conçu par<br />

J. C. Madre [89, 19], du <strong>la</strong>ngage <strong>de</strong> <strong>de</strong>scription <strong>de</strong> matériel LDS, permet <strong>la</strong> conception en<br />

1988 <strong>de</strong> PRIAM, premier outil industriel <strong>de</strong> preuve <strong>de</strong> circuits combinatoires. PRIAM a<br />

été intégré dans le système <strong>de</strong> CAO <strong>de</strong> BULL et est maintenant utilisé quotidiennement

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!