11 #ifndef COUENNE_EXPRBDIV_H 12 #define COUENNE_EXPRBDIV_H 72 if (n > 0)
return safeDiv (n,D,-1);
76 else if (N > 0)
return safeDiv (N,D,-1);
120 if (N < 0)
return safeDiv (N,D,1);
124 else if (n < 0)
return safeDiv (n,D,1);
expression ** arglist_
argument list is an array of pointers to other expressions
pos
position where the operator should be printed when printing the expression
expression * clone(Domain *d=NULL) const
cloning method
class to compute lower bound of a fraction based on the bounds of both numerator and denominator
int nargs_
number of arguments (cardinality of arglist)
general n-ary operator-type expression: requires argument list.
double CouNumber
main number type in Couenne
exprUBDiv(expression **al, int n)
Constructors, destructor.
expression ** clonearglist(Domain *d=NULL) const
clone argument list (for use with clone method)
class to compute upper bound of a fraction based on the bounds of both numerator and denominator
exprLBDiv(expression **al, int n)
Constructors, destructor.
enum pos printPos() const
print position (PRE, INSIDE, POST)
Define a dynamic point+bounds, with a way to save and restore previous points+bounds through a LIFO s...
enum pos printPos() const
print position (PRE, INSIDE, POST)
CouNumber operator()()
function for the evaluation of the expression
expression * clone(Domain *d=NULL) const
cloning method
CouNumber operator()()
function for the evaluation of the expression
static CouNumber safeDiv(register CouNumber a, register CouNumber b, int sign)
division that avoids NaN's and considers a sign when returning infinity
std::string printOp() const
print operator
general include file for different compilers
std::string printOp() const
print operator