Defaults in deduktiven Datenbanken
Defaults in deduktiven Datenbanken
Defaults in deduktiven Datenbanken
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
40 KAPITEL 2. DEDUKTIVE DATENBANKENFolgerung; außerdem bräuchte man dazu eigentlich e<strong>in</strong>en Modulbegriff, denn natürlichsollen diese neuen Axiome den Inhalt der Datenbank nicht ändern.Def<strong>in</strong>ition 2.3.2 (Korrekte Antwort): E<strong>in</strong>e nichtleere Menge {θ 1 , . . . , θ n } von Σ-Grundsubstitutionen für die Ergebnisvariablen e<strong>in</strong>er Anfrage ψ heißt korrekte Antwortauf ψ genau dann, wennΦ ⊢ c ψθ 1 ∨ · · · ∨ ψθ n .E<strong>in</strong>e korrekte Antwort heißt def<strong>in</strong>it, wenn sie aus genau e<strong>in</strong>em Element besteht. E<strong>in</strong>e korrekteAntwort heißt m<strong>in</strong>imal, wenn ke<strong>in</strong>e echte Teilmenge von ihr ebenfalls e<strong>in</strong>e korrekteAntwort ist.E<strong>in</strong>e Antwort soll also Werte (Konstanten) für die Ergebnisvariablen der Anfrage bestimmen,derart, daß die entstehende Formel aus den Informationen <strong>in</strong> der Datenbank folgt.Dabei wird e<strong>in</strong>e vervollständigte Folgerungsbeziehung ⊢ c verwendet, um die <strong>Defaults</strong> zuberücksichtigen. Natürlich kann ⊢ c auch durch e<strong>in</strong>e modelltheoretische oder syntaktischeVervollständigung gegeben se<strong>in</strong>, wie oben beschrieben.Außerdem s<strong>in</strong>d disjunktive Antworten zulässig, die mehr als e<strong>in</strong>e Substitution angeben[Gre69, Rei78]. Dies erlaubt es, disjunktive Informationen <strong>in</strong> der Datenbank direktabzufragen. Würde es ke<strong>in</strong>e disjunktiven Antworten geben, müßte man entsprechend disjunktiveAnfragen aufschreiben und könnte niemals sicher se<strong>in</strong>, auch ausreichend vieleDisjunktionsglieder aufgeschrieben zu haben. Natürlich s<strong>in</strong>d nur m<strong>in</strong>imale disjunktiveAntworten <strong>in</strong>teressant.Schließlich beachte man noch, daß Antworten hier alle Variablen mit Konstantenbelegen müssen (da es sich um Grundsubstitutionen handelt). Dies ist e<strong>in</strong> Unterschiedzu Prolog, wo die Antworten auch Variablen enthalten können. Tatsächlich ist dieseForderung aber bei bereichsbeschränkten Formeln sehr natürlich, denn solche Antwortenkönnten niemals logisch korrekt se<strong>in</strong> (Korollar 2.1.23). Bei Vervollständigungen ist diesdagegen nur e<strong>in</strong>e Festlegung (nicht beweisbar).Natürlich gibt es e<strong>in</strong>e ganze Reihe von Alternativen zu dieser Def<strong>in</strong>ition von korrekterAntwort. So kann man etwa den Begriff der Substitution vermeiden, wenn man stattdessendie Gleichheit verwendet (siehe etwa [Bra88]). Interessant ist auch die Def<strong>in</strong>ition<strong>in</strong> [CGS89]: Hier ist e<strong>in</strong>e Antwort auf e<strong>in</strong>e disjunktive Anfrage ψ 1 ∨ · · · ∨ ψ n e<strong>in</strong>e Disjunktionvon Grundbeispielen der ψ i , also e<strong>in</strong>e Formel der Art ψ i1 θ 1 ∨· · ·∨ψ im θ m . Dies hat denEffekt, daß die Antwort spezifischer se<strong>in</strong> kann als die Anfrage (m < n), denn man erfährtauch, welche Disjunktionsglieder erfüllt s<strong>in</strong>d. Allerd<strong>in</strong>gs dürfte <strong>in</strong> dem typischen Fall e<strong>in</strong>ernicht-disjunktiven Anfrage diese Art von Antworten länger und unübersichtlicher se<strong>in</strong> alsdie oben def<strong>in</strong>ierten.Unabhängigkeit von der SignaturDie Korrektheit e<strong>in</strong>er Antwort sollte nicht davon abhängen, ob die Signatur außer den<strong>in</strong> den Axiomen und <strong>Defaults</strong> explizit auftretenden Konstanten noch weitere enthält.