• Aucun résultat trouvé

Base littérale et certificat pour les formules booléennes quantifiées

N/A
N/A
Protected

Academic year: 2021

Partager "Base littérale et certificat pour les formules booléennes quantifiées"

Copied!
11
0
0

Texte intégral

(1)

HAL Id: inria-00292680

https://hal.inria.fr/inria-00292680

Submitted on 2 Jul 2008

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Base littérale et certificat pour les formules booléennes quantifiées

Igor Stéphan, Benoit da Mota

To cite this version:

Igor Stéphan, Benoit da Mota. Base littérale et certificat pour les formules booléennes quantifiées.

JFPC 2008- Quatrièmes Journées Francophones de Programmation par Contraintes, LINA - Université

de Nantes - Ecole des Mines de Nantes, Jun 2008, Nantes, France. pp.307-316. �inria-00292680�

(2)

Actes JFPC 2008

Base litt´ erale et certificat pour les formules bool´ eennes quantifi´ ees

Igor St´ ephan Benoit Da Mota

LERIA, Universit´ e d’Angers, 2 Boulevard Lavoisier, 49045, Angers, Cedex 01, France damota|[email protected]

R´ esum´ e

Nous ´ etudions dans cet article une nouvelle forme normale, celle des bases litt´ erales, pour les formules boo- l´ eennes quantifi´ ees (pr´ enexes). Un des aspects majeurs d’une base litt´ erale est que le certificat (qui permet de v´ erifier a posteriori qu’une d´ ecision positive sur une for- mule bool´ eenne quantifi´ ee est correcte ou non) en est un cas particulier. Notre principal r´ esultat est un algo- rithme orient´ e recherche qui calcule un certificat associ´ e

`

a une formule bool´ eenne quantifi´ ee dans le cas o` u elle est valide. Un autre aspect majeur d’une base litt´ erale est qu’elle peut ˆ etre vue comme ´ etant le r´ esultat d’une com- pilation de la formule bool´ eenne quantifi´ ee qui respecte des propri´ et´ es d’optimalit´ e en terme de construction de la solution et de minimalit´ e en terme de mod` eles propo- sitionnels de la matrice.

Abstract

We study in this article a new normal form, the lite- ral bases, for the (prenex) quantified Boolean formulae.

One of the major aspects of literal bases is that the no- tion of certificate (which allows to verify a posteriori that validity of a quantified Boolean formula is correct or not) is one special case. Our main result is a top-down search algorithm which computes the certificate associated to a quantified Boolean formula in case of its validity. Ano- ther major aspect of literal bases is that a literal base may be seen as a the result of the compilation of the quantified Boolean formula which respects some proper- ties of optimality (in term of generation of solutions) and minimality (in term of number of propositional models of the matrix).

1 Introduction

Le probl` eme de validit´ e pour les formules bool´ eennes quantifi´ ees (QBF) est une g´ en´ eralisation du probl` eme de satisfiabilit´ e pour les formules bool´ eennes. Tan- dis que d´ ecider de la satisfiabilit´ e des formules boo- l´ eennes est NP-complet, d´ ecider de la validit´ e des QBF

est PSPACE-complet. C’est le prix ` a payer pour une repr´ esentation plus concise pour de tr` es nombreuses classes de formules. Une multitude d’importants pro- bl` emes de d´ ecision parmi des champs tr` es divers ont des transformations polynomiales vers le probl` eme de validit´ e des QBF. Les QBF sont aussi utiles pour re- pr´ esenter des strat´ egies dans un jeu fini ` a deux joueurs.

Dans un tel jeu les adversaires jouent alternativement en valuant les variables d’une formule qui doit ˆ etre va- lide si un des deux joueurs est sˆ ur de gagner. Dans ce style d’application, une proc´ edure de d´ ecision n’est pas suffisante et une solution au probl` eme de recherche associ´ e ` a la QBF est n´ ecessaire. De plus, lorsque l’algo- rithme de d´ ecision r´ epond valide ou non-valide, il n’y a aucun moyen de v´ erifier que l’algorithme a correc- tement r´ epondu : dans le cadre de la logique proposi- tionnelle, le r´ esultat associ´ e ` a la d´ ecision positive est le mod` ele qui est alors facilement v´ erifiable. Une possibi- lit´ e est de construire un arbre repr´ esentant la solution (appel´ e politique [6] ou strat´ egie [3]) mais il est alors dans le pire et la majeur partie des cas de taille expo- nentielle. Dans [1] une solution ` a ces deux probl` emes est propos´ ee : le sat-certificat qui est une repr´ esenta- tion pour une s´ equence des fonctions bool´ eennes qui valide la formule. Si la notion de sat-certificat est ex- prim´ ee dans [1] ind´ ependemment de tout algorithme, elle l’est dans le formalisme des diagrammes de d´ eci- sion binaire [4] pour des formules sous forme normale conjonctive. De plus son extraction n’est explicit´ ee que dans le cadre du solver sKizzo [2] bas´ e sur la skol´ emi- sation symbolique et le raisonnement symbolique ; or la plupart des impl´ ementations [9] sont bas´ ees sur des algorithmes orient´ es recherche ` a la Davis, Logemann et Loveland [8] 1 . Dans [12], un algorithme d’´ elimina- tion des quantificateurs est propos´ e pour r´ esoudre les

1

Il est ` a noter que sKizzo permet aussi le calcul via un algo-

rithme DLL et en extrait des sat-certificats

(3)

QBF (et non “seulement” d´ ecider de la validit´ e). Cet algorithme g´ en` ere une QBF ´ equivalente non seulement au sens de la validit´ e mais aussi par la pr´ eservation des solutions de la formule. Le r´ esultat de l’applica- tion de l’algorithme peut ˆ etre vu comme le compil´ e de la QBF initiale. Le format de cette QBF g´ en´ er´ ee est tr` es proche de celui des sat-certificats.

Apr` es des pr´ eliminaires et un exemple introductif qui a pour but de r´ ev´ eler les intuitions, nous pr´ esentons les r´ esultats suivants :

– une description de cette forme commune pour les sat-certificats et le compil´ e d’une QBF selon [12] : les bases litt´ erales,

– une interpr´ etation des sat-certificats en terme de QBF selon les bases litt´ erales,

– des op´ erations internes ainsi que des propri´ et´ es sur bases litt´ erales ;

le tout amenant

– ` a une extension de tout algorithme orient´ e re- cherche pour la construction des sat-certificats et – ` a une extension de tout algorithme orient´ e re- cherche pour la compilation d’une QBF valide en une base litt´ erale respectant un crit` ere d’optima- lit´ e et dont l’interpr´ etation sous forme de QBF est telle que la matrice respecte un crit` ere de mi- nimalit´ e.

2 Pr´ eliminaires

Les formules bool´ eennes quantifi´ ees. Les valeurs bool´ eennes sont not´ ees vrai et faux. L’ensemble des symboles (ou variables) propositionnel(le)s est not´ e V . Les symboles ⊥ et > sont les constantes bool´ eennes.

Le symbole ∧ est utilis´ e pour la conjonction, ∨ pour la disjonction, ¬ pour la n´ egation, → pour l’implication et ↔ pour la bi-implication. L’ensemble des formules propositionnelles est d´ enot´ e PROP. Un litt´ eral est une variable bool´ eenne ou la n´ egation de celle-ci. Une formule bool´ eenne est sous forme normale conjonctive (FNC) - resp. disjonctive (FND) - si c’est une conjonc- tion de disjonctions de litt´ eraux - resp. disjonction de conjonctions de litt´ eraux ; la fonction f nc - resp.

