Constraint logic programming is a form of
constraint programming, in which
logic programming is extended to include concepts from
constraint satisfaction. A constraint logic program is a logic program that contains constraints in the body of clauses. An example of a clause including a constraint is
A(X,Y) :- X+Y>0, B(X), C(Y)
. In this clause,
X+Y>0
is a constraint;
A(X,Y)
,
B(X)
, and
C(Y)
are
literals as in regular logic programming. This clause states one condition under which the statement
A(X,Y)
holds:
X+Y
is greater than zero and both
B(X)
and
C(Y)
are true.