Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Semantik und Pragmatik Übung 5 Fragment 3 Lambda-Kalkül Beta-Reduktion Frank Schilder.

Ähnliche Präsentationen


Präsentation zum Thema: "Semantik und Pragmatik Übung 5 Fragment 3 Lambda-Kalkül Beta-Reduktion Frank Schilder."—  Präsentation transkript:

1 Semantik und Pragmatik Übung 5 Fragment 3 Lambda-Kalkül Beta-Reduktion Frank Schilder

2 Einführung zErweiterung des Fragmentes F3: Relativsätze zWie wird die semantische Information kompositionell erstellt?  Vom Satz zur Prädikatenlogik: Bond likes Loren. like(bond,loren) zEinführung Lambda-Kalkül: yGebundene Umbenennung yBeta-Reduktion zImplementation des Kalküls.

3 Struktur der Übung zFragment F3 zMotivation Lambda-Kalkül zFormale Spezifikation des Lambda-Kalkül: yAbstraktion yApplikation zBesprechung des Substitutionsansatzes: yBeta-Reduktion yUmbenennung der Variable

4 Fragment 3  Erweiterung des Fragments (frag3.pl) yNom -> Nom RS yRS -> RNP VP yRNP -> RPrN yRprN -> who zBeispielsatz: yA man who is boring likes Loren. zaber nicht: Loren who is cute likes a man.

5 Bausteine Der Turm besteht aus Bausteinen. Die Bausteine besitzen unter- schiedliche Funktionen. Die Bausteine müssen entspechend ihrer Funktion zusammenpassen. Der Baumeister erstellt einen Konstruktionsplan. Ein Turm entsteht nur, wenn die Bausteine sinnvoll zusammengesetzt werden!

6 Lambda-Kalkül zSemantischen „Bausteine“ der Sprache spezifizieren. zVerschiedene Bedeutungstypen bezeichnen. zDas Zusammenspiel der Bausteine formal und systematisch beschreiben. è Kompositionalitätsprinzip: Der Sinn des gesamten Satzes ergibt sich aus den Bedeutungen der Einzelwörter.

7 Bestandteile des Kalküls: Abstraktion  Abstraktion: Mit dem Lambda-Operator (  wird über eine Formel abstrahiert:  x [  y  like‘(x,y)   P [ x [ ÿ P(x)]] zDer „Baustein“ kann flexibel in verschiedene Kontexte eingebaut werden. zDie Funktion des Ausdrucks unterliegt bestimmten Beschränkungen (welchen?)

8 Bestandteile des Kalküls: Applikation zApplikation: Ein Ausdruck kann auf einen Lambda-Ausdruck appliziert werden:  x [ ÿ boring‘(x)] (loren) = ?  Anweisung: Nimm x und ersetze alle Vorkommnisse von x in der Formel durch loren! zZwei Bausteine werden zusammengesetzt und ergeben einen komplexen Bestandteil des Gesamtgebäudes.

9 Bedeutung erfassen= Bausteine zusammensetzen? Bond likes Loren (S) like(bond,loren) Bond (PN) likes (TV) Loren (PN) Bond (NP) likes Loren (VP) Loren (NP) bond like(?,?) loren like(?,loren)

10 Bedeutungen zusammensetzen! Bond likes Loren (S) like(bond,loren) Bond (PN) likes (TV) Loren (PN) Bond (NP) bond likes Loren (VP) Loren (NP) bond x y like(y,x) loren y like(y,loren) loren

11 Abstraktion in PROLOG zDer Lambda-Operator wird als zweistelliges Prädikat in PROLOG dargestellt:  x[  y  like‘(x,y)   lambda(X,lambda(Y,like(X,Y)) zaber...  P [ x [ ÿ P(x)]]  lambda(P,lambda(X,~P(X))) geht nicht, da ein Prädikat nicht als Variable dargestellt werden kann... Lösung über Applikation

12 Applikation in PROLOG zIn PROLOG wird die Ausführung der funktionalen Applikation zuerst »eingefroren«! yErst Repräsentation bilden und dann vereinfachen!  Applikation markieren  Z.B.  x [ ÿ boring‘(x)] (loren) ergibt loren  Argument).

13 Semantikeinträge zBedeutungskonstitutionsregel aus der Vorlesung:  I ([ s [ np  vp  ]]) = I ([ np  I  vp  ])) yDie Semantik der S-> NP VP Regel besagt:  Nehme die Bedeutung der NP ( I ([ np  und der VP ( I  vp  ])) und xappliziere die VP-Bedeutung auf die NP-Bedeutung zIn PROLOG wird die Grammatikregel erweitert:  ---> np(NP),vp(VP).

14 Semantische Bedeutung in PROLOG ableiten Bond likes Loren (S) Bond (PN) likes (TV) Loren (PN) Bond (NP) likes Loren (VP) bond lambda(Y,like(X,Y)))) loren

15 Substitutionsansatz zErfordernisse für eine korrekte Umsetzung des Lambda-Kalküls: yBeta-Reduktion yErsetzen der jeweiligen Argumentausdrücke yProtokollierung der freien und gebundenen Variablen in der Formel zDefinition eines Beta-Reduktions-Prädikats

16 Lambda-Konversation z Ein »Konversations«-Prädikat ist erforderlich: yalle Argumentausdrücke innerhalb des Skopus des Lambda-Operators ersetzt und ygleichzeitig alle gebundenen und freien Variablen der Formel überwacht.  Das Prädikat betaConvert/2 erhält einen »eingefrorenen« Lambda-Ausdruck und gibt die reduzierte Formel zurück.

17 Beta-Konversation  betaConvert(Var,Result):- var(Var), !, Result=Var.  Variablen können nicht weiter reduziert werden.  Arg,Result):- compound(Functor), betaConvert(Functor,lambda(X,Formula)), !,substitute(Arg,X,Formula, BetaReduced), betaConvert(BetaReduced,Result). zKomplexe Formeln werden weiterreduziert  X wird durch Arg ersetzt in der Formel

18 Beta-Konversation II  betaConvert(Formula,Result):- compose(Formula,Functor,Formulas), betaConvertList(Formulas,ResultFormulas), compose(Result,Functor,ResultFormulas). zFormel wird in Teilformeln zerlegt.  Ein Listen-Prädikat betaConvertList/2 ruft die Teilformeln mit betaConvert/2 auf.

19 Zusammenfassung zFragmenterweiterung F3: Relativsätze zDas Lambda-Kalkül erlaubt die genaue Spezifikation von einzelnen semantischen Lexikoneinträgen. zEin Substitutionsansatz für die Umsetzung des lambda-Kalküls in PROLOG: yApplikation wird »eingefroren« yBeta-Konversation durchläuft die Formel und reduziert den Ausdruck.

20 Quellenangaben zBlackburn/Bos, chapter 2 zPereira/Shieber, pp.91 zSystemprogramme:  mainLambda.pl  betaConversion.pl  frag3.pl  lexf3.pl  lcparserII.pl % left- corner parser % angepasst auf % Fragment 3 zDienstprogramme:  semMacrosLambda.pl  readLine.pl  comsemPredicates.pl


Herunterladen ppt "Semantik und Pragmatik Übung 5 Fragment 3 Lambda-Kalkül Beta-Reduktion Frank Schilder."

Ähnliche Präsentationen


Google-Anzeigen