pcp
pcp copied to clipboard
Constraint programming in Rust
[MiniZinc](http://minizinc.org/) is one of the most used modeling language for constraint programming. The interesting point with MiniZinc is that it compiles the model to an intermediate format, called flat minizinc,...
The problem with `Addition::new(x, -b)` is that `b` needs to be signed. We therefore needs a `Subtraction` term. Both can be implemented with a more general structure `ArithTerm` where `Addition...
Variable and constraint store can be parametrized by numerous type arguments. It would be beneficial to provide a generic test framework such that new components (such as a new domain,...
It will probably be possible once we won't use search combinators anymore. It should be replaced by `IntoIterator`.
Recomputation is a technique for saving state. It recomputes the variable store from some save point in the past. It is faster than previous search because there is no search...
For the moment `Status` contains a variant `Unknown(Vec)` but what if we separate the branches from the status? It would mean that even in case of satisfiability or unsatisfiability a...