Constraints

B-Prolog supports constraints over four different types of domains: finite-domains, Boolean, trees, and finite sets. The symbol #= is used to represent equality and #\= is used to represent inequality for all the four types of domains. The system decides what solver to call at run-time based on the types of the arguments. In addition to the four types of domains, B-Prolog provides a declarative interface to linear programming (LP) and mixed programming (MIP) packages through which LP/MIP problems can be described in a CLP fashion. Currently, the GLPK13.1 and CPLEX13.2 packages are supported.13.3 This chapter describes the four types of constraint domains as well as the linear programming interface. There are a number of books devoted to constraint solving and constraint programming (e.g., [5,12,7,11]).



Subsections

Neng-Fa Zhou 2012-01-03