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
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
140 ANNEXE E.<br />
RÉDUCTION ET MINIMISATION<br />
E.3 Minimisation d’une fonction paramétrée<br />
Afin <strong>de</strong> réduire le graphe d’une fonction paramétrée f(⃗x,p), on va utiliser <strong>de</strong>s régles basées<br />
sur l’unification, où seule <strong>la</strong> variable p est quantifiée existentiellement. Si le graphe peut<br />
s’unifier avec une constante, alors c’est <strong>la</strong> solution minimale. Sinon, on tente <strong>de</strong> partager<br />
<strong>de</strong>s sous-graphes du graphes. Ces règles sur les TDGs (<strong>la</strong> règle E.8 est omise pour les<br />
BDDs) s’écrivent :<br />
(∀⃗x ∃p f) ⇒<br />
f → 1<br />
(E.5)<br />
(∀⃗x ∃p ¬f) ⇒<br />
f → 0<br />
(E.6)<br />
(s est <strong>la</strong> fonction <strong>de</strong> Skolem <strong>de</strong> (∀⃗x ∃p (L ⇔ H))) ⇒<br />
△( ,L,H) → H[p ← s] (E.7)<br />
(s est <strong>la</strong> fonction <strong>de</strong> Skolem <strong>de</strong> (∀⃗x ∃p (L⊕H))) ⇒<br />
△(x,L,H) → △(x,−H[p ← s],H[p ← s])<br />
(E.8)<br />
Ce système <strong>de</strong> réécriture, utilisé conjointement avec l’élimination <strong>de</strong>s variables inutiles,<br />
donne <strong>de</strong> bon résultats. Cependant, sa complexité est exponentielle, et cette technique<br />
ne peut être donc utilisée avec profit que lors d’une phase <strong>de</strong> minimisation complète d’un<br />
ensemble <strong>de</strong> fonctions, par exemple les fonctions <strong>de</strong> transitions et <strong>de</strong> sorties d’une machine<br />
séquentielle, en vue d’assurer une implémentation non redondante et compacte. <strong>Pour</strong>tant<br />
<strong>la</strong> minimisation est un problème qui permet d’accélérer considérablement l’évaluation <strong>de</strong><br />
certaines opérations, par exemple les compositions qui interviennent lors <strong>de</strong> <strong>la</strong> vérification<br />
<strong>de</strong>formulesCTL(voirSection5.3.1). Lasectionsuivanteprésenteunopérateurpolynomial<br />
dévolu à cette tâche.<br />
E.4 Réduction polynomiale : l’opérateur “Restrict”<br />
Nous présentons ici un opérateur très simple, appelé “restrict”, qui permet <strong>de</strong> réduire une<br />
fonction f sur un domaine d’utilisation D. Si son pouvoir <strong>de</strong> réduction est moins puissant<br />
(écarts <strong>de</strong> 0% à 60%) que celui <strong>de</strong> <strong>la</strong> technique présentée précé<strong>de</strong>mment, “restrict” a<br />
l’avantage <strong>de</strong> s’évaluer quadratiquement, alors que <strong>la</strong> première technique est exponentielle.<br />
La définition algorithmique <strong>de</strong> “restrict”, noté “⇓”, est donnée Figure 38. Cette fonction<br />
opère sur les graphes ou les formes <strong>de</strong> Shannon <strong>de</strong>s fonctions f et D, et retourne<br />
le graphe <strong>de</strong> (f⇓D). A partir <strong>de</strong> cette définition algorithmique, on déduit les <strong>de</strong>ux<br />
théorèmes suivants, montrant que “restrict” permet <strong>de</strong> réduire une fonction f sur un<br />
domaine d’utilisation D.