4. Communication dans les Systèmes Multi-Agents
4.1 Interprétation du langage
4.1.4 L'analyse sémantique
Notre outil : le l-calcul
L'outil que nous privilégierons ici est le l-calcul. Il s'agit d'un formalisme introduit vers
1930 en Mathématiques pour représenter les fonctions comme des objets
mathématiques ; John McCarthy l'a utilisé, sous une forme légèrement
modifiée, comme langage de programmation vers la fin des années 1950,
et le langage LISP qu'il a créé a été couramment employé en Intelligence
Artificielle dans les décennies qui ont suivi.
Il n'est pas besoin de connaître
la théorie du l-calcul pour comprendre ce qui va
suivre. Il suffit de comprendre qu'une expression de la forme lx•A est une fonction de la variable x, et que
l'expression lx•A c évalue cette fonction en remplaçant
toutes les occurrences de x dans A par c.
Exemples :
- lx•(x*x+3) est la fonction f(x) = x2
+ 3 ; l'expression lx•(x*x+3) 2 s'évalue à 7, car en remplaçant toutes
les occurrences de x par 2, on obtient 22 + 3 qui vaut 7.
- Exp = lx•(ly•x*y+2) représente une fonction de deux variables.
Si on écrit Exp 3, c'est-à-dire lx•(ly•x*y+2) 3,
on obtient une fonction à une seule variable ly•3*y+2 [attention à la place de la parenthèse :
si 3 se trouve à l'intérieur, c'est y qui doit être remplacé par 3,
c'est-à-dire que lx•(ly•x*y+2
3) donne lx•(x*3+2) ;
vu la commutativité de la multiplication, ici, cela ne change rien].
Enfin Exp 3 4 donne : lx•(ly•x*y+2) 3 4 = ly•3*y+2 4 = 3*4+2
= 14.
Question:
Soit Exp = ly•(lz•(lx•x+y*z+x*y)). Évaluer Exp 3, Exp 3 4, Exp 5 3 4.
Cliquer
ici pour voir la réponse.
La stratégie d'interprétation
À chaque catégorie grammaticale et à chaque mot de
la langue correspond une expression du l-calcul. Lorsqu'une règle C ® A1 … An apparaît dans une
séquence de règles, l'expression correspondant à C est appliquée aux expressions
correspondant aux Ai (1<= i <=n).
Commençons par un exemple très simple
dans le domaine de l'arithmétique.
Exemple :
Soient les règles :
Addition-à-un-chiffre ® chiffre
+ chiffre
chiffre ® 0 | 1 |
… | 9.
Ces règles utilisent deux catégories et onze "mots de la langue" :
les dix chiffres arabes et le signe +. L'expression correspondant à chacun
des chiffres est le chiffre lui-même (on représente en italiques le chiffre
en tant que "mot de la langue", et en orange sa valeur) ;
celle qui correspond à la catégorie chiffre est lx•x.
L'interprétation de 9 dans la catégorie chiffre se fait donc de
la façon suivante : la règle justifiant que 9 fait partie
de la catégorie chiffre est chiffre ® 9 ; l'interprétation conduit
à appliquer l'expression de sa partie gauche (l'expression de chiffre,
soit lx•x) aux expressions de sa partie droite
(il y en a une seule, 9, dont l'expression est le chiffre 9 lui-même) ; il vient donc lx•x 9, dont l'évaluation donne 9.
L'expression correspondant à la catégorie Addition-à-un-chiffre est lx•(ly•(lz•x+z)), et celle qui correspond au symbole +, ne
jouant aucun rôle, sera choisie arbitrairement, par exemple 0.
Dans ces conditions, l'interprétation de la suite 9 + 9
dans la catégorie Addition-à-un-chiffre se fait de la façon suivante :
- on part de Addition-à-un-chiffre
- on utilise la première règle, ce qui donne chiffre
+ chiffre ; l'interprétation en est l'expression correspondant
Addition-à-un-chiffre appliquée aux trois expressions correspondant
au premier chiffre, au symbole +, et au deuxième chiffre, soit :
lx•(ly•(lz•x+z)) interp-1er-chiffre interp-plus
interp-2ème-chiffre
- on utilise
la règle chiffre ® 9, ce qui donne 9 + chiffre ;
comme on l'a vu ci-dessus, cette règle évalue ce que nous avons noté
interp-1er-chiffre à 9 ;
l'expression devient donc lx•(ly•(lz•x+z)) 9 interp-plus interp-2ème-chiffre,
qui se réduit à :
ly•(lz•9+z) interp-plus
interp-2ème-chiffre
- nous avons décidé arbitrairement qu'interp-plus valait 0 ;
il vient :
ly•(lz•9+z) 0 interp-2ème-chiffre =
lz•9+z interp-2ème-chiffre
[on voit que n'importe quelle évaluation d'interp-plus donnerait le
même résultat]
- on utilise de nouveau la règle chiffre ® 9,
ce qui donne 9 + 9 ; cette règle évalue ce que
nous avons appelé interp-2ème-chiffre à 9 ;
l'expression devient donc :
lz•9+z 9, qui se réduit à 9+9 = 18.
Le lecteur trouve certainement que
nous avons fait des détours compliqués pour interpréter des évidences.
Il s'agit de le familiariser progressivement avec la distinction entre
la langue analysée (les expressions en bleu) et la langue dans laquelle
elle cette langue est interprétée (les expressions en orange) ; le
cas traité jusqu'ici est trop simple pour que ces deux langues soient
nettement différenciées. Sa simplicité permet en revanche de vo
Question:
Quelle modification doit-on faire pour traiter les quatre opérations,
et non seulement l'addition, les opérandes étant toujours à un chiffre ?
Cliquer
ici pour voir la réponse.
Terminons notre incursion dans le
domaine de l'arithmétique en traitant des opérations à plusieurs chiffres ;
les règles sont :
Opération-binaire ® opérande opérateur opérande
opérande ® chiffre | opérande-à-plusieurs-chiffres
chiffre ® 0 | 1 | … | 9
opérande-à-plusieurs-chiffres ® opérande chiffre
opérateur ® + | - | * | /.
Les expressions associées analogues
aux précédentes pour les éléments déjà rencontrés, à savoir : lx•(ly•(lz•xyz)) pour Opération-binaire, lx•x pour chiffre, opérande, et opérateur ;
les chiffres et les opérateurs eux-mêmes pour les "mots de la langue" ;
seule nouveauté, on associe à opérande-à-plusieurs-chiffres l'expression
lx•(ly•10*x + y).
Question:
Interpréter l'opération binaire 321 - 12
Cliquer
ici pour voir la réponse.
Interprétation de phrases "sujet-verbe"
Maintenant que le lecteur maîtrise la stratégie d'interprétation sur
des exemples d'arithmétique simple, il est temps de revenir au domaine
pour lequel nous l'avons introduite, c'est-à-dire l'interprétation de
fragments de la langue française.
Commençons là aussi par des cas
extrêmement simples ; les phrases à analyser sont de la forme sujet-verbe,
et le sujet est un nom propre. La grammaire
sera :
Phrase ® Groupe-nominal Groupe-verbal
Groupe-nominal ® Nom-propre
Groupe-verbal ® Verbe-intransitif-conjugué
Nom-propre ® Alice | Berthe | Chantal
Verbe-intransitif-conjugué
® Dort | s'Ennuie
| Frissonne
À chacun des noms propres correspond,
dans l'univers d'interprétation, une personne désignée par l'initiale
de son nom, et à chacun des verbes, une fonction à une variable [plus
exactement, un prédicat unaire, pour les lecteurs familiers avec la logique
du premier ordre], notée également par l'initiale. On interprétera donc
une phrase comme Berthe s'Ennuie par E[B].
Pour cela, il suffit d'associer :
- à la catégorie Nom-propre l'expression
lx•(ly•(y[x])),
- à la catégorie Phrase l'expression
lx•(ly•(xy)),
- aux autres catégories l'expression
lx•x,
- et aux mots de
la langue, leur initiale.
En effet, l'interprétation dans
la catégorie Phrase de Berthe s'Ennuie utilise les étapes suivantes :
- Phrase
- Groupe-nominal
Groupe-verbal ;
expression = lx•(ly•(xy)) interp-Gn interp-Gv =
ly•(interp-Gn y) interp-Gv =
interp-Gn interp-Gv
- Groupe-nominal donne Nom-propre avec :
interp-Gn = lx•x interp-Np = interp-Np
- Nom-propre donne Berthe avec :
interp-Np = lx•(ly•(y[x])) interp-Berthe =
lx•(ly•(y[x])) B =
ly•(y[B])
- on reporte et
l'on obtient :
expression = interp-Gn interp-Gv
= ly•(y[B]) interp-Gv = interp-Gv[B].
- Groupe-verbal donne Verbe-intransitif-conjugué avec :
interp-Gv = lx•x interp-Vic = interp-Vic
- Verbe-intransitif-conjugué donne
s'Ennuie avec :
interp-Vic = lx•x interp-sEnnuie = interp-sEnnuie = E
- on reporte et
on obtient ce que l'on souhaitait :
expression = interp-Gv[B] = E[B].
Traitons maintenant le cas où le
sujet est un nom commun indéfini, par exemple
un garçon s'ennuie ; l'interprétation de cette phrase est
qu'il existe, dans l'univers de discours, un élément a
qui vérifie à la fois le fait d'être un garçon (noté par la lettre G)
et de s'ennuyer, c'est-à-dire, en représentant l'existence par le symbole
$ et la conjonction par &, $a G[a] & E[a].
Pour y parvenir, on modifiera les
règles de la façon suivante :
Phrase ® Groupe-nominal Groupe-verbal
Groupe-nominal ® Nom-propre | Nom-déterminé
Groupe-verbal ® Verbe-intransitif-conjugué
Nom-propre ® Alice | Berthe | Chantal
Nom-déterminé ® un Nom-commun-masculin | une
Nom-commun-féminin
Verbe-intransitif-conjugué
® Dort | s'Ennuie
| Frissonne
Nom-commun-masculin ® Garçon | Homme
| Individu
Nom-commun-féminin
® Jeune fille
| Logicienne | Mère
Les expressions des éléments déjà
examinés ne changent pas, les nouveaux mots de la langue sont interprétés
par leur initiale, à Nom-commun-masculin et féminin correspond lx•x et à Nom-déterminé correspond lx•(ly•(lz•$a y[a] & z[a])).
Question:
Interpréter un Garçon s'Ennuie avec ces règles.
Cliquer
ici pour voir la réponse.
Le cas de l'article défini n'est pas beaucoup plus compliqué :
si on dit "le garçon", on présume que la situation est telle
qu'il n'y a qu'un seul garçon dans l'univers de discours. On introduit
parfois un symbole $! (lire "il existe un unique")
dans le langage d'interprétation pour traiter ce cas ; si on se limite
aux symboles traditionnels " (quel
que soit), $ (il existe), Þ (implique) le Garçon se traduira par $a G[a] & ("b G[b] Þ a=b), c'est-à-dire "il y a dans l'univers
un élément a qui est un garçon, et
tout objet de l'univers qui est un garçon est égal à cet élément a", donc il n'y a qu'un garçon dans cet univers.
La modification à apporter est simple :
Groupe-nominal ® Nom-propre | Nom-déterminé-indéfini
| Nom-déterminé-défini
Nom-déterminé-indéfini ® un Nom-commun-masculin
| une Nom-commun-féminin
Nom-déterminé-défini
® le Nom-commun-masculin
| la Nom-commun-féminin
L'expression correspondant à l'indéfini
est celle que nous avons donnée : lx•(ly•(lz•$a y[a] & z[a])) ; celle correspondant au défini
est : lx•(ly•(lz•$a y[a] & ("b y[b] Þ a=b) & z[a])).
Interprétation de phrases "sujet-verbe-complément direct"
L'archétype de la phrase française est celui-ci. Examinons ce qu'il y
a à modifier dans notre grammaire pour pouvoir l'analyser. Le groupe verbal
n'est plus constitué d'un seul mot, mais, dans le cas le plus simple,
d'un verbe transitif suivi d'un groupe nominal (le complément d'objet
direct). Notre grammaire se complète, et donne :
Phrase ® Groupe-nominal Groupe-verbal
Groupe-nominal ® Nom-propre | Nom-déterminé-indéfini
| Nom-déterminé-défini
Nom-déterminé-indéfini ® un Nom-commun-masculin
| une Nom-commun-féminin
Nom-déterminé-défini ® le Nom-commun-masculin
| la Nom-commun-féminin
Groupe-verbal ® Verbe-intransitif-conjugué | Verbe-avec-complément
Nom-propre ® Alice | Berthe | Chantal
Verbe-intransitif-conjugué
® Dort | s'Ennuie
| Frissonne
Nom-commun-masculin ® Garçon | Homme
| Individu
Nom-commun-féminin ® Jeune fille | Logicienne
| Mère
Verbe-avec-complément ® Verbe-transitif-conjugué Groupe-nominal
Verbe-transitif-conjugué
® Nargue | Observe
| Poursuit
Une phrase comme Chantal observe
un individu doit s'interpréter comme $a I[a] & O[C,a], c'est-à-dire en clair : il
existe un élément de l'univers a qui
est un individu, et qui est tel que la relation d'observation est vérifiée
entre C (Chantal) et lui.
Cette interprétation est plus éloignée
de la suite de mots, et donc plus difficile à obtenir. Nous allons voir
que l'on y parvient en prenant pour expression associée à Verbe-avec-complément
lu•(lv•(lt•(v (lw•u[t,w])))), le reste ne change pas.
Commençons par voir que ce qui était acquis à la section précédente,
les phrases sans complément d'objet, n'est pas altéré par cette modification,
puisque les règles à appliquer n'ont pas été modifiées.
Analysons maintenant Chantal Observe un Individu.
Les premières étapes n'ont pas besoin d'être détaillées, puisqu'elles
utilisent elles aussi des règles inchangées : on a donc :
expression = interp-Gn interp-Gv, et
interp-Gn = ly•(y[C]),
on reporte :
expression = ly•(y[C]) interp-Gv = interp-Gv[C].
Groupe-verbal
s'obtient par la règle Groupe-verbal ® Verbe-avec-complément, et on a :
interp-Gv = lx•x interp-Vac = interp-Vac.
Verbe-avec-complément
s'obtient par Verbe-transitif-conjugué Groupe-nominal,
et on a :
interp-Vac = lu•(lv•(lt•(v (lw•u[t,w])))) interp-Vtc interp-Gn
= lv•(lt•(v (lw• interp-Vtc
[t,w])))
= lt•( interp-Gn (lw• interp-Vtc
[t,w]))
Verbe-transitif-conjugué donne Observe,
et interp-Vtc = lx•x interp-Observe = O.
D'où interp-Gv = lt•( interp-Gn (lw•O[t,w]))
Groupe-nominal s'analyse
comme précédemment, puisque cette partie de la grammaire n'a pas été modifiée,
en Nom-déterminé-indéfini avec :
interp-Gn = lx•x interp-Nd
= interp-Nd,
puis en un Nom-commun-masculin,
avec :
interp-Nd = lz•$a interp-Ncm[a]
& z[a].
Enfin, Nom-commun-masculin donne Individu,
avec interp-Ncm = I, d'où :
interp-Gn = lz•$a I[a] & z[a]
On reporte et on obtient :
interp-Gv = lt•( interp-Gn (lw•O[t,w]))
= lt•(lz•$a I[a] & z[a] (lw•O[t,w]))
= lt•($a I[a] & (lw•O[t,w]) [a])
= lt•($a I[a] & O[t,a])
On reporte dans expression = interp-Gv[C] et l'on obtient :
lt•($a I[a] & O[t,a]) [C] = $a I[a] & O[C,a].
Question:
Interpréter un Garçon s'Ennuie avec ces règles.
Cliquer
ici pour voir la réponse.
Bien que les règles d'interprétation
semblent probablement déjà assez complexes au lecteur, nous n'avons pas
traité avec exactitude des phrases aussi simples que celles que nous visions,
c'est-à-dire les phrases de type "sujet-verbe-complément direct" ;
en effet, regardons ce qui se passe si nous analysons une jeune fille
nargue un garçon. En sautant maintenant quelques étapes, nous obtenons :
- expression = interp-Gn interp-Gv
- interp-Gn
= lz•$a J[a] & z[a]
- en reportant, expression = lz•$a J[a] & z[a] interp-Gv = $a J[a] & interp-Gv
[a]
- interp-Gv
= lt•( interp-Gn (lw•N[t,w]))
- interp-Gn = interp-Ndi =
lz•$a interp-Ncm[a] & z[a]
Jusque-là, tout va bien, mais si on s'avise de faire le report, on se
retrouve avec deux affirmations d'existence d'une même variable a : en effet, le report de interp-Gv donne :
expression = $a J[a] & lt•( interp-Gn
(lw•N[t,w])) [a]
= $a J[a] & interp-Gn (lw•N[a,w])
et le report de interp-Gn donne :
expression = $a J[a] & lz•$a interp-Ncm[a] & z[a] (lw•N[a,w])
= $a J[a] & $a interp-Ncm[a] & (lw•N[a,w]) [a]
= $a
J[a] & $a interp-Ncm[a] &
N[a,a].
L'expression N[a,a] signifie que l'élément a se nargue lui-même !
Et si on poursuit l'analyse jusqu'au bout, interp-Ncm sera transformé
en G, et l'on aura $a J[a] & G[a], donc cet élément a sera à la fois
garçon et fille !!
Le remède consiste à modifier la règle du jeu du l-calcul.
Une variable est dite liée si elle apparaît
à la suite d'un quantificateur, c'est-à-dire d'un symbole quel
que soit (")
ou il existe ($)
; lorsqu'en remplaçant une expression par sa valeur, on introduit
des variables liées de même nom qu'une variable déjà existante, il faut
opérer un renommage de ces variables.
Reprenons notre analyse à :
expression = $a J[a] & interp-Gn
(lw•N[a,w]).
Remplacer interp-Gn par sa valeur lz•$a interp-Ncm[a]
& z[a] va introduire la variable liée a alors qu'existe déjà
une variable a dans expression ; avant de faire le remplacement,
on modifie la valeur de interp-Gn en renommant cette variable ; la
nouvelle valeur est donc :
interp-Gn = lz•$b
interp-Ncm[b] & z[b].
Le remplacement donne :
expression = $a J[a] & lz•$b interp-Ncm[b] & z[b] (lw•N[a,w])
= $a J[a] & $b interp-Ncm[b] & lw•N[a,w] [b]
= $a J[a] & $b interp-Ncm[b] & N[a,b].
La fin de l'analyse donne à interp-Ncm la valeur G, et on a en définitive :
expression = $a J[a] & $b G[b] & N[a,b].
En clair, il existe dans l'univers un élément a
et un élément b : a est
une jeune fille, b est un garçon, et
a nargue b.
Les qualifications
Les phrases françaises sont généralement beaucoup plus complexes que
les quelques formes analysées ici. Il n'entre pas dans nos intentions
d'aller les analyser toutes ; la méthode exposée ici rencontre assez
vite des limites insurmontables, et il faudrait présenter des théories
beaucoup plus fines (voir Biblio. en fin de section). Nous avons annoncé
dès le début de ce chapitre qu'il n'était pas question d'aller au-delà
d'un petit fragment de la langue. Cela est d'autant moins nécessaire dans
un cours sur les agents que ceux-ci n'ont pas à utiliser toutes les ressources
expressives d'une langue naturelle.
Cependant, les objets référencés par les agents doivent pouvoir être
différenciés. Si par exemple, il y a plusieurs fichiers dans leur univers,
le fichier qui présuppose l'unicité est inadapté, et un fichier
est trop vague. On doit pouvoir parler du fichier transmis par x, ou du
fichier de taille y, ou encore du fichier qui contient les données z.
Nous terminerons cette section en traitant quelques-unes de ces qualifications.
Le plus simple, au moins en première approximation, concerne les adjectifs.
Un cube rouge est un élément de l'univers qui vérifie à la fois
la propriété d'être cube et d'être rouge, donc, avec des notations évidentes,
l'interprétation qui convient est C[a] & R[a]. Les règles à modifier
sont :
Groupe-nominal ® Nom-propre | Nom-déterminé-indéfini
| Nom-déterminé-défini
Nom-déterminé-indéfini ® un Nom-commun-masculin
| une Nom-commun-féminin
Nom-déterminé-défini ® le Nom-commun-masculin
| la Nom-commun-féminin
Groupe-nominal ® Nom-propre | Groupe-nominal-indéfini
| Groupe-nominal-défini
Nom-propre ® Alice | Berthe | Chantal
Groupe-nominal-indéfini ® un Groupe-masculin |
une Groupe-féminin
Groupe-nominal-défini ® le Groupe-masculin |
la Groupe-féminin
Groupe-masculin ® Groupe-anté-masculin | Groupe-nom-masculin
Groupe-anté-masculin ® Adjectif-anté-masculin Groupe-masculin
Groupe-nom-masculin ® Nom-commun-masculin | Groupe-post-masculin
Groupe-post-masculin ® Nom-commun-masculin Adjectif-post-masculin
Groupe-féminin ® Groupe-anté-féminin | Groupe-nom-féminin
Groupe-anté-féminin ® Adjectif-anté-féminin Groupe-féminin
Groupe-nom-féminin ® Nom-commun-féminin | Groupe-post-féminin
Groupe-post-féminin
® Nom-commun-féminin
Adjectif-post-féminin
Les adjectifs peuvent en effet être
antéposés (ils précèdent le nom qu'ils
qualifient, comme joli) ou postposés
(ils suivent le nom qu'ils qualifient, comme coloré) ; certains
adjectifs peuvent appartenir aux deux catégories, mais leur interprétation
n'est pas nécessairement la même (grand n'a pas la même signification
dans un grand homme et dans un homme grand).
Les expressions associées à Groupe-nominal-indéfini
et défini restent : lx•(ly•(lz•$a y[a] & z[a])) et : lx•(ly•(lz•$a y[a] & ("b y[b] Þ a=b) & z[a])). Celles qui sont associées aux
groupes anté et post, masculin et féminin sont lx•(ly•(lz•xz & yz)). Les autres sont lx•x.
Exemple
Si on a Adjectif-anté-masculin ® Petit et Adjectif-post-masculin ®
Vert, les expressions associées à ces catégories étant lx•x et à ces mots, respectivement P
et V, l'interprétation de un Petit
Homme Vert Frissonne donne :
- Phrase
- Groupe-nominal Groupe-verbal.
expression = interp-Gn interp-Gv
- Groupe-nominal donne Groupe-nominal-indéfini.
interp-Gn = interp-Gni
- Groupe-nominal-indéfini donne un
Groupe-masculin.
interp-Gni = lx•(ly•(lz•$a y[a] & z[a]))
interp-un interp-Gm1
= ly•(lz•$a y[a] & z[a]) interp-Gm1
= lz•$a interp-Gm1[a]
& z[a]
- Groupe-masculin donne Groupe-anté-masculin.
interp-Gm1 = lx•x interp-Gam = interp-Gam
- Groupe-anté-masculin donne Adjectif-anté-masculin
Groupe-masculin.
interp-Gam = lx•(ly•(lz•xz
& yz)) interp-Aam interp-Gm2
=ly•(lz• interp-Aam z &
yz) interp-Gm2
= lz•
interp-Aam z & interp-Gm2 z
- Adjectif-anté-masculin donne Petit.
interp-Aam = lx•x interp-Petit = P
- Groupe-masculin donne Groupe-nom-masculin.
interp-Gm2 = lx•x interp-Gnm = interp-Gnm
- Groupe-nom-masculin donne Groupe-post-masculin.
interp-Gnm = lx•x interp-Gpm = interp-Gpm
- Groupe-post-masculin donne Nom-commun-masculin
Adjectif-post-masculin.
interp-Gpm = lx•(ly•(lz•xz & yz)) interp-Ncm interp-Apm
=ly•(lz• interp-Ncm
z & yz) interp-Apm
= lz• interp-Ncm z & interp-Apm z
- Nom-commun-masculin donne Homme.
interp-Ncm = lx•x interp-Homme = H
- Adjectif-post-masculin donne Vert.
interp-Apm = lx•x interp-Vert =
- On reporte de proche en proche : il vient :
interp-Gm2 = interp-Gpm = lz• H z &
V z ;
par renommage, interp-Gm1 = interp-Gam = lu• interp-Aam
u & interp-Gm2 u
= lu• P u & interp-Gm2 u
= lu• P u & (lz• H z & V z)
u
= lu• P u & H u & V u
interp-Gn = interp-Gni = lz•$a interp-Gm1[a]
& z[a]
= lz•$a (lu• P u & H u & V u)[a] & z[a]
= lz•$a P[a] & H [a] & V [a]
& z[a]
expression = interp-Gn interp-Gv
= lz•$a P[a] & H[a] & V[a] &
z[a] interp-Gv
= $a
P[a] & H[a] & V[a] & interp-Gv [a].
- Groupe-verbal donne Verbe-intransitif-conjugué.
interp-Gv = lx•x interp-Vic = interp-Vic
- Verbe-intransitif-conjugué donne Frissonne.
interp-Vic = lx•x interp-Frissonne = F.
expression = $a P[a] & H[a] & V[a] &
F[a].
Il existe un élément de l'univers qui est petit, qui est homme, qui est
vert, et qui frissonne.
Question:
Modifier ce qui doit l'être pour interpréter un Gentil Petit Homme
Vert s'Ennuie.
Cliquer
ici pour voir la réponse.
Cette analyse des adjectifs est trop fruste pour
la langue en général :
- un ancien tableau est un élément de l'univers
qui est ancien et qui est un tableau ;
- un ancien ministre est un
élément de l'univers qui a été ministre et ne l'est plus ;
dans ce dernier cas, notre analyse donnera un résultat
erroné ;
- un petit éléphant n'est pas
un élément de l'univers qui est petit, mais qui est petit relativement à la taille normale des éléphants ;
là aussi, notre analyse sera insuffisante.
D'autres exemples mettraient en évidence d'autres insuffisances. On peut
cependant présumer que l'approximation donnée par cette analyse suffit
dans un monde d'agents.
Passons maintenant à d'autres moyens
dont la langue dispose pour qualifier des objets. Si on parle d'un fichier
transmis par Chantal, il faut entendre qu'il existe un élément a de l'univers tel que a
soit un fichier, et que Chantal a transmis a.
Nous modifions donc :
Groupe-post-masculin ® Nom-commun-masculin Adjectif-post-masculin
en
Groupe-post-masculin
®Nom-commun-masculin Qualificatif-post-masculin
avec Qualificatif-post-masculin
® Adjectif-post-masculin
| Complément-post-masculin
Complément-post-masculin
® Participe-passé-masculin Préposition
Groupe-Nominal
(même chose pour le féminin).
L'expression correspondant à Qualificatif-post-masculin
est lx•x
et celle correspondant à Complément-post-masculin est lx•(ly•(lz•(lt•z (lp•x[p,t])))).
Exemple
Interprétons Berthe Étudie un Fichier Transmis par Chantal (avec
l'ajout d'Étudie dans la catégorie des verbes transitifs conjugués,
de Transmis dans celle des participes passés masculins, de par
dans celle des prépositions) :
- Phrase
- Groupe-nominal Groupe-verbal.
expression = interp-Gn1 interp-Gv
- Groupe-nominal donne Nom-Propre.
interp-Gn1 = interp-Np1
interp-Np1 = ly•(y[B])
- Groupe-verbal donne Verbe-avec-complément.
interp-Gv = interp-Vac.
- Verbe-avec-complément donne Verbe-transitif-conjugué
Groupe-nominal.
interp-Vac = lt•( interp-Gn2 (lw• interp-Vtc
[t,w]))
- Verbe-transitif-conjugué donne Étudie.
interp-Vtc = É.
expression = interp-Gn1 interp-Gv
= ly•(y[B]) interp-Gv
= interp-Gv[B]
= lt•( interp-Gn2 (lw•É[t,w])) [B]
= interp-Gn2 (lw•É[B,w])
- Groupe-nominal donne Groupe-nominal-indéfini avec interp-Gn2 = interp-Gni,
puis en un
Groupe-masculin, avec interp-Gni = lz•$a interp-Gm[a]
& z[a].
- On reporte :
expression = (lz•$a interp-Gm[a]
& z[a]) (lw•É[B,w])
= $a interp-Gm[a] &
(lw•É[B,w]) [a]
= $a
interp-Gm[a] & É[B,a]
- Groupe-masculin donne Groupe-nom-masculin.
interp-Gm = interp-Gnm
- Groupe-nom-masculin donne Groupe-post-masculin.
interp-Gnm = interp-Gpm
- Groupe-post-masculin donne Nom-commun-masculin
Qualificatif-post-masculin.
interp-Gpm = lx•(ly•(lz•xz & yz)) interp-Ncm interp-Qpm
=ly•(lz• interp-Ncm
z & yz) interp-Qpm
= lz• interp-Ncm z & interp-Qpm z
- Nom-commun-masculin donne Fichier.
interp-Ncm = lx•x interp-Fichier = F
expression = $a (lz• interp-Ncm z & interp-Qpm z)[a] & É[B,a]
= $a F[a] & interp-Qpm [a] & É[B,a]
- Qualificatif-post-masculin donne Complément-post-masculin.
interp-Qpm = interp-Cpm
- Complément-post-masculin donne Participe-passé-masculin Préposition
Groupe-Nominal.
interp-Cpm = lx•(ly•(lz•(lt•z (lp•x[p,t])))) interp-Ppm interp-Prép interp-Gn3
= ly•(lz•(lt•z (lp• interp-Ppm
[p,t]))) interp-Prép interp-Gn3
= lz•(lt•z (lp• interp-Ppm [p,t])) interp-Gn3
= lt• interp-Gn3 (lp• interp-Ppm [p,t])
- Participe-passé-masculin donne Transmis.
interp-Ppm = lx•x interp-Transmis = T
- Groupe-nominal donne Nom-Propre.
interp-Gn3 = interp-Np2
- Nom Propre donne Chantal.
interp-Np2 = ly•(y[C])
interp-Qpm = lt• ly•(y[C]) (lp• T[p,t])
= lt• (lp• T[p,t]) [C]
= lt• T[C,t]
expression = $a F[a] & (lt• T[C,t]) [a]
& É[B,a]
= $a F[a] & T[C,a] & É[B,a].
Il existe un élément a qui est un
fichier, qui est transmis par C et
étudié par B.
Nous abordons pour finir les qualifications
par attribut. On peut vouloir désigner
un objet en donnant la valeur d'un de ses attributs, par exemple, un fichier
de taille 200 kO, une icône de couleur rouge, un processus de durée 3
heures.
On remplace la règle :
Qualificatif-post-masculin
® Adjectif-post-masculin | Complément-post-masculin
par
Qualificatif-post-masculin
® Adjectif-post-masculin
| Complément-post-masculin | Complément-d'attribut
et on ajoute :
Complément-d'attribut ® de Nom-d'attribut Valeur
(même ajout pour Qualificatif-post-féminin)
L'expression correspondant à Complément-d'attribut
est lx•(ly•(lz•(lp• y[p]=z))).
Exemple
Interprétons Alice Reçoit un Fichier de Taille 200_kO (avec l'ajout
de Reçoit dans la catégorie des verbes transitifs conjugués, de
Taille dans celle des noms d'attribut, de 200_kO dans celle
des valeurs) :
- Phrase
- Groupe-nominal Groupe-verbal.
expression = interp-Gn1 interp-Gv
- Groupe-nominal donne Nom-Propre
qui donne Alice.
interp-Gn1 = interp-Np1 = ly•(y[A])
- Groupe-verbal donne Verbe-avec-complément
puis Verbe-transitif-conjugué Groupe-nominal.
interp-Gv = interp-Vac = lt•( interp-Gn2 (lw• interp-Vtc
[t,w]))
- Verbe-transitif-conjugué donne Reçoit.
interp-Vtc = Re.
expression = interp-Gn1 interp-Gv
= interp-Gv[A]
= lt•( interp-Gn2 (lw•Re[t,w])) [A]
= interp-Gn2 (lw•Re[A,w])
- Groupe-nominal donne Groupe-nominal-indéfini avec interp-Gn2 = interp-Gni,
puis en un
Groupe-masculin, avec interp-Gni = lz•$a interp-Gm[a]
& z[a].
- On reporte :
expression = (lz•$a interp-Gm[a] & z[a]) (lw•Re[A,w])
= $a
interp-Gm[a] & (lw•Re[A,w]) [a]
= $a
interp-Gm[a] & Re[A,a]
- Groupe-masculin donne Groupe-nom-masculin,
puis Groupe-post-masculin.
interp-Gm = interp-Gnm = interp-Gpm
- Groupe-post-masculin donne Nom-commun-masculin
Qualificatif-post-masculin.
interp-Gpm = lx•(ly•(lz•xz & yz)) interp-Ncm interp-Qpm
= ly•(lz• interp-Ncm
z & yz) interp-Qpm
= lz• interp-Ncm z & interp-Qpm z
- Nom-commun-masculin donne Fichier.
interp-Ncm = F
expression = $a (lz•F z & interp-Qpm
z)[a] & Re[A,a]
= $a F[a] & interp-Qpm [a] & Re[A,a]
- Qualificatif-post-masculin donne Complément-d'attribut.
interp-Qpm = interp-Cda
- Complément d'attribut donne de Nom d'attribut Valeur.
interp-Cda = lx•(ly•(lz•(lp• y[p]=z)))
interp-de interp-Nda interp-Val
= ly•(lz•(lp• y[p]=z)) interp-Nda interp-Val
= lz•(lp• interp-Nda
[p]=z) interp-Val
= lp• interp-Nda [p]=interp-Val
- Nom-d'attribut donne Taille.
interp-Nda = lx•x interp-Taille = t.
interp-Val = lx•x interp-200_kO
interp-Qpm = lp• t[p]
Il existe un élément a qui est un
fichier, dont la taille est égale à 204800
et qui est reçu par A.
De très nombreux ajouts pourraient
être considérés ici : les ellipses (un fichier de 200 kO pour
désigner un fichier de taille 200 kO), les relatives (un fichier
dont la taille est 200 kO, un fichier qui a été transmis par Alice,
un fichier que Berthe a envoyé), les conjonctions (un fichier
transmis par Chantal et de taille 200 kO). Certains sont faciles,
d'autres, moins.
Le lecteur est invité à poursuivre
par lui-même, pour modifier le petit fragment introduit ici en fonction
du type de phrases qu'il considère intéressantes pour l'application qu'il
a en vue. Il est cependant averti qu'aucune couverture complète du français
n'est disponible (on peut même se demander si cette notion a un sens),
et que la méthode présentée ici n'est pas adaptée pour des applications
nécessitant une couverture large (p.ex. pour analyser des textes de plusieurs
phrases, ou sur des domaines dans lesquels les mots peuvent avoir plusieurs
significations). La bibliographie (ci-dessous) contient des références
à de nombreux travaux permettant d'aller plus loin.
|