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.

5Prolog löst dieses Problem, <strong>in</strong>dem es die Schreibweise der Regel auswertet und demNegationsdefault für das im Kopf auftretende Prädikat ger<strong>in</strong>gere Priorität gibt als denender Rumpfprädikate. In diesem Fall würde sich also ¬ausnahme(tweety) durchsetzen.Hätte man die Regel dagegen <strong>in</strong> der logisch äquivalenten Schreibweiseausnahme(X) ← vogel(X) ∧ ¬kann fliegen(X)formuliert, so wäre es gerade umgekehrt, es würde ausnahme(tweety) angenommen.Es f<strong>in</strong>det also auch bisher schon e<strong>in</strong>e Spezifikation der <strong>Defaults</strong> statt, wenn auch nurihrer Prioritäten. Diese Spezifikation ist aber implizit und <strong>in</strong> den Regeln verborgen, redundantund möglicherweise <strong>in</strong>konsistent. Dabei ist es doch eher dem Prädikat ausnahmezuzuordnen, daß Ausnahmen eben selten s<strong>in</strong>d. Die zweite Schreibweise sollte dem ke<strong>in</strong>enAbbruch tun.Wesentlich größer s<strong>in</strong>d die Schwierigkeiten bei der Darstellung von unvollständigerInformation. Es gibt e<strong>in</strong>e ganze Reihe unterschiedlicher Vorschläge für die Semantik derimpliziten Negation. Explizite <strong>Defaults</strong> helfen nun e<strong>in</strong>erseits, diese Vorschläge zu erklärenund mite<strong>in</strong>ander zu vergleichen, und andererseits, dem Benutzer oder <strong>Datenbanken</strong>twerferdie Wahl zu lassen, welche Vervollständigung er verwenden will (entsprechend derjeweiligen Anwendung).Wozu s<strong>in</strong>d <strong>Defaults</strong> noch nützlich?Die implizite Negation ist aber ke<strong>in</strong>eswegs die e<strong>in</strong>zige Anwendung von <strong>Defaults</strong>.<strong>Defaults</strong> können etwa auch e<strong>in</strong> Mittel zur Erklärung se<strong>in</strong>. Es ist ja durchaus üblich,erst die allgeme<strong>in</strong>e Regel anzugeben, und dann die Ausnahmen. So sagt man etwa ”Vögelkönnen fliegen“:kann fliegen(X) ← vogel(X).Das ist natürlich e<strong>in</strong>e stark vergröberte Aussage, da es zahlreiche Ausnahmen gibt:¬kann fliegen(X) ← p<strong>in</strong>gu<strong>in</strong>(X).¬kann fliegen(X) ← strauss(X).¬kann fliegen(X) ← flügel gebrochen(X).Trotzdem ist die Trennung <strong>in</strong> die allgeme<strong>in</strong>e Regel und <strong>in</strong> ihre Ausnahmen sehr hilfreichfür die Darstellung (vermutlich s<strong>in</strong>d die genannten Ausnahmen ja noch nicht e<strong>in</strong>malvollständig). Mit <strong>Defaults</strong> kann man dieses Beispiel so aufschreiben wie hier gezeigt. Manhat nur darauf zu achten, daß e<strong>in</strong>e Ausnahme e<strong>in</strong>e höhere Priorität als die allgeme<strong>in</strong>e Regelhat, so daß sie sich durchsetzt, wenn beide anwendbar s<strong>in</strong>d.Wenn man nun nicht mehr die e<strong>in</strong>zelnen Regeln betrachtet, sondern die spezifiziertenObjekte, so entspricht dies e<strong>in</strong>er Spezialisierung. Man geht aus von e<strong>in</strong>er e<strong>in</strong>fachenSpezifikation e<strong>in</strong>es ”typischen Vogels“ und verfe<strong>in</strong>ert sie schrittweise zu e<strong>in</strong>em typischenP<strong>in</strong>gu<strong>in</strong>, zu e<strong>in</strong>em typischen Neuseeländischen Goldschopfp<strong>in</strong>gu<strong>in</strong>, und schließlich zu e<strong>in</strong>emspeziellen Exemplar dieser Art.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!