Generated on Thu Feb 21 2013 23:11:51 for Gecode by doxygen 1.8.3.1
arithmetic.cpp File Reference

(Revision: 10684)

#include "test/int.hh"
#include <cmath>
#include <algorithm>

Go to the source code of this file.

Classes

class  Test::Int::Arithmetic::MultXYZ
 Test for multiplication constraint More...
 
class  Test::Int::Arithmetic::MultXXY
 Test for multiplication constraint with shared variables More...
 
class  Test::Int::Arithmetic::MultXYX
 Test for multiplication constraint with shared variables More...
 
class  Test::Int::Arithmetic::MultXYY
 Test for multiplication constraint with shared variables More...
 
class  Test::Int::Arithmetic::MultXXX
 Test for multiplication constraint with shared variables More...
 
class  Test::Int::Arithmetic::SqrXY
 Test for squaring constraint More...
 
class  Test::Int::Arithmetic::SqrXX
 Test for squaring constraint with shared variables More...
 
class  Test::Int::Arithmetic::SqrtXY
 Test for square root constraint More...
 
class  Test::Int::Arithmetic::SqrtXX
 Test for square root constraint with shared variables More...
 
class  Test::Int::Arithmetic::DivMod
 Test for division/modulo constraint More...
 
class  Test::Int::Arithmetic::Div
 Test for division constraint More...
 
class  Test::Int::Arithmetic::Mod
 Test for modulo constraint More...
 
class  Test::Int::Arithmetic::AbsXY
 Test for absolute value constraint More...
 
class  Test::Int::Arithmetic::AbsXX
 Test for absolute value constraint with shared variables More...
 
class  Test::Int::Arithmetic::MinXYZ
 Test for binary minimum constraint More...
 
class  Test::Int::Arithmetic::MinXXY
 Test for binary minimum constraint with shared variables More...
 
class  Test::Int::Arithmetic::MinXYX
 Test for binary minimum constraint with shared variables More...
 
class  Test::Int::Arithmetic::MinXYY
 Test for binary minimum constraint with shared variables More...
 
class  Test::Int::Arithmetic::MinXXX
 Test for binary minimum constraint with shared variables More...
 
class  Test::Int::Arithmetic::MaxXYZ
 Test for binary maximum constraint More...
 
class  Test::Int::Arithmetic::MaxXXY
 Test for binary maximum constraint with shared variables More...
 
class  Test::Int::Arithmetic::MaxXYX
 Test for binary maximum constraint with shared variables More...
 
class  Test::Int::Arithmetic::MaxXYY
 Test for binary maximum constraint with shared variables More...
 
class  Test::Int::Arithmetic::MaxXXX
 Test for binary maximum constraint with shared variables More...
 
class  Test::Int::Arithmetic::MinNary
 Test for n-ary minimmum constraint More...
 
class  Test::Int::Arithmetic::MinNaryShared
 Test for n-ary minimmum constraint with shared variables More...
 
class  Test::Int::Arithmetic::MaxNary
 Test for n-ary maximum constraint More...
 
class  Test::Int::Arithmetic::MaxNaryShared
 Test for n-ary maximum constraint with shared variables More...
 

Namespaces

namespace  Test
 General test support.
 
namespace  Test::Int
 Testing finite domain integers.
 
namespace  Test::Int::Arithmetic
 Tests for arithmetic constraints
 

Variables

const int Test::Int::Arithmetic::va [7]
 
const int Test::Int::Arithmetic::vb [9]
 
Gecode::IntSet Test::Int::Arithmetic::a (va, 7)
 
Gecode::IntSet Test::Int::Arithmetic::b (vb, 9)
 
Gecode::IntSet Test::Int::Arithmetic::c (-8, 8)
 
MultXYZ Test::Int::Arithmetic::mult_xyz_b_a ("A", a, Gecode::ICL_BND)
 
MultXYZ Test::Int::Arithmetic::mult_xyz_b_b ("B", b, Gecode::ICL_BND)
 
MultXYZ Test::Int::Arithmetic::mult_xyz_b_c ("C", c, Gecode::ICL_BND)
 
MultXXY Test::Int::Arithmetic::mult_xxy_b_a ("A", a, Gecode::ICL_BND)
 
