Aufrufe
vor 4 Jahren

Mathematische und logische Grundlagen der Linguistik

Mathematische und logische Grundlagen der Linguistik

66 Kapitel 4 Beispiel:

66 Kapitel 4 Beispiel: Die Ausdrucksmenge {p(f(x),z), p(y,a)} ist unifizierbar beispielsweise durch den Unifikator ={y/f(a),x/a,z/a}. p(f(x),z)=p(f(a),a)=p(y,a). Ein allgemeinster Unifikator ist ={y/f(x),z/a}. Es gilt ={x/a}. Unifikationsalgorithmus Eingabe: zwei einfache Ausdrücke und Ausgabe: der allgemeinste Unifikator von und Sind und gleiche Konstanten oder gleiche Variable, so sind sie mit der leeren Substitution { } unifizierbar. Sind sie verschiedene Konstante schlägt die Unifikation fehl. Ist eine Variable, die nicht in vorkommt, so sind und mit der Substitution {/} unifizierbar. Kommt in vor, so schlägt die Unifikation fehl. Sind und Funktionen mit gleichem Funktor und gleicher Stelligkeit (Argumentzahl) (f(s1,…, sn) bzw. f(t1,…,tn)) so sind sie unifizierbar, wenn jedes Argumentpaar ti, si, i=1 … n unifizierbar ist. Andernfalls schlägt die Unifikation fehl. Definition 4.30. Unterschiedsmenge Sei A eine endliche Menge von einfachen Ausdrücken. Die UNTERSCHIEDSMENGE (engl. disagreement set) von A ist wie folgt definiert. Ermittle die am weitesten links stehende Symbolposition an der nicht alle Ausdrücke in A das gleiche Symbol haben und extrahiere aus jedem Ausdruck in A den Teilausdruck, der an dieser Symbolposition beginnt. Die Menge all dieser Teilausdrücke ist die Unterschiedsmenge. Beispiel: Sie A={p(f(x), h(y), a), p(f(x), z, a), p(f(x), h(y), b)}. Dann ist die Unterschiedsmenge {h(y), z}. Ein Unifikationsalgorithmus kann auf dieser Grundlage präziser und einfacher wie folgt angegeben werden (A sei eine endliche Menge von einfachen Ausdrücken): UNIFIKATIONSALGORITHMUS 1. Setze k=0 und 0= 2. Wenn Ak (d.h. die Anwendung von k auf A) eine Einermenge ist (nur aus einem Element besteht), dann halt; k ist der allgemeinste Unifikator von A. Andernfalls ermittle die Unterschiedsmenge Dk von Ak. 3. Gibt es ein v und ein t in Dk, so daß v eine Varialbe ist, die in t nicht vorkommt, dann setze k+1 = k{v/t}, erhöhe k um 1 und gehe zu 2. Andernfalls halt; A ist nicht unifizierbar. 4. Beispiel: Sei A={p(a , x, h(g(z))), p(z, h(y), h(y))} (a) 0= (b) D0={a,z}, 1={z/a}, und A1={p(a, x, h(g(a))), p(a, h(y), h(y))}. (c) D1={x, h(y)}, 2={z/a, x/h(y)} und A2={p(a,h(y), h(g(a))), p(a,h(y), h(y))}. (d) D2={g(a), y}, 3={z/a, x/h(g(a)), y/g(a)} und A3={p(a,h(g(a)),h(g(a)))}. Also ist A unifizierbar und 3 ist ein allgemeinster Unifikator.

4.8. Anwendungsbeispiel Grundbegriffe der Prädikatenlogik 67 Zur besseren Vergleichbarkeit soll das gleiche Beispiel wie in Abschnitt 3. verwendet werden: the girl laughed. Es soll also nach dem Resolutionsverfahren bewiesen werden, daß die Aussage Satz(the⁀girl⁀laughed) wahr ist. Wir legen dafür die gleiche Grammatik zugrunde, allerdings in Klauselnotation. Der Bequemlichkeit halber soll sie hier noch einmal wiederholt werden: (4.58.) PS-Grammatik in Klauselnotation R1: Satz(x1⁀y1)NP(x1), VP(y1) R2: NP(x2⁀y2)Det(x2), N(y2) R3: NP(x3)Name(x3) R4: VP(x4⁀y4)Vt(x4), NP(y4) R5: VP(x5)Vi(x5) Lexikon: Det(the) N(boy) N(girl) N(ball) Name(John) Name(Mary) Vt(loves) Vt(kicked) Vi(jumped) Vi(laughed) Damit die Resolution durchgeführt werden kann, ist erforderlich, daß in zwei verschiedenen Klauseln ein Literal einmal positiv und einmal negativ vorkommt. Hier zeigt sich der syntaktische Vorteil von Programmklauseln, insofern nur der Kopf ein positives Literal sein kann, während der Rumpf nur aus negativen Literalen besteht. Zur Beseitigung eines Literals aus dem Rumpf einer Klausel müssen wir versuchen, dieses mit dem Kopf einer Programmklausel zu unifizieren. Die Prämissen sind die Programmklauseln (einschließlich Einheitsklauseln) der Grammatik. Gemäß dem Verfahren des indirekten Beweises nehmen wir zunächst die Negation der zu beweisende Aussage zu den Prämissen hinzu. (4.59.) Satz(the⁀girl⁀laughed) Es handelt sich um ein negatives Literal, so daß wir die Klauselnotation (4.60.) Satz(the⁀girl⁀laughed), d.h. eine Zielklausel, erhalten. Im folgenden Beweis steht Z für Zielklausel, P für Programmklausel, U für Unifikator und R für Resolvente. Die Resolvente ist jeweils die Zielklausel für den nächsten Schritt:

Böttle - Friedrichs Mathematische und elektrotechnische Grundlagen
Kapitel 3: Grundbegriffe der Aussagenlogik
Die Grundlagen der Arithmetik. Eine logisch mathematische ...
Mathematisch-logische Grundlagen: Musterbaustein - w3L
Logische Grundlagen des Mathematikunterrichts - Mathematik und ...
Logischer und mengentheoretischer Formalismus — ¨Argernis, und ...
Logischer und mengentheoretischer Formalismus — ¨Argernis, und ...
Zweites Kapitel Grundlagen der logischen Theoriebildung und die ...
Mathematisch-logische Grundlagen der Informatik - w3L
MATHEMATISCHE GRUNDLAGEN DER QUANTENMECHANIK
Grundlagen der mathematischen Modellierung und numerischen ...
Mathematische Grundlagen der Kryptographie
Mathematische Grundlagen für Forstwissenschaften - Fakultät für ...
Die Einheit der Wirklichkeit in logischer und mathematischer ...
Mathematische Grundlagen - G-CSC Home
Mathematisches Denken und Arbeiten
2. Mathematische Grundlagen der Linearen Programmierung
Mathematische Grundlagen - RheinAhrCampus