Prolog Language
Extra-logische Prädikate
Suche…
Prädikate mit Nebenwirkungen
Prädikate, die Nebeneffekte erzeugen, verlassen den Bereich der reinen Logik. Dies sind zum Beispiel:
-
writeq/1
-
read/1
-
format/2
Nebenwirkungen sind Phänomene, über die im Programm nicht zu denken ist. Zum Beispiel Löschen einer Datei oder Ausgabe auf dem Systemterminal.
Meta-logische Prädikate
Prädikate, die die Instanziierung begründen, werden als meta-logisch bezeichnet . Beispiele sind:
-
var/1
-
ground/1
-
integer/1
Diese Prädikate liegen außerhalb des Bereichs rein monotoner Logikprogramme, da sie Eigenschaften wie die Kommutativität der Konjunktion brechen.
Andere meta- logische Prädikate sind:
-
arg/3
-
functor/3
-
(=..)/2
Diese Prädikate könnten grundsätzlich innerhalb der Logik erster Ordnung modelliert werden, erfordern jedoch eine unendliche Anzahl von Klauseln.
All-Solutions-Prädikate
Prädikate, die alle Lösungen begründen, sind außerlogisch. Dies sind zum Beispiel:
-
setof/3
-
findall/3
-
bagof/3
! / 0 und verwandte Prädikate
Prädikate, die ein deklaratives Lesen von Prolog-Programmen verhindern oder verbieten, sind extra logisch. Beispiele für solche Prädikate sind:
-
!/0
-
(->)/2
und wenn-dann-sonst -
(\+)/1
Diese Prädikate können nur prozedural verstanden werden, indem der tatsächliche Steuerfluss des Interpreters berücksichtigt wird und als solche jenseits der reinen Logik liegt.