@@ -1107,16 +1107,16 @@ void HighsCliqueTable::extractCliquesFromCut(const HighsMipSolver& mipsolver,
11071107 for (HighsInt i = 0 ; i != len; ++i) {
11081108 if (mipsolver.isColContinuous (inds[i])) continue ;
11091109
1110- double boundVal = static_cast < double >(( rhs - minact) / vals[i]) ;
1110+ HighsCDouble impliedBound = ( rhs - minact) / vals[i];
11111111 if (vals[i] > 0 ) {
1112- boundVal = std::floor (boundVal + globaldom. col_lower_ [inds[i]] +
1113- globaldom.feastol ());
1112+ const double boundVal = std::floor (static_cast < double >(
1113+ impliedBound + globaldom. col_lower_ [inds[i]] + globaldom.feastol () ));
11141114 globaldom.changeBound (HighsBoundType::kUpper , inds[i], boundVal,
11151115 HighsDomain::Reason::unspecified ());
11161116 if (globaldom.infeasible ()) return ;
11171117 } else {
1118- boundVal = std::ceil (boundVal + globaldom. col_upper_ [inds[i]] -
1119- globaldom.feastol ());
1118+ const double boundVal = std::ceil (static_cast < double >(
1119+ impliedBound + globaldom. col_upper_ [inds[i]] - globaldom.feastol () ));
11201120 globaldom.changeBound (HighsBoundType::kLower , inds[i], boundVal,
11211121 HighsDomain::Reason::unspecified ());
11221122 if (globaldom.infeasible ()) return ;
@@ -1147,10 +1147,9 @@ void HighsCliqueTable::extractCliquesFromCut(const HighsMipSolver& mipsolver,
11471147 if (globaldom.isFixed (col)) continue ;
11481148
11491149 if (vals[perm[j]] > 0 ) {
1150- double implcolub =
1151- static_cast <double >(impliedActivity +
1152- vals[perm[j]] * globaldom.col_lower_ [col]) /
1153- vals[perm[j]];
1150+ double implcolub = static_cast <double >(
1151+ (impliedActivity + vals[perm[j]] * globaldom.col_lower_ [col]) /
1152+ vals[perm[j]]);
11541153 if (mipsolver.isColIntegral (col))
11551154 implcolub = std::floor (implcolub + mipsolver.mipdata_ ->feastol );
11561155
@@ -1173,10 +1172,9 @@ void HighsCliqueTable::extractCliquesFromCut(const HighsMipSolver& mipsolver,
11731172 implics.addVUB (col, bincol, coef, constant);
11741173 }
11751174 } else {
1176- double implcollb =
1177- static_cast <double >(impliedActivity +
1178- vals[perm[j]] * globaldom.col_upper_ [col]) /
1179- vals[perm[j]];
1175+ double implcollb = static_cast <double >(
1176+ (impliedActivity + vals[perm[j]] * globaldom.col_upper_ [col]) /
1177+ vals[perm[j]]);
11801178 if (mipsolver.isColIntegral (col))
11811179 implcollb = std::ceil (implcollb - mipsolver.mipdata_ ->feastol );
11821180
0 commit comments