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.



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow