λ-calcul interface syntaxe sémantique Exercices Sémantique 3, L. Roussarie Notations : Dans une règle syntaxique X Y Z, si Y correspond à la fonction sémantique Z son argument, on écrira X Y* Z. Si c est Z la fonction, on écrira X Y Z*. Exercice 1 (Coordination de N ) Considérons qu un coordonné se construit de la manière suivante : CoordP* Coord* Un se traduit toujours par un λ-terme de type e, t, de la forme λy pred(y), où pred(y) soit un prédicat verbal (appliqué à y), soit une expression plus complexe qui contient y. Par exemple dort λy dormir(y) ; mange une pomme λy z[pomme(z) manger(y, z)]. On propose que dans cte construction, la conjonction de coordination (Coord) se traduit par λpλqλx[[q(x)] [P(x)]]. Quel est sont type? Appliquez cte proposition en analysant 1 complètement la phrase «Alice dort ronfle». Exercice 2 (Coordination de (ou DP)) Pour la coordination des, on considère une règle syntaxique la similaire à la précédente (en y remplaçant par ), on pose que la conjonction se traduit par : λxλy λq[[y (Q)] [X(Q)]]. Quel est son type, sachant que X Y sont de type e, t, t que Q est de type e, t? Analysez «Alice Bruno dorment». Et si vous êtes courageux, essayez «Alice Bruno dorment ronflent». Exercice 3 (La copule les AP attributs) Un adjectif qualificatif se traduit par un λ-terme de type e, t, de la forme λx adj(x), ou adj est le prédicat associé à l adjectif. Par exemple myope λx myope(x). On considère que le verbe être (en tant que copule) se traduit par λp λx[p(x)]. Que «fait» ce λ-terme? Et quel est son type? Traduisez la phrase «James est myope» à partir de l arbre suivant : S James λp [P (j)] est λp λx[p (x)] 1. C est-à-dire en traduisant en lo la phrase pas à pas. AP Adj myope λy myope(y) 1
Exercice 4 (Les AP épithètes) Un nom commun se traduit par un λ-terme de la forme λx nom(x), où nom est le prédicat qui correspond au nom commun. Par exemple tigre λx tigre(x). Quel est le type d un comportant un adjectif épithète, comme par exemple «tigre myope»? Par quel λ-terme doit-il se traduire? Quel problème se pose alors pour construire le si un adjectif comme myope se traduit par λx myope(x)? On insère dans la grammaire la règle suivante : si Adj se traduit par λx adj(x) si ce Adj se trouve dans un AP épithète d un N, alors ce AP se traduit par : [λaλnλy[[n(y)] [A(y)]](λx adj(x))] Quel est alors le type de ce AP? En utilisant cte règle, construisez la traduction en lo du «un tigre myope». Exercice 5 (Les V transitifs) Supposons qu un verbe transitif, par exemple aimer, se traduise par λyλx aimer(x, y). Montrez que sous cte hypothèse, avec l analyse syntaxique ci-dessous, on ne peut pas contruire la formule qui représente le sens de «une chauve-souris aime un parapluie». S une chauve-souris λp y[ch-s(y) [P (y)]] V aime λyλx aimer(x, y) un parapluie λp z[ppl(z) [P (z)]] Pour résoudre ce problème, on propose de traduire les verbes transitifs par un λ-terme comme : λxλx[x(λy aimer(x, y))]. Il résulte que cte fois-ci, dans le, le constituant qui joue le rôle de la fonction sera le V son argument sera le obj. Montrez que maintenant avec cte hypothèse, on peut traduire correctement «une chauvesouris aime un parapluie». Exercice 6 (Prépositions régies) Quel est le λ-terme qui ne fait rien 2? Supposons qu un V dit «transitif indirect», comme penser à ou compter sur c., se contruise syntaxiquement selon l arbre ci-dessous 3, mais que sémantiquement il fonctionne comme un verbe transitif ordinaire. pense Prep* PP à Dina Par quel λ-terme devrait se traduire cte préposition à? Testez votre réponse en traduisant «Alice pense à Dina». 2. Qui ne fait rien mais le fait bien, dans le cadre du λ-calcul. Il s agit de la fonction d identité, comme la fonction f(x) = x. 3. Attention : cte analyse syntaxique n est donnée qu à une fin didactique, pour cte exercice. Il est fort probable qu elle soit incorrecte par rapport à une syntaxe sérieuse du français. 2
Indices Exercice 2 Arbre de Alice Bruno dorment : S CoordP* Coord* V dorment Exercice 4 tigre myope λz[tigre(z) myope(z)] 4, car ça dénote l ensemble de tous les individus qui sont tigres myopes. Référez-vous au cours pour la traduction du déterminant un. Exercice 6 Le λ-terme qui ne fait rien, c est λx X (ou λx x, ou λξ ξ, c.). Il attend un X en argument comme valeur il rourne X. 4. Au nom de la variable près. 3
Solutions Exercice 1 Alice dort ronfle. S [dormir(a) ronfler(a)] Alice λp [P (a)] λx[dormir(x) ronfler(x)] CoordP* λqλx[[q(x)] ronfler(x)] dort λy dormir(y) Coord* λp λqλx[[q(x)] [P (x)]] ronfle λy ronfler(y) CoordP [λpλqλx[[q(x)] [P(x)]](λy ronfler(y))] (application fonctionnelle [Coord()]) = λqλx[[q(x)] [λy ronfler(y)(x)]] (β-réduction sur λp) = λqλx[[q(x)] ronfler(x)] (β-réduction sur λy) [λqλx[[q(x)] ronfler(x)](λy dormir(y))] (application fonctionnelle [CoordP()]) = λx[[λy dormir(y)(x)] ronfler(x)] (β-réduction sur λq) = λx[dormir(x) ronfler(x)] (β-réduction sur λy) S [λp[p(a)](λx[dormir(x) ronfler(x)])] (application fonctionnelle [()]) = [λx[dormir(x) ronfler(x)](a)] (β-réduction sur λy) = [dormir(a) ronfler(a)] (β-réduction sur λx) Exercice 2 Alice Bruno dorment : S [dormir(a) dormir(b)] λq[[q(a)] [Q(b)]] V Alice λp [P (a)] Coord* CoordP* dorment λx dormir(x) λxλy λq[[y (Q)] [X(Q)]] Bruno λp [P (b)] CoordP [λxλy λq[[y (Q)] [X(Q)]](λP[P(b)])] (application fonctionnelle [Coord()]) = λy λq[[y (Q)] [λp[p(b)](q)]] (β-réduction sur λx) = λy λq[[y (Q)] [Q(b)]] (β-réduction sur λp) [λy λq[[y (Q)] [Q(b)]](λP[P(a)])] (application fonctionnelle [CoordP()]) = λq[[λp[p(a)](q)] [Q(b)]] (β-réduction sur λy ) = λq[[q(a)] [Q(b)]] (β-réduction sur λp) 4
S [λq[[q(a)] [Q(b)]](λx dormir(x))] (application fonctionnelle [()]) = [[λx dormir(x)(a)] [λx dormir(x)(b)]] (β-réduction sur λq) = [dormir(a) dormir(b)] (β-réduction sur les 2 λx) Exercice 3 Le λ-terme λpλx[p(x)] est une fonction qui prend en arguments un prédicat (P) puis une variable x qui applique ce prédicat à cte variable ([P(x)]). Ce λ-terme procède juste à une application focntionnelle. James est myope : S myope(j) λx myope(x) James λp [P (j)] est λp λx[p (x)] AP Adj myope λy myope(y) [λpλx[p(x)](λy myope(y))] (application fonctionnelle [V(AP)]) = λx[λy myope(y)(x)] (β-réduction sur λp) = λx myope(x) (β-réduction sur λy) S [λp[p(j)](λx myope(x))] (application fonctionnelle [()]) = [λx myope(x)(j)] (β-réduction sur λp) = myope(j) (β-réduction sur λx) Exercice 4 tigre myope λz[tigre(z) myope(z)]. Si on a tigre λx tigre(x) myope λx myope(x) alors on ne peut pas directement les combiner pour faire tigre myope : aucun des deux ne peut jouer le rôle de la fonction car ces λ-termes attendent tous les deux un individu tous les deux sont des prédicats. λp x[[tigre(x) myope(x)] [P (x)]] D* un λqλp x[[q(x)] [P (x)]] N tigre λx tigre(x) N λy[tigre(y) myope(y)] AP* λnλy[[n(y)] myope(y)] myope λx myope(x) AP [λaλnλy[[n(y)] [A(y)]](λx myope(x))] (règle donnée par l énoncé) = λn λy[[n(y)] [λx myope(x)(y)]] (β-réduction sur λa) = λn λy[[n(y)] myope(y)] (β-réduction sur λx) N [λnλy[[n(y)] myope(y)](λx tigre(x))] (application fonctionnelle [AP(N)]) = λy[[λx tigre(x)(y)] myope(y)] (β-réduction sur λn) = λy[tigre(y)] myope(y)] (β-réduction sur λx) [λqλp x[[q(x)] [P(x)]](λy[tigre(y)] myope(y)])] (application fonctionnelle [D(N )]) = λp x[[λy[tigre(y)] myope(y)](x)] [P(x)]] (β-réduction sur λq) = λp x[[tigre(x)] myope(x)] [P(x)]] (β-réduction sur λx) 5
Exercice 5 Essayons de composer le V le obj : [λp z[ppl(z) [P(z)]](λyλx aimer(x, y))] (application fonctionnelle [(V)]) = z[ppl(z) [λyλx aimer(x, y)(z)]] (β-réduction sur λp) = z[ppl(z) λx aimer(x, z)] (β-réduction sur λy) Le problème qui se pose est que cte expression n est pas exactement un λ-terme (du moins pas comme ceux que nous avons l habitude d utiliser). Elle contient un λ-terme, mais en soi elle n est pas une fonction. Essayons maintenant de la composer avec le suj : S [λp y[ch-s(y) [P(y)]]( z[ppl(z) λx aimer(x, z)])] (application fonctionnelle [()]) = y[ch-s(y) [ z[ppl(z) λx aimer(x, z)](y)]]] (β-réduction sur λp) Et ici on est bloqué, car y n est pas donné en argument à la fonction λx aimer(x, z), la position des crochs empêche cela. Il faudrait avoir : [λx aimer(x, z)(y)], mais ce n est pas ce qu on a. Version correcte : Une chauve-souris aime un parapluie : S y[ch-s(y) z[ppl(z) aimer(y, z)]] une chauve-souris λp y[ch-s(y) [P (y)]] λx z[ppl(z) aimer(x, z)]] aime λxλx[x(λy aimer(x, y))] un parapluie λp z[ppl(z) [P (z)]] [λxλx[x(λy aimer(x, y))](λp z[ppl(z) [P(z)]])] (application fonctionnelle [V()]) = λx[λp z[ppl(z) [P(z)]](λy aimer(x, y))] (β-réduction sur λx) = λx z[ppl(z) [λy aimer(x, y)(z)]] (β-réduction sur λp) = λx z[ppl(z) aimer(x, z)]] (β-réduction sur λy) S [λp y[ch-s(y) [P(y)]](λx z[ppl(z) aimer(x, z)]])] (application fonctionnelle [()]) = y[ch-s(y) [λx z[ppl(z) aimer(x, z)]](y)] (β-réduction sur λp) = y[ch-s(y) z[ppl(z) aimer(y, z)]] (β-réduction sur λp) Exercice 6 Le λ-terme qui ne fait rien, c est λx X (ou λx x, ou λξ ξ, c.). Il attend un X en argument comme valeur il rourne X. Si on traite comme des transitifs les verbes qui sous-catégorisent de PP, alors le PP joue un rôle de compl d obj direct, comme un, c est-à-dire comme s il n y avait pas de préposition. Par conséquent une telle préposition pourra se traduire par le λ-terme qui ne fait rien : λx X. L intérêt, c est que c est quand-même un λ-terme on pourra donc utiliser la règle de composition fonctionnelle comme d habitude dans l arbre syntaxique. Et si les verbes transitifs indirects sont traités comme des transitifs ordinaires, ils seront traduits comme : penser λxλx[x(λy penser(x, y))]. Alice pense à Dina : 6
S penser(a, d) Alice λp [P (a)] λx penser(x, d) PP λp [P (d)] pense λxλx[x(λy penser(x, y))] Prep* à λx X Dina λp [P (d)] PP [λx X(λP[P(d)])] (application fonctionnelle [Prep()]) = λp[p(d)] (β-réduction sur λx) [λxλx[x(λy penser(x, y))](λp[p(d)])] (application fonctionnelle [V(PP)]) = λx[λp[p(d)](λy penser(x, y))] (β-réduction sur λx) = λx[λy penser(x, y)(d)] (β-réduction sur λp) = λx penser(x, d) (β-réduction sur λy) S [λp[p(a)](λx penser(x, d))] (application fonctionnelle [()]) = [λx penser(x, d)(a)] (β-réduction sur λp) = penser(a, d) (β-réduction sur λx) 7