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.

112 CHAPITRE 5. CALCUL DE L’IMAGE RÉCIPROQUE D’UNE FONCTION<br />

Le calcul <strong>de</strong> <strong>la</strong> composition (χ◦ ⃗ f) est au moins en O(|χ|× ∏ n<br />

k=1 |f k |) (voir Section 2.4.3).<br />

Il faut donc réduire au maximum <strong>la</strong> taille <strong>de</strong>s arguments : on est conduit à étudier <strong>la</strong><br />

minimisation <strong>de</strong>s graphes <strong>de</strong> ⃗ f dans le terme Pre( ⃗ f,Cns,χ).<br />

Rappelons l’équation 3.9 permettant <strong>de</strong> calculer l’ensemble <strong>de</strong>s états satisfaisant une<br />

formule CTL <strong>de</strong> type EU :<br />

E k+1 = λ⃗y. ( E k (⃗y)∨ ( F(⃗y)∧(∃⃗x Cns(⃗y,⃗x)∧E k ( ⃗ f(⃗y,⃗x))) )) . (5.1)<br />

Lorsque que E k (⃗y) = 1, ou F(⃗y) = 0, ou Cns(⃗y,⃗x) = 0, <strong>la</strong> valeur <strong>de</strong> E k+1 (⃗y) ne<br />

dépend plus du terme E k ( ⃗ f(⃗y,⃗x)). Aussi <strong>la</strong> fonction ⃗ f qui apparaît dans 5.1 peut être<br />

remp<strong>la</strong>cée par n’importe quelle fonction ⃗ f ′ qui est égale à ⃗ f sur le domaine D défini par<br />

D = λ⃗y.λ⃗x.(¬E k (⃗y)∧F(⃗y)∧Cns(⃗y,⃗x)), sans changer <strong>la</strong> valeur <strong>de</strong> <strong>la</strong> fonction E k+1 . Cette<br />

remarque tient aussi pour les autres formules 3.6 à 3.11 définissant les points fixes <strong>de</strong>s<br />

formules CTL. Les domaines D respectifs sont :<br />

D = Cns pour 3.6 et 3.7,<br />

D = λ⃗y.λ⃗x.(¬E k (⃗y)∧F(⃗y)∧Cns(⃗y,⃗x)) pour 3.9,<br />

D = λ⃗y.λ⃗x.(¬A k (⃗y)∧F(⃗y)∧Cns(⃗y,⃗x)) pour 3.11.<br />

Comme on cherche à vali<strong>de</strong>r <strong>de</strong>s formules CTL sur les états atteignables <strong>de</strong> <strong>la</strong> machine,<br />

on peut restreindre le processus <strong>de</strong> calcul aux seuls états vali<strong>de</strong>s. Il est donc souhaitable <strong>de</strong><br />

d’abord calculer l’ensemble <strong>de</strong>s états vali<strong>de</strong>s grâce à Img (Section 3.2.2 et Chapitre 4), puis<br />

d’utiliser cette connaissance afin <strong>de</strong> ne considérer que <strong>de</strong>s états vali<strong>de</strong>s durant le calcul <strong>de</strong><br />

Pre. Ceci revient à rajouter dans le domaine D défini ci-<strong>de</strong>ssus l’information Valid(⃗y) par<br />

unproduit, c’estàdirequelenouveaudomaineàconsidérerest λ⃗y.λ⃗x.(Valid(⃗y)∧D(⃗y,⃗x)).<br />

Autrement dit, les équations 3.12 à 3.17 <strong>de</strong>viennent :<br />

EX = λ⃗y.(Valid(y)∧Pre( ⃗ f,Cns,F))<br />

AX = λ⃗y.(Valid(⃗y)∧¬Pre( ⃗ f,Cns,¬F)(⃗y))<br />

E 0 = λ⃗y.(Valid(⃗y)∧G(⃗y)), et<br />

(<br />

E k+1 = λ⃗y. Valid(⃗y)∧ ( E k (⃗y)∨(F(⃗y)∧Pre( f,Cns,E ⃗ k )(⃗y)) )) .<br />

A 0 = λ⃗y.(Valid(⃗y)∧G(⃗y)), et<br />

A k+1 (⃗y) = λ⃗y.<br />

(Valid(⃗y)∧ ( A k (⃗y)∨(F(⃗y)∧¬Pre( f,Cns,A ⃗ k )(⃗y)) ))<br />

Nous proposons différentes techniques <strong>de</strong> minimisation d’une fonction partielle (D,f)<br />

dans l’Annexe E. Par exemple, si on utilise <strong>la</strong> fonction “restrict” [43] (voir Section E.4),<br />

alors on calculera <strong>la</strong> composition (χ◦( ⃗ f⇓D)) au lieu <strong>de</strong> (χ◦ ⃗ f), en garantissant que chaque<br />

graphe (f k ⇓D) est <strong>de</strong> taille inférieure ou égale à celui <strong>de</strong> f k , ce qui peut considérablement<br />

diminuer le temps <strong>de</strong> <strong>la</strong> composition.

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

Saved successfully!

Ooh no, something went wrong!