From d91d600e1414c937f8ac3cf7545752f243592613 Mon Sep 17 00:00:00 2001 From: "Jip J. Dekker" Date: Wed, 28 Jul 2021 17:26:18 +1000 Subject: [PATCH] Add missing example to reification chapter --- chapters/4_half_reif.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chapters/4_half_reif.tex b/chapters/4_half_reif.tex index 7fd62fa..81fb18e 100644 --- a/chapters/4_half_reif.tex +++ b/chapters/4_half_reif.tex @@ -204,9 +204,9 @@ Instead, a new explicit \(check\) method has to be devised to implement the \gls In comparison, a \gls{propagator} for the \gls{reif} of \(c\) cannot be created from these three logical task. In addition, we require the logical task from a \gls{propagator} of \(\neg{} c\): \(checkNeg\), \(pruneNeg\), and \(entailedNeg\). -Using these additional functions, we can define an algorithm for the \gls{propagator}, shown in \cref{alg:reif-prop} -Although this might seem reasonable for small \constraints{}, such as integer equality, for many \glspl{global} their negation is hard to define. -\todo{Insert good example of global constraint.} +Using these additional functions, we can define an algorithm for the \gls{propagator}, shown in \cref{alg:reif-prop} Although this might seem reasonable for small \constraints{}, such as integer equality, for many \glspl{global} their negation is hard to define. +For example, the negation of the \mzninline{all_different} \constraint{} is a \constraint{} that forces that at least two values are equal. +This far from a common \constraint{} and we are not aware of any \solver{} that implements a \gls{propagator} for it. \begin{algorithm}[t]