3.1 Finite Domain Constraints

Finite domain (FD) constraints have become quite popular and are widely supported. A finite domain variable I denotes an integer. However, we may not know exactly which integer. Typically we only know that it must be one of a finite number of possibilities, e.g. one of 1,2 or 7. This would be represented by a basic constraint:

I\in\{1,2,7\}

Suppose, we have a second FD variable J\in\{2,3,4\}. If we unify them I=J, their domains are intersected thus resulting in the conclusion I=J=2. This technique underlies the efficient treatment of agreement: if I encodes the agreement information on one word and J on another and the 2 words must agree, then the constraint I=J enforces this agreement.


Denys Duchier
Version 1.2.0 (20010221)