Welcome to Constraining Order’s documentation!

Constraining Order is a pure python library for solving certain classes of constraint satisfaction problems (CSP). In particular it contains an implementation of IntervalSets to represent fairly general sets of real numbers.

Constraining Order works (at least) with Python 2.7, 3.4 and PyPy and is licensed under the MIT license.

Constraining Order is relatively flexible in the sense that many CSPs can be quickly modeled and new constraints can be implemented very easily. However it is not tuned towards high performance.

For serious problems there are much more powerful solutions available:

For python there are several packages for constraint satisfaction problems:

For a nice overview over the theoretical foundations, see e.g. [Tsang96].

The code is hosted on GitHub:



API Reference:

Indices and tables


[Tsang96]Tsang, E. Foundations of Constraint Satisfaction Academic Press, 1996