Algebraic and logical semantics for CLP languages with dynamic scheduling

The first logic programming languages, such as Prolog, used a fixed left-to-right atom scheduling rule. Unfortunately, this meant that programs written in a clean, declarative style were often very inefficient, only terminated when certain inputs were fully instantiated or “ground,” and (if negation...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:The journal of logic programming Jg. 32; H. 1; S. 71 - 84
1. Verfasser: Marriott, Kim
Format: Journal Article
Sprache:Englisch
Veröffentlicht: Elsevier Inc 1997
ISSN:0743-1066, 1873-5789
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:The first logic programming languages, such as Prolog, used a fixed left-to-right atom scheduling rule. Unfortunately, this meant that programs written in a clean, declarative style were often very inefficient, only terminated when certain inputs were fully instantiated or “ground,” and (if negation was used) produced wrong results. For this reason, nearly all recent logic programming languages provide more flexible scheduling in which computation generally proceeds left-to-right but in which some calls are dynamically “delayed” until their arguments are sufficiently instantiated to allow the call to run efficiently. Despite the increasing practical importance of logic programming languages with dynamic scheduling, relatively little attention has been paid to their semantics. We lift the standard algebraic and logical soundness and completeness results for success and finite failure for constraint logic programs to constraint logic programming languages with dynamic scheduling. The proofs are quite simple and essentially rely on treating the delayed calls as part of the answer constraint.
Bibliographie:ObjectType-Article-2
SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 23
ISSN:0743-1066
1873-5789
DOI:10.1016/S0743-1066(96)00127-6