Adloun

2-\textsc{sat} : construire le graphe et conclure

Exercice · niveau 2 · informatique (MP2I/MPI), chapitre 24 — Composantes fortement connexes et couplages

Énoncé

Reprendre la formule du chapitre, . Construire le graphe des implications, calculer ses composantes fortement connexes, conclure, et donner un modèle.

Corrigé

Le graphe a six sommets — un par littéral — et deux arcs par clause :

ClausePremier arcSecond arc

Les composantes, calculées par Kosaraju (numérotation dans l'ordre topologique du quotient, exercice « Dérouler Kosaraju ») :


[non z] = C0   [non y] = C1   [non x] = C2   [x] = C3   [y] = C4   [z] = C5

Six composantes, toutes réduites à un littéral : aucune variable n'a ses deux littéraux ensemble. La formule est satisfiable.

Le modèle, par la règle du chapitre — affecter vrai au littéral dont la composante vient après dans l'ordre topologique :

Vérification : . Le chapitre annonçait « convient, quel que soit » : l'algorithme rend l'un de ces modèles.

Pourquoi la règle « la composante d'après » et non l'inverse. Un arc interdit la combinaison , . Si l'on affecte vrai à ce qui vient après dans l'ordre topologique, alors signifie que la composante de est « tardive », donc celle de , qui vient après elle, l'est aussi : . L'implication est respectée par construction. L'ordre topologique fait tout le travail.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.