next up previous contents
Next: Operational semantics Up: Constraint Languages and Relational Previous: Relational Extension

Definite clauses

A definite clause is an -constraint of the form:

displaymath10865

where tex2html_wrap_inline10871 , tex2html_wrap_inline10873 and q are atoms and tex2html_wrap_inline10795 is an -constraint. We call q the head of a clause and tex2html_wrap_inline10873 its body. We may write a clause as tex2html_wrap_inline10883 or simply as tex2html_wrap_inline10885 . In case the head and the body of a clause is empty, we call the clause an empty clause. In general, an empty clause is of form

displaymath10866

A definite clause specification is a set of definite clauses. Höhfeld and Smolka show that important properties of conventional logic programs extend to definite clause specifications, especially the existence of a unique minimal model for each interpretation in .

A goal is a possibly empty conjunction of -atoms and an -constraint, written as:

displaymath10867

that is, a clause with an empty head (or consequent). An S-answer to a goal with respect to a given definite specification S is a satisfiable constraint tex2html_wrap_inline10795 , such that tex2html_wrap_inline10889 is valid for every minimal model of S.



Guenter Neumann
Mon Oct 5 14:01:36 MET DST 1998