# Constraint logic programming

Topic | v1 | created by janarez |
Description

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. As in regular logic programming, programs are queried about the provability of a goal, which may contain constraints in addition to literals. A proof for a goal is composed of clauses whose bodies are satisfiable constraints and literals that can in turn be proved using other clauses.

##### Resources

5.0 rating 2.0 level 5.0 clarity 3.0 background – 1 rating

University lecture presentations. Charles University, Prague.

9.0 rating 8.0 level 5.0 clarity 4.0 background – 1 rating

Many CSP problems along with description and solutions in multiple languages.

7.0 rating 7.0 level 7.0 clarity 4.0 background – 1 rating

This chapter provides a broad overview of how logic programming, and in particular Answer Set Program...

This tutorial is for reasonably experienced SWI-Prolog programmers who want to use clp(fd). Additi...