Zusammenfassung
In Kapitel 2 haben wir die Prädikatenlogik erster Stufe in ihren Grundzügen kennengelernt. In diesem Kapitel verwenden wir sie zur Definition des logischen Datenmodells. Die Syntax der zugrundeliegenden Sprache ist dabei im Gegensatz zu vielen in der Literatur aufgeführten deduktiven Datenbanksystemen sehr weit gefaßt. Als definierende Formel eines Datenbankprädikats erlauben wir eine beliebige Formel der Prädikatenlogik. Diese enge Anbindung an die Prädikatenlogik gestattet eine deskriptive Formulierung von Daten und Anfragen. Deduktive Datenbanken in dem von uns verwendeten Sinn werden auch unter der Bezeichnung logische Programme geführt.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Literatur
Für die Notation von Datenbankklauseln verwenden wir das Symbol «—, das die „umgedrehte“ Implikation darstellt: W1 — W2 - W2 —’ W,.
Die zu einem Prädikat korrespondierende Relation notieren wir durch Großschreibung des Bezeichners.
Wir nehmen zusätzlich an, daß die natürlichen Zahlen auf ein endliches Intervall beschränkt sind.
Üblicherweise erlaubt man als Selektionsbedingung eine beliebige Formel. Für unsere Zwecke ist diese eingeschränkte Form der Selektion allerdings ausreichend.
vgl. Aufgabe 2.4
vgl. Aufgabe 2.4 und Aufgabe 2.8.
SLDNF steht für „linear resolution with selection function for definite clauses augmented with negation as failure“.
Der Kürze halber identifizieren wir im folgenden die Knoten mit ihren Beschriftungen.
Die Variablenumbenennung stellt sicher, daß die Variablen der Eingabeklausel und der Zielklausel variablenfremd sind. Im anderen Fall bestünde die Gefahr, daß der Vorkommenstest eine erfolgreiche Unifikation verhindert. Ohne die Verwendung einer Variablenumbenennung besäße die Zielklausel p(x) bezüglich des Programms {p(f(x)) —} keine Nachfolger.
Negative Literale führen zur „rekursiven“ Konstruktion eines SLDNF-Baum. Die mathematisch korrekte Variante ist induktiv in der Anzahl der rekursiv gestellten Anfragen, dem sogenannten Schachtelungsgrad (Definition 3.29) eines SLDNF-Baums. Wir haben uns entschlossen, diese Definition nicht zu übernehmen, da sie insgesamt aus acht Teildefinitionen besteht, von denen zwei verschränkt rekursiv sind.
Aufgrund der verschachtelten Struktur der SLDNF-Bäume müßte an dieser Stelle eigentlich die Argumentation von Theorem 3.33 eingesetzt werden, wobei Rückgriffe auf Theorem 3.32 durch Rückgriffe auf die erste Induktionsannahme zu ersetzen wären. Wir verzichten aus Gründen der Übersichtlichkeit darauf.
Wir übersetzen hier den Begriff „allowed“ mit sicher, um die Korrespondenz zu sicheren Berechnunsgregeln deutlich zu machen.
Der Zusammenhang zwischen korrekten und berechneten Antwortsubstitutionen unter der Voraussetzung der Sicherheit wird in Lemma 3.45 und Lemma 3.46 genauer beleuchtet.
In Verallgemeinerung der in Definition 3.41 festgelegten Begriffe führen wir in Abschnitt 6.1.2 Modusdeklarationen ein. Wird p durch bedingt sichere Klauseln definiert, so wird dies durch die Modusdeklaration p(+,Chrw(133), +) ausgedrückt. Entsprechend verwendet man die Modusdeklaration p(,), wenn die p definierenden Klauseln sicher sind.
Bei der Aufstellung der Wahrheitstabellen ist es nützlich, U als unvollständige Berechnung zu interpretieren, die durchaus F oder T als Ergebnis haben kann. Aus diesem Grund kann z. U nicht F sein, da sich U zu F entwickeln könnte.
Die Behandlung negativer Literale erinnert an die Vorgehensweise beim Nachweis allquantifizierter Aussagen der Form Vx(W): Man zeigt die Aussage W[x/a] für ein beliebiges Element a. Werden an das Element a im Beweisverlauf keine einschränkenden Bedingungen geknüpft, gilt W für alle Belegungen von x und mithin Vx(W).
Da in definiten Programmen keine negativen Literale auftreten, wird die „Negation as Failure“-Regel nicht benötigt. Wir betrachten in diesen Fall nur die sogenannte SLD-Resolution.
Für eine ausführliche Diskussion sei der Leser auf [Shepherdson 88] und [Kunen 88] verwiesen.
Da Funktionen nicht interpretiert werden, können wir im zweiwertigen Fall ein Modell durch eine Menge von Grundatomen (Herbrand-Modell) darstellen und im dreiwertigen Fall durch eine Menge von Grundliteralen oder zwei Mengen von Atomen.
Da wir ein definites Programm D betrachten, ist die Menge der Grundatome, die aus D folgt, identisch mit der Menge, die aus comp(D) folgt.
Vgl. Abschnitt 3.3.3, in dem wir ebenfalls syntaktische Beschränkungen verwenden, um abgeschwächte Vollständigkeitsergebnisse für die SLDNF-Resolution zu erhalten.
Bei semantischen Betrachtungen kann die Forderung nach Endlichkeit der Datenbank entfallen. In der Regel faßt man eine Datenbank D als Abkürzung für die Menge aller Grundinstanzen ID] auf.
Der Terminus „perfektes Modell“ hat in der Literatur eine allgemeinere Bedeutung (siehe [Przymusinski 89a]).
Man spricht von nichtmonotoner Logik, wenn nach Hinzufügen neuer Prämissen vorherige Schlußfolgerungen nicht mehr gültig sind.
Wir verwenden für den englischen Begriff „stable model“ die deutsche Übersetzung „stabiles Modell”.
Wie wir in Beispiel 3.3 gesehen haben, kann das Komplement der transitiven Hülle allerdings unter Verwendung von Funktionssymbolen berechnet werden (Aufruf: —,connected(G,A,B)).
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 1994 Springer Fachmedien Wiesbaden
About this chapter
Cite this chapter
Cremers, A.B., Griefahn, U., Hinze, R. (1994). Deduktive Datenbanken. In: Deduktive Datenbanken. Artificial Intelligence / Künstliche Intelligenz. Vieweg+Teubner Verlag, Wiesbaden. https://doi.org/10.1007/978-3-663-09572-9_3
Download citation
DOI: https://doi.org/10.1007/978-3-663-09572-9_3
Publisher Name: Vieweg+Teubner Verlag, Wiesbaden
Print ISBN: 978-3-528-04700-9
Online ISBN: 978-3-663-09572-9
eBook Packages: Springer Book Archive