MultXXY Test::Int::Arithmetic::mult_xxy_b_b ("B", b, Gecode::ICL_BND)
 
MultXXY Test::Int::Arithmetic::mult_xxy_b_c ("C", c, Gecode::ICL_BND)
 
MultXYX Test::Int::Arithmetic::mult_xyx_b_a ("A", a, Gecode::ICL_BND)
 
MultXYX Test::Int::Arithmetic::mult_xyx_b_b ("B", b, Gecode::ICL_BND)
 
MultXYX Test::Int::Arithmetic::mult_xyx_b_c ("C", c, Gecode::ICL_BND)
 
MultXYY Test::Int::Arithmetic::mult_xyy_b_a ("A", a, Gecode::ICL_BND)
 
MultXYY Test::Int::Arithmetic::mult_xyy_b_b ("B", b, Gecode::ICL_BND)
 
MultXYY Test::Int::Arithmetic::mult_xyy_b_c ("C", c, Gecode::ICL_BND)
 
MultXXX Test::Int::Arithmetic::mult_xxx_b_a ("A", a, Gecode::ICL_BND)
 
MultXXX Test::Int::Arithmetic::mult_xxx_b_b ("B", b, Gecode::ICL_BND)
 
MultXXX Test::Int::Arithmetic::mult_xxx_b_c ("C", c, Gecode::ICL_BND)
 
MultXYZ Test::Int::Arithmetic::mult_xyz_d_a ("A", a, Gecode::ICL_DOM)
 
MultXYZ Test::Int::Arithmetic::mult_xyz_d_b ("B", b, Gecode::ICL_DOM)
 
MultXYZ Test::Int::Arithmetic::mult_xyz_d_c ("C", c, Gecode::ICL_DOM)
 
MultXXY Test::Int::Arithmetic::mult_xxy_d_a ("A", a, Gecode::ICL_DOM)
 
MultXXY Test::Int::Arithmetic::mult_xxy_d_b ("B", b, Gecode::ICL_DOM)
 
MultXXY Test::Int::Arithmetic::mult_xxy_d_c ("C", c, Gecode::ICL_DOM)
 
MultXYX Test::Int::Arithmetic::mult_xyx_d_a ("A", a, Gecode::ICL_DOM)
 
MultXYX Test::Int::Arithmetic::mult_xyx_d_b ("B", b, Gecode::ICL_DOM)
 
MultXYX Test::Int::Arithmetic::mult_xyx_d_c ("C", c, Gecode::ICL_DOM)
 
MultXYY Test::Int::Arithmetic::mult_xyy_d_a ("A", a, Gecode::ICL_DOM)
 
MultXYY Test::Int::Arithmetic::mult_xyy_d_b ("B", b, Gecode::ICL_DOM)
 
MultXYY Test::Int::Arithmetic::mult_xyy_d_c ("C", c, Gecode::ICL_DOM)
 
MultXXX Test::Int::Arithmetic::mult_xxx_d_a ("A", a, Gecode::ICL_DOM)
 
MultXXX Test::Int::Arithmetic::mult_xxx_d_b ("B", b, Gecode::ICL_DOM)
 
MultXXX Test::Int::Arithmetic::mult_xxx_d_c ("C", c, Gecode::ICL_DOM)
 
SqrXY Test::Int::Arithmetic::sqr_xy_b_a ("A", a, Gecode::ICL_BND)
 
SqrXY Test::Int::Arithmetic::sqr_xy_b_b ("B", b, Gecode::ICL_BND)
 
SqrXY Test::Int::Arithmetic::sqr_xy_b_c ("C", c, Gecode::ICL_BND)
 
SqrXY Test::Int::Arithmetic::sqr_xy_d_a ("A", a, Gecode::ICL_DOM)
 
SqrXY Test::Int::Arithmetic::sqr_xy_d_b ("B", b, Gecode::ICL_DOM)
 
SqrXY Test::Int::Arithmetic::sqr_xy_d_c ("C", c, Gecode::ICL_DOM)
 
SqrXX Test::Int::Arithmetic::sqr_xx_b_a ("A", a, Gecode::ICL_BND)
 
SqrXX Test::Int::Arithmetic::sqr_xx_b_b ("B", b, Gecode::ICL_BND)
 
