96 std::vector<prCons>
getPRCons()
const {
return prConsVec_;}
98 prObj getPRObj()
const {
return prObj_;}
104 std::unordered_map<VariablePtr, std::forward_list<impliVar>> getImplications0()
107 std::unordered_map<VariablePtr, std::forward_list<impliVar>> getImplications1()
115 bool boundBinVar_(
bool &isBinFixed);
119 bool isControlled_(std::vector<VariablePtr> binaries);
137 void removeSingleton_();
140 double checkVarBounds_(VariablePtr var,
bool* varbounded);
146 void findBinVarsInFunc_(std::vector<VariablePtr>* binaries);
152 void deriveImpli_(VariablePtr var);
182 bool twoTermsFunc_(ConstraintPtr c, VariablePtr var,
183 std::forward_list<impliVar> *varList,
bool z);
187 bool multiTermsFunc_(ConstraintPtr c, VariablePtr var,
188 std::forward_list<impliVar> *varList,
191 void fixBinaryVar_(VariablePtr var,
bool z);
193 bool isBinary_(VariablePtr var);
195 void addImplications_(ConstraintPtr c,
bool z0);
197 bool addImplications_(std::forward_list<impliVar> *varList);
228 static const std::string me_;
267 std::vector<prCons> prConsVec_;
272 std::unordered_map<VariablePtr, std::forward_list<impliVar>> impli0_;
273 std::unordered_map<VariablePtr, std::forward_list<impliVar>> impli1_;
275 std::forward_list<ConstraintPtr > gubList0_;
276 std::forward_list<ConstraintPtr > gubList1_;
280 std::unordered_map<VariablePtr, std::forward_list<impliVar>>::iterator
std::map< ConstVariablePtr, double, CompareVariablePtr > VariableGroup
Variables should always be constant within a group.
Definition Types.h:511