Licence Informatique, semestre 5 201617 Eléments de logique pour l'informatique (Info 315) 16 novembre 2016 http://www.lri.fr/~paulin/Logique TD7 - Calcul des Prédicats : Sémantique Exercice 1 Interprétation. f unaire On se donne une signature comportant un unique symbole de fonction et un unique symbole de relation binaire R. def D = {a, b, c}, dans laquelle on interprète le symbole f par la fonction fI : D → D telle que fI (a) = a, fI (b) = c et fI (c) = c et le symbole R par la relation RI = {(a, a), (a, b), (a, c), (b, c)}. On se donne un environnement ι déni par ι(y) = a et ι(v) = b pour toute variable v autre que y . On introduit une interprétation pour cette signature sur l'ensemble 1. Donner la valeur dans cette interprétation et cet environnement des termes et f (y), f (x), f (f (y)) f (f (f (y))). 2. Donner la valeur dans cette interprétation et cet environnement des formules (a) F0 = ∀x, R(x, y) (b) F1 = ∃x, ∀y, R(x, y) (c) F2 = ∃x, R(f (x), f (y)) Exercice 2 Ordres. Une relation binaire est : réexive si tout objet a et b qui sont égaux sont en relation transitive si lorsque a est en relation avec b et b en relation avec c avec alors a est aussi en relation c symétrique si lorsque a est en relation avec b alors b est en relation avec a anti-symétrique si lorsque a est en relation avec b et b est en relation avec a alors a et b sont égaux. Un ordre est une relation réexive, transitive et anti-symétrique. L'égalité est une relation d'équivalence, c'est-à-dire une relation reexive, transitive et symétrique. Pour raisonner sur les ordres, on introduit une signature avec seulement deux symboles de relations R pour représenter la relation d'ordre et E pour représenter l'égalité. On t = u la formule atomique E(t, u) qui dit que les termes t et u sont égaux. binaires usuelle 1. Ecrire dans le calcul des prédicats les formules qui disent que R notera de manière est une relation d'ordre et que l'égalité est une relation d'équivalence. 2. On se donne un domaine R et E def D = {a, b, c} à trois éléments, proposer une interprétation des relations sur ce domaine qui rendent vraies les formules précédentes. 3. Donner deux interprétations diérentes pour le symbole R sur le domaine N qui rendent vraies les formules précédentes. 4. Donner des interprétations pour la relation R qui vérient seulement deux des trois conditions pour être un ordre mais pas la troisième. 5. Exprimer par une formule le fait qu'il existe un élément maximum, c'est-à-dire qui est meilleur que tous les autres (en lisant la relation R(t, u) comme u est meilleur que t). Dire si les interprétations que vous avez introduites aux questions 3 et 2 vérient ou non cette propriété. 1 Exercice 3 Modélisation, examen 2014-15 Dans cet exercice, on s'intéresse à modéliser un système de droit d'accès inspiré de celui des systèmes de chier Unix. Les objets de la logique vont représenter des individus, des groupes d'individus, des ressources (chiers, répertoires), des actions à réaliser (lire, écrire, supprimer,. . . ). Les symboles de prédicat qui nous intéressent sont les suivants : action(a) : a est une action ; ressource(r) : r est une ressource ; groupe(g) : g est un groupe ; individu(x) : x est un individu ; dans(x, g) : l'individu x est dans le groupe g ; proprio(x, r) : l'individu x est le propriétaire de la ressource r ; droit(g, a, r) : le groupe g est autorisé à eectuer l'action a sur la ressource r ; peut(x, a, r) : l'individu x peut eectuer l'action a sur la ressource r ; x = y les objets x et y sont égaux. 1. Traduire en langage naturel les formules suivantes : (a) ∀x r, peut(x, Ecrire, r) ⇒ peut(x, Lire, r) Ecrire et Lire sont deux constantes représentant les actions d'écriture et de lecture d'une ressource. (b) ∃x, ∀a r, ressource(r) ⇒ action(a) ⇒ peut(x, a, r) Dans la suite ces conditions seront notées 1a et 1b. 2. Exprimer comme des formules logiques les propriétés suivantes : (a) Le propriétaire d'une ressource peut eectuer toutes les actions sur cette ressource ; (b) Toute ressource a un et un seul propriétaire ; (c) Aucun groupe n'est vide et toute personne appartient à (au moins) un groupe. (d) Lorsqu'un groupe est autorisé à eectuer une action sur une ressource alors tous les membres de ce groupe peuvent eectuer l'action. Dans la suite ces conditions seront notées 2a, 2b, 2c et 2d. 3. Soit l'interprétation I sur le domaine def D = {Alice, Bob, Eve, Amis, Autres, Secret, Public, Lire, Ecrire} avec comme interprétation des prédicats les relations suivantes : actionI = {Lire, Ecrire} ressourceI = {Secret, Public} groupeI = {Amis, Autres} individuI = {Alice, Bob, Eve} dansI = {(Alice, Amis), (Bob, Amis), (Eve, Autres)} proprioI = {(Alice, Secret), (Bob, Public)} droitI = {(Amis, Lire, Secret), (Amis, Lire, Public), (Autres, Lire, Public)} (a) Les conditions 2b et 2c sont-elles vériées dans l'interprétation I? (b) Trouver la plus petite relation pour interpréter le symbole de prédicat peut an de vérier les conditions 2a et 2d. On pourra représenter la réponse en complétant le tableau ci-dessous. Alice Bob Eve (Lire,Secret) (Ecrire,Secret) 2 (Lire,Public) (Ecrire,Public) Alice dans la colonne (Lire, Secret) cela signie que Alice Secret dans l'interprétation I . Chercher la plus petite relation, revient Si on met une croix sur la ligne peut lire la ressource à mettre un minimum de croix tout en assurant que les conditions 2a et 2d restent vraies. (c) Les conditions 1a et 1b sont-elles vériées dans cette interprétation ? sinon proposer une peut autre interprétation du symbole de prédicat qui rend vraies toutes les conditions 1a, 1b, 2a et 2d. (d) On suppose que l'interprétation I dénit peutI de telle manière que les quatre propriétés 1a, 1b, 2a et 2d sont vraies. Peut-on en déduire que, dans cette interprétation, écrire la ressource Public ? qu'elle ne peut pas écrire la ressource Public ? Alice peut 4. Proposer une formule logique qui assure que les seules autorisations données sont celles correspondant aux conditions 2a et 2d, c'est-à-dire qu'on peut eectuer une action si on est propriétaire de la ressource ou si on est membre d'un groupe qui a le droit d'eectuer l'action sur la ressource. 5. On veut changer le système de droit d'accès en regroupant les ressources en catégories et en déclarant les droits au niveau des catégories au lieu de le faire au niveau d'une ressource. C'està-dire que dans le prédicat droit(g, a, c) on aura g un groupe, a une action et c une catégorie. Proposer une extension du langage pour traiter ce nouveau système et exprimer l'analogue de la propriété 2d dans ce nouveau système : c'est-à-dire qu'un individu peut eectuer une action sur une ressource lorsqu'il est dans un groupe qui a le droit de faire l'action sur une catégorie à laquelle l'objet appartient. Exercice 4 Modèles de relation, examen session 2 2014-15 On se place dans un langage avec un symbole de prédicat binaire R. Soient les quatre formules de la logique du premier ordre suivantes : F1 F2 F3 F4 : : : : ∀x, ((∃y, ¬R(x, y)) ⇒ ∃y, (R(x, y) ∧ R(y, x))) ∀x, ∃y, (R(x, y) ∨ R(y, x)) ∀x y z, ((R(x, y) ∧ R(y, z)) ⇒ R(x, z)) ∃x, R(x, x) 1. On se donne des interprétations de la relation R sous forme de graphes. Le domaine est l'ensemble x au sommet y exactement lorsque la relation des sommets du graphe et on a une arête du sommet R(x, y) est vériée dans l'interprétation. Dans chacune des deux interprétations suivantes : (x, y) tels que R(x, y) est vraie dans l'interprétation ; formules F1 , F2 , F3 , F4 précédentes sont vraies et lesquelles sont (a) donner la liste des couples (b) dire lesquelles des fausses. Justier votre réponse. a b c d a c b modèle (A) modèle (B) 2. Montrez que (a) la formule (b) la formule F2 F4 F1 ; F1 et F3 . est conséquence logique de la formule est conséquence des deux formules 3. A l'aide d'une variante du modèle A, montrer que 3 F4 n'est pas conséquence logique de F2 et F3 .