Logique du premier ordre Application en linguistique
Transcription
Logique du premier ordre Application en linguistique
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Cours de formalismes linguistiques Master 1 — 2005-2006 Logique du premier ordre Application en linguistique Renaud Marlet LaBRI / INRIA http://www.labri.fr/~marlet/teaching màj : 07/02/2006 1 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Objectif ● Se donner un langage formel pour exprimer la sémantique, ici sous un aspect logique – pouvoir représenter des faits / des états du monde – pouvoir juger vrais ou faux des énoncés relatifs à cette connaissance du monde ● ● ● N.B. On ne juge pas ici si le monde « réel » est fidèlement représenté ; ce monde peut être « imaginaire » On se contente de juger la véracité de certains énoncés par rapport à une connaissance donnée (arbitraire) du monde (Savoir associer à une phrase en langue naturelle sa ou ses sémantiques logiques, quand il y en a) 2 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Au programme ● Vocabulaire – ● Modèle – ● sens effectivement donné à un vocabulaire Langage du premier ordre – – ● briques de base d'une représentation sémantique énoncé → formule logique basée sur le vocabulaire véracité d'une phrase par rapport à un/des modèle(s) Lambda-calcul – construction compositionnelle d'une formule logique associée à une phrase en langue naturelle 3 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 4 Rappel mathématique Relation R sur un ensemble E R = ensemble d'éléments choisis dans E × E Exemples pour E = {0,1} R = {(1,1)}, R = {(0,0),(0,1),(1,1)}, ... Notation (pour tout x et y E) x R y ssi (x,y) R [ on note aussi R(x,y) ] Plus généralement (relation d'arité n): R = ensemble d'éléments choisis dans E1 × ... × En Notation : R(x1, ..., xn), R(x), R(x,y,z) Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 5 Vocabulaire d'après « Computational Semantics » (Burchart, Walter, Koller, Kohlhase, Blackburn, Bos) Vocabulaire (termes/briques de base) – constantes ● – – ex. Marie, Jean, Anne, Pierre prédicats (relations) ● ex. aime, violoniste, gastronome ● exemple d'usage : aime(Pierre,Marie) arité = nombre d'arguments d'un prédicat ● ex. arité de aime = 2 ● ex. arité de violoniste et de gastronome = 1 Notation : ({Marie, Jean, Anne, Pierre}, {aime/2, violoniste/1, gastronome/1}) Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 6 Vue d'ensemble (1) Lexique syntaxique Vocabulaire sémantique Phrases grammaticales utilisant le lexique Phrases / formules utilisant le vocabulaire sémantique Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Usage des symboles ● Le sens du vocabulaire est arbitraire – ● ● Il est juste constitué de symboles On pourrait (!) – dire que le symbole Pierre désigne Marie Curie – dire que le symbole Marie désigne Pierre Curie – dire que le symbole aime désigne l'action de réveiller – et écrire aime(Pierre, Marie) pour signifier que Marie Curie réveille son mari Mais on ne le fera pas : on utilisera toujours les symboles de façon « suggestive » 7 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 8 Modèle (intuition) ☛ Un modèle donne un sens à un vocabulaire Intuitivement, un modèle est : – une situation, une connaissance supposée de l'état du monde – exprimable à l'aide des symboles d'un vocabulaire Un modèle est constitué par : – un ensemble ayant pour éléments les « véritables » entités dont on veut parler – une correspondance entre les symboles du vocabulaire et les entités / des faits concernant ces entités Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 9 Vue d'ensemble (2) Lexique syntaxique Vocabulaire sémantique construction Phrases grammaticales utilisant le lexique Phrases / formules utilisant le vocabulaire sémantique interprétation Modèle satisfaction Entités construction Faits concernant les entités Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Modèle (définition formelle) Un modèle M est défini par M = (D, F) tel que : – D est un domaine [c'est l'ensemble des entités dont on veut parler] – F est une fonction d'interprétation [c'est la correspondance entre symboles et entités/faits] ● ● Si c est une constante, F(c) ∈ D Si p est un prédicat d'arité n, F(p) est une relation d'arité n dans D 10 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 11 Exemple de modèle Domaine D = {d1,d2,d3,d4} Fonction d'interprétation F définie par : ● F(Marie) = d1 ● F(Anne) = d2 ● F(Jean) = d3 ● F(Pierre) = d4 ● F(violoniste) = {d1,d3} → Marie et Jean sont violonistes ● F(gastronome) = {d2,d4} → Anne et Pierre sont gastronomes ● F(aime) = {(d4,d2),(d3,d1)} → Pierre aime Anne, Jean aime Marie (mais Anne n'aime pas Pierre, Anne n'aime pas Jean, ...) Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Exercice : Donnez une description en français ● D = {d1,d2,d3,d4} ● F2(Marie) = d2 ● F2(Anne) = d1 ● F2(Jean) = d4 ● F2(Pierre) = d3 ● F2(violoniste) = {d1,d2,d4} ● F2(gastronome) = {d3} ● F2(aime) = {(d4,d1)} 12 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Exercice : Donnez une description en français ● D = {d1,d2,d3,d4} ● F2(Marie) = d2 ● F2(Anne) = d1 ● F2(Jean) = d4 ● F2(Pierre) = d3 ● F2(violoniste) = {d1,d2,d4} ● F2(gastronome) = {d3} ● F2(aime) = {(d4,d1)} 13 → Il y a quatre entités : Anne, Marie, Pierre, Jean. Anne, Marie et Jean sont violonistes. Pierre est gastronome. Jean aime Anne. Et rien d'autre. Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Remarques – – Une entité peut avoir plusieurs noms, c.-à-d. être associée à plusieurs constantes du vocabulaire ● D = {d1} ● F(Marie) = d1 ● F(Anne) = d1 Des entités peuvent ne pas être nommées, c.-à-d. ne pas être associées à une constante du vocabulaire ● D = {d1,d2,d3,d4} ● F(Marie) = d1 ● F(Anne) = d2 14 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 15 Modèle exact Définition : un modèle M = (D, F) est exact ssi chaque entité de D correspond à une et une seule constante du vocabulaire Exemple : constantes : Marie, Anne, Jean, Pierre domaine : D = {d1,d2,d3,d4} fonction d'interprétation : F(Marie) = d1 F(Anne) = d2 F(Jean) = d3 F(Pierre) = d4 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Modèle inexact Définition : un modèle M = (D, F) est inexact ssi il n'est pas exact – – à une entité peut correspondre plusieurs constantes ● D = {d1} ● F(Marie) = d1 ● F(Anne) = d1 certaines entités peuvent ne pas être nommées ● D = {d1,d2,d3,d4} ● F(Marie) = d1 ● F(Anne) = d2 16 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 17 Modèle inexact Un modèle est inexact ssi il n'est pas exact : [rappel] – à une entité peut correspondre plusieurs constantes – certaines entités peuvent ne pas être nommées Attention ! – Un modèle inexact n'est pas faux, incohérent, ambigu... – C'est juste un modèle avec lequel c'est peu pratique de travailler (en particulier si D est infini) – Mais pour la plupart des problèmes, on utilise des modèles exacts, plus faciles à représenter et presque aussi « puissants » [cf. modèles de Herbrand] Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 18 Plan On a vu : – vocabulaire : briques de base – modèle : sens donné à un vocabulaire On va voir : – construction de phrases qui utilisent ce vocabulaire → langage du premier ordre : formule logique Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Langages du premier ordre : ingrédients – les symboles d'un vocabulaire (aussi appelés symboles non logiques) – un ensemble (infini) de variables : x, y, z, w, ... – les quantificateurs ● – les connecteurs booléens ● – ∀ (universel) et ∃ (existentiel) ¬ (négation), ⇒ (implication), ∧ (conjonction), ∨ disjonction les parenthèses « ( » et « ) » Ce qui distingue un langage du premier ordre d'un autre : le choix du vocabulaire 19 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Langages du premier ordre : définitions (1) Terme (du premier ordre) : – Un terme est une constante ou une variable Exemples : – Pierre, Marie, x, y Non-exemples : – aime, violoniste Exercice : – Donnez d'autres exemples et non-exemples 20 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Langages du premier ordre : définitions (2) Formule atomique : – Si R est un symbole de relation d'arité n et t1, ..., tn sont des termes, alors R(t1, ..., tn) est une formule atomique Exemples : – violoniste(Pierre), aime(x,Marie) Non-exemples : – x, violoniste, gastronome(Jean,aime) Exercice : Donnez d'autres exemples et non-exemples 21 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Langages du premier ordre : définitions (3) 22 Formule bien formée (ou complexe) : [en anglais : well-formed formula (wff)] ● ● ● ● Une formule atomique est une formule bien formée Si et sont des formules bien formées alors ¬ , ( ⇒ ), ( ∧ ) et ( ∨ ) sont des formules bien formées Si est une formule bien formée et x est une variable, alors ∀x et ∃x sont des formules bien formées Rien d'autre n'est une formule bien formée [mais en pratique, précédence des opérateurs pour éviter les parenthèses inutiles] Ex. : violoniste(Jean), ∀x (violoniste(x) ⇒ aime(Marie,x)) Non-exemples : ¬Jean, gastronome(Pierre∧Jean), ∃Marie Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Langages du premier ordre : définitions (4) Littéral – formule atomique ou négation d'un formule atomique Exemples – violoniste(Pierre), ¬gastronome(Jean) Non-exemples – Pierre, ¬gastronome, violoniste(Pierre ∨ Jean) Exercice : – Donnez d'autres exemples et non-exemples 23 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Interprétation linguistique (1) : cas de figure courants ● ∀x P(x) – – Pour tout x, P(x) Tout est P ● ● ● ∀x gastronome(x) Tout le monde, toute chose est gastronome ∀x ¬P(x) – – – [ = ¬ ∃x P(x) ] Pour tout x, non P(x) Aucun x n'est tel que P(x) Il n'existe aucun x « de type P » ● ● ∀x ¬violoniste(x) Personne, rien n'est violoniste 24 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Interprétation linguistique (2) : cas de figure courants ● ∀x (P(x) ⇒ Q(x)) – – – Pour tout x, si P(x) alors Q(x) Tous les x tels que P(x) sont tels que Q(x) Tout x « de type P » est « de type Q » ● ● ● 25 ∀x (violoniste(x) ⇒ gastronome(x)) Tout violoniste est gastronome [= Tous les violonistes sont gastronomes] ∀x (P(x) ⇒ ¬Q(x)) – – – Pour tout x, si P(x) alors non Q(x) Aucun x tel que P(x) n'est tel que Q(x) Aucun x « de type P » n'est « de type Q » ● ● ∀x (violoniste(x) ⇒ ¬gastronome(x)) Aucun violoniste n'est gastronome Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Interprétation linguistique (3) : cas de figure courants ● ∃x P(x) – – Il existe un x tel que P(x) Il y a (au moins) un x « de type P » ● ● ● ∃x gastronome(x) Il y a un(e) gastronome ∃x ¬P(x) – – [ = ¬ ∀x P(x) ] Il existe un x tel que non P(x) (Au moins) un x n'est pas « de type P » ● ● ● ∃x ¬violoniste(x) Quelqu'un, quelque chose n'est pas violoniste On ne peut pas dire que tout le monde est violoniste 26 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Interprétation linguistique (4) : cas de figure courants ● ∃x (P(x) ∧ Q(x)) – – – [= ∃x (Q(x) ∧ P(x))] Il existe un x tel que P(x) et Q(x) Il existe un x à la fois « de type P et Q » Il existe un x « de type P » qui est aussi « de type Q » ● ● ● 27 ∃x (violoniste(x) ∧ gastronome(x)) Il y a un violoniste gastronome [= il y a un gastronome violoniste] ∃x (P(x) ∧ ¬Q(x)) – – Il existe un x tel que P(x) et non Q(x) Il existe un x « de type P » qui n'est pas « de type Q » ● ● ∃x (violoniste(x) ∧ ¬gastronome(x)) Il y a un violoniste qui n'est pas gastronome Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Interprétation linguistique (5) : cas de figure courants Noter la différence entre quantificateurs : – ∀x (P(x) ⇒ Q(x)) ● – ∀x (P(x) ⇒ ¬Q(x)) ● – Aucun x « de type P » n'est « de type Q » ∃x (P(x) ∧ Q(x)) ● – Tout x « de type P » est « de type Q » Il existe un x « de type P » qui est aussi « de type Q » ∃x (P(x) ∧ ¬Q(x)) ● Il existe un x « de type P » qui n'est pas « de type Q » 28 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Double interprétation de certaines formes linguistiques Un violoniste est gastronome – ... – ... 29 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Double interprétation de certaines formes linguistiques Un violoniste est gastronome – Un fait concernant un individu : ● – Il y a un violoniste qui est (aussi) gastronome Une règle générale : ● Tout violoniste est gastronome 30 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Double interprétation de certaines formes linguistiques Un violoniste est gastronome – Un fait concernant un individu : ● – Il y a un violoniste qui est (aussi) gastronome Une règle générale : ● Tout violoniste est gastronome Un train peut en cacher un autre – ... Un chien aboie dans le lointain – ... 31 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Double interprétation de certaines formes linguistiques 32 Un violoniste est gastronome – Un fait concernant un individu : ● – Il y a un violoniste qui est (aussi) gastronome Une règle générale : ● Tout violoniste est gastronome Un train peut en cacher un autre – cas = règle : tout train peut cacher tout autre train Un chien aboie dans le lointain – cas = individu : il y a un chien qui aboie dans le lointain Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Exercice Écrivez les formules bien formées – Pierre est gastronome ● – ... Marie aime un(e) gastronome mais ce n'est pas Pierre ● – ... Marie aime un(e) gastronome mais elle n'aime pas Pierre ● – ... Marie aime un gastronome ● – 33 ... Tous les gastronomes que Marie aime, Anne les aime aussi ● ... Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Exercice Écrivez les formules bien formées – Pierre est gastronome ● – – ∃x (gastronome(x) ∧ aime(Marie,x)) Marie aime un(e) gastronome mais elle n'aime pas Pierre ● – gastronome(Pierre) Marie aime un gastronome ● – 34 ∃x (gastronome(x) ∧ aime(Marie,x)) ∧ ¬aime(Marie,Pierre) Marie aime un(e) gastronome mais ce n'est pas Pierre ● Ce n'est pas exprimable dans le langage : ● ∃x (gastronome(x) ∧ aime(Marie,x) ∧ x ≠ Pierre [pas dans le langage] Tous les gastronomes que Marie aime, Anne les aime aussi ● ∀x (gastronome(x) ∧ aime(Marie,x) ⇒ aime(Anne,x)) Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Exercice Écrivez les formules bien formées – Il existe quelqu'un qui s'appelle Marie ● – Si Jean est gastronome, alors Pierre est violoniste ● – ... Un violoniste aime tous les gastronomes ● – ... Il y a un(e) violoniste qui aime un(e) gastronome ● – ... ... Tous les violonistes gastronomes sont égoïstes ● ... 35 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Exercice Écrivez les formules bien formées – Il existe quelqu'un qui s'appelle Marie ● – – gastronome(Jean) ⇒ violoniste(Pierre) Il y a un(e) violoniste qui aime un(e) gastronome ● – Ce n'est pas exprimable dans le langage : ∃x x = Marie, ∃Marie Si Jean est gastronome, alors Pierre est violoniste ● – 36 ∃x ∃y (violoniste(x) ∧ gastronome(y) ∧ aime(x,y)) Un violoniste aime tous les gastronomes ● ∃x (violoniste(x) ∧ ∀y (gastronome(y) ⇒ aime(x,y))) [un : individu] ● ∀x (violoniste(x) ⇒ ∀y (gastronome(y) ⇒ aime(x,y))) [un : règle] Tous les violonistes gastronomes sont égoïstes ● ∀x (violoniste(x) ∧ gastronome(x) ⇒ aime(x,x)) Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Exercice Paraphrasez les formules logiques – ∃x ∃y (violoniste(x) ∧ gastronome(y) ∧ aime(x,y)) ● – ∃y ∃x (violoniste(x) ∧ gastronome(y) ∧ aime(x,y)) ● – ... ∀y (gastronome(y) ⇒ ∃x (violoniste(x) ∧ ¬aime(x,y)) ● – ... ∃x (violoniste(x) ∧ ∀y (gastronome(y) ⇒ ¬aime(x,y)) ● – ... ∃x (violoniste(x) ∧ ∃y (gastronome(y) ∧ aime(x,y))) ● – ... ... ∀y ∃x (gastronome(y) ⇒ (violoniste(x) ∧ ¬aime(x,y)) ● ... 37 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Exercice Paraphrasez les formules logiques – – – ∃x ∃y (violoniste(x) ∧ gastronome(y) ∧ aime(x,y)) ∃y ∃x (violoniste(x) ∧ gastronome(y) ∧ aime(x,y)) ∃x (violoniste(x) ∧ ∃y (gastronome(y) ∧ aime(x,y))) ● – ∃x (violoniste(x) ∧ ∀y (gastronome(y) ⇒ ¬aime(x,y)) ● – Il existe un violoniste qui n'est aimé par aucun gastronome ∀y (gastronome(y) ⇒ ∃x (violoniste(x) ∧ ¬aime(x,y)) ● ● – Un violoniste aime un gastronome Tout gastronome a un violoniste qu'il n'aime pas Tout gastronome n'aime pas un violoniste ∀y ∃x (gastronome(y) ⇒ (violoniste(x) ∧ ¬aime(x,y)) ● Tout gastronome a un violoniste qu'il n'aime pas 38 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 39 Plan On a vu : – vocabulaire : briques de base – modèle : sens donné à un vocabulaire – langage du 1er ordre : phrases utilisant le vocabulaire On va voir : – valeur de vérité associée à ces phrases → notion de formule logique satisfaite Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Variables libres, variables liées Variable liée Exemple : ∃x (violoniste(x) ∧ gastronome(x)) Exemple : ∀x (gastronome(x) ⇒ ∃y aime(x,y)) Variable libre Exemple : ∃x (gastronome(y) ∧ violoniste(x)) 40 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Variables libres, variables liées : Analogie dans la langue 41 Variable liée : phrase autonome/indépendante (self-contained) ● Exemple : ∃x (violoniste(x) ∧ gastronome(x)) Il existe un(e) violoniste gastronome ● Exemple : ∀x (gastronome(x) ⇒ ∃y aime(x,y)) Tout gastronome est aimé (de quelqu'un) Variable libre : référent à trouver dans le contexte ● Exemple : ∃x (gastronome(y) ∧ violoniste(x)) Il/elle est gastronome et il y a un(e) violoniste Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Variable libre Définition formelle (par induction) : – Toute occurrence de variable est libre dans une formule atomique – Si une occurrence de variable est libre dans ou dans , alors cette occurrence est libre dans ¬, ( ⇒ ), ( ∧ ) et ( ∨ ) – Si une occurrence d'une variable x est libre dans , alors elle est libre dans ∀y et dans ∃y pour toute variable y différente de x 42 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Variable liée Définition formelle (par induction) : – Aucune occurrence de variable n'est liée dans une formule atomique – Si une occurrence de variable est liée dans ou dans , alors cette occurrence est liée dans ¬, ( ⇒ ), ( ∧ ), ( ∨ ), ∀x et ∃x pour toute variable x – Si une occurrence d'une variable x est libre dans , alors elle est liée dans ∀x et dans ∃x 43 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Notion de satisfaction ● ● On ne peut pas donner une définition « dans l'absolu » de ce qui est vrai ou pas On va dire ce qui est vrai dans un modèle → relation entre une phrase et un modèle (c.-à-d. une connaissance de l'état du monde) ● On va définir une relation de satisfaction entre – une formule (≈ une phrase) – un modèle M = (D,F) – une affectation de valeurs aux variables g 44 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Affectation de (valeurs aux) variables – Définition : une affectation de variables (ou affectation de valeurs aux variables) est une application g de l'ensemble des variables dans D Ex. D = {d1,d2,d3,d4} g(x) = d1 ; g(y) = d2 ; g(z) = d1 ; g(w) = d4 ; ... – Soient x une variable et g une affectation de variables. Une x-variante de g est une affectation de variables g' telle que pour toute variable y ≠ x, g'(y) = g(y) Ex. g'(x) = d1 ; g'(y) = d3 ; g'(z) = d1 ; g'(w) = d4 ; ... g' est une y-variante de g (et réciproquement) mais g' n'est pas une x-variante de g (et réciproquement) 45 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Interprétation : définition Soient M = (D,F) un modèle, g une affectation de variables dans M et un terme. L'interprétation de par rapport à M et g, notée IgF(), est définie par : – IgF() = F() si est une constante – IgF() = g() si est une variable 46 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 47 Interprétation : exemple – Modèle : M = (D,F) – Domaine : D = {d1,d2,d3,d4} – Fonction d'interprétation : – F(violoniste) = {d1,d3} F(Marie) = d1 F(Jean) = d3 F(gastronome) = {d2,d4} F(Anne) = d2 F(Pierre) = d4 F(aime) = {(d4,d2),(d3,d1)} Affectation de variables : g(x) = d1 ; g(y) = d3 ; g(z) = d1 ; g(w) = d4 ; ... – Interprétation : IgF(Marie) = F(Marie) = d1 IgF(Anne) = F(Anne) = d2 IgF(x) = g(x) = d1 IgF(y) = g(y) = d3 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 48 Satisfaction : définition Soient M = (D,F) un modèle et g une affectation de variables dans M. La relation de satisfaction « M, g ∣= » ( est satisfaite dans M par rapport à l'affectation de variables g) est définie par : M, g ∣= R(1,...,n) ssi (IgF(1),...,IgF(n)) ∈ F(R) M, g ∣= ¬ ssi non M, g ∣= M, g ∣= ∧ ssi M, g ∣= et M, g ∣= M, g ∣= ∨ ssi M, g ∣= ou M, g ∣= M, g ∣= ⇒ ssi non M, g ∣= ou M, g ∣= M, g ∣= ∃x ssi non M, g' ∣= pour une x-variante g' de g M, g ∣= ∀x ssi non M, g' ∣= pour toute x-variante g' de g Si M, g ∣= n'est pas vrai, on note M, g ∣≠ Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 49 Satisfaction : exemples M = (D,F) D = {d1,d2} F(Marie) = d1 F(Jean) = d2 F(violoniste) = {d2} F(aime) = {(d1,d2)} g(x) = d1 ; g(y) = d2 ; g(z) = d1 ; g(w) = d1 ; ... On a : M, g ∣= violoniste(Jean) mais M, g ∣≠ violoniste(Marie) M, g ∣= violoniste(y) mais M, g ∣≠ violoniste(x) M, g ∣= violoniste(x) ∨ aime(z,Jean) M, g ∣= ∃y aime(y,Jean) mais M, g ∣≠ ∃y aime(Jean,y) M, g ∣= ∀x aime(Marie,x) mais M, g ∣≠ ∀x aime(x,Jean) M, g ∣= ∀x violoniste(x) ⇒ aime(Marie,x) Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Valeur de vérité dans un modèle : définition Définition : – Une phrase est vraie dans le modèle M ssi pour toute affectation de variables g, on a : M, g ∣= Notation : – Si est vraie dans le modèle M, on note M ∣= 50 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Valeur de vérité dans un modèle : exemples 51 M = (D,F) D = {d1,d2} F(Marie) = d1 F(Jean) = d2 F(violoniste) = {d2} F(aime) = {(d1,d2)} g(x) = d1 ; g(y) = d2 ; g(z) = d1 ; g(w) = d1 ; ... g'(x) = d1 ; g'(y) = d2 ; g'(z) = d2 ; g'(w) = d1 ; ... On a : M ∣= violoniste(Jean) M ∣≠ violoniste(x) ∨ aime(z,Jean) M ∣= ∃x aime(x,Jean) M ∣= ∃y aime(y,Jean) M ∣= ∀x aime(Marie,x) mais M ∣≠ violoniste(z) mais M ∣≠ ∃x aime(Jean,x) mais M ∣≠ ∃y aime(Jean,y) mais M ∣≠ ∀x aime(x,Jean) Peu importe l'affectation de variables pour déterminer si est vraie → pas de variables libres dans ou relation vraie pour toute valeur Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 52 Formule valide Intuition : – Une formule est valide ssi elle est vrai quelle que soit la réalité du monde Définition : – Une formule est valide ssi elle est vraie dans tous les modèles Exemples : . ∣= (∀x violoniste(x) ⇒ aime(Marie,x)) ∧ violoniste(Jean) ⇒ aime(Marie,Jean) . ∣≠ (∀x violoniste(x) ⇒ aime(Marie,x)) ∧ ¬violoniste(Jean) ⇒ ¬aime(Marie,Jean) Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 53 Plan On a vu : – vocabulaire : briques de base – modèle : sens donné à un vocabulaire – langage du 1er ordre : phrases utilisant le vocabulaire – valeur de vérité des phrases : formule satisfaite On va voir (très succinctement et superficiellement) : – lien avec la langue → lambda-calcul Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Lambda-Calcul Intuition (1) Plusieurs écritures pour une même réalité : – f : ℝ ℝ x x+3 – fonction f(x) = x+3 – f = fonction x x+3 f(5) = 8 Notations : – f = x . x+3 – f x = f(x) – Ex. f 5 = (x . x+3) 5 → 5+3 → 8 54 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Lambda-Calcul Intuition (2) Plusieurs écritures pour une même réalité : – f : ℝ × ℝ ℝ (x,y) x+3−y – f(5,2) = 6 f = fonction (x,y) x+3−y Alternative – f = fonction x (fonction y x+3−y) – f = x .(y.(x+3−y)) – f 5 = (x.(y.(x+3−y))) 5 → y.(5+3−y) – (f 5) 2 → (y.(5+3−y)) 2 → 5+3−2 → 6 55 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 56 Lambda-termes L'ensemble des -termes est défini inductivement de la manière suivante : – Atomes : toutes les variables et les constantes sont des -termes – Application : si A et B sont des -termes, alors (A B) est un -terme – Abstraction : si A est un -terme et x est une variable, alors x.A est un -terme Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Lambda-termes et langage du premier ordre Exemples d'abstraction de constantes : – violoniste(Pierre) ← (x.violoniste(x)) Pierre – aime(Jean,Marie) ← (x.y.aime(x,y)) Jean Marie Exemples d'abstraction de prédicats – – (P.∃x (P x)) violoniste → ∃x violoniste(x) (P.Q.(∀x (P x) ⇒ (Q x))) violoniste gastronome → ∀x violoniste(x) ⇒ gastronome(x) 57 Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet Sémantique de Montague (intuition) 58 Sémantique compositionnelle : – À chaque mot, on associe un (ou des) -terme(s), qui représente(nt) sa sémantique – On considère une analyse syntaxique de la phrase (en constituants) – On construit un -terme isomorphe à l'arbre d'analyse syntaxique : – ● Toute feuille (mot) est remplacée par le -terme associé ● Tout autre noeud est une -application La sémantique est le résultat de l'évaluation du -terme Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 59 Sémantique de Montague (exemple simple) ● un = P.Q.(∃x (P x) ∧ (Q x)) ● violoniste = x.(violoniste(x) ● aime = y.x.aime(x,y) ● ● Marie = Marie ((un violoniste) (aime Marie)) P SV SN Det N un violoniste V aime SN Marie → ((P.Q.(∃x (P x) ∧ (Q x))) x.(violoniste(x)) (aime Marie) → (Q.(∃x violoniste(x) ∧ (Q x)) ((y.x.aime(x,y)) Marie) → (Q.∃x violoniste(x) ∧ (Q x)) (x.aime(x,Marie)) → ∃x violoniste(x) ∧ aime(x,Marie) Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet 60 Vue d'ensemble Lexique syntaxique Vocabulaire sémantique -termes Phrases grammaticales utilisant le lexique Phrases / formules utilisant le vocabulaire sémantique interprétation Modèle satisfaction Entités construction Faits concernant les entités Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet À retenir ● ● Notion de modèle : – donne du sens à un vocabulaire – décrit une connaissance (hypothétique) du monde Langage du premier ordre / formule logique – ● Satisfaction d'une formule logique – ● interprétation(s) linguistique(s) définit ce qui est vrai dans un modèle Lien formel avec la langue – -calcul, sémantique compositionnelle (Montague) 61