[ library(gfd) | Reference Manual | Alphabetic Index ]
precede(+S, +T, +Collection)
Constrains S to precede T in Collection
- S
- Integer
- T
- Integer
- Collection
- Collection of integers or (domain) variables
Description
Constrains the first appearance of value S to precede the first
appearance of value T in the ordered collection of elements in
Collection. S and T do not have to appear in Collection: if only
S appears, the constraint will succeed, and if only T appears,
the constraint will fail. If neither appears, the constraint will
succeed.
This constraint is known as int_value_precede in the Global
Constraint Catalog, and is implemented using Gecode's precede()
constraint (variant with int arguments for s and t).
Examples
[eclipse 14]: precede(0,1, [4,0,6,1,0]). % succeed (0 appears before 1)
[eclipse 15]: precede(0,1, [](4,0,6,1,0)). % succeed (0 appears before 1)
[eclipse 16]: precede(0,1, [A,B,C,D,E]).
A = A{[-1000000 .. 0, 2 .. 1000000]}
B = B{[-1000000 .. 1000000]}
C = C{[-1000000 .. 1000000]}
D = D{[-1000000 .. 1000000]}
E = E{[-1000000 .. 1000000]}
[eclipse 17]: precede(0,1, [4,1,6,0,0]). % fail (1 appears before 0)
See Also
precede / 2, eclipse_6 : collection_to_list / 2, lists : collection_to_list / 2