INFO-F-302, Cours d’Informatique Fondamentale Logique pour l’Informatique
La Logique Propositionnelle
Le Probl`eme SAT
176 Graphe d’Implication
Autre exemple pour
S0={x1_x2,¬x2_x3,¬x3_x1,¬x1_x4,¬x4_¬x1,x2_x4}
Que remarquez-vous ? est-ce satisfaisable ? Il existe un chemin de x1`a
¬x1et de ¬x1`a x1, donc S|=x1$¬x1, donc S|=?, donc Sest
insatisfaisable.
INFO-F-302, Cours d’Informatique Fondamentale Logique pour l’Informatique
La Logique Propositionnelle
Le Probl`eme SAT
177 Graphe d’Implication
Donc si on peut aller d’une variable `a sa n´egation, et revenir de sa
n´egation `a elle-mˆeme, alors Sn’est pas satisfaisable. En fait c’est une
condition n´ecessaire et suffisante :
Lemme
Sest insatisfaisable ssi il existe une variable xtelle que dans le graphe
d’implication de Sil existe un chemin de x`a ¬xet de ¬x`a x.
Bas´e sur ce r´esultat, on peut d´efinir un algorithme pour tester la
satisfaisabilit´e de S, et construire une valuation si Sest satisfaisable.
INFO-F-302, Cours d’Informatique Fondamentale Logique pour l’Informatique
La Logique Propositionnelle
Le Probl`eme SAT
178 Algorithme pour 2-SAT
Rappels
IUne composante fortement connexe (CFC) est en ensemble maximal
de sommets tel qu’il existe un chemin entre toute paire de sommets.
ILes CFC d’un graphe sont calculables en temps lin´eaire par un
parcours en profondeur.
ISoient C1,C2deux CFC di↵´erentes, on d´efinit la relation C1C2s’il
existe une arˆete d’un sommet de C1vers un sommet de C2.La
relation est acyclique. Pourquoi ?
INFO-F-302, Cours d’Informatique Fondamentale Logique pour l’Informatique
La Logique Propositionnelle
Le Probl`eme SAT
179 Algorithme pour 2-SAT
Remarques
Isi C={`1,...,`n}est une CFC, alors C={`1,...,`n}est aussi
une CFC, pourquoi ?
Isi Cest maximale (i.e. il n’existe pas C0telle que CC0), alors C
est minimale (i.e. il n’existe pas C00 telle que C00 C), pourquoi ?
IPour satisfaire S, il est n´ecessaire que pour chaque CFC C, tous les
litt´eraux de Caient la mˆeme valeur.