Beyond Integer Domains: The All Different and Global Cardinality Constraints

Speaker: Claude-Guy Quimper

After giving a brief summary of general principles in constraint programming, we will present two constraints: the all different constraint and the global cardinality constraint. These two constraints usually operate on integer variables. We will show how these constraints can be adapted to work on other types of variables such as set, tuple, and multiset variables. Non integer variables reduce the space needed to represent possible domain values, improve the efficiency of constraint propagators and inherit all the usual benefits of data abstraction like ease of debugging and code maintenance.