haskelzinc-0.3.1.0: CP in Haskell through MiniZinc
This package was created in the context of the GRACeFUL project.
The haskelzinc library defines an interface to the MiniZinc 2.1 constraint proramming language. It provides a Haskell abstract syntax tree for the MiniZinc language, with which one can represent MiniZinc models in Haskell, a pretty printer to print the representation of a MiniZinc model in MiniZinc, a parser that returns a representation of the solutions obtained by running the MiniZinc model and a set of functions useful for building a custom FlatZinc solutions parser.
An additional module gives the possibility to directly get the solutions of a MiniZinc finite domain model. Option for interactive interface is provided, as well as choice between two solvers: the G12/FD built-in solver of FlatZinc and choco3.
- Interfaces
- Interfaces.FZSolutionParser FlatZinc solutions parser
- Interfaces.MZAST More human-friendly interface for Interfaces.MZASTBase
- Interfaces.MZASTBase MiniZinc abstract syntax tree
- Interfaces.MZBuiltIns MiniZinc built-in predicates, tests and functions
- Interfaces.MZPrinter MiniZinc pretty-printer
- Interfaces.MZinHaskell Integration of MiniZinc 2.0 in Haskell
- TimeSpaceConstr
- TimeSpaceConstr.ActionSequences Interface for constructing action sequence expressions
- TimeSpaceConstr.TimeSpaceConstr Interface for constructing time space constraints