Logique du Premier Ordre en Linguistique
Logique du Premier Ordre en Linguistique
Marlet
1
Renaud Marlet
LaBRI / INRIA
[Link]
màj : 07/02/2006
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
2
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)
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
3
Au programme
●
Vocabulaire
– briques de base d'une représentation sémantique
●
Modèle
– sens effectivement donné à un vocabulaire
●
Langage du premier ordre
– é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
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
4
Rappel mathématique
Vocabulaire
d'après « Computational Semantics »
(Burchart, Walter, Koller, Kohlhase, Blackburn, Bos)
Lexique Vocabulaire
syntaxique sémantique
Phrases
Phrases
/ formules
grammaticales
utilisant le
utilisant le
vocabulaire
lexique
sémantique
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
7
●
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 »
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
8
Modèle (intuition)
Phrases
Phrases
/ formules Faits
grammaticales
utilisant le concernant
utilisant le satisfaction
vocabulaire les entités
lexique
sémantique
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
10
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
12
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)}
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
13
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)}
→ 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
14
Remarques
Modèle exact
Modèle inexact
Modèle inexact
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
19
Exercice :
– Donnez d'autres exemples et non-exemples
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
21
Exercice :
– Donnez d'autres exemples et non-exemples
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
24
● ∃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
28
Exercice
Écrivez les formules bien formées
– Pierre est gastronome
●
...
– Marie aime un gastronome
●
...
– Marie aime un(e) gastronome mais elle n'aime pas Pierre
●
...
– Marie aime un(e) gastronome mais ce n'est pas Pierre
●
...
– Tous les gastronomes que Marie aime, Anne les aime aussi
●
...
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
34
Exercice
Écrivez les formules bien formées
– Pierre est gastronome
●
gastronome(Pierre)
– Marie aime un gastronome
● ∃x (gastronome(x) ∧ aime(Marie,x))
– Marie aime un(e) gastronome mais elle n'aime pas Pierre
● ∃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
35
Exercice
Écrivez les formules bien formées
– Il existe quelqu'un qui s'appelle Marie
●
...
– Si Jean est gastronome, alors Pierre est violoniste
●
...
– Il y a un(e) violoniste qui aime un(e) gastronome
●
...
– Un violoniste aime tous les gastronomes
●
...
– Tous les violonistes gastronomes sont égoïstes
●
...
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
36
Exercice
Écrivez les formules bien formées
– Il existe quelqu'un qui s'appelle Marie
● Ce n'est pas exprimable dans le langage : ∃x x = Marie, ∃Marie
– Si Jean est gastronome, alors Pierre est violoniste
● gastronome(Jean) ⇒ violoniste(Pierre)
– Il y a un(e) violoniste qui aime un(e) gastronome
● ∃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
37
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))
●
...
– ∀y (gastronome(y) ⇒ ∃x (violoniste(x) ∧ ¬aime(x,y))
●
...
– ∀y ∃x (gastronome(y) ⇒ (violoniste(x) ∧ ¬aime(x,y))
●
...
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
38
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)))
●
Un violoniste aime un gastronome
– ∃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))
●
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
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
40
Variable liée
Exemple : ∃x (violoniste(x) ∧ gastronome(x))
Variable libre
Exemple : ∃x (gastronome(y) ∧ violoniste(x))
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
41
Variable libre
Variable liée
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
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
45
Interprétation : définition
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 :
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
50
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 ∣=
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
51
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
Lambda-Calcul
Intuition (1)
Plusieurs écritures pour une même réalité :
– f:ℝℝ
x x+3 f(5) = 8
– fonction f(x) = x+3
– f = fonction x x+3
Notations :
– f = x . x+3
– f x = f(x)
– Ex. f 5 = (x . x+3) 5 → 5+3 → 8
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
55
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
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
56
Lambda-termes
Lambda-termes
et langage du premier ordre
Sémantique de Montague
(intuition)
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)) P
● violoniste = x.(violoniste(x) SN SV
● aime = y.[Link](x,y) Det N V SN
un violoniste aime Marie
● Marie = Marie
● ((un violoniste) (aime Marie))
→ ((P.Q.(∃x (P x) ∧ (Q x))) x.(violoniste(x)) (aime Marie)
→ (Q.(∃x violoniste(x) ∧ (Q x)) ((y.[Link](x,y)) Marie)
→ (Q.∃x violoniste(x) ∧ (Q x)) ([Link](x,Marie))
→ ∃x violoniste(x) ∧ aime(x,Marie)
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
60
Vue d'ensemble
Phrases
Phrases
/ formules Faits
grammaticales
utilisant le concernant
utilisant le satisfaction
vocabulaire les entités
lexique
sémantique
Formalismes linguistiques – Logique du premier ordre © 2005-2006 R. Marlet
61
À retenir
●
Notion de modèle :
– donne du sens à un vocabulaire
– décrit une connaissance (hypothétique) du monde
●
Langage du premier ordre / formule logique
– interprétation(s) linguistique(s)
●
Satisfaction d'une formule logique
– définit ce qui est vrai dans un modèle
●
Lien formel avec la langue
– -calcul, sémantique compositionnelle (Montague)