38 namespace Gecode {
namespace Float {
namespace Branch {
50 if ((a == 0) == nl.
l) {
51 if ((x.
min() == nl.
n) || (x.
max() == nl.
n))
52 return x.
eq(home,x.
min());
54 return x.
lq(home,nl.
n);
56 if ((x.
min() == nl.
n) || (x.
max() == nl.
n))
57 return x.
eq(home,x.
max());
59 return x.
gq(home,nl.
n);
69 std::ostream& o)
const {
70 o <<
"var[" << i <<
"] " 71 << (((a == 0) == nl.
l) ?
"<=" :
">=") <<
"(" << nl.
n <<
")";
ValCommitLqGq(Space &home, const ValBranch< Var > &vb)
Constructor for initialization.
ModEvent gq(Space &home, int n)
Restrict domain values to be greater or equal than n.
Value commit class for less or equal or greater or equal.
int ModEvent
Type for modification events.
ModEvent commit(Space &home, unsigned int a, FloatView x, int i, FloatNumBranch n)
Commit view x at position i to value n for alternative a.
ModEvent eq(Space &home, int n)
Restrict domain values to be equal to n.
Base class for value commit.
Gecode::IntArgs i(4, 1, 2, 3, 4)
FloatNum n
The middle value for branching.
Value description class for branching.
FloatNum min(void) const
Return minimum of domain.
bool l
Whether to try the lower or upper half first.
Float view for float variables.
Value branching information.
NGL * ngl(Space &home, unsigned int a, FloatView x, FloatNumBranch n) const
Create no-good literal for alternative a.
FloatNum max(void) const
Return maximum of domain.
struct Gecode::@585::NNF::@62::@64 a
For atomic nodes.
void print(const Space &home, unsigned int a, FloatView x, int i, FloatNumBranch n, std::ostream &o) const
Print on o the alternative with view x at position i and value n.
Post propagator for SetVar x
Gecode toplevel namespace
ModEvent lq(Space &home, int n)
Restrict domain values to be less or equal than n.
No-good literal recorded during search.