SqrXX Test::Int::Arithmetic::sqr_xx_b_c ("C", c, Gecode::ICL_BND)
 
SqrXX Test::Int::Arithmetic::sqr_xx_d_a ("A", a, Gecode::ICL_DOM)
 
SqrXX Test::Int::Arithmetic::sqr_xx_d_b ("B", b, Gecode::ICL_DOM)
 
SqrXX Test::Int::Arithmetic::sqr_xx_d_c ("C", c, Gecode::ICL_DOM)
 
SqrtXY Test::Int::Arithmetic::sqrt_xy_b_a ("A", a, Gecode::ICL_BND)
 
SqrtXY Test::Int::Arithmetic::sqrt_xy_b_b ("B", b, Gecode::ICL_BND)
 
SqrtXY Test::Int::Arithmetic::sqrt_xy_b_c ("C", c, Gecode::ICL_BND)
 
SqrtXY Test::Int::Arithmetic::sqrt_xy_d_a ("A", a, Gecode::ICL_DOM)
 
SqrtXY Test::Int::Arithmetic::sqrt_xy_d_b ("B", b, Gecode::ICL_DOM)
 
SqrtXY Test::Int::Arithmetic::sqrt_xy_d_c ("C", c, Gecode::ICL_DOM)
 
SqrtXX Test::Int::Arithmetic::sqrt_xx_b_a ("A", a, Gecode::ICL_BND)
 
SqrtXX Test::Int::Arithmetic::sqrt_xx_b_b ("B", b, Gecode::ICL_BND)
 
SqrtXX Test::Int::Arithmetic::sqrt_xx_b_c ("C", c, Gecode::ICL_BND)
 
SqrtXX Test::Int::Arithmetic::sqrt_xx_d_a ("A", a, Gecode::ICL_DOM)
 
SqrtXX Test::Int::Arithmetic::sqrt_xx_d_b ("B", b, Gecode::ICL_DOM)
 
SqrtXX Test::Int::Arithmetic::sqrt_xx_d_c ("C", c, Gecode::ICL_DOM)
 
DivMod Test::Int::Arithmetic::divmod_a_bnd ("A", a)
 
DivMod Test::Int::Arithmetic::divmod_b_bnd ("B", b)
 
DivMod Test::Int::Arithmetic::divmod_c_bnd ("C", c)
 
Div Test::Int::Arithmetic::div_a_bnd ("A", a)
 
Div Test::Int::Arithmetic::div_b_bnd ("B", b)
 
Div Test::Int::Arithmetic::div_c_bnd ("C", c)
 
Mod Test::Int::Arithmetic::mod_a_bnd ("A", a)
 
Mod Test::Int::Arithmetic::mod_b_bnd ("B", b)
 
Mod Test::Int::Arithmetic::mod_c_bnd ("C", c)
 
AbsXY Test::Int::Arithmetic::abs_xy_b_a ("A", a, Gecode::ICL_BND)
 
AbsXY Test::Int::Arithmetic::abs_xy_b_b ("B", b, Gecode::ICL_BND)
 
AbsXY Test::Int::Arithmetic::abs_xy_b_c ("C", c, Gecode::ICL_BND)
 
AbsXY Test::Int::Arithmetic::abs_xy_d_a ("A", a, Gecode::ICL_DOM)
 
AbsXY Test::Int::Arithmetic::abs_xy_d_b ("B", b, Gecode::ICL_DOM)
 
AbsXY Test::Int::Arithmetic::abs_xy_d_c ("C", c, Gecode::ICL_DOM)
 
AbsXX Test::Int::Arithmetic::abs_xx_b_a ("A", a, Gecode::ICL_BND)
 
AbsXX Test::Int::Arithmetic::abs_xx_b_b ("B", b, Gecode::ICL_BND)
 
AbsXX Test::Int::Arithmetic::abs_xx_b_c ("C", c, Gecode::ICL_BND)
 
AbsXX Test::Int::Arithmetic::abs_xx_d_a ("A", a, Gecode::ICL_DOM)
 
AbsXX Test::Int::Arithmetic::abs_xx_d_b ("B", b, Gecode::ICL_DOM)
 
