%Test whether \a x is solution
| 288 | : Test("Trigonometric::ASin::XX::"+s,1,d,st,CPLT_ASSIGNMENT,false) {} |
| 289 | /// %Test whether \a x is solution |
| 290 | virtual MaybeType solution(const Assignment& x) const { |
| 291 | if ((x[0].min() > 1.0) || (x[0].max() < -1.0)) |
| 292 | return MT_FALSE; |
| 293 | return eq(asin(x[0]), x[0]); |
| 294 | } |
| 295 | /// Post constraint on \a x |
| 296 | virtual void post(Gecode::Space& home, Gecode::FloatVarArray& x) { |
| 297 | Gecode::asin(home, x[0], x[0]); |