Session 1

Transcription

Session 1
Examen INF242
Stéphane Devismes
Benjamin Wack
16 mai 2013
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 en logique propositionnelle, 15 points) Il existe en Ecosse un club très fermé
qui obéit aux règles suivantes :
1. tout membre non écossais porte des chaussettes rouges,
2. les membres mariés ne sortent pas le dimanche,
3. un membre sort le dimanche si et seulement si il est écossais,
4. tout membre qui porte un kilt est écossais et est marié,
5. tout membre qui porte des chaussettes rouges porte un kilt,
6. tout membre écossais porte un kilt.
Les règles de ce club concernent donc un membre éventuel du club, appelons le x.
1. On vous demande d’abord de modéliser cet énoncé en logique propositionnelle, c’est à dire de transformer
chaque règle en une formule qui utilise les atomes suivants (6 points) :
– e : x est un membre écossais,
– k : x porte un kilt,
– m : x est marié,
– c : x porte des chaussettes rouges,
– d : x sort le dimanche.
2. Montrer par transformation en somme de monômes que les règles de ce club sont si contraignantes
qu’il ne peut accepter aucun membre. Vous détaillerez votre calcul. (9 points)
Exercice 2 (Expansion et contre-modèle, exercice du poly, 20 points) Trouver, par la méthode des expansions, des contre-modèles des formules suivantes :
1. ∀x(P (x) ⇒ Q(x)) ⇒ ∃xQ(x). (10 points)
2. ∀x∃yR(x, y) ⇒ ∃xR(x, x). (10 points)
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 (g(x, a), h(z), y) = f (g(a, y), x, a) (5 points)
2. f (g(x, y), h(z), a) = f (g(h(b), a), x, a) (5 points)
3. f (x, z, y) = f (h(y), h(x), h(x)) (5 points)
1
Exercice 4 (Skolémisation et Forme Clausale, 20 points) Soit A la formule suivante :
¬(¬∀xP (x) ∨ ¬∀xQ(x) ⇒ ¬(∀xP (x) ∧ ∀xQ(x)))
1. Skolémiser A puis donner sa forme clausale. (10 points)
2. Trouver des instances contradictoires des clauses obtenues et montrer par résolution propositionnelle que
ces instances sont contradictoires. (5 points)
3. Donner une preuve directe de cette contradiction par factorisation, copie et résolution binaire. Il est possible
que seule la dernière règle soit utilisée. (5 points)
Exercice 5 (Résolution au premier ordre, 15 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. ¬E(x) ∨ Q(f (x))
2. ¬Q(x) ∨ E(f (x))
3. f (x) > x
4. ¬(x > y) ∨ ¬(y > z) ∨ x > z
5. Q(a)
6. ¬(y > a) ∨ ¬Q(y)
Exercice 6 (Preuve, 15 points) Soient x1 . . . xn , n variables différentes.
– ⊕ est l’opérateur « ou exclusif », c’est-à-dire, x ⊕ y = x ⇔ y. Rappeler
la table de vérité de ⊕.
P
– Prouver par récurrence que pour tout état e, [x1 ⊕ . . . ⊕ xn ]e = ( i∈{1..n} [xi ]e ) mod 2, c’est-à-dire, [x1 ⊕
. . . ⊕ xn ]e donne la parité du nombre de variables affectées à 1 dans e.
Exercice 7 (Déduction Naturelle, 20 points) Prouver les formules suivantes par déduction naturelle au
premier ordre.
1. ∃x(Q(x) ⇒ P (x)) ∧ ∀xQ(x) ⇒ ∃xP (x). (10 points)
2. ∀x ∀y(R(x, y) ⇒ ¬R(y, x)) ⇒ ∀x¬R(x, x) (10 points)
2
Corrigés
Exercice 1, page 1
1. tout membre non écossais porte des chaussettes rouges : ē ⇒ c
2. les membres mariés ne sortent pas le dimanche : m ⇒ d¯
3. un membre sort le dimanche si et seulement si il est écossais : d ⇔ e
4. tout membre qui porte un kilt est écossais et est marié : k ⇒ e.m
5. tout membre qui porte des chaussettes rouges porte un kilt : c ⇒ k
6. tout membre écossais porte un kilt : e ⇒ k
dnf (-e => c) . (m => -d) . (d = e) . (k => e.m) . (c => k). (e => k);
0
Exercice 2, page 1
1. ∀x(P (x) ⇒ Q(x)) ⇒ ∃xQ(x), construisons la 1-expansion de cette formule :
(P (0) ⇒ Q(0)) ⇒ Q(0).
Cette expansion vaut 0 pour l’assignation P (0) = 0, Q(0) = 0, ce qui donne le contre-modèle I de domaine
{0} avec PI = {}, QI = {}.
2. ∀x∃yR(x, y) ⇒ ∃xR(x, x), construisons la 2-expansion de cette formule :
(R(0, 0) + R(0, 1)).(R(1, 0) + R(1, 1)) ⇒ R(0, 0) + R(1, 1)
Cette expansion vaut 0 pour l’assignation R(0, 0) = 0, R(0, 1) = 1, R(1, 0) = 1, R(1, 1) = 0, ce qui donne
le contre-modèle I de domaine {0, 1} avec RI = {(0, 1), (1, 0)}.
Exercice 3, page 1
1. Après deux décompositions on obtient (entre autres) x = a, h(z) = x, d’où par élimination x := a, h(z) = a
qui n’a pas de solution (échec de décomposition).
2. Deux décompositions donnent x = h(b), y = a, h(z) = x, a = a, d’où il vient facilement que x := h(b), y :=
a, z := b est le MGU.
3. Après une décomposition x = h(y), z = h(x), y = h(x), d’où par élimination x := h(y), z = h(h(y)), y =
h(h(y)) : échec de l’élimination de y.
Exercice 4, page 2
¬(¬∀xP (x) ∨ ¬∀xQ(x) ⇒ ¬(∀xP (x) ∧ ∀xQ(x)))
(¬∀xP (x) ∨ ¬∀xQ(x)) ∧ ∀xP (x) ∧ ∀xQ(x))
(∃x¬P (x) ∨ ∃x¬Q(x)) ∧ ∀xP (x) ∧ ∀xQ(x))
(∃x¬P (x) ∨ ∃y¬Q(y)) ∧ ∀uP (u) ∧ ∀vQ(v))
(¬P (a) ∨ ¬Q(b)) ∧ ∀uP (u) ∧ ∀vQ(v))
(¬P (a) ∨ ¬Q(b)) ∧ P (u) ∧ Q(v))
D’où, la forme clausale :
1. ¬P (a) ∨ ¬Q(b)
2. P (u)
3
3. Q(v)
Preuve par résolution propositionnelle :
1. ¬P (a) ∨ ¬Q(b), clause 1
2. P (a), instance de 2 (u := a)
3. ¬Q(b), RB 1,2
4. Q(b), instance de 3 (v := b)
5. ⊥, RB 3,4
Preuve relevée :
1. ¬P (a) ∨ ¬Q(b), clause 1
2. P (u), clause 2
3. ¬Q(b), RB 1,2, (u := a)
4. Q(v), clause 3
5. ⊥, RB 3,4 (v := b)
Exercice 5, page 2
La résolution binaire suffit :
7. E(f (a)) (RB 5,2, x := a)
8. Q(f (f (a))) (RB 7,1, x := f (a))
9. ¬(f (f (a)) > a) (RB 8,6, y := f (f (a)))
10. ¬(f (f (a)) > y) ∨ ¬(y > a) (RB 9,4, x := f (f (a)), z := a)
11. ¬(f (a) > a) (RB 10,3, x := f (a), y := f (a))
12. ⊥ (RB 11,3, x := a)
Exercice 6, page 2
x
0
0
1
1
x⊕y
0
1
1
0
y
0
1
0
1
Cas de base : Si n = 1, on a une seule variable et la propriété est trivialement vérifiée.
P
Hypothèse de récurrence : Supposons que pour n ≥ 1, on a [x1 ⊕ . . . ⊕ xn ]e = ( i∈{1..n} [xi ]e ) mod 2.
Pas de récurrence Considérons
n + 1 variables différentes : x1 . . . xn+1 . Par hypothèse de récurrence, on a
P
[x1 ⊕ . . . ⊕ xn ]e = ( i∈{1..n} [xi ]e ) mod 2. On a 4 cas a étudié :
P
P
P
1. ( i∈{1..n} [xi ]e ) mod 2 = 0 et [xn+1 ]e = 0. Dans ce cas, ( i∈{1..n+1} [xi ]e ) mod 2 = ( i∈{1..n} [xi ]e ) mod
P
2 = 0. Or, par hypothèse de récurrence, [x1 ⊕ . . . ⊕ xn ]e = ( i∈{1..n} [xi ]e ) mod 2 = 0. Ainsi
[x1 ⊕ . . . ⊕ xn+1 ]e = 0 ⊕ 0 = 0.
P
P
P
2. ( i∈{1..n} [xi ]e ) mod 2 = 0 et [xn+1 ]e = 1. Dans ce cas, ( i∈{1..n+1} [xi ]e ) mod 2 = (( i∈{1..n} [xi ]e ) mod
2P
+ [xn+1 ]e ) mod 2 = (0 + 1) mod 2 = 1. Or, par hypothèse de récurrence, [x1 ⊕ . . . ⊕ xn ]e =
( i∈{1..n} [xi ]e ) mod 2 = 0. Ainsi [x1 ⊕ . . . ⊕ xn+1 ]e = 0 ⊕ 1 = 1.
P
P
P
3. ( i∈{1..n} [xi ]e ) mod 2 = 1 et [xn+1 ]e = 0. Dans ce cas, ( i∈{1..n+1} [xi ]e ) mod 2 = (( i∈{1..n} [xi ]e ) mod
2P
+ [xn+1 ]e ) mod 2 = (1 + 0) mod 2 = 1. Or, par hypothèse de récurrence, [x1 ⊕ . . . ⊕ xn ]e =
( i∈{1..n} [xi ]e ) mod 2 = 1. Ainsi [x1 ⊕ . . . ⊕ xn+1 ]e = 1 ⊕ 0 = 1.
P
P
P
4. ( i∈{1..n} [xi ]e ) mod 2 = 1 et [xn+1 ]e = 1. Dans ce cas, ( i∈{1..n+1} [xi ]e ) mod 2 = (( i∈{1..n} [xi ]e ) mod
2P
+ [xn+1 ]e ) mod 2 = (1 + 1) mod 2 = 0. Or, par hypothèse de récurrence, [x1 ⊕ . . . ⊕ xn ]e =
( i∈{1..n} [xi ]e ) mod 2 = 1. Ainsi [x1 ⊕ . . . ⊕ xn+1 ]e = 1 ⊕ 1 = 0.
4
Exercice 7, page 2
1.
2.
contexte
1
1
1
1,4
1,4
1,4
1,4
1
1
contexte
1
1
1
1,2
1,2
1,2
1
1
numéro
1
2
3
4
5
6
7
8
9
10
numéro
1
2
3
4
5
6
7
8
9
preuve
Supposons ∃x(Q(x) ⇒ P (x)) ∧ ∀xQ(x)
∃x(Q(x) ⇒ P (x))
∀xQ(x)
Supposons Q(x) ⇒ P (x)
Q(x)
P (x)
∃xP (x)
Donc (Q(x) ⇒ P (x)) ⇒ ∃xP (x)
∃xP (x)
Donc ∃x(Q(x) ⇒ P (x)) ∧ ∀xQ(x) ⇒ ∃xP (x)
preuve
Supposons ∀x ∀y(R(x, y) ⇒ ¬R(y, x))
∀y(R(x, y) ⇒ ¬R(y, x))
R(x, x) ⇒ ¬R(x, x)
Supposons R(x, x)
¬R(x, x)
⊥
Donc ¬R(x, x)
∀x¬R(x, x)
Donc ∀x ∀y(R(x, y) ⇒ ¬R(y, x)) ⇒ ∀x¬R(x, x)
5
justification
∧E1 1
∧E2 1
∀E 3, x
⇒E 4,5
∃I 6, x
⇒I 4,7
∃E 2,8
⇒I 1,9
justification
∀E 1, x
∀E 2, x
⇒E 3,4
⇒E 5,4
⇒I 4,6
∀I 7
⇒I 1,8

Documents pareils