Computerlinguistik II, WS 2007/08 Aufgabenblatt 1 -------------------------------------------------------------- Abgabe: Do, 1.11.07 Aufgabe 1: Schreiben Sie ein auf einem Vollformenlexikon aufbauendes --------- Flexionsprogramm für Nomen im Deutschen. a) Was sind die Merkmale, von der die Form eines Nomens abhängt? Definieren Sie die möglichen Formen durch form(nomen,-Formmerkmale). analog zu form(vfin,Formmerkmale) aus verbflexion_vlex.pl. Der Numerus soll die Werte sg (Singular) und pl (Plural) haben, der Kasus die Werte nom (Nominativ), gen (Genitiv), dat (Dativ) und akk (Akkusativ). Die Formmerkmale sollen als Liste [Numerus,Kasus] angegeben werden. Punkte 2 b) Auf den Vorlesungsfolien ist ein Vollformenlexikon für Verben mit Einträgen der Form wort(Stammform,v(Artmerkmale,Formmerkmale),Vollform) angegeben und darauf aufbauend ein Flexionsprogramm verbflexion(+Stammform), das alle (abstrakten) finiten Verbformen und die konkrete Vollform der jeweiligen Stammform am Bildschirm anzeigt. Schreiben Sie entsprechend ein Deklinationsprogramm für ein Voll- formenlexikon für Nomen: 1. Geben Sie die Nomen-Einträge für ein Vollformenlexikon wort(Stammform,n(Artmerkmale,Formmerkmale),Vollform) für die Nomen 'Planet' und 'Mond' an. Die Stammform sei die im Singular, Nominativ. Unter 'Artmerkmale' soll eine Liste stehen, die nur das Genus ('mask', 'fem' oder 'neut') enthält. Punkte 3 Bem.: Benutzen Sie einfache Anführungszeichen, also 'Planet', damit ihre Nomen nicht als Prolog-Variable behandelt werden. 2. Geben Sie ein Programm nomenflexion(+Stammform) an, das die Formen des Nomens mit der angegebenen Stammform am Bildschirm ausgibt. Wir benutzen im Lexikon statt 'nomen' einfach 'n' und statt 'relationsnomen' (für Nomen, deren Bedeutung eine 2-stellige Relation ist, z.B. Schwester, Planet (von)) einfach 'rn', und statt Eigennamen 'en'. Führen Sie formen(n,Formmerkmale) und formen(rn,Formmerkmale) auf die Definition von formen(nomen,Formmerkmale) aus Teil a) zurück. Punkte 4 Geben Sie mit Ihren Lexikoneinträgen und Programmen auch deren Ausgabe für die Beispiele 'Planet', 'Mond' und 'Kepler' an! Alternative für diejenigen, die noch gar kein Prolog kennen: ----------------------------------------------------------- Wahlweise können Sie statt b),2. das Kapitel 1 aus dem unter e) auf unserer Kursseite angegebenen Online-Kurs http://www.coli.uni-saarland.de/~kris/learn-prolog-now/ durcharbeiten und Lösungen der dort angegebenen Exercise 1.3 und Exercise 1.4 abgeben. Aufgabe 2 (Morphologie) --------- Auf den Folien sind für die regelmäßige Verbflexion mit einem Stammlexikon (Morphologie/flexion_slex.pl) zwei Endungstabellen, angegeben, die normalen Endungen in (1) konjugation(rg, +Formmerkmale,-Endung) und die in manchen Fällen um ein e erweiterten normalen Endungen in (2) konjugation(rge,+Formmerkmale,-Endung). Man kann sich die zweite Tabelle sparen, indem man statt der Fakten eine Programmregel konjugation(rge,Formmerkmale,Endung) :- ... schreibt, die die Endung aus der entsprechenden normalen Endung (unter rg) und dem evtl. voranzustellenden e zusammensetzt. Schreiben Sie die entsprechende Programmklausel, sodaß sich dieselbe Endungstabelle wie bei den Fakten aus (2) ergibt. Punkte 4