logique informatique, Exercises of Informatics Engineering

exercice sur la logique informatique

Typology: Exercises

2019/2020

Uploaded on 11/04/2020

sdouga-hend
sdouga-hend 🇹🇳

1 document

1 / 6

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Logique : ENSIIE 1A - contrˆole final
-CORRIG´
E
Mardi 11 mai 2010 - Sans documents - Sans calculatrice ni ordinateur
Dur´ee : 1h30
Les exercices sont ind´ependants.
Exercice 1 (Logique du premier ordre et syntaxe)
exo sur 4 points
Question 1
1 point Quand dit-on qu’une variable est libre dans une formule ?
Une variable est dite libre dans une formule si elle poss`ede au moins une occurrence libre.
Dans la suite de l’exercice, nous consid´erons le langage du premier ordre L={R, S, f, a}o`u R
et Sesignent deux symboles de relation respectivement unaire et binaire, fesigne un symbole
de fonction unaire et aesigne un symbole de constante.
Soit Fla formule suivante :
(xyR(f(x), f (y))) ((zR(x, z)) S(x))
Question 2
Les variables xet ysont-elles libres dans la formule F? Justifiez votre eponse en quelques
mots.
1 point
xest libre dans la formule car il existe deux occurrences libres (les deuxi`eme et troisi`eme oc-
currences quand on lit la formule de gauche `a droite. En revanche yest une variable li´ee car
toutes ses occurrences (une seule) sont li´ees.
Question 3
Transformez la formule Fpr´ec´edente de mani`ere `a ce que variables li´ees et variables libres
eventuelles) ne portent pas le eme nom.
1 point
On renomme les variables li´ees qui ont aussi une occurrence libre. Soit ici le xquantifi´e uni-
versellement. On ne renomme pas les variables libres, on changerait le sens de la formule.
(uyR(f(u), f (y))) ((zR(x, z)) S(x))
Question 4
Donnez la formule F[x:= t] (c’est-`a-dire la substitution de t`a la variable xdans F) quand
test le terme f(z).
1 point
(xyR(f(x), f (y))) ((vR(f(z), v)) S(f(z)))
Cette substitution ne concerne que l’occurrence libre de x. Pour ´eviter la capture de la variable
z(dans le terme t=f(z)) par le quantificateur, on commence par renommer dans la formule F
la variable li´ee zen vpuis on fait le remplacement. D’o`u la formule ci-dessus.
Exercice 2 (Unification)
exo sur 3 points
Soit fun symbole de fonction d’arit´e 3. Soit aune constante. x,yet zsont des variables.
Question 5
1
pf3
pf4
pf5

Partial preview of the text

Download logique informatique and more Exercises Informatics Engineering in PDF only on Docsity!

Logique : ENSIIE 1A - contrˆole final

- CORRIG´E

Mardi 11 mai 2010 - Sans documents - Sans calculatrice ni ordinateur

Dur´ee : 1h

Les exercices sont ind´ependants.

Exercice 1 (Logique du premier ordre et syntaxe) exo sur 4 points Question 1 1 point Quand dit-on qu’une variable est libre dans une formule? Une variable est dite libre dans une formule si elle poss`ede au moins une occurrence libre.

Dans la suite de l’exercice, nous consid´erons le langage du premier ordre L = {R, S, f, a} o`u R et S d´esignent deux symboles de relation respectivement unaire et binaire, f d´esigne un symbole de fonction unaire et a d´esigne un symbole de constante. Soit F la formule suivante :

(∀x∃yR(f (x), f (y))) ∧ ((∀zR(x, z)) ⇒ S(x))

Question 2 Les variables x et y sont-elles libres dans la formule F? Justifiez votre r´eponse en quelques mots. 1 point x est libre dans la formule car il existe deux occurrences libres (les deuxieme et troisieme oc- currences quand on lit la formule de gauche `a droite. En revanche y est une variable li´ee car toutes ses occurrences (une seule) sont li´ees.

Question 3 Transformez la formule F pr´ec´edente de manierea ce que variables li´ees et variables libres (´eventuelles) ne portent pas le mˆeme nom. 1 point On renomme les variables li´ees qui ont aussi une occurrence libre. Soit ici le x quantifi´e uni- versellement. On ne renomme pas les variables libres, on changerait le sens de la formule.

(∀u∃yR(f (u), f (y))) ∧ ((∀zR(x, z)) ⇒ S(x))

Question 4 Donnez la formule F [x := t] (c’est-a-dire la substitution de ta la variable x dans F ) quand t est le terme f (z). 1 point (∀x∃yR(f (x), f (y))) ∧ ((∀vR(f (z), v)) ⇒ S(f (z)))

Cette substitution ne concerne que l’occurrence libre de x. Pour ´eviter la capture de la variable z (dans le terme t = f (z)) par le quantificateur, on commence par renommer dans la formule F la variable li´ee z en v puis on fait le remplacement. D’o`u la formule ci-dessus.

Exercice 2 (Unification) exo sur 3 points Soit f un symbole de fonction d’arit´e 3. Soit a une constante. x, y et z sont des variables. Question 5

Les termes f (x, x, y) et f (f (y, y, z), f (y, y, z), a) sont-ils unifiables? Si oui donnez un mgu (unificateur le plus g´en´eral), si non, dites pourquoi. 1,5 point

On applique l’algorithme d’unification (a base de regles) : {f (x, x, y) ≈ f (f (y, y, z), f (y, y, z), a)} → (decomposition) {x ≈ f (y, y, z), x ≈ f (y, y, z), y ≈ a} → (elimination de y) {x ≈ f (a, a, z), x ≈ f (a, a, z), y ≈ a} → (elimination de x) {x ≈ f (a, a, z), f (a, a, z) ≈ f (a, a, z), y ≈ a} → (ef f acement) {x ≈ f (a, a, z), y ≈ a} Les deux termes sont donc unifiables. Le mgu est l’ensemble obtenu `a la fin, soit {x ≈ f (a, a, z), y ≈ a}.

Question 6 Les termes f (x, x, y) et f (f (y, y, z), f (y, x, z), a) sont-ils unifiables? Si oui donnez un mgu (unificateur le plus g´en´eral), si non, dites pourquoi. 1,5 point

On applique l’algorithme d’unification (a base de regles) : {f (x, x, y) ≈ f (f (y, y, z), f (y, x, z), a)} → (decomposition) {x ≈ f (y, y, z), x ≈ f (y, x, z), y ≈ a} → (occurrence − x ∈ V ars(f (y, x, z))) echec Les deux termes ne sont donc pas unifiables.

Exercice 3 (Mod´elisation et m´ethode de r´esolution) exercice sur 6,5 points Soit l’´enonc´e suivant :

  1. Les personnes qui ont la grippe A doivent prendre du Tamiflu.
  2. Les personnes qui ont de la fi`evre et qui toussent ont la grippe A.
  3. Ceux qui ont une temp´erature sup´erieure a 38◦^ ont de la fievre.
  4. Pierre tousse et a une temp´erature sup´erieure `a 38◦.
  5. Pierre doit prendre du Tamiflu.

Question 7 Mod´elisez en logique du premier ordre l’´enonc´e ci-dessus en utilisant les pr´edicats suivants :

  • grippe(x) : x a la grippe A.
  • prendre(x, y) : x doit prendre y.
  • f ievre(x) : x a de la fi`evre.
  • tousse(x) : x tousse.
  • temp(x, t) : x a la temp´erature t.
  • sup(x, y) : x est sup´erieur `a y.
  • C9 = Res(C8; C2) = ¬f ievre(P ierre) ∨ ¬tousse(P ierre)
  • C10 = Res(C9; C3) = ¬tousse(P ierre) ∨ ¬temp(P ierre; t) ∨ ¬sup(t, 38)
  • C11 = Res(C10; C4) = ¬temp(P ierre, t) ∨ ¬sup(t, 38)
  • C12 = Res(C11; C5 = ¬sup(a, 38)
  • C13 = Res(C12; C6) = clause vide

Exercice 4 (D´eduction naturelle) 3 points : pas d’a peu pres! Question 9 D´emontrer en d´eduction naturelle (en utilisant uniquement les regles rappel´ees en annexe du sujet) le s´equent ((C ⇒ A) ∨ (C ⇒ B)) ⇒ (C ⇒ (A ∨ B)

Posons Γ = {(C ⇒ A) ∨ (C ⇒ B), C} et Γ 1 = {(C ⇒ A) ∨ (C ⇒ B), C, C ⇒ A} et Γ 2 = {(C ⇒ A) ∨ (C ⇒ B), C, C ⇒ B}.

ax Γ ` (C ⇒ A) ∨ (C ⇒ B)

ax Γ 1 ` C ⇒ A

ax Γ 1 C ⇒e Γ 1 A ∨ig Γ 1 ` A ∨ B

ax Γ 2 ` C ⇒ B

ax Γ 2 C ⇒e Γ 2 B ∨id Γ 2 A ∨ B ∨e Γ A ∨ B ⇒i ⇒^ (C^ ⇒^ A)^ ∨^ (C^ ⇒^ B)^ ^ C^ ⇒^ (A^ ∨^ B) i ((C ⇒ A) ∨ (C ⇒ B)) ⇒ (C ⇒ (A ∨ B))

Au choix : question 10 ou 11

exo sur 3,5 points Exercice 5 (Logique du premier ordre et s´emantique) On consid`ere le langage du premier ordre compos´e d’un symbole de fonction f d’arit´e 2, du symbole binaire de l’´egalit´e = (on l’utilisera avec la notation infixe habituelle) et d’un symbole de relation R d’arit´e 2. Les variables sont not´ees x, y, z.... Soit l’interpr´etation suivante :

  • le domaine est Z (ensemble des entiers relatifs),
  • l’interpr´etation de f , soit fI , est l’addition sur Z,
  • l’interpr´etation de R, soit RI , est la relation <,
  • l’interpr´etation de =, soit =I , est l’´egalit´e sur Z.

Question 10 Quelle est la valeur de v´erit´e de chacune des 3 formules ci-dessous dans cette interpr´etation ? Vous justifierez votr´e r´eponse en quelques lignes. On rappelle que la valeur de v´erit´e d’une formule peut d´ependre d’une valuation.

  • F 1 : ∀x∃z(f (z, y) = x)
  • F 2 : ∃x(R(x, y) ∧ R(y, f (x, x))))
  • F 3 : ∀x(R(x, y) ⇒ R(f (x, x), y))
  • La valeur de v´erit´e de la formule F 1 d´epend a priori de la valeur associ´ee `a la variable libre y. Soit a la valeur de y (c’est un entier). La valeur de v´erit´e de F 1 sera 1 si pour tout entier n il existe un entier m tel que m+a=n. Pour n et a donn´es, il suffit de prendre m=n-a. Donc la valeur de v´erit´e de F 1 est 1, quelle que soit la valeur de y.
  • De mˆeme, ici, y est une variable libre. Soit a sa valeur. On se pose la question de savoir si il existe un entier n tel n <a et a < 2n. La valeur de v´erit´e de F 2 est 1 si a>2, 0 sinon.
  • De mˆeme, ici, y est une variable libre. Soit a sa valeur. On se pose la question de savoir si pour tout entier n tel n <a alors 2n < a. Ceci est vrai si a < 2. Donc la valeur de v´erit´e de F 3 est 1 si a<2, 0 sinon.

Exercice 6 (D´eduction naturelle) Question 11 Soient a un pr´edicat binaire et m une constante. Soit F 1 la formule ∀x∀y(a(x, m) ⇒ a(y, x) ⇒ a(y, m)) Soit F 2 la formule ∀x∀y(a(x, y) ⇒ a(y, x)) Soit F 3 la formule ∃x(a(x, m)) On note ∆ l’ensemble {F 1 , F 2 , F 3 } D´emontrer en d´eduction naturelle (en utilisant uniquement les regles rappel´ees en annexe du sujet) le s´equent ∆ a(m, m)

Remarque : si m est interpr´et´e comme moi-mˆeme, et si a(x, y) est interpr´et´e comme x est l’ami de y, alors la question consiste `a d´emontrer que si les amis de mes amis sont mes amis, que l’amiti´e est r´eciproque et que j’ai un ami alors je suis mon propre ami! On pose ∆ 1 = ∆, a(x 0 , m).

ax ∆ ` ∃x.a(x, m)

A 1

ax ∆ 1 ∀x∀y(a(x, y) ⇒ a(y, x)) 2 ∗ ∀e ∆ 1 a(x 0 , m) ⇒ a(m, x 0 )

ax ∆ 1 a(x 0 , m) ⇒e ∆ 1 a(m, x 0 ) ⇒e ∃^ ∆^1 ^ a(m, m) e ∆ a(m, m)

avec A 1 la d´erivation ci-dessous

ax ∆ 1 ∀x∀y(a(x, m) ⇒ (a(y, x) ⇒ a(y, m)) 2 ∗ ∀e ∆ 1 a(x 0 , m) ⇒ (a(m, x 0 ) ⇒ a(m, m))

ax ∆ 1 a(x 0 , m) ⇒e ∆ 1 a(m, x 0 ) ⇒ a(m, m)

Dans l’application de la regle ∃e, le t´emoin a ´et´e nomm´e x 0 pour qu’il n’y ait aucune confusion. La notation 2 ∗ ∀e signifie que l’on a appliqu´e 2 fois de suite la regle ∀e.

On rappelle ci dessous les r`egles d’inf´erence de la logique propositionnelle classique en d´eduction naturelle.