00001 /* $Id: impliedBounds-exprTrilinear.cpp 560 2011-04-17 10:01:15Z stefan $ 00002 * 00003 * Name: impliedBounds-exprTrilinear.cpp 00004 * Author: Pietro Belotti 00005 * Purpose: implied bounds for trilinear terms 00006 * 00007 * This file is licensed under the Eclipse Public License (EPL) 00008 */ 00009 00010 #include "CouenneExprMul.hpp" 00011 #include "CouenneExprTrilinear.hpp" 00012 #include "CouennePrecisions.hpp" 00013 00014 using namespace Couenne; 00015 00016 00019 00020 bool exprTrilinear::impliedBound (int wind, CouNumber *l, CouNumber *u, t_chg_bounds *chg, enum auxSign sign) { 00021 00022 // in general, for i in {1,2,3}, 00023 // 00024 // x [i] >= min {w / (x[(i+1) % 3] x[(i+2) % 3]): all variables in bounds} 00025 // x [i] <= max {w / (x[(i+1) % 3] x[(i+2) % 3]): all variables in bounds} 00026 // 00027 // There are cases: 00028 // 00029 // 00030 00031 return false; 00032 } 00033