2.6.13. Negation

If constraint C 𝑒𝑛𝑡𝑟𝑦 holds then constraint C 𝑎𝑙𝑠𝑜 does not hold. Reciprocally, if constraint C 𝑎𝑙𝑠𝑜 holds then constraint C 𝑒𝑛𝑡𝑟𝑦 does not hold. Note that constraints C 𝑒𝑛𝑡𝑟𝑦 and C 𝑎𝑙𝑠𝑜 must also have exactly the same parameters, but not necessarily the same parameters restrictions.

EXAMPLE: As an example, the constraint C 𝑎𝑙𝑠𝑜 = 𝚗𝚘𝚝_𝚊𝚕𝚕_𝚎𝚚𝚞𝚊𝚕 (i.e., prevent all variables to be assigned the same value) is the negation of constraint C 𝑒𝑛𝑡𝑟𝑦 = 𝚊𝚕𝚕_𝚎𝚚𝚞𝚊𝚕 (i.e., enforce all variables to be assigned the same value).

Note that negation is also directly available for constraints which are defined by: