Constraint Guide - Systems

Guide to Constraint Programming

© Roman Barták, 1998

Systems

[pioneers] [environments] [solvers] [applications]

This page contains a growing list of systems and programming languages exploiting the constraint technology. I expect to extend this list successively and to add some description, references and supported platforms to each system.

Contributions to this page are very welcomed. I do not maintain this web page anymore, but if you have a new link to repair the link that does not work, please send it to me.

If you are looking for empirical comparison of some constraint solvers, read the following papers:

  • Antonio J. Fernández, Patricia M. Hill: A Comparative Study of Eight Constraint Programming Languages Over the Boolean and Finite Domains, Constraints Journal 5 (3): 275-301, Kluwer, July 2000. [Springer Link]


Pioneering Systems

ALICE

a pioneering system for CSPs modeling and solving

J.L. Lauriere


J.L. Lauriere: ALICE: A Language and a Program for Solving Combinatorial Problems, in Artificial Intelligence, 10:29-127, 1978

CLP(R)

a pioneering constraint logic programming system

Joxan Jaffar


J. Jaffar, S. Michaylov, P. Stuckey & R. Yap: The CLP(R) language and system, in ACM Transactions on Programming Languages and Systems 14 (3): 339-395, 1992

Sketchpad

a pioneering constraint system (early 1960s)

Ivan Sutherland

interactive drawing system, allowing the user to build geometric objects from language primitives and certain constraints

I. Sutherland: Sketchpad: a man-machine graphical communication system, in: Proceedings of the IFIP Spring Joint Conference, 1963

ThingLab

successor of Sketchpad

Alan Borning

interactive drawing system, included a facility for compiling constraint satisfaction plans

A. Borning: The programming language aspects of ThingLab, a constraint oriented simulation laboratory, in ACM Transaction on Programming Languages and Systems 3, pp. 353-387, 1981


Programming Environments

BackTalk

an object-oriented library for constraint satisfaction implemented in Smalltalk

Pierre Roy, François Pachet, Anne Liret

B Prolog

a compact and nearly complete CLP system that runs Prolog and CLP(FD) programs

Neng-Fa Zhou

CHIP

Constraint Handling in Prolog
a complete environment for the design and development of decision support systems

Cosytec

CHR

Constraint Handling Rules (CHR) are a high-level language extension to write constraint solvers

Thom Fruehwirth

clp(FD,S)

a generic language for semiring-based constraint solving

Yan Georget

Choco

a java library for constraint satisfaction problems (CSP), constraint programming (CP) and explanation-based constraint solving (e-CP)

Fran輟is Laburthe,Narendra Jussien

Comet

an Object Oriented Programming Language for Constraint-Based Local Search (MacOS X and Linux)

Pascal Van Hentenryck, Laurent Michel

Cream

a class library helping Java programmers to develop intelligent programs requiring constraint satisfaction or optimization on finite domains.

Naoyuki Tamura

The CSP Library

a basic CSP solver written in C++

Tudor Hulubei

Disolver

a distributed constraint solver written as a C++ library

Youssef Hamadi

ECLiPSe

ECRC Logic Programming System, now open source

Crosscore

FaCiLe

a constraint programming library over integer finite domain written in OCaml.

Pascal Brisset & Nicolas Barnier

Gecode

an open, free, portable, accessible, and efficient environment for developing constraint-based systems and applications

Christian Schulte

GNU Prolog

a free Prolog compiler with constraint solving over finite domains

Daniel Diaz

G12

a software platform for solving large scale industrial combinatorial optimisation problems

University of Melbourne
Monash University and others

HAL

constraint programming language that combines ideas from Mercury and constraint logic programming

University of Melbourne
Monash University

HySAT

HySAT is a satisfiability checker for Boolean combinations of arithmetic constraints over real- and integer-valued variables which can also be used as a bounded model checker for hybrid (discrete-continuous) systems

Universit舩 Oldenburg

ILOG-Solver

a library of constraint algorithms designed to work with C++ programs

ILOG

IF/Prolog

PROLOG implementation with constraint technology package

IF Computer

JaCoP

Java Constraint Progamming

Radoslaw Szymanek, Krzysztof Kuchcinski

JCK

Java Constraint Kit based on Constraint Handling Rules

CWG at LMU Munchen

JCL

Java Constraint Library

Marc Torrens

Koalog Constraint Solver

a constraint solver written in Java

Koalog

MINERVA

ISO-PROLOG implementation in Java with interface for writing constraint solvers

IF Computer

Minion

fast black-box constraint solver

Gent, Jefferson, Miguel, Petrie

Mozart (former Oz)

concurrent constraint programming framework

DFKI

NSolver

NSolver is a programming language extension for ECMA CLS-compliant languages. It adds constraint programming capabilities to CLS-compliant languages, such as MS .NET languages - J#, C#, C++.NET, VB.NET, JScript.NET.

Andy Chun

Prolog IV

Prolog system with integrated non-linear, Boolean and list constraint solver

PrologIA

Python Constraints

a constraint satisfaction problem solver written in python

Logilab

SICStus Prolog

Prolog development system with integrated finite domain constraint solver

SICS

Screamer

an extension of Common Lisp that provides a comprehensive constraint programming language

Jeffrey M. Siskind
David A. McAllester

TOY

constraint functional logic system, designed to support the main declarative programming styles and their combination

Fernando S疇nz P駻ez


Constraint Solvers

Artelys Kalis

an extensible constraint programming framework enabling the user to define its own constraints and search heuristics , available as a C++ library.

Artelys

Cassowary

an incremental constraint solving toolkit for solving hierarchical systems of linear equalities and inequalities

Greg J. Badros
Alan Borning

DeltaBlue

an efficient, incremental local propagation constraint solver for solving hierarchical systems of linear equalities

University of Washington

Interval Solver for Microsoft Excel

a commercial implementation of interval constraints on the spreadsheet platform

Delisoft

UniCalc

a solver of algebraic nonlinear equations and inequalities

RRIAI


Applications exploiting constraint technology

Specman

A tool for hardware verification, It generates inputs based on a chip's
specification , injects them to the (simulated) chip and verifies the chip's
states and outputs.

Verisity

[pioneers] [environments] [solvers] [applications]

Designed and maintained by Roman Barták

AltStyle によって変換されたページ (->オリジナル) /