Computerlinguistik II, WS 2005/06 Aufgabenblatt 6 -------------------------------------------------------------- Abgabe: Mi, 19.1.06 Aufgabe 11: ---------- Vereinfachen Sie die folgenden Lambda-Term schrittweise nach den Reduktionsregeln (S. 120 ff.). Zeigen Sie die nötigen Beta-Reduktionsschritte, aber schreiben Sie bei den Umbennenungen (Alpha-Reduktionen) einfach das Ergebnis hin. a) lam(X, lam(Y,Y*X)) * X Punkte 1 b) lam(X, lam(Y,Y*X)) * Y Punkte 1 c) lam(X, lam(Y,Y*X)) * Z Punkte 1 d) ((lam(X, lam(Y,Y*X)) * U) * V) * W Punkte 2 e) (lam(X, lam(Y, Y*X)) * a) * lam(X, X*b) Punkte 3 f lam(X,(lam(X, lam(Y, Y*X)) * X) * a) Punkte 3 g) lam(X,X*lam(Y,X*(Y*a))) * lam(Z,(b*X)*(Z*Y)) Punkte 4 Aufgabe 12: ---------- Unser Programm beta/3 für die Vereinfachung von Lambda-Termen lam(X,R)*S macht vor der Einsetzung von S in R eine Umbennenung der durch Lambda "gebundenen" Variablen von lam(X,R), aber keine Umbennenung der durch die Quantoren "all" und "ex" gebundenen. Daher erhalten wir z.B. (interne Variablen _G148 von Hand ersetzt) ?- normalize(lam(P,all(Y,P*Y => beobachtet(X,Y))) * lam(Z,ex(Y,umkreist(Z,Y))), Normalform). Normalform = all(Y, ex(Y, umkreist(Y, Y))=>beobachtet(X, Y)) und das ist offensichtlich falsch: die Normalform sollte all(A, ex(B, umkreist(A, B))=>beobachtet(X,A)) lauten. Können Sie das Programm der beta- und alpha-Reduktion so ändern, daß auch die all- und ex-quantifizierten Variablen richtig behandelt werden? Punkte 4 Aufgabe 13 ---------- Nochmal zur Semantik: Wir wollen die PL-Formel zu einer einfachen NL-Aussage so berechnen: 1. eine Nominalphrase wird aus der NL-Aussage entnommen, an ihrer Stelle durch eine Individuenvariable ersetzt: (... NP ...) |-> (... X ...) 2. Aus der Formel (... X ...) machen wir ein Prädikat: (... X ...) |-> lam(X,(... X ...)) 3. Die NP wird auf dieses Prädikat angewendet: NP * lam(X, (... X ...)) 4. Dazu muß die NP ein Lambda-Term der Form NP |-> lam(P, (....P*Y...)) werden, die aus Prädikaten P mit Hilfe der Anwendung P*Y auf Individuen eine PL-Formel erzeugt. Auf den Folien ist die Semantik von NP's so definiert, daß wir erhalten: 4.' Kepler |-> lam(P,P*kepler) der Uranus |-> lam(P,P*uranus) der Astronom Kepler |-> lam(P,astronom(kepler) & P*kepler) Führen Sie 1.-3. mit einem intransitiven Verb an den Beispielen a) Kepler arbeitet. b) der Astronom Kepler arbeitet. unter Verwendung von 4.' durch und vereinfachen Sie den entstehenden Ausdruck (von Hand). Punkte 4 (Na ja, in 1. schreiben Sie statt (X arbeitet) besser arbeitet(X).)