Computerlinguistik II, WS 2007/08 Aufgabenblatt 2 -------------------------------------------------------------- Abgabe: Do, 08.11.07 H.Leiß Im Aufgabenblatt 1 ging es um Flexion mit einem Vollformenlexikon. Jetzt geht es um Flexionsprogramme mit einem Stammformenlexikon. Aufgabe 2: (Flexionsprogramm für Nomen im Deutschen) --------- Schreiben Sie ein Deklinationsprogramm für ein Stammformenlexikon: 1. Geben Sie den Deklinationsklassen, nach denen die Beispiele 'Planet' und 'Mond' dekliniert werden, einen Namen und geben Sie die Endungstabellen als Prädikat deklination(+Deklinationsklasse,+Formmerkmale,-Endung) an. 2. Schreiben Sie damit ein Programm dekliniere(+Deklinationsklasse,+Stammform,+Formmerkmale,-Vollform) das die Vollform aus der Stammform und der passenden Endung zusammensetzt. (Umlautung im Stamm soll nicht berücksichtigt werden.) 3. Geben Sie --analog zu flexion_slex:verbflexion/2-- ein Programm nomenflexion(Deklinationsklasse,Stammform) an, das ein in seiner Stammform eingegebenes Nomen entsprechend der angegebenen Deklinationsklasse in alle Vollformen setzt und diese am Bildschirm ausgibt. Wer noch keine Erfahrung mit Prolog hat, sollte die Programme (analog zu den in der Vorlesung behandelten Beispielen zur Verbflexion) schreiben, ohne sie in Prolog zu testen. Wer Prolog schon benutzt hat, sollte seine Programme an den beiden Beispielwörtern auch testen und die Ergebnisse mit abgeben. Punkte 3 Aufgabe 3 --------- Die Beispielgrammatik aus Beispiele/programmierer.pl hat als Kategorien einfache Atome s, np, vp, n, v, det. Mit der Grammatik werden also keine Kongruenzbedingungen überprüft, sodaß sie auch fehlerhafte Sätze wie das Programmierer schrieb der Programm erzeugt. a) Geben Sie den Prolog-Aufruf an, mit dem Sie testen, ob die Grammatik diesen Satz erzeugen kann. Punkte 2 b) Ändern Sie die Grammatik so, daß die Determinatoren (Artikel) und die Nomen keine Atome, sondern Terme n(Genus,Kasus) und det(Genus,Kasus) sind, und passen Sie die Regeln so an, daß in den NP-Regeln die Übereinstimmung von Genus und Kasus zwischen Artikel und Nomen garantiert wird. Punkte 3 c) Zeigen Sie (durch Angabe der Prolog-Aufrufe und -Antworten), daß Ihre Grammatik zwar den Satz der Programmierer schrieb das Programm, aber nicht den Satz das Programmierer schrieb der Programm zu erzeugen erlaubt. Punkte 2