ConsistencyModule is the optional module specification to give the consistency level for the propagation for this constraint: gfd_gac for generalised arc consistency (domain consistency), gfd_bc for bounds consistency, and gfd_vc for value consistency
This constraint is known as strictly_increasing (#>), increasing (#=>), . strictly_decreasing (#<), decreasing (#<=), all_equal (#=), not_all_equal (#\=) in the Global Constraint Catalog, and is implemented using Gecode's rel() constraint (variant with an IntVarArgs and an IntRelType).
[eclipse 9]: ordered((#<), [1,2,3,4]).
Yes (0.00s cpu)
[eclipse 10]: ordered((#<), [1,2,2,3,4]).
No (0.00s cpu)
[eclipse 11]: ordered((#=<), [1,2,3,4]).
Yes (0.00s cpu)
[eclipse 12]: ordered((#=<), [1,2,2,3,4]).
Yes (0.00s cpu)
[eclipse 13]: ordered((#>), [4,3,2,1]).
Yes (0.00s cpu)
[eclipse 14]: ordered((#>), [4,3,3,2,1]).
No (0.00s cpu)
[eclipse 15]: ordered((#>=), [4,3,2,1]).
Yes (0.00s cpu)
[eclipse 16]: ordered((#>=), [4,3,3,2,1]).
Yes (0.00s cpu)
[eclipse 17]: ordered((#=), [2,2,3,3]).
No (0.00s cpu)
[eclipse 18]: ordered((#=), [2,2,2,2]).
Yes (0.00s cpu)
[eclipse 19]: ordered((#\=), [2,2,3,3]).
Yes (0.00s cpu)
[eclipse 20]: ordered((#\=), [2,2,2,2]).
No (0.00s cpu)
[eclipse 21]: ordered((#>), [2]).
Yes (0.00s cpu)
[eclipse 22]: ordered((#\=), [X]).
No (0.00s cpu)
[eclipse 23]: [A,B] :: 3..7, [C,D] :: 4..10, ordered((#=), [A,B,C,D]).
A = A{[4 .. 7]}
B = B{[4 .. 7]}
C = C{[4 .. 7]}
D = D{[4 .. 7]}
Yes (0.00s cpu)
[eclipse 24]: [A,B] :: 3..7, [C,D] :: 4..10, ordered((#>), [A,B,C,D]).
A = 7
B = 6
C = 5
D = 4