@@ -1281,12 +1281,12 @@ HPresolve::Result HPresolve::dominatedColumns(
12811281 double ak = nonz.value () * bestRowPlusScale;
12821282
12831283 if (model->col_lower_ [k] != -kHighsInf &&
1284- (upperImplied || mipsolver->mipdata_ ->cliquetable .haveCommonClique (
1285- HighsCliqueTable::CliqueVar (j, 1 ),
1286- HighsCliqueTable::CliqueVar (k, 1 ))) &&
12871284 ajBestRowPlus <= ak + options->small_matrix_value &&
12881285 (!isEqOrRangedRow ||
12891286 ajBestRowPlus >= ak - options->small_matrix_value ) &&
1287+ (upperImplied || mipsolver->mipdata_ ->cliquetable .haveCommonClique (
1288+ HighsCliqueTable::CliqueVar (j, 1 ),
1289+ HighsCliqueTable::CliqueVar (k, 1 ))) &&
12901290 checkDomination (1 , j, 1 , k)) {
12911291 // case (i) ub(x_j) = inf, x_j > x_k: set x_k = lb(x_k)
12921292 ++numFixedCols;
@@ -1297,13 +1297,13 @@ HPresolve::Result HPresolve::dominatedColumns(
12971297 }
12981298 HPRESOLVE_CHECKED_CALL (removeRowSingletons (postsolve_stack));
12991299 } else if (model->col_upper_ [k] != kHighsInf &&
1300+ ajBestRowPlus <= -ak + options->small_matrix_value &&
1301+ (!isEqOrRangedRow ||
1302+ ajBestRowPlus >= -ak - options->small_matrix_value ) &&
13001303 (upperImplied ||
13011304 mipsolver->mipdata_ ->cliquetable .haveCommonClique (
13021305 HighsCliqueTable::CliqueVar (j, 1 ),
13031306 HighsCliqueTable::CliqueVar (k, 0 ))) &&
1304- ajBestRowPlus <= -ak + options->small_matrix_value &&
1305- (!isEqOrRangedRow ||
1306- ajBestRowPlus >= -ak - options->small_matrix_value ) &&
13071307 checkDomination (1 , j, -1 , k)) {
13081308 // case (ii) ub(x_j) = inf, x_j > -x_k: set x_k = ub(x_k)
13091309 ++numFixedCols;
@@ -1331,12 +1331,12 @@ HPresolve::Result HPresolve::dominatedColumns(
13311331 double ak = nonz.value () * bestRowMinusScale;
13321332
13331333 if (model->col_upper_ [k] != kHighsInf &&
1334- (lowerImplied || mipsolver->mipdata_ ->cliquetable .haveCommonClique (
1335- HighsCliqueTable::CliqueVar (j, 0 ),
1336- HighsCliqueTable::CliqueVar (k, 0 ))) &&
13371334 -ajBestRowMinus <= -ak + options->small_matrix_value &&
13381335 (!isEqOrRangedRow ||
13391336 -ajBestRowMinus >= -ak - options->small_matrix_value ) &&
1337+ (lowerImplied || mipsolver->mipdata_ ->cliquetable .haveCommonClique (
1338+ HighsCliqueTable::CliqueVar (j, 0 ),
1339+ HighsCliqueTable::CliqueVar (k, 0 ))) &&
13401340 checkDomination (-1 , j, -1 , k)) {
13411341 // case (iii) lb(x_j) = -inf, -x_j > -x_k: set x_k = ub(x_k)
13421342 ++numFixedCols;
@@ -1347,13 +1347,13 @@ HPresolve::Result HPresolve::dominatedColumns(
13471347 }
13481348 HPRESOLVE_CHECKED_CALL (removeRowSingletons (postsolve_stack));
13491349 } else if (model->col_lower_ [k] != -kHighsInf &&
1350+ -ajBestRowMinus <= ak + options->small_matrix_value &&
1351+ (!isEqOrRangedRow ||
1352+ -ajBestRowMinus >= ak - options->small_matrix_value ) &&
13501353 (lowerImplied ||
13511354 mipsolver->mipdata_ ->cliquetable .haveCommonClique (
13521355 HighsCliqueTable::CliqueVar (j, 0 ),
13531356 HighsCliqueTable::CliqueVar (k, 1 ))) &&
1354- -ajBestRowMinus <= ak + options->small_matrix_value &&
1355- (!isEqOrRangedRow ||
1356- -ajBestRowMinus >= ak - options->small_matrix_value ) &&
13571357 checkDomination (-1 , j, 1 , k)) {
13581358 // case (iv) lb(x_j) = -inf, -x_j > x_k: set x_k = lb(x_k)
13591359 ++numFixedCols;
0 commit comments