10.07.2015 Aufrufe

Defaults in deduktiven Datenbanken

Defaults in deduktiven Datenbanken

Defaults in deduktiven Datenbanken

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

2.1. DIE VERWENDETE LOGIK 13Zahlen). Hier hilft e<strong>in</strong>e E<strong>in</strong>schränkung der zulässigen Anfragen, Axiome und <strong>Defaults</strong> aufsogenannte bereichsbeschränkte“ Formeln. Dies ist im Datenbankbereich üblich, aber”dieser Begriff muß hier natürlich an die Erweiterung auf quantorenfreie Formeln undallgeme<strong>in</strong>e <strong>Defaults</strong> angepaßt werden. Im Endeffekt kann man dann beweisen, daß esgenügt, Herbrandmodelle über den aktuell vorkommenden Konstanten zu betrachten.Damit ist die E<strong>in</strong>führung der Datentypen ke<strong>in</strong>e echte Verallgeme<strong>in</strong>erung, aber doch vongroßem praktischen Nutzen.Die Gleichheit wird hier als e<strong>in</strong>gebautes Prädikat behandelt. Sie ist wichtig, umSchlüsselbed<strong>in</strong>gungen formulieren zu können. In relationalen <strong>Datenbanken</strong> ist diese Formvon Integritätsbed<strong>in</strong>gungen ja vielfach bewährt, und natürlich s<strong>in</strong>d sie <strong>in</strong> <strong>deduktiven</strong> <strong>Datenbanken</strong>m<strong>in</strong>destens ebenso nützlich. Man erhält so die Möglichkeit, nicht-generierendeFunktionssymbole (etwa vater von“) durch Prädikate zu simulieren. Es sei an dieser”Stelle noch bemerkt, daß <strong>Defaults</strong> die Berücksichtigung von Integritätsbed<strong>in</strong>gungen auchbei der Anfrage-Auswertung erfordern, nicht nur bei Änderungsoperationen. Der Grundist, daß <strong>Defaults</strong> Integritätsbed<strong>in</strong>gungen widersprechen können, und dann natürlich nichtangenommen werden dürfen. Bisher werden Integritätsbed<strong>in</strong>gungen höchstens im Rahmender Optimierung [Wüt91] bei der Anfrageauswertung berücksichtigt.Natürlich wäre es auch möglich, e<strong>in</strong> benutzerdef<strong>in</strong>iertes Prädikat equal“ e<strong>in</strong>zuführen,”dem mit Axiomen die Bedeutung der Gleichheit gegeben wird. Dies führt aber zu erheblichemAufwand bei der Anfrageauswertung, so daß das Gleichheitsprädikat <strong>in</strong> automatischenBeweisern normalerweise mit e<strong>in</strong>er speziellen Deduktionsregel behandelt wird, derParamodulation [CL73]. Außerdem vere<strong>in</strong>facht es die Spezifikationsarbeit, wenn e<strong>in</strong> gewisserGrundstock fest <strong>in</strong>terpretiert wird, also nicht durch Formeln unabsichtlich geändertwerden kann. Aus demselben Grund ist hier die Sortierung der Prädikate und Konstanten<strong>in</strong> die Logik e<strong>in</strong>gebaut.E<strong>in</strong>e Logik hat im allgeme<strong>in</strong>en vier Komponenten [GB84]: die Signaturen, die Interpretationen,die Formeln, und die erfüllt“-Relation zwischen Interpretationen und”Formeln. Diese Komponenten sollen nun für die hier verwendete Logik def<strong>in</strong>iert werden,wobei besonders auf die Bedeutung aus Datenbanksicht e<strong>in</strong>gegangen wird.SignaturenIn den Formeln e<strong>in</strong>er <strong>deduktiven</strong> Datenbank kommen Bezeichner wie angestellter“ vor,”mit denen der Bezug zur Anwendungswelt hergestellt werden soll. Die Deklaration dieserBezeichner geschieht <strong>in</strong> Form e<strong>in</strong>er Signatur. Zur Vere<strong>in</strong>fachung der Def<strong>in</strong>itionen enthaltendie Signaturen hier auch die vordef<strong>in</strong>ierten Symbole der Datentypen. Natürlichwürden diese <strong>in</strong> e<strong>in</strong>er praktischen Spezifikationssprache nicht explizit deklariert.In der Prädikatenlogik muß e<strong>in</strong>e Signatur offensichtlich m<strong>in</strong>destens die Prädikate (Relationssymbole)festlegen, die <strong>in</strong> den Formeln verwendet werden können. Dies ist auchbei e<strong>in</strong>em relationalen Datenbanksystem erforderlich. Dagegen werden hier ke<strong>in</strong>e Attributnamenbenötigt, weil die Argumente der Prädikate wie im Bereichskalkül über ihrePosition identifiziert werden.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!