f nd - de PROP dans PROP calcule la FNC - resp.

FND - d’une formule quelconque. Une substitution est une fonction de l’ensemble des variables dans l’en- semble PROP. Nous d´ efinissons la substitution d’une variable x par F dans G, not´ ee G[x ← F ], comme

´ etant la formule obtenue de G en rempla¸ cant toutes les occurrences de la variable propositionnelle x par la formule F . Une valuation v est une fonction de V dans BOOL et l’interpr´ etation, not´ ee v est son ex- tension dans PROP. A une valuation v est associ´ e une substitution ~ v ainsi : si v(x) = vrai alors [x ← >]

est dans ~ v, si v(x) = faux alors [x ← ⊥] est dans ~ v.

La satisfaction propositionnelle est not´ ee | = (v | = F signifie que v (F ) = vrai, la formule propositionnelle F est satisfaite par la valuation v et v est un mod` ele de F) et l’´ equivalence logique ≡. Le symbole ∃ est utilis´ e pour la quantification existentielle et ∀ pour la quantification universelle (q est utilis´ e pour noter un quantificateur quelconque). Toute formule bool´ eenne est aussi une formule bool´ eenne quantifi´ ee (QBF). Si F est une QBF et x est une variable bool´ eenne alors (∃x F ) et (∀x F ) sont des QBF. Un lieur est une chaˆıne de caract` eres q 1 x 1 . . . q n x n avec x 1 , . . . , x n des variables distinctes et q 1 . . . q n des quantificateurs ; le lieur vide est d´ enot´ e ; par convention, des quantifi- cateurs diff´ erents lient des variables diff´ erentes. Une formule bool´ eenne quantifi´ ee constitu´ ee d’un lieur et d’une formule bool´ eenne appel´ ee matrice est une QBF pr´ enexe ; si toute variable apparaissant dans une QBF poss` ede une occurrence dans le lieur elle est dite close.

Nous nous restreignons par la suite aux QBF pr´ enexes et closes. Une QBF est en FNC - resp. FND - si sa matrice l’est.

La s´ emantique des QBF. La s´ emantique des sym- boles bool´ eens est d´ efinie de mani` ere habituelle. La s´ emantique des quantificateurs est la suivante : pour toute variable bool´ eenne y et toute QBF qyQF ,

∃yQF = (QF [y ← >]∨QF [y ← ⊥]) et

∀yQF = (QF [y ← >]∧QF [y ← ⊥]).

Une QBF est valide si F ≡>. Si y est une variable quantifi´ ee existentiellement pr´ ec´ ed´ ee par les variables quantifi´ ees universellement x 1 , . . . , x n , nous notons ˆ

y x

1

...x

n

sa fonction de Skolem de {vrai, faux} n dans {vrai, faux}. Un mod` ele pour une QBF F est une s´ equence s de fonctions de Skolem qui satisfait la formule [5]. Par exemple, la QBF ∃y∃x∀z((x∨y)↔z) n’est pas valide tandis que ∀z∃y∃x((x∨y)↔z) l’est avec pour s´ equence possible de fonctions de Skolem : ˆ

y z (vrai) = vrai, ˆ y z (faux) = faux, ˆ x z (vrai) = faux et ˆ x z (faux) = faux. Un mod` ele (bool´ een) pour une formule bool´ eenne non quantifi´ ee (i.e. une formule propositionnelle) correspond exactement au mod` ele (QBF) de sa clˆ oture existentielle. Une QBF est va- lide si et seulement s’il existe une s´ equence de fonc- tions de Skolem qui satisfasse la formule. Dans [12, 11], une nouvelle relation d’´ equivalence sur les QBF, no- t´ ee ∼ =, a ´ et´ e introduite ; elle porte sur la pr´ eservation de l’ensemble des mod` eles (et non plus seulement sur la validit´ e). Par exemple, ∀z∃y∃x((x∨y)↔z)≡> mais

∀z∃y∃x((x∨y)↔z) 6∼ = >.

sat-certificat. A une fonction de Skolem ˆ y x

1

...x

n

faisant partie d’une s´ equence de fonctions de Sko-

(4)

lem qui satisfait une QBF, nous associons deux for- mules propositionnelles P y and N y d´ efinies unique- ment sur les variables universellement quantifi´ ees {x 1 , . . . , x n } ainsi : v (P y ) = vrai si et seulement si ˆ

y x

1

...x

n

(v(x 1 ), . . . , v(x n )) = vrai et v (N y ) = vrai si et seulement si ˆ y x

1

...x

n

(v(x 1 ), . . . , v(x n )) = faux (v une valuation quelconque). A une s´ equence de fonc- tions de Skolem ˆ y 1 ; . . . ; ˆ y m satisfaisant une QBF F, y 1 , . . . , y m les variables existentiellement quantifi´ ees, est associ´ e un sat-certificat i.e. une s´ equence de paires de formules (P 1 , N 1 ); . . . ; (P m , N m ). Cette d´ efinition est l´ eg` erement diff´ erente de celle de [1] : dans notre d´ efinition les formules P i et N i , 1 ≤ i ≤ m, sont associ´ ees exactement aux fonctions de Skolem tandis que, dans [1], elles sont associ´ ees ` a des fonctions boo- l´ eennes qui recouvrent des ensembles de fonctions de Skolem. Dans cet article, nous nous pla¸ cons pour des raisons de clart´ e dans la plus grande g´ en´ eralit´ e : un algorithme quelconque orient´ e recherche, sans pr´ esup- poser de m´ ecanismes de d´ eduction qui rendraient cer- taines variables sans valuation ` a la fin du calcul.

3 Exemple introductif

Nous d´ eveloppons un exemple introductif pour sou- tenir l’intuition des algorithmes et r´ esultats qui seront pr´ esent´ es dans les sections suivantes.

Soit la formule propositionnelle

F = ((c∨b)∧(b→((c→d)∧(c∨(a↔¬d))))) Alors F peut ˆ etre d´ ecompos´ ee selon la s´ equence de variables a; b; c; d en les formules :

F ≡ (¬a∨>)∧(a∨>)∧(¬b∨>)∧(b∨>)∧

(¬c∨>)∧(c∨>)∧(¬d∨X ¬ )∧(d∨X ) ou bien

F≡

1

z }| {

(¬a∨>)∧(a∨>) ∧

2

z }| {

(¬b∨>)∧(b∨>) ∧ (¬c∨>)

| {z }

3

∧ (c∨b)

| {z }

4

∧ (¬d∨X ¬ )

| {z }

5

∧ (d∨X )

| {z }

6

avec X = (¬a∨¬b∨¬c)∧(¬a∨b∨c)∧

(a∨¬b∨¬c)∧(a∨¬b∨c)∧(a∨b∨c) et X ¬ = (¬a∨¬b∨c)∧(¬a∨b∨c)∧(a∨b∨c).

La premi` ere (´ el´ ementaire) a ´ et´ e obtenue par as- sociativit´ e directement ` a partir de la forme normale conjonctive 2 de F :

f nc(F ) =

(¬a∨¬b∨¬c∨d)∧(¬a∨b∨c∨d)∧(a∨¬b∨¬c∨d)∧

(a∨¬b∨c∨d)∧(a∨b∨c∨d)∧(¬a∨¬b∨c∨¬d)∧

(¬a∨b∨c∨¬d)∧(a∨b∨c∨¬d)

2

Ce n’est pas la forme normale la plus simplifi´ ee.

La seconde est plus int´ eressante car elle exhibe les propri´ et´ es suivantes :

1. pour toute valeur de v´ erit´ e de a, la formule admet (au moins) un mod` ele ;

2. pour toute valeur de v´ erit´ e de b, la formule admet (au moins) un mod` ele ;

3. si c est interpr´ et´ e ` a vrai, la formule admet (au moins) un mod` ele ;

4. si c est interpr´ et´ e ` a faux, pour que la formule admette un mod` ele il faut que b soit vrai ; 5. si d est interpr´ et´ e ` a vrai, pour que la formule

admette un mod` ele il faut n´ ecessairement que X ¬ soit vrai.

6. si d est interpr´ et´ e ` a faux, pour que la formule admette un mod` ele il faut n´ ecessairement que X soit vrai ;

Cette seconde d´ ecomposition peut ˆ etre obtenue ` a partir de la forme normale disjonctive 2 de F :

f nd(F ) =

(a∧b∧c∧d)∨(a∧b∧¬c∧¬d)∨(a∧¬b∧c∧d)∨

(a∧¬b∧c∧¬d)∨(¬a∧b∧c∧d)∨(¬a∧b∧¬c∧d)∨

(¬a∧¬b∧c∧d)∨(¬a∧¬b∧c∧¬d)

et l’´ equivalence (sp´ ecialisation de la distributivit´ e) ((¬x∧A)∨(x∧B)) dis ≡ ((A∨B)∧(¬x∨B)∧(x∨A)) ainsi

f nd(F ) dis ≡ (Y ∨Y ¬ )∧(¬d∨Y ¬ )∧(d∨Y )

dis∗ ≡ (¬a∨>)∧(a∨>)∧(¬b∨>)∧(b∨>)∧

(¬c∨>)∧(c∨b)∧(¬d∨Y ¬ )∧(d∨Y ) avec Y = (a∧b∧¬c)∨(a∧¬b∧c)∨(¬a∧¬b∧c) et

Y ¬ = (a∧b∧c)∨(a∧¬b∧c)∨(¬a∧b∧c)∨

(¬a∧b∧¬c)∨(¬a∧¬b∧c)

Nous pouvons enfin retrouver la seconde d´ ecompo- sition en remarquant que Y ≡X et Y ¬ ≡X ¬ .

Nous poursuivons cet exemple introductif en quan- tifiant la formule F ainsi : F ∀a∃b∀c∃d = ∀a∃b∀c∃dF .

A nouveau

F ∀a∃b∀c∃d ∼ = ∀a∃b∀c∃d

(¬a∨>)∧(a∨>)∧(¬b∨>)∧(b∨>)∧

(¬c∨>)∧(c∨b)∧(¬d∨X ¬ )∧(d∨X )

Mais cette d´ ecomposition n’a plus la propri´ et´ e int´ e- ressante exhib´ ee pour SAT : il n’y a pas de fonction de Skolem ˆ b a qui satisfasse la QBF telle que ˆ b a (.) = faux.

Mais une telle d´ ecomposition est possible :

(5)

F ∀a∃b∀c∃d ∼ = ∀a∃b∀c∃d

1

z }| {

(¬a∨>)∧(a∨>) ∧

2

z }| { (¬b∨>) ∧

3

z }| { (b∨⊥) ∧

4

z }| {

(¬c∨>)∧(c∨>) ∧ (¬d∨(a∧b∧c)∨(¬a∧b∧c)∨(¬a∧b∧¬c))

| {z }

5

∧ (d∨(a∧b∧¬c))

| {z }

6

Les cas 1 et 4 sont imm´ ediats puisque les variables a et c sont quantifi´ ees universellement ;

2. & 3. Pour une valeur de v´ erit´ e de a donn´ ee, si ˆ b a (a) = faux il n’existe pas de s´ equence de fonctions de Skolem qui satisfasse la QBF et si ˆ b a (a) = vrai il existe (au moins) une s´ equence de fonctions de Skolem qui satisfasse la QBF ; 5. Pour des valeurs de v´ erit´ e de a et c donn´ ees,

si ˆ d ac (a, c) = vrai, pour que la QBF admette au moins une solution il faut n´ ecessairement que (a∧b∧c)∨(¬a∧b∧c)∨(¬a∧b∧¬c) soit vrai ; 6. Pour des valeurs de v´ erit´ e de a et c donn´ ees,

si ˆ d ac (a, c) = faux, pour que la QBF admette au moins une solution il faut n´ ecessairement que (a∧b∧¬c) soit vrai ;

De cette derni` ere d´ ecomposition s’obtient le certi- ficat : (>, ⊥); ((a∧c)∨(¬a∧c)∨(¬a∧¬c), (a∧¬c)) dans lequel nous retrouvons l’unique s´ equence ˆ b a ; ˆ d ac de fonctions de Skolem qui satisfasse la QBF avec :

ˆ b a (vrai) = vrai, ˆ b a (faux) = vrai,

d ˆ ac (vrai, vrai) = vrai, d ˆ ac (vrai, faux) = faux, d ˆ ac (faux, vrai) = vrai, d ˆ ac (faux, faux) = vrai.

4 Base litt´ erale

Les formes normales disjonctive et conjonctive, aussi bien pour SAT que pour QBF, suivent l’aspect hori- zontal d’une table de v´ erit´ e (dont les valuations des symboles propositionnels forment les colonnes) : elles reprennent syntaxiquement respectivement la disjonc- tion des mod` eles et la n´ egation de la disjonction des valuations qui falsifient la formule. Si dans SAT, les formes normales disjonctive et conjonctive refl` etent exactement l’ensemble des mod` eles, il n’en est pas de mˆ eme dans QBF : des conjonctions de litt´ eraux (resp. disjonctions de litt´ eraux) peuvent faire parti de la forme normale disjonctive (respectivement conjonc- tive) de la matrice sans pour autant faire parti d’une solution ` a la QBF. Les formes d´ ecrites dans [1] (le sat-certificat pour la validit´ e d’une QBF) et [12] (le calcul d’une QBF ´ equivalente conservant toutes les so- lutions) sont dans l’aspect vertical de la table de v´ e- rit´ e (et donc selon une s´ equence pour les variables). En nous inspirant de ces formes, nous d´ efinissons la notion de base litt´ erale pour les QBF, nous en donnons l’in- terpr´ etation selon les QBF puis nous d´ efinissons trois

lois internes. Deux d’entre-elles transposent au niveau des bases litt´ erales la disjonction et la conjonction, la troisi` eme introduit dans les fonctions bool´ eennes un nouvel argument. Nous introduisons aussi une pro- pri´ et´ e d’optimalit´ e qui refl` ete la propri´ et´ e exhib´ ee dans l’exemple introductif et une propri´ et´ e de minimalit´ e pour les QBF ; le lien entre optimalit´ e et minimalit´ e sera explicit´ e. Nous montrons alors comment dans le cadre de SAT (i.e. toutes les variables sont existentiel- lement quantifi´ ees) une base litt´ erale optimale peut ˆ

etre calcul´ ee, ceci en pr´ elude aux algorithmes pour les QBF de la section suivante.

4.1 Base litt´ erale et op´ erations

Nous explorons dans cette partie une forme normale, que nous appelons base litt´ erale, qui suit l’aspect ver- tical de la table de v´ erit´ e.

D´ efinition 1 (Base litt´ erale) Une base litt´ erale est un couple (Q, G) constitu´ e

– soit de Q = et G = > ou G = ⊥ ;

– soit d’un lieur Q = q 1 x 1 . . . q n x n , n > 0, et d’une s´ equence de couples de formules (que nous nom- merons les gardes) G = (P 1 , N 1 ); . . . ; (P n , N n ) telle que les formules P k et N k sont soit > ou

⊥ soit uniquement construites sur les variables {x 1 , . . . , x k−1 }.

Nous notons B Q l’ensemble des bases litt´ erales pour un lieur Q et d´ efinissons la fonction grds qui ex- trait les gardes de la base litt´ erale et qui est telle que grds((Q, G)) = G.

De par la d´ efinition pr´ ec´ edente : – si Q = alors B = {(, >), (, ⊥)} ; – si Q = qx alors

B qx = {(qx, (>, >)), (qx, (>, ⊥)), (qx, (⊥, >)), (qx, (⊥, ⊥))}

D´ efinition 2 (Interpr´ etation d’une base litt´ erale) L’interpr´ etation d’une base litt´ erale B, fonction ` a valeur dans l’ensemble des QBF et not´ ee B , est d´ efinie par :

– si B = (, F ) alors B = F ;

– si B = (q 1 x 1 . . . q n x n , (P 1 , N 1 ); . . . ; (P n , N n )), n > 0, alors

B = q 1 x 1 . . . q n x n

^

k≤n

((¬x k ∨P k )∧(x k ∨N k )) Th´ eor` eme 1 (Compl´ etude des bases litt´ erales) Soit QF une QBF alors il existe une base litt´ erale B ∈ B Q telle que B ∼ = QF .

Argument de la preuve : Ce th´ eor` eme est imm´ ediat

car toute formule est ´ equivalente ` a une formule sous

forme normale conjonctive dont la derni` ere variable de

la s´ equence peut ˆ etre mise en facteur. 2

(6)

Exemple 1 (Suite de l’exemple introductif )

Soit Q = ∃a∃b∃c∃d alors B =

(Q, (>, >); (>, >); (>, >); (X ¬ , X)) et B 0 = (Q, (>, >); (>, >); (>, b); (Y ¬ , Y )) sont telles que B, B 0 ∈ B Q et B ∼ = ∃a∃b∃c∃dF et B 0∗ ∼ = ∃a∃b∃c∃dF . Nous transcrivons la conjonction et la disjonction dans le formalisme des bases litt´ erales en deux lois de composition interne respectivement ⊗ et ⊕. L’inter- pr´ etation des bases litt´ erales ayant pour colonne vert´ e- brale la conjonction, l’op´ erateur ⊗ est imm´ ediat ; par contre l’op´ erateur ⊕ est plus complexe puisqu’il in- t` egre la distributivit´ e. Nous ajoutons un op´ erateur in- dic´ e par une variable x qui est un op´ erateur pour com- biner les sat-certificats et introduire dans les fonctions bool´ eennes le nouvel argument x : cet op´ erateur est di- rectement inspir´ e de la mani` ere dont on d´ emontre que le fragment propositionnel constitu´ e uniquement sur la conjonction, la disjonction et la n´ egation est complet.

D´ efinition 3 (Op´ erateurs ⊗, ⊕ et ◦) Soit un lieur Q = q 1 x 1 . . . q n x n et B, B 0 ∈ B Q . Les op´ erateurs

⊗, ⊕ : B Q × B Q → B Q sont d´ efinis par :

⊗ : (Q, (P 1 , N 1 ); . . . ; (P n , N n ))⊗

(Q, (P 1 0 , N 1 0 ); . . . ; (P n 0 , N n 0 ))

= (Q, ((P 1 ∧P 1 0 ), (N 1 ∧N 1 0 )); . . . ; ((P n ∧P n 0 ), (N n ∧N n 0 ))

⊕ : si Q = alors (B ⊕ B 0 ) = (B∨B 0 ) sinon (Q, (P 1 , N 1 ); . . . ; (P n , N n ))⊕

(Q, (P 1 0 , N 1 0 ); . . . ; (P n 0 , N n 0 ))

= (Q, ((P 1 ∨P 1 0 ), (N 1 ∨N 1 0 ));

(P 2 ∧(P 2 0 ∨X )∧(P 2 ∨X 0 ), N 2 ∧(N 2 0 ∨X)∧(N 2 ∨X 0 )); . . . ; (P n ∧(P n 0 ∨X )∧(P n ∨X 0 ),

N n ∧(N n 0 ∨X )∧(N n ∨X 0 ))) avec X = ((¬x 1 ∨P 1 )∧(x 1 ∨N 1 )),

X 0 = ((¬x 1 ∨P 1 0 )∧(x 1 ∨N 1 0 )) et avec Q 0 = q 2 x 2 . . . q n x n

(Q 0 , (P 2 , N 2 ); . . . ; (P n , N n ))⊕

(Q 0 , (P 2 0 , N 2 0 ); . . . ; (P n 0 , N n 0 )) = (Q 0 , (P 2 , N 2 ); . . . ; (P n , N n )) L’op´ erateur ◦ x : B Q × B Q → B ∀xQ d´ efini par : (Q, (P 1 , N 1 ); . . . ; (P n , N n ))◦ x

(Q, (P 1 0 , N 1 0 ); . . . ; (P n 0 , N n 0 ))

= ( ∀xQ, (>, >);

(((¬x∨P 1 )∧(x∨P 1 0 )), ((¬x∨N 1 )∧(x∨N 1 0 ))); . . . ; (((¬x∨P n )∧(x∨P n 0 )), ((¬x∨N n )∧(x∨N n 0 )))) Dans la d´ efinition pr´ ec´ edente, lorsque n = 1,

(q 1 x 1 , (P 1 , N 1 )) ⊕ (q 1 x 1 , (P 1 ¬ , N 1 ¬ ))

= (q 1 x 1 , ((P 1 ∨P 1 ¬ ), (N 1 ∨N 1 ¬ )))

ce qui d´ efinit le cas d’arrˆ et de l’op´ eration ⊕.

Il est important de remarquer que l’op´ erateur ◦ n’est pas commutatif.

Exemple 2 (Suite de l’exemple introductif ) Soient Q = ∀a∃b∀c∃d et les bases litt´ erales

B 1 = (Q, (⊥, >); (¬a, ¬a); (¬a, (¬a∧b));

(¬a∧(b∨c), ¬a∧¬b∧c)) et

B 2 = (Q, (>, ⊥); (a, a); (a, (a∧b));

((a∧c)), (a∧(b↔¬c))) Apr` es simplifications alg´ ebriques

(B 1 ⊕ B 2 ) = (Q, (>, >); (>, >); (>, b); (Y ¬ , Y )) Soient B 3 = (∃b∀c∃d, (>, ⊥); (>, >); (c, ¬c)) et B 4 = (∃b∀c∃d, (>, ⊥); (>, >); (>, ⊥)) alors

(B 3a B 4 ) = (Q, (>, >); (>, ⊥); (>, >);

([(a∧c)∨(¬a∧c)∨(¬a∧¬c)], (a∧¬c)))

Le th´ eor` eme suivant confirme la s´ emantique des op´ e- rateurs ⊕ et ⊗.

Th´ eor` eme 2 Soient Q un lieur et B, B 0 ∈ B Q telles que B = QF et B 0∗ = QF 0 alors (B ⊗ B 0 ) = QF avec F ≡(F ∧F 0 ) et (B ⊕ B 0 ) = QF avec F ≡(F ∨F 0 ).

Argument de la preuve : La premi` ere ´ equivalence est imm´ ediate par d´ efinition ; la seconde se d´ emontre par r´ ecurrence grˆ ace ` a la distributivit´ e. 2

Le th´ eor` eme suivant nous permettra dans la section suivante de reconstruire des certificats pour des algo- rithmes orient´ es recherche puisqu’il recombine dans le cas d’un quantificateur universel les certificats obtenus par la substitution dans la formule de la variable uni- verselle par > ou ⊥. Dans la d´ efinition du sat-certificat n’est fait mention ni du lieur, ni de gardes pour les va- riables universelles ; nous d´ efinissons donc la fonction certif icat qui extrait d’une base litt´ erale uniquement les gardes pour les variables existentielles.

Th´ eor` eme 3 Soit ∀xQF une QBF. Si certif icat(B > ) est un sat-certificat pour QF [x ← >]

et certif icat(B ) est un sat-certificat pour QF [x ← ⊥] alors certif icat(B >x B ) est un sat-certificat pour ∀xQF .

Argument de la preuve : Le th´ eor` eme se d´ emontre en remarquant que dans (B >x B ) si x est substitu´ e par > le sat-certificat de B > est retrouv´ e et que si x est substitu´ e par ⊥ le sat-certificat de B est retrouv´ e.

2

(7)

4.2 Optimalit´ e et minimalit´ e

A une QBF correspond un ensemble de bases litt´ e- rales. Dans le cas de SAT, ce qui rend plus int´ eressante la base litt´ erale construite grˆ ace ` a la forme normale disjonctive par rapport ` a celle obtenue grˆ ace ` a la forme normale conjonctive est sa plus grande efficacit´ e ` a d´ e- tecter au plus tˆ ot les valuations qui ne conduisent pas

`

a un mod` ele ; nous d´ efinissons la propri´ et´ e d’optimalit´ e pour caract´ eriser ces bases litt´ erales.

D´ efinition 4 (Optimalit´ e d’une base litt´ erale) Soit q 1 x 1 . . . q n x n F une QBF valide et une base litt´ erale B = (q 1 x 1 . . . q n x n , (P 1 , N 1 ); . . . ; (P n , N n )) telle que B ∼ = q 1 x 1 . . . q n x n F. La base litt´ erale B est optimale (pour q 1 x 1 . . . q n x n F ) si pour tout i, 1 ≤ i ≤ n, v une valuation pour les variables de x 1 . . . x i−1 .

– si v | = P i alors il existe (au moins) une s´ e- quence de fonctions de Skolem qui satisfasse la QBF q i+1 x i+1 . . . q n x n ~ v(F)[x i ← >] ;

– si v | = N i alors il existe (au moins) une s´ e- quence de fonctions de Skolem qui satisfasse la QBF q i+1 x i+1 . . . q n x n ~ v(F)[x i ← ⊥].

Cette propri´ et´ e d’optimalit´ e est en lien avec la pro- pri´ et´ e de minimalit´ e qui exprime que la matrice de la QBF ne contient que les mod` eles n´ ecessaires ` a la construction de toutes les solutions ` a la QBF.

D´ efinition 5 (Minimalit´ e d’un QBF) Une QBF est minimale si tout mod` ele de la matrice fait partie d’une s´ equence de fonctions de Skolem qui la satis- fasse.

Ce qui rend particuli` erement int´ eressante la pro- pri´ et´ e d’optimalit´ e d’une base litt´ erale est exprim´ e dans le th´ eor` eme suivant.

Th´ eor` eme 4 Soit B une base litt´ erale optimale alors B est une QBF minimale.

Argument de la preuve : Si l’interpr´ etation de la base litt´ erale n’est pas minimale alors il existe un mod` ele pour la matrice de l’interpr´ etation qui ne fait pas par- tie d’une s´ equence de fonctions de Skolem qui satisfait la formule donc n´ ecessairement il existe une s´ equence de gardes satisfaites par ce mod` ele mais au moins une de ces gardes n’aurait pas dˆ u l’ˆ etre puisque l’interpr´ e- tation de la base litt´ erale n’est pas minimale donc la base litt´ erale n’est pas optimale. 2

Dans le cas de la base litt´ erale exprimant un sat- certificat les propri´ et´ es d’optimalit´ e et de minimalit´ e sont ais´ ement obtenues.

La r´ eciproque du th´ eor` eme 4 est fausse comme le d´ emontre l’exemple suivant.

Exemple 3 La base litt´ erale suivante (∀a∃b∀c∃d, (>, >); (>, ⊥); (>, >);

((a∧b∧c)∨(¬a∧b∧c)∨(¬a∧b∧¬c), (a∧b∧¬c))) issue de l’exemple introductif est optimale et son in- terpr´ etation est bien minimale tandis que la base lit- t´ erale suivante toujours issue du mˆ eme exemple intro- ductif n’est pas optimale mais son interpr´ etation est minimale :

(∀a∃b∀c∃d, (>, >); (>, >); (>, >);

((a∧b∧c)∨(¬a∧b∧c)∨(¬a∧b∧¬c), (a∧b∧¬c))) 4.3 Mise sous forme de base litt´ erale

Il est possible, dans le cas SAT, d’obtenir ` a partir de la forme normale disjonctive une base litt´ erale qui ait les propri´ et´ es mises en exergue dans l’exemple in- troductif.

D´ efinition 6 (Fonction msf bl) Soit la fonction γ qui associe ` a un litt´ eral positif la constante ⊥ et ` a un litt´ eral n´ egatif la constante >. Soit la fonction Γ construit ` a partir d’un lieur ∃x 1 . . . ∃x n et d’une conjonction constitu´ ee de litt´ eraux sur ces variables (l 1 , . . . , l n ) une base litt´ erale ainsi :

Γ(∃x 1 . . . ∃x n , l 1 ∧ . . . ∧l n ) =

(∃x 1 . . . ∃x n , (γ(l 1 ), γ(l 1 )); . . . ; (γ(l n ), γ (l n ))) Nous ´ etendons alors cette fonction ` a une forme nor- male disjonctive grˆ ace ` a la loi interne ⊕ (1 ≤ i ≤ n, 1 ≤ j ≤ m, l ij des litt´ eraux sur les variables x i ) :

msf bl(∃x 1 . . . ∃x n , W

1≤j≤m

V

1≤i≤n l ij ) = L

1≤j≤m Γ(∃x 1 . . . ∃x n , V

1≤i≤n l ij )

Exemple 4 (Suite de l’exemple 2) Nous rappe- lons que

f nd(F ) =

(a∧b∧c∧d)∨(a∧b∧¬c∧¬d)∨(a∧¬b∧c∧d)∨

(a∧¬b∧c∧¬d)∨(¬a∧b∧c∧d)∨(¬a∧b∧¬c∧d)∨

(¬a∧¬b∧c∧d)∨(¬a∧¬b∧c∧¬d) Nous r´ ealisons le calcul en deux parties :

(Γ(Q, a∧b∧c∧d) ⊕ Γ(Q, a∧b∧¬c∧¬d))⊕

(Γ(Q, a∧¬b∧c∧d) ⊕ Γ(Q, a∧¬b∧c∧¬d)) = (Q, (⊥, >); (¬a, ¬a); (¬a, (¬a∧b));

(¬a∧(b∨c), ¬a∧¬b∧c)) et

(Γ(Q, ¬a∧b∧c∧d) ⊕ Γ(Q, ¬a∧b∧¬c∧d))⊕

(Γ(Q, ¬a∧¬b∧c∧d) ⊕ Γ(Q, ¬a∧¬b∧c∧¬d)) = (Q, (>, ⊥); (a, a);

(a, (a∧b)); ((a∧c), (a∧(b↔¬c))))

(8)

Nous reconnaissons alors les bases litt´ erales B et B 0 de l’exemple 2 donc

M

( V

k≤n

l

k

)∈f nd(F)

Γ(Q, ^

k≤n

l k ) = (B ⊕ B 0 )

et nous avons bien

∃a∃b∃c∃dF ∼ = ∃a∃b∃c∃d f nd(F )

∼ = ( L

( V

k≤n

l

k

)∈f nd(F) Γ(Q, V

k≤n l k ))

= msf bl(∃a∃b∃c∃d, f nd(F ))

Tirant parti de l’associativit´ e et de la commutati- vit´ e de l’op´ eration ⊕ (h´ erit´ ees de la disjonction par le th´ eor` eme 2) et surtout du cas particulier o` u tous les quantificateurs sont existentiels, la fonction msf bl est suffisante pour SAT.

Th´ eor` eme 5 (Correction et optimalit´ e) Soit F une formule propositionnelle sur un ensemble de variables {x 1 , . . . , x n } et la base litt´ erale B = msf bl(∃x 1 . . . ∃x n , f nd(F )) alors B ∼ = ∃x 1 . . . ∃x n F et si la formule F est satisfiable alors la base litt´ erale B est optimale pour la QBF ∃x 1 . . . ∃x n F.

La d´ emonstration de ce th´ eor` eme est triviale grˆ ace au th´ eor` eme 2.

La fonction msf bl n’est pas suffisante pour les QBF en g´ en´ eral qui demande le respect de l’ordre du lieur. Nous pr´ esentons donc un algorithme r´ ecur- sif search bl sat ayant les mˆ emes propri´ et´ es pour le cas de SAT que la fonction msf bl mais qui s’´ eten- dra plus ais´ ement dans la section prochaine aux QBF quelconques. Le cœur de cet algorithme est orient´ e re- cherche ` a la Davis, Logemann et Loveland [8].

Le th´ eor` eme suivant montre que l’algorithme search bl sat r´ ealise en fait une mise sous forme nor- male disjonctive.

Th´ eor` eme 6 (msf bl = search bl sat) Soit F une formule propositionnelle sur un ensemble de variables {x 1 , . . . , x n }.

msf bl(∃x 1 . . . ∃x n , f nd(F)) = search bl sat(∃x 1 . . . ∃x n , F ).

La d´ emonstration par induction de ce th´ eor` eme est directe.

5 Bases litt´ erales et certificats QBF pour les algorithmes orient´ es recherche

Dans cette section, nous pr´ esentons nos principaux r´ esultats sur les algorithmes orient´ es recherche pour les QBF :

Algorithme 1 search bl sat

Entr´ ee: Q : un lieur purement existentiel Entr´ ee: F : une formule propositionnelle sur Q Sortie: une base litt´ erale

si Q = ∃x alors selon F faire

cas > : retourner (∃x, (>, >)) cas ⊥ : retourner ⊥

cas x : retourner (∃x, (>, ⊥)) cas ¬x : retourner (∃x, (⊥, >)) fin selon

sinon Q = ∃xQ 0

bl + := search bl sat(Q 0 , F [x ← >]) bl := search bl sat(Q 0 , F [x ← ⊥])

si bl + = ⊥ et bl = ⊥ alors retourner ⊥ fin si si bl + = ⊥ alors

retourner (Q, (⊥, >) ; grds(bl )) fin si si bl = ⊥ alors

retourner (Q, (>, ⊥) ; grds(bl + )) fin si retourner (Q, (>, ⊥) ; grds(bl + ))⊕

(Q, (⊥, >) ; grds(bl )) fin si

– l’extension ` a tout algorithme orient´ e recherche du calcul d’un sat-certificat pour une QBF ;

– l’extension ` a tout algorithme orient´ e recherche du calcul d’une base litt´ erale dont l’interpr´ etation est

´ equivalente (au sens de la conservation des fonc- tions de Skolem) ` a la QBF.

5.1 Certificats QBF pour les algorithmes orient´ es recherche

Nous pr´ esentons l’algorithme search certif qbf qui calcule un sat-certificat pour une QBF selon un algo- rithme orient´ e recherche.

L’algorithme search certif qbf d´ etermine d’abord si le lieur est r´ eduit ` a un unique quantificateur. Dans le cas o` u il n’y a qu’un seul quantificateur, s’il est exis- tentiel quatre cas sont possibles, correspondant dans l’ordre de l’algorithme ` a : ∃x>≡∃xx, ∃x⊥≡⊥, ∃xx ∼ =

∃((¬x∨>)∧(x∨⊥)) et ∃x¬x ∼ = ((¬x∨⊥)∧(x∨>)) ; si le quantificateur est universel alors si F ≡> alors

∀xF ≡> sinon ∀xx≡∀x¬x≡∀x⊥≡⊥. Dans le cas o` u il n’y a pas qu’un seul quantificateur, ´ etant dans un algorithme orient´ e recherche, le premier est consi- d´ er´ e 3 . Si le quantificateur est existentiel alors il suf- fit qu’un des deux appels r´ ecursifs pour la substi- tution par > (resp. ⊥) ne soit pas ` a ⊥ pour re- tourner un sat-certificat (Q, (>, ⊥); grds(bl + )) (resp.

3

plus pr´ ecis´ ement n’importe quelle variable du premier bloc

de quantificateurs identiques

(9)

Algorithme 2 search certif qbf Entr´ ee: Q : le lieur d’une QBF Entr´ ee: F : la matrice d’une QBF

Sortie: un sat-certificat si la QBF est valide et ⊥ sinon

si Q = qx alors si q = ∃ alors

selon F faire

cas > : retourner (∃x, (>, ⊥)) cas ⊥ : retourner ⊥

cas x : retourner (∃x, (>, ⊥)) cas ¬x : retourner (∃x, (⊥, >)) fin selon

sinon si F≡> alors retourner (∀x, (>, >)) sinon

retourner ⊥ fin si

sinon Q = qxQ 0

bl + := search certif qbf (Q 0 , F [x ← >]) si bl + = ⊥ alors

si q = ∃ alors

bl := search certif qbf (Q 0 , F [x ← ⊥]) si bl = ⊥ alors

retourner ⊥ sinon

retourner (Q, (⊥, >) ; grds(bl )) fin si

sinon

retourner ⊥ fin si

sinon

si q = ∃ alors

retourner (Q, (>, ⊥) ; grds(bl + )) sinon

bl := search certif qbf (Q 0 , F [x ← ⊥]) si bl = ⊥ alors

retourner ⊥ sinon

retourner (bl + ◦ x bl ) fin si

fin si fin si fin si

(Q, (⊥, >); grds(bl ))) qui exprime que x doit ˆ etre n´ e- cessairement ` a vrai (resp. ` a faux). Si le quantificateur est universel alors si le r´ esultat d’un des deux appels r´ ecursifs est ⊥ c’est qu’il n’y a pas de solution et le r´ esultat retourn´ e est ⊥ sinon les fonctions de Skolem exprim´ ees dans les sat-certificats bl + et bl doivent ˆ

etre recombin´ ees pour int´ egrer le nouvel argument x par (bl + ◦ x bl ) avant que ceci soit retourn´ e comme sat-certificat.

Th´ eor` eme 7 (Correction search certif qbf ) Pour toute QBF QF , search certif qbf(Q, F ) re- tourne le sat-certificat si la QBF est valide et ⊥ sinon.

Argument de la preuve : Il est imm´ ediat que l’algo- rithme retourne une base litt´ erale diff´ erente de ⊥ si la QBF est valide et ⊥ si ce n’est pas le cas. De mˆ eme, de part l’interpr´ etation d’une base litt´ erale, le cas d’in- duction pour le quantificateur existentiel est imm´ ediat.

Pour le cas d’induction pour le quantificateur univer- sel, c’est le th´ eor` eme 3 qui est appliqu´ e. 2

Dans [1], un algorithme pour la v´ erification d’un couple (QBF, sat-certificat), sa complexit´ e (coNP- compl` ete) et sa correction sont explicit´ es.

5.2 Bases litt´ erales pour les algorithmes orient´ e re- cherche

Nous pr´ esentons l’algorithme search bl qbf qui cal- cule la base litt´ erale optimale pour des algorithmes orient´ es recherche dont l’interpr´ etation est ´ equivalente (au sens de la conservation des fonctions de Skolem)

`

a la QBF. Le calcul d’une base litt´ erale par cet al- gorithme peut ˆ etre vu comme un processus de com- pilation. Nous pr´ esentons cet algorithme comme une extension directe de l’algorithme search sat qbf .

Le th´ eor` eme suivant exprime que l’algorithme search bl qbf calcule ` a partir d’une QBF une base lit- t´ erale dont l’interpr´ etation lui est ´ equivalente au sens de la conservation des mod` eles.

Th´ eor` eme 8 (Correction de search bl qbf ) Soit QF une QBF et la base litt´ erale B = search bl qbf (Q, F ) alors B ∼ = QF .

Argument de la preuve : Soient bl + ) = Q 0 F + , bl ) = Q 0 F , (Q, (>, ⊥) ; grds(bl + )) = QF + ,(Q, (⊥, >) ; grds(bl )) = QF − et QF ⊕ = ((Q, (>, ⊥) ; grds(bl + )) ⊕ (Q, (⊥, >) ; grds(bl ))) Par hypoth` ese d’induction, (bl + ) ∼ = Q 0 F [x ← >]

et (bl ) ∼ = Q 0 F [x ← ⊥]. Par le th´ eor` eme 2, F ≡(F + ∨F ) et comme F + = (¬x∨>)∧(x∨⊥)∧F + et F = (¬x∨⊥)∧(x∨>)∧F , F [x ← >]≡F + et F [x ← ⊥]≡F . Donc Q 0 F [x ← >] ∼ = Q 0 F [x ←

>] et Q 0 F [x ← ⊥] ∼ = Q 0 F [x ← ⊥]. Donc

(10)

((Q, (>, ⊥) ; grds(bl + )) ⊕ (Q, (⊥, >) ; grds(bl ))) ∼ =

QF 2

Le th´ eor` eme suivant exprime que l’algorithme search bl qbf calcule ` a partir d’une QBF une base lit- t´ erale optimale pour la QBF.

Th´ eor` eme 9 (Optimalit´ e de search bl qbf) Soit QF une QBF et la base litt´ erale B = search bl qbf (Q, F ) alors la base litt´ erale B est optimale pour la formule QF .

Ce th´ eor` eme est imm´ ediat par construction.

Algorithme 3 search bl qbf Entr´ ee: Q : le lieur d’une QBF Entr´ ee: F : la matrice d’une QBF Sortie: une base litt´ erale

si Q = qx alors si q = ∃ alors

selon F faire

cas > : retourner (∃x, (>, >)) cas ⊥ : retourner ⊥

cas x : retourner (∃x, (>, ⊥)) cas ¬x : retourner (∃x, (⊥, >)) fin selon

sinon

si F = > alors retourner (∀x, (>, >)) sinon retourner ⊥ fin si

fin si sinon

Q = qxQ 0

bl + := search bl qbf (Q 0 , F [x ← >]) bl := search bl qbf (Q 0 , F [x ← ⊥]) si q = ∃ alors

si bl + = ⊥ et bl = ⊥ alors retourner ⊥ fin si si bl + = ⊥

alors retourner (Q, (⊥, >) ; grds(bl )) fin si si bl = ⊥

alors retourner (Q, (>, ⊥) ; grds(bl + )) fin si retourner (Q, (>, ⊥) ; grds(bl + ))⊕

(Q, (⊥, >) ; grds(bl )) sinon

si bl + = ⊥ ou bl = ⊥ alors retourner ⊥

sinon

retourner (Q, (>, ⊥) ; grds(bl + ))⊕

(Q, (⊥, >) ; grds(bl )) fin si

fin si fin si

6 R´ esultats exp´ erimentaux

Les algorithmes d´ ecrits dans les sections pr´ ec´ edentes ont ´ et´ e d´ evelopp´ es en Prolog pour s’assurer (en plus des preuves) de leur fonctionnement et sont accessibles sur notre site web. Seul l’algorithme search certif qbf a ´ et´ e int´ egr´ e dans une application d´ evelopp´ ee en C/C++. Pour nos tests, nous avons utilis´ e, pour al- gorithme orient´ e recherche ` a ´ etendre, un algorithme de propagation bool´ eenne quantifi´ ee [13] dont l’im- pl´ ementation est en C/C++ et dont nous avons ˆ ot´ e toutes les optimisations de la recherche qui modifient l’ordre des variables (nous n’avons conserv´ e que la monotonie). Les sat-certificats ont ´ et´ e impl´ ement´ es grˆ ace aux diagrammes de d´ ecision binaires [4] (BDD).

Les BDD sont utilis´ es pour repr´ esenter de fa¸ con com- pacte et explicite des fonctions bool´ eennes. La librai- rie CUDD [10] permet entre autre la manipulation de BDD et offre un large assortiment d’op´ erations sur les BDD et de m´ ethodes de r´ eordonnancement des variables. Les BDD utilis´ es sont r´ eduits et ordonn´ es (ROBDD), ainsi toutes les fonctions bool´ eennes repr´ e- sent´ ees poss` ede le mˆ eme ordre sur les variables (BDD ordonn´ es) et deux BDD repr´ esentant la mˆ eme fonction poss` ede une unique repr´ esentation canonique (BDD r´ eduits). L’algorithme ´ etendu ´ etant pour des formules non-CNF, nous avons test´ e sur la s´ erie de benchmarks au format QBF 1.0 de la comp´ etition QBFEVAL’08 4 . Malheureusement, cette s´ erie de benchmarks n’a pour alternance de quantificateurs qu’uniquement ∃∀ et le sat-certificat s’apparente alors ` a un mod` ele pour SAT.

Nous rapportons dans le tableau ci-dessous les r´ esul- tats les plus significatifs des temps en secondes pour le test de validit´ e uniquement, pour le test de vali- dit´ e plus la construction du sat-certificat ainsi que le sur-coˆ ut en pourcentage (∆%) ; pour les autres bench- marks r´ esolus, le temps de calcul est trop n´ egligeable pour que les diff´ erences soient significatives.

Benchmark recherche recherche+ ∆%

certificat

counter4 16 656.950s 691.942s 5.3%

ring4 5 206.846s 208.461s 0.8%

ring5 4 60.262s 61.774s 2.5%

ring6 4 42.108s 46.137s 9.5%

semaphore4 4 16.501s 18.522s 12.2%

Le benchmark counter4 16 est particuli` erement in- t´ eressant car il est le seul ` a ˆ etre non valide : dans ce cas les calculs li´ es ` a la construction du sat-certificat se sont r´ ev´ el´ es inutiles et le sur-coˆ ut est de 5.3%.

4

http ://www.qbflib.org/

(11)

7 Conclusion

Cette ´ etude r´ epond au soucis de mieux comprendre les certificats pour les QBF et de les int´ egrer dans les algorithmes orient´ es recherche. Nous avons d´ ecrit quelques r´ esultats pratiques simplement pour d´ emon- trer le caract` ere r´ ealisable de la d´ emarche. Nous avons pr´ esent´ e la notion de base litt´ erale pour les QBF ainsi qu’un ensemble d’op´ erations et de propri´ et´ es qui s’y rapportent ; les principales applications de cette notion sont dans le cadre des algorithmes orient´ es recherche pour les QBF :

– l’extension ` a tout algorithme orient´ e recherche du calcul d’un sat-certificat pour une QBF ;

– l’extension ` a tout algorithme orient´ e recherche du calcul d’une base litt´ erale dont l’interpr´ etation est

´

equivalente (au sens de la conservation des fonc- tions de Skolem) ` a la QBF.

Dans [1] la construction du sat-certificat se fait par une analyse a posteriori d’une trace relativement diffi- cile ` a suivre 5 tandis que notre construction se fait au court de l’ex´ ecution de l’algorithme orient´ e recherche : ceci est notre principal diff´ erence et notre principal apport pour ce qui concerne les sat-certificats. En ce qui concerne le processus de compilation sous-jacent

`

a l’algorithme search certif qbf , il serait sans doute int´ eressant de le mettre en perspective avec celui d´ e- crit pour les QBF de complexit´ e uniquement ∀∃ de [6].

Nous souhaitons aussi mettre ce travail en perspective avec celui sur la compilation des bases de connaissance propositionnelles [7] : en particulier, le langage de com- pilation des P k et N k de la d´ efinition 1 n’est pas ´ evo- qu´ e et est bien sˆ ur d’un int´ erˆ et crucial dans une ´ etude plus pouss´ ee. Enfin nous souhaitons comparer notre approche avec d’autres qui consisteraient ` a compiler directement les s´ equences de fonctions de Skolem.

Sur le plan pratique, ce travail peut naturellement ˆ etre ´ etendu par

– une exp´ erimentation plus pouss´ ee sur des QBF de niveau de complexit´ e plus ´ elev´ e,

– une int´ egration dans un algorithme orient´ e re- cherche bas´ e sur des formules CNF,

– une adaptation de la librairie CUDD pour int´ egrer le retour arri` ere inh´ erent aux algorithmes orient´ es recherche.

R´ ef´ erences

[1] M. Benedetti. Extracting Certificates from Quan- tified Boolean Formulas. In Proceedings of 9th

5

sKizzo offre des outils pour g´ en´ erer et analyser une telle trace en vue de calculer un sat-certificat dans un algorithme orient´ e recherche quelconque et non uniquement dans sKizzo

International Joint Conference on Artificial In- telligence (IJCAI05), 2005.

[2] M. Benedetti. sKizzo : a Suite to Evaluate and Certify QBFs. In Proceedings of the 20th In- ternational Conference on Automated Deduction (CADE05), 2005.

[3] L. Bordeaux. Boolean and interval propagation for quantified constraints. In First International Workshop on Quantification in Constraint Pro- gramming, 2005.

[4] Randal E. Bryant. Graph-based algorithms for boolean function manipulation. IEEE Transac- tions on Computers, 35(8) :677–691, 1986.

[5] H. K. B¨ uning, K. Subramani, and Xishun Zhao.

Boolean functions as models for quantified boo- lean formulas. Journal of Automated Reasoning, 39(1) :49–75, 2007.

[6] S. Coste-Marquis, H. Fargier, J. Lang, D. Le Berre, and P. Marquis. Representing policies for quantified boolean formulae. In Proceedings of the 10th International Conference on Prin- ciples of Knowledge Representation and Reaso- ning (KR’06), pages 286–296, 2006.

[7] A. Darwiche and P. Marquis. A knowledge com- pilation map. Journal of Artificial Intelligence Research, 17 :229–264, 2002.

[8] M. Davis, G. Logemann, and D. Loveland. A ma- chine program for theorem-proving. Communica- tion of the ACM, 5, 1962.

[9] E. Giunchiglia, M. Narizzano, and A. Tacchella.

Clause/term resolution and learning in the eva- luation of quantified boolean formulas. Journal of Artificial Intelligence Research, 26 :371–416, 2007.

[10] Fabio Somenzi. CUDD : CU decision diagram pa- ckage release 2.3.0. university of colorado at boul- der, 1998.

[11] I. St´ ephan. Algorithmes d’´ elimination de quanti- ficateurs pour le calcul des politiques des formules bool´ eennes quantifi´ ees. In Premi` eres Journ´ ees Francophones de Programmation par Contraintes, 2005.

[12] I. St´ ephan. Finding models for quantified boolean formulae. In First International Workshop on Quantification in Constraint Programming, 2005.

[13] I. St´ ephan. Boolean propagation based on literals

for quantified boolean formulae. In 17th European

Conference on Artificial Intelligence, 2006.

Références

Documents relatifs

Des travaux plus r´ ecents sur les propri´ et´ es des s-boxes d’un algorithme de chiffrement ont ´ et´ e pr´ esent´ es par Carlet dans [6]....

Le Certificat en Phytothérapie pour les Troubles Cardio-Vasculaires et Respiratoires vous garantit, en plus de la formation la plus rigoureuse et la plus actuelle, l’accès à

Cet angle explorera les avantages qu’un rapprochement avec la Nature représente pour les individus, les collectivités et la société dans son ensemble, tout en mettant l’accent

De telles méthodes enrobent les opérations booléennes sur des objets polyédriques par un pré-traitement qui consiste à approcher les objets opérandes par des polyèdres, et

L’article est organisé ainsi : en section 2, nous présentons des préliminaires sur la logique propositionnelle et les formules booléennes quantifiées ; en section 3, nous analysons

A la diff´ erence des mod` eles orient´ es-donn´ ees de la litt´ erature, les agents dans Acios ont une m´ emoire locale et sont d´ ecrits par des propri´ et´ es qu’ils

Cette propri´ et´ e de non-interf´ erence n’est pas une propri´ et´ e de chacune des traces d’ex´ ecution prise individuelle- ment mais de chacune des paires de traces en

Comme pour les algèbres amassées sans coecients, il faut se doter d'une notion de mutation permettant de générer un ensemble de générateurs pour nos algèbres amassées