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

#\=(?ExprX, ?ExprY, ?Bool)

Reified ExprX is not equal to ExprY (with integrality constraints).
ExprX
Integer arithmetic expression
ExprY
Integer arithmetic expression
Bool
Reified truth value of the constraint

Description

This predicate is a reified constraint: it succeeds if and only if the truth value of its associated constraint (the constraint with arity one less and the same arguments except for B) is equal to B, where the value 0 means false and 1 true. This constraint can be used both to test the validity of the associated constraint (entailment test) and to impose this constraint or its negation. For the former, B will be instantiated as soon as either the associated constraint or its negation is subsumed by the current state of its domain variables. For the latter, when B is instantiated, then depending on its value, either the associated constraint or its negation will be imposed on its arguments.

See Also

#< / 3, #=< / 3, #= / 3, #>= / 3, #> / 3, suspend : =\= / 3, #\= / 2, suspend : #\= / 3, gfd : #\= / 3, fd : #\= / 3