Langages de Sp´ecification Partie 1: Sp´ecifications en logique propositionnelle
Solveurs SAT
Algorithme DPLL
Simplification sous une interpr´etation partielle
Etant donn´ee une clause Cet une interpr´etation partielle x/bo`u
b2{0,1}, la formule C[x/b]est obtenue selon la r`egle suivante :
ISi Cne contient pas xou ¬x,alorsC[x/b]=C
ISinon si Cne contient que xou que ¬x, alors on consid`ere les cas
suivants :
1. C=xet b=1,alorsC[x/b]=>
2. C=xet b=0,alorsC[x/b]=?
3. C=¬xet b=0,alorsC[x/b]=>
4. C=¬xet b=1,alorsC[x/b]=?
Isinon si Ccontient xet b=1ou Ccontient ¬xet b=0,alors
C[x/b]=>
Isinon on retire de Cles occurences de xou de ¬x
Si =Vn
i=1 Ciest une conjonction de clauses, alors [x/b]=?si il existe
une clause Citelle que Ci[x/b]=?, sinon [x/b]=Vi:Ci[x/b]6=>Ci[x/b]
(on simplifie toutes les clauses et on retire celle qui deviennent ´egales `a
>). Si toutes les clauses se simplifient en >,alors[x/b]=>.