3.7.172. Open automaton constraint
A constraint for which the set of solutions can be recognised by a so called open automaton. An open automaton is a finite deterministic automaton taking as input a sequence of variables as well as a sequence of 0-1 variables . A variable set to value 0 means that the corresponding variable is removed from the sequence of variables .
Consider a constraint for which we already have a finite deterministic automaton that only accepts the set of solutions of . Constructing the finite deterministic automaton that only recognises the set of solutions to the open version of constraint can be done in a systematic way from the automaton . First, to each transition of we add the fact that the corresponding Boolean variable must also be equal to 1. Second, to each state of we add a loop transition for which the corresponding Boolean variable must be equal to 0 (since variable is ignored, we stay within the same state). FigureΒ 3.7.45 illustrates this construction in the context of the constraint and of its open counterpart, the constraint.