d_currentPropagationList.resize(enteringPropN);
}
+ /* It is not clear what the d_qflraStatus is at this point */
+ d_qflraStatus = Result::SAT_UNKNOWN;
+
Assert(d_replayVariables.empty());
Assert(d_replayConstraints.empty());
SimplexDecisionProcedure& simplex = selectSimplex(true);
simplex.findModel(false);
+ // Can change d_qflraStatus
d_linEq.stopTrackingBoundCounts();
d_partialModel.startQueueingBoundCounts();
SimplexDecisionProcedure& simplex = selectSimplex(true);
simplex.findModel(false);
+ // can change d_qflraStatus
d_linEq.stopTrackingBoundCounts();
d_partialModel.startQueueingBoundCounts();
if(mipRes == MipClosed){
d_likelyIntegerInfeasible = true;
replayLog(approx);
+ AlwaysAssert(anyConflict() || d_qflraStatus != Result::SAT);
if(!anyConflict()){
- //start up simplex
- d_partialModel.stopQueueingBoundCounts();
- UpdateTrackingCallback utcb(&d_linEq);
- d_partialModel.processBoundsQueue(utcb);
- d_linEq.startTrackingBoundCounts();
- //call simplex
- solveRelaxationOrPanic(effortLevel);
- // shutdown simplex
- d_linEq.stopTrackingBoundCounts();
- d_partialModel.startQueueingBoundCounts();
+ solveRealRelaxation(effortLevel);
}
}
if(!(anyConflict() || !d_approxCuts.empty())){