Transcript Session 1

Examen INF242
Stéphane Devismes
Benjamin Wack
mai 2014
2 pages
Total : 120 points
Durée : 2h00
Documents autorisés : une feuille recto verso de notes manuscrites format A4.
Le barème est indicatif, les points correspondent au nombre de minutes nécessaires pour réaliser les exercices.
L’épreuve sera notée sur 120 points.
Le résultat d’une question peut être admis pour s’en servir dans la suite de l’énoncé. Les exercices peuvent être
traités dans l’ordre de votre choix à condition de les numéroter clairement.
Exercice 1 (Formalisation, 20 points) Dans le petit pays de Gödélie, en pleine guerre froide, les plus redoutables espions de la planète se retrouvent pour régler leurs comptes. Chaque espion a pour cible un de ses
« collègues », qu’il cherche à neutraliser par tous les moyens possibles. Certains espions ont un permis de tuer
certains autres. Enfin, certains espions ont prévu qu’il y aurait du grabuge et sont donc armés.
Dans tout cet exercice, on utilisera obligatoirement les symboles suivants (et seulement ceux-ci) :
– James et M ata sont des espions.
– C(x) désigne la cible de l’espion x.
– P (x, y) signifie que « x a le permis de tuer y ».
– A(x) signifie que « x est armé ».
– M (x, y) signifie que « x vient du même pays que y ».
1. Préciser la signature Σ associée à ces six symboles.
2. Formaliser les énoncés suivants en logique du premier ordre :
(a) James a le permis de tuer tous les espions.
(b) Aucun espion n’a le permis de tuer un espion qui vient du même pays que lui.
(c) Tout espion a le permis de tuer sa cible si et seulement celle-ci est armée.
(d) Il y a un espion qui a un permis de tuer mais qui n’est pas armé.
(e) Chaque espion a le permis de tuer Mata ou bien n’a le permis de tuer personne.
Exercice 2 (Expansion et contre-modèle, 20 points) Trouver, par la méthode des expansions, des contremodèles des formules suivantes :
1. ∃xP (x, x) ∨ ¬∃x∃yP (x, y)
2. (∀xR(x) ⇒ ∀xQ(x)) ⇒ ∀x(R(x) ⇒ Q(x))
Indication : il suffit de construire des 1 ou 2 expansions.
Exercice 3 (Unification, 15 points) Pour chacune des équations suivantes, déterminer si elle admet une
solution, et si oui déterminer un unificateur le plus général. Vous utiliserez pour cela l’algorithme du cours dont
vous détaillerez les étapes.
1. f (z, g(x, y, a)) = f (g(h(y), b, a), z)
2. g(x, y, z) = g(f (a, z), y, x)
3. g(x, x, h(b)) = g(f (y, z), f (h(z), b), y)
1
Exercice 4 (Skolémisation et Forme Clausale, exercice du poly, 20 points) Considérons les formules
suivantes :
1. A1 = ∃u∀v(P (u) ∧ (R(v) ⇒ Q(u, v))).
2. A2 = ∀u∀v(¬P (u) ∨ ¬S(v) ∨ ¬Q(u, v)).
3. A3 = ∃v(R(v) ∧ S(v)).
On montre que la liste de ces trois formules est contradictoire par résolution :
1. Mettre en forme clausale les trois formules A1 , A2 , A3 .
2. Trouver des instances contradictoires des clauses obtenues et montrer cette contradiction par résolution
propositionnelle.
3. Faire une preuve directe de ⊥ par factorisation, copie et résolution binaire.
Exercice 5 (Résolution au premier ordre, 10 points) En utilisant une preuve par factorisation, copie et
résolution binaire prouver que la fermeture universelle de l’ensemble de clauses suivant est insatisfaisable :
1. ¬P (x, y) ∨ ¬P (y, x)
2. ¬R(x, y) ∨ P (y, x)
3. ¬M (x) ∨ R(x, y)
4. M (a)
Exercice 6 (Preuve, 15 points)
1. Démontrer que pour toutes formules A, B, C la formule A ⇒ B ⇒ C est équivalente à A ∧ B ⇒ C.
2. Soit maintenant une formule de la forme An ⇒ . . . ⇒ A2 ⇒ A1 ⇒ C avec n ≥ 2.
Démontrer par récurrence sur n que cette formule est équivalente à An ∧ . . . ∧ A2 ∧ A1 ⇒ C.
Exercice 7 (Déduction Naturelle, 20 points) Prouver les formules suivantes par déduction naturelle au
premier ordre.
1. ¬∃x(P (x) ∨ Q(x)) ⇒ ∀x(¬P (x) ∧ ¬Q(x))
2. (P ⇒ ∃xQ(x)) ∧ ∀x¬Q(x) ⇒ ¬P
Notez que dans cette dernière formule, P est une variable propositionnelle qui ne dépend donc pas de x.
2
Corrigés
Exercice 1, page 1
1. Σ = {Jamesf 0 , M ataf 0 , C f 1 , P r2 , Ar1 , M r2 }
2. (a) ∀xP (James, x)
(b) ∀x∀y(M (x, y) ⇒ ¬P (x, y)) ou ¬∃x∃y(M (x, y) ∧ P (x, y))
(c) ∀x(A(C(x)) ⇔ P (x, C(x))
(d) ∃x∃y(P (x, y) ∧ ¬A(x))
(e) ∀x(P (x, M ata) ∨ ∀y¬P (x, y))
Exercice 2, page 1
1. 1-expansion : P (0, 0) ∨ ¬P (0, 0) est valide.
2-expansion : P (0, 0) + P (1, 1) + P (0, 0) + P (0, 1) + P (1, 0) + P (1, 1)
Les contre-modèles sont les interprétations où ∅ ( PI ⊆ {(0, 1), (1, 0)}.
2. 1-expansion : (R(0) ⇒ Q(0)) ⇒ (R(0) ⇒ Q(0)) est valide.
2-expansion : (R(0).R(1) ⇒ Q(0).Q(1)) ⇒ (R(0) ⇒ Q(0)).(R(1) ⇒ Q(1))
Les contre-modèles sont les interprétations où RI contient un seul élément et QI ne contient pas celui-ci.
Exercice 3, page 1
z
z
z
z
z
z
= g(h(y), b, a), g(x, y, a) = z
:= g(h(y), b, a), g(x, y, a) = g(h(y), b, a)
:= g(h(y), b, a), x = h(y), y = b, a = a
:= g(h(y), b, a), x := h(y), y = b, a = a
:= g(h(b), b, a), x := h(b), y := b, a = a
:= g(h(b), b, a), x := h(b), y := b
1.
Décomposition
Élimination de z
Décomposition
Élimination de x
Élimination de y
Suppression : le MGU est
2.
Décomposition
Élimination de x
Échec d’élimination de z
3.
Décomposition
Orientation puis élimination de y
Élimination de x
Deux décompositions
Élimination de z
Suppression : le MGU est
x = f (a, z), y = y, z = x
x := f (a, z), y = y, z = f (a, z)
x = f (y, z), x = f (h(z), b), h(b) = y
x = f (h(b), z), x = f (h(z), b), y := h(b)
x := f (h(b), z), f (h(b), z) = f (h(z), b), y := h(b)
x := f (h(b), z), b = z, z = b, y := h(b)
x := f (h(b), b), b = b, z := b, y := h(b)
x := f (h(b), b), z := b, y := h(b)
Exercice 4, page 2
Transformation en clauses : Nous obtenons que
– A1 donne les deux clauses P (a) et ¬R(v) ∨ Q(a, v).
– A2 donne la clause ¬P (u) ∨ ¬S(v) ∨ ¬Q(u, v).
– A3 donne les deux clauses R(b) et S(b).
Instanciation : Nous obtenons les instances contradictoires suivantes :
– P (a).
– ¬R(b) ∨ Q(a, b).
– ¬P (a) ∨ ¬S(b) ∨ ¬Q(a, b).
– R(b).
– S(b).
Nous montrons cette contradiction par résolution propositionnelle :
3
numéro
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
conclusion
P (a)
¬R(b) ∨ Q(a, b)
¬P (a) ∨ ¬S(b) ∨ ¬Q(a, b)
R(b)
S(b)
¬S(b) ∨ ¬Q(a, b)
¬Q(a, b)
¬R(b)
⊥
justification
Hyp
Hyp
Hyp
Hyp
Hyp
Résolvant 1,3
Résolvant 5,6
Résolvant 2,7
Résolvant 4,8
Preuve par résolution :
numéro
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
conclusion
P (a)
¬R(v) ∨ Q(a, v)
¬P (u) ∨ ¬S(v) ∨ ¬Q(u, v)
R(b)
S(b)
¬S(v) ∨ ¬Q(a, v)
¬Q(a, b)
¬R(b)
⊥
justification
Hyp
Hyp
Hyp
Hyp
Hyp
RB 1, 3
RB 5, 6
RB 2, 7
RB 4, 8
unificateur
u := a
v := b
v := b
Exercice 5, page 2
5. R(a, y) RB 3,4 < x := a >
6. R(a, z) Copie 5 < y := z >
7. P (z, a) RB 2,6 < x := a, y := z >
8. ¬P (x, x) Fact 1 < y := x >
9. ⊥ RB 7,8 < z := a, x := a > (attention à l’unificateur !)
Exercice 6, page 2
1. A ⇒ B ⇒ C ≡ ¬A ∨ ¬B ∨ C ≡ ¬(A ∧ B) ∨ C ≡ A ∧ B ⇒ C
2. Cas n = 2 : c’est l’équivalence démontrée à la question précédente.
Induction : Supposons la propriété vérifiée au rang n.
Par hypothèse de récurrence An−1 ⇒ . . . ⇒ A1 ⇒ C ≡ An−1 ∧ . . . ∧ A1 ⇒ C.
Alors
A = An ⇒ (An−1 ⇒ . . . ⇒ A1 ⇒ C)
≡ An ⇒ (An−1 ∧ . . . ∧ A1 ) ⇒ C
≡ (An ∧ (An−1 ∧ . . . ∧ A1 )) ⇒ C
≡ (An ∧ An−1 ∧ . . . ∧ A1 ) ⇒ C
Pour l’avant-dernière étape on utilise la première question.
4
Exercice 7, page 2
1.
2.
contexte
1
1,2
1,2
1,2
1,2
1
1,7
1,7
1,7
1,7
1
1
1
numéro
1
2
3
4
5
6
7
8
9
10
11
12
13
14
preuve
Supp. ¬∃x(P (x) ∨ Q(x))
Supp. P (x)
P (x) ∨ Q(x)
∃x(P (x) ∨ Q(x))
⊥
Donc ¬P (x)
Supp. Q(x)
P (x) ∨ Q(x)
∃x(P (x) ∨ Q(x))
⊥
Donc ¬Q(x)
¬P (x) ∧ ¬Q(x)
∀x(¬P (x) ∧ ¬Q(x))
Donc ¬∃x(P (x) ∨ Q(x)) ⇒ ∀x(¬P (x) ∧ ¬Q(x))
contexte
1
1
1
1,4
1,4
1,4
1,4
1
numéro
1
2
3
4
5
6
7
8
9
preuve
Supp. (P ⇒ ∃xQ(x)) ∧ ∀x¬Q(x)
P ⇒ ∃xQ(x)
∀x¬Q(x)
Supp. P
∃xQ(x)
¬Q(x)
⊥
Donc ¬P
Donc (P ⇒ ∃xQ(x)) ∧ ∀x¬Q(x) ⇒ ¬P
5
justification
∨I1 2
∃I 3 x
⇒ E 1, 4
⇒ I 2, 5
∨I2 7
∃I 8 x
⇒ E 1, 9
⇒ I 7, 10
∧I 6, 11
∀I 12
⇒ I 1, 13
justification
∧E1 1
∧E2 1
⇒ E 2, 4
∀E 3 x
∃E 5, 6
⇒ I 4, 7
⇒ I 1, 9