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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

58 CHAPITRE 2.<br />

REPRÉSENTATION DES FORMULES PROPOSITIONNELLES<br />

<strong>Pour</strong> une équation quelconque, <strong>la</strong> résolution est évi<strong>de</strong>mment non polynomiale en général,<br />

puisque le calcul d’une forme sans quantificateur d’un graphe est lui-même un problème<br />

non polynomial. Dans le cas particulier d’une équation du type (∀y 1 ...∀y n ∃x 1 ...∃x m f)<br />

où f est un graphe, ce qui correspond au cas <strong>de</strong> l’unification booléenne [119, 24], avec<br />

{y 1 ,...,y n } < {x 1 ,...,x m }, les m fonctions <strong>de</strong> Skolem sont calculées en O(m × |f|), et<br />

chacune d’entre elles a une taille en O(|f|).<br />

2.5 Le problème <strong>de</strong> l’ordre<br />

Un ordre fixé <strong>de</strong>s variables assure <strong>la</strong> canonicité <strong>de</strong>s BDDs et TDGs. Mais <strong>la</strong> taille du<br />

graphe d’une formule dépend <strong>de</strong> cet ordre. Nous étudions ici l’influence <strong>de</strong> l’ordre <strong>de</strong>s<br />

variables sur <strong>la</strong> taille <strong>de</strong>s graphes.<br />

Considérons une permutation π <strong>de</strong>s n premiers entiers. <strong>Pour</strong> toute formule f, on note<br />

f π <strong>la</strong> formule obtenue à partir <strong>de</strong> f par renommage <strong>de</strong>s variables x k en x π(k) . Soit V π <strong>la</strong><br />

fonction λ[x 1 ...x n ].[x π(1) ...x π(1) ]. A une fonction λ⃗x.f <strong>de</strong> n variables, on peut associer n!<br />

réécritures <strong>de</strong> <strong>la</strong> forme (λ⃗x.f π )◦V π −1. On peut représenter f par le graphe <strong>de</strong> f π modulo<br />

<strong>la</strong> permutation π, c’est à dire modulo l’ordre sur les variables. Les graphes <strong>de</strong>s n! formules<br />

f π possibles n’ont évi<strong>de</strong>mment pas tous <strong>la</strong> même taille, et on a vu qu’en choisissant un<br />

mauvais ordre sur les variables, on peut faire croître dramatiquement <strong>la</strong> taille du graphe<br />

d’une fonction. Il importe donc <strong>de</strong> bien choisir l’ordre d’expansion <strong>de</strong>s variables. Il existe<br />

<strong>de</strong>s c<strong>la</strong>sses <strong>de</strong> fonctions insensibles à l’ordre, comme les fonctions symétriques :<br />

Théorème 2.18 Le graphe d’une fonction symétrique <strong>de</strong> n variables est <strong>de</strong> taille majorée<br />

par n 2 /2, quel que soit l’ordre <strong>de</strong>s variables.<br />

<strong>Preuve</strong>. Soit f une fonction symétrique <strong>de</strong> n variables. Comme f est symétrique, pour<br />

toute permutation π <strong>de</strong>s n premiers entiers, on a f(x 1 ,...,x n ) = f(x π(1) ,...,x π(n) ). Ceci<br />

garantit que <strong>la</strong> taille du graphe <strong>de</strong> f est insensible à l’ordre. Montrons maintenant qu’il<br />

est <strong>de</strong> taille bornée par n 2 /2.<br />

Comme f est symétrique, <strong>la</strong> valeur <strong>de</strong> f(x 1 ,...,x n ) ne dépend que du nombre <strong>de</strong><br />

valeurs 1 prises par les variables x 1 ,...,x n . Ainsi une fonction symétrique <strong>de</strong> n variables<br />

est entièrement décrite en donnant sa valeur v k lorsque exactement k <strong>de</strong> ses variables<br />

prennent <strong>la</strong> valeur 1, ceci pour 0 ≤ k ≤ n :<br />

f(1,...,1,0,...,0) = v<br />

} {{ } } {{ } k<br />

k n−k<br />

Le graphe non complètement réduit <strong>de</strong> cette fonction est <strong>la</strong> structure G 1 1, où<br />

G k j = △(x k ,G k+1<br />

j ,G k+1<br />

j+1) pour 1 ≤ j ≤ k ≤ n, et G n+1<br />

j = v j−1 pour 1 ≤ j ≤ n + 1.<br />

Ce graphe est donné Figure 15. La taille du graphe réduit correspondant, obtenu en<br />

remp<strong>la</strong>çant les feuilles v k par les constantes 0 ou 1, est évi<strong>de</strong>mment bornée par n(n−1) . ✷<br />

2<br />

D’un autre coté, <strong>la</strong> croissance <strong>de</strong>s graphes décrivant les sorties <strong>de</strong> l’additionneur n–bits<br />

est linéaire en fonction <strong>de</strong> n dans le meilleur <strong>de</strong>s cas, mais elle est exponentielle dans le pire<br />

<strong>de</strong>s cas [27]. Plus directement, ((y 1 ⇔ y 2n )∧(y 2 ⇔ y 2n−1 )∧...∧(y n ⇔ y n+1 )) a un graphe<br />

en O(n) pour l’ordre y 1 < y 2n < y 2 < y 2n−1 < ... < y n−1 < y n , mais le Lemme 2.1

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

Saved successfully!

Ooh no, something went wrong!