diff --git a/src/sat/smt/arith_solver.cpp b/src/sat/smt/arith_solver.cpp index b33e1203866..6ceea42f272 100644 --- a/src/sat/smt/arith_solver.cpp +++ b/src/sat/smt/arith_solver.cpp @@ -964,7 +964,7 @@ namespace arith { IF_VERBOSE(12, verbose_stream() << "final-check " << lp().get_status() << "\n"); SASSERT(lp().ax_is_correct()); - if (lp().get_status() != lp::lp_status::OPTIMAL) { + if (lp().get_status() != lp::lp_status::OPTIMAL || lp().has_changed_columns()) { switch (make_feasible()) { case l_false: get_infeasibility_explanation_and_set_conflict();