Content deleted Content added
Stub classification. At the very least, I think, a list of languages should be required. Also see comments (not mine) on talk page. |
No edit summary |
||
Line 16:
*[[Finite|finite]] domains, where constraints are defined over [[countable set]]s
*Mixed domains, involving two or more of the above
Constraint laguages are typically embedded in a host language. The first host language used was [[Prolog]], so the field was initially called Constraint Logic Programming. THe two paradigms share many important features, like logical variables (i.e., once a variable is assigned a value, it cannot be changed), [[backtracking]]. Nowadays, most [[Prolog]] implementations include one or more libraries for constraint logic programming.
Some popular constraint languages are
*[http://choco.sourceforge.net/ Choco] ([[Java programming language|Java]] based)
*[http://clip.dia.fi.upm.es/Software/Ciao/ Ciao Prolog] ([[Prolog]] based)
*[http://www.icparc.ic.ac.uk/eclipse/ ECLiPSe] ([[Prolog]] based)
*[http://www.ilog.com/products/solver/ ILOG Solver] (C++ based)
*[http://www.mozart-oz.org/ Mozart]
*[http://www.sics.se/isl/sicstuswww/site/index.html SICStus] ([[Prolog]] based)
Finite ___domain solvers are useful for solving [[Constraint satisfaction problem|Constraint satisfaction problems]], and are often based on Arc-Consistency (see [[AC-3 algorithm]]), or one of its approximations.
[[Category:Programming paradigms]]
|