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:
nodes in a DirectedAcyclicGraph, that can be combined with Least Upper Bound and Greatest Lower Bound. This is a strict generalization of the Integer Numbers problem and of the BooleanLogic (compare BooleanLattice).
elements from semi ring
this is a strict generalization of the lattice formulation allowing fuzzy solutions and solutions to optimization problems