# Arithmetic constraints

[Testing finite domain integers]

## 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... | |

## 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) |

## Variable Documentation

const int Test::Int::Arithmetic::va[7] |

**Initial value:**

{ Gecode::Int::Limits::min, Gecode::Int::Limits::min+1, -1,0,1, Gecode::Int::Limits::max-1, Gecode::Int::Limits::max }

Definition at line 571 of file arithmetic.cpp.

const int Test::Int::Arithmetic::vb[9] |

**Initial value:**

{ static_cast<int>(-sqrt(static_cast<double> (-Gecode::Int::Limits::min))), -4,-2,-1,0,1,2,4, static_cast<int>(sqrt(static_cast<double> (Gecode::Int::Limits::max))) }

Definition at line 576 of file arithmetic.cpp.

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) |