Known as CLP in LogicProgramming papers. Programming with constraints. Operation proceeds by searching all solutions by a ConstraintSolver?.
There are some variants of PrologLanguage, that provide this. Note, that the domains over which the constraints can be defined vary.
Typical domains are:
- BooleanLogic (true and false)
- Sets
- e.g. set inclusion constraints or existential or universal uantification over membership Examples: see SetOrientedProgramming
- Real Numbers
- e.g. constraints of the form a + b <= c over (solved by LinearAlgebra)
- Integer Numbers
- e.g. constraints of the form a + b <= c over Integer Numbers
- elements from a LatticeStructure
- elements from semi ring
- this is a strict generalization of the lattice formulation allowing fuzzy solutions and solutions to optimization problems
Related: LogicProgramming, DeclarativeProgramming, ProgrammingParadigm, ConstraintProgramming