[ library(gfd) | Reference Manual | Alphabetic Index ]

<ConsistencyModule:> =>(+ConX,+ConY,Bool)

Bool is the reified truth of constraint ConX implying the truth of ConY.
ConX
Constraint
ConY
Constraint
Bool
Reified truth value of the constraint (array notation accepted)

Description

Equivalent to BX #= (ConX), BY #= (ConY), Bool #= (BX #=< BY)

The two constraints are reified in such a way that Bool is true if ConX being true implies that ConY must also be true. ConX and ConY must be constraints that have a corresponding reified form.

ConsistencyModule is the optional module specification to give the consistency level for the propagation for this constraint: gfd_bc for bounds consistency, and gfd_gac for domain (generalised arc) consistency.

This constraint is implemented using Gecode's MiniModel's rel() for both integer and boolean expressions, with sub-expressions/constraints not supported by MiniModel factored out and posted as auxiliary constraints.

A more restricted version of this constraint is defined in the global constraint catalog as 'imply', in that the reified truth value is the logical implication of 0/1 variables rather than constraints.

Modules

This predicate is sensitive to its module context (tool predicate, see @/2).

See Also

=> / 2, neg / 2, or / 3, xor / 3, and / 3, <=> / 3, suspend : => / 3, ic : => / 3