AbsXX Test::Int::Arithmetic::abs_xx_d_c ("C", c, Gecode::ICL_DOM)
 
MinXYZ Test::Int::Arithmetic::min_xyz_b_a ("A", a, Gecode::ICL_BND)
 
MinXYZ Test::Int::Arithmetic::min_xyz_b_b ("B", b, Gecode::ICL_BND)
 
MinXYZ Test::Int::Arithmetic::min_xyz_b_c ("C", c, Gecode::ICL_BND)
 
MinXYZ Test::Int::Arithmetic::min_xyz_d_a ("A", a, Gecode::ICL_DOM)
 
MinXYZ Test::Int::Arithmetic::min_xyz_d_b ("B", b, Gecode::ICL_DOM)
 
MinXYZ Test::Int::Arithmetic::min_xyz_d_c ("C", c, Gecode::ICL_DOM)
 
MinXXY Test::Int::Arithmetic::min_xxy_b_a ("A", a, Gecode::ICL_BND)
 
MinXXY Test::Int::Arithmetic::min_xxy_b_b ("B", b, Gecode::ICL_BND)
 
MinXXY Test::Int::Arithmetic::min_xxy_b_c ("C", c, Gecode::ICL_BND)
 
MinXXY Test::Int::Arithmetic::min_xxy_d_a ("A", a, Gecode::ICL_DOM)
 
MinXXY Test::Int::Arithmetic::min_xxy_d_b ("B", b, Gecode::ICL_DOM)
 
MinXXY Test::Int::Arithmetic::min_xxy_d_c ("C", c, Gecode::ICL_DOM)
 
MinXYX Test::Int::Arithmetic::min_xyx_b_a ("A", a, Gecode::ICL_BND)
 
MinXYX Test::Int::Arithmetic::min_xyx_b_b ("B", b, Gecode::ICL_BND)
 
MinXYX Test::Int::Arithmetic::min_xyx_b_c ("C", c, Gecode::ICL_BND)
 
MinXYX Test::Int::Arithmetic::min_xyx_d_a ("A", a, Gecode::ICL_DOM)
 
MinXYX Test::Int::Arithmetic::min_xyx_d_b ("B", b, Gecode::ICL_DOM)
 
MinXYX Test::Int::Arithmetic::min_xyx_d_c ("C", c, Gecode::ICL_DOM)
 
MinXYY Test::Int::Arithmetic::min_xyy_b_a ("A", a, Gecode::ICL_BND)
 
MinXYY Test::Int::Arithmetic::min_xyy_b_b ("B", b, Gecode::ICL_BND)
 
MinXYY Test::Int::Arithmetic::min_xyy_b_c ("C", c, Gecode::ICL_BND)
 
MinXYY Test::Int::Arithmetic::min_xyy_d_a ("A", a, Gecode::ICL_DOM)
 
MinXYY Test::Int::Arithmetic::min_xyy_d_b ("B", b, Gecode::ICL_DOM)
 
MinXYY Test::Int::Arithmetic::min_xyy_d_c ("C", c, Gecode::ICL_DOM)
 
MinXXX Test::Int::Arithmetic::min_xxx_b_a ("A", a, Gecode::ICL_BND)
 
MinXXX Test::Int::Arithmetic::min_xxx_b_b ("B", b, Gecode::ICL_BND)
 
MinXXX Test::Int::Arithmetic::min_xxx_b_c ("C", c, Gecode::ICL_BND)
 
MinXXX Test::Int::Arithmetic::min_xxx_d_a ("A", a, Gecode::ICL_DOM)
 
MinXXX Test::Int::Arithmetic::min_xxx_d_b ("B", b, Gecode::ICL_DOM)
 
MinXXX Test::Int::Arithmetic::min_xxx_d_c ("C", c, Gecode::ICL_DOM)
 
MaxXYZ Test::Int::Arithmetic::max_xyz_b_a ("A", a, Gecode::ICL_BND)
 
MaxXYZ Test::Int::Arithmetic::max_xyz_b_b ("B", b, Gecode::ICL_BND)
 
MaxXYZ Test::Int::Arithmetic::max_xyz_b_c ("C", c, Gecode::ICL_BND)
 
MaxXYZ Test::Int::Arithmetic::max_xyz_d_a ("A", a, Gecode::ICL_DOM)
 
MaxXYZ Test::Int::Arithmetic::max_xyz_d_b ("B", b, Gecode::ICL_DOM)
 
MaxXYZ Test::Int::Arithmetic::max_xyz_d_c ("C", c, Gecode::ICL_DOM)
 
MaxXXY Test::Int::Arithmetic::max_xxy_b_a ("A", a, Gecode::ICL_BND)
 
MaxXXY Test::Int::Arithmetic::max_xxy_b_b ("B", b, Gecode::ICL_BND)
 
MaxXXY Test::Int::Arithmetic::max_xxy_b_c ("C", c, Gecode::ICL_BND)
 
MaxXXY Test::Int::Arithmetic::max_xxy_d_a ("A", a, Gecode::ICL_DOM)
 
MaxXXY Test::Int::Arithmetic::max_xxy_d_b ("B", b, Gecode::ICL_DOM)
 
MaxXXY Test::Int::Arithmetic::max_xxy_d_c ("C", c, Gecode::ICL_DOM)
 
MaxXYX Test::Int::Arithmetic::max_xyx_b_a ("A", a, Gecode::ICL_BND)
 
MaxXYX Test::Int::Arithmetic::max_xyx_b_b ("B", b, Gecode::ICL_BND)
 
MaxXYX Test::Int::Arithmetic::max_xyx_b_c ("C", c, Gecode::ICL_BND)
 
MaxXYX Test::Int::Arithmetic::max_xyx_d_a ("A", a, Gecode::ICL_DOM)
 
MaxXYX Test::Int::Arithmetic::max_xyx_d_b ("B", b, Gecode::ICL_DOM)
 
MaxXYX Test::Int::Arithmetic::max_xyx_d_c ("C", c, Gecode::ICL_DOM)
 
MaxXYY Test::Int::Arithmetic::max_xyy_b_a ("A", a, Gecode::ICL_BND)
 
MaxXYY Test::Int::Arithmetic::max_xyy_b_b ("B", b, Gecode::ICL_BND)
 
MaxXYY Test::Int::Arithmetic::max_xyy_b_c ("C", c, Gecode::ICL_BND)
 
MaxXYY Test::Int::Arithmetic::max_xyy_d_a ("A", a, Gecode::ICL_DOM)
 
MaxXYY Test::Int::Arithmetic::max_xyy_d_b ("B", b, Gecode::ICL_DOM)
 
MaxXYY Test::Int::Arithmetic::max_xyy_d_c ("C", c, Gecode::ICL_DOM)
 
MaxXXX Test::Int::Arithmetic::max_xxx_b_a ("A", a, Gecode::ICL_BND)
 
MaxXXX Test::Int::Arithmetic::max_xxx_b_b ("B", b, Gecode::ICL_BND)
 
MaxXXX Test::Int::Arithmetic::max_xxx_b_c ("C", c, Gecode::ICL_BND)
 
MaxXXX Test::Int::Arithmetic::max_xxx_d_a ("A", a, Gecode::ICL_DOM)
 
MaxXXX Test::Int::Arithmetic::max_xxx_d_b ("B", b, Gecode::ICL_DOM)
 
MaxXXX Test::Int::Arithmetic::max_xxx_d_c ("C", c, Gecode::ICL_DOM)
 
MinNary Test::Int::Arithmetic::min_nary_b (Gecode::ICL_BND)
 
MinNary Test::Int::Arithmetic::min_nary_d (Gecode::ICL_DOM)
 
MinNaryShared Test::Int::Arithmetic::min_s_nary_b (Gecode::ICL_BND)
 
MinNaryShared Test::Int::Arithmetic::min_s_nary_d (Gecode::ICL_DOM)
 
MaxNary Test::Int::Arithmetic::max_nary_b (Gecode::ICL_BND)
 
MaxNary Test::Int::Arithmetic::max_nary_d (Gecode::ICL_DOM)
 
MaxNaryShared Test::Int::Arithmetic::max_s_nary_b (Gecode::ICL_BND)
 
MaxNaryShared Test::Int::Arithmetic::max_s_nary_d (Gecode::ICL_DOM)