Extend assignment \a x
| 77 | } |
| 78 | /// Extend assignment \a x |
| 79 | virtual bool extendAssignment(Assignment& x) const { |
| 80 | Gecode::FloatVal d = sin(x[0]); |
| 81 | if (Gecode::Float::subset(d, dom)) { |
| 82 | x.set(1, d); |
| 83 | return true; |
| 84 | } else { |
| 85 | return false; |
| 86 | } |
| 87 | } |
| 88 | /// Post constraint on \a x |
| 89 | virtual void post(Gecode::Space& home, Gecode::FloatVarArray& x) { |
| 90 | Gecode::sin(home, x[0], x[1]); |