44 using namespace Float;
69 using namespace Float;
93 using namespace Float;
100 post(home,x0,x1,
r.var())));
104 post(home,x0,x1,
r.var())));
108 post(home,x0,x1,
r.var())));
119 post(home,x0,x1,
n)));
123 post(home,x0,x1,
n)));
127 post(home,x0,x1,
n)));
139 post(home,x0,x1,
r.var())));
143 post(home,x0,x1,
r.var())));
147 post(home,x0,x1,
r.var())));
160 post(home,x0,x1,
n)));
164 post(home,x0,x1,
n)));
168 post(home,x0,x1,
n)));
181 using namespace Float;
207 GECODE_ES_FAIL((Rel::ReEqFloat<FloatView,Int::NegBoolView,RM_EQV>::
211 GECODE_ES_FAIL((Rel::ReEqFloat<FloatView,Int::NegBoolView,RM_PMI>::
215 GECODE_ES_FAIL((Rel::ReEqFloat<FloatView,Int::NegBoolView,RM_IMP>::
261 GECODE_ES_FAIL((Rel::ReLeFloat<FloatView,Int::NegBoolView,RM_EQV>::
265 GECODE_ES_FAIL((Rel::ReLeFloat<FloatView,Int::NegBoolView,RM_PMI>::
269 GECODE_ES_FAIL((Rel::ReLeFloat<FloatView,Int::NegBoolView,RM_IMP>::
281 GECODE_ES_FAIL((Rel::ReLqFloat<FloatView,Int::NegBoolView,RM_EQV>::
285 GECODE_ES_FAIL((Rel::ReLqFloat<FloatView,Int::NegBoolView,RM_PMI>::
289 GECODE_ES_FAIL((Rel::ReLqFloat<FloatView,Int::NegBoolView,RM_IMP>::
303 using namespace Float;
308 for (
int i=
x.size(); i--; ) {
313 for (
int i=
x.size(); i--; ) {
314 FloatView xi(
x[i]);
GECODE_ES_FAIL((Rel::NqFloat<FloatView>::post(home,xi,c)));
318 for (
int i=
x.size(); i--; ) {
323 for (
int i=
x.size(); i--; ) {
329 for (
int i=
x.size(); i--; ) {
334 for (
int i=
x.size(); i--; ) {
346 using namespace Float;
350 for (
int i=
x.size(); i--; ) {
355 for (
int i=
x.size(); i--; ) {
360 for (
int i=
x.size(); i--; ) {
365 for (
int i=
x.size(); i--; ) {
370 for (
int i=
x.size(); i--; ) {
375 for (
int i=
x.size(); i--; ) {
int n
Number of negative literals for node type.
Home class for posting propagators
Less or equal propagator.
Binary disequality propagator.
Reified less or equal propagator.
Exception: Unknown reification mode passed as argument
Exception: Unknown relation passed as argument
Reification specification.
Propagator for set equality
Reified equality propagator
#define GECODE_POST
Check for failure in a constraint post function.
#define GECODE_ES_FAIL(es)
Check whether execution status es is failed, and fail space home.
#define GECODE_ME_FAIL(me)
Check whether modification event me is failed, and fail space home.
void rel(Home home, FloatVar x0, FloatRelType frt, FloatVar x1)
Post propagator for .
FloatRelType
Relation types for floats.
@ FRT_LQ
Less or equal ( )
@ FRT_GQ
Greater or equal ( )
@ RM_IMP
Implication for reification.
@ RM_PMI
Inverse implication for reification.
@ RM_EQV
Equivalence for reification (default)
void check(int n, const char *l)
Check whether n is in range, otherwise throw out of limits with information l.
Gecode toplevel namespace
Post propagator for SetVar SetOpType SetVar SetRelType r
Post propagator for SetVar SetOpType SetVar y
TFE post(PropagatorGroup g)
Only post functions (but not propagators) from g are considered.
Post propagator for SetVar x