diff --git a/src/smt/diff_logic.h b/src/smt/diff_logic.h index 2da99552f..9d79e3e52 100644 --- a/src/smt/diff_logic.h +++ b/src/smt/diff_logic.h @@ -264,13 +264,11 @@ class dl_graph { public: // An assignment is feasible if all edges are feasible. bool is_feasible() const { -#ifdef Z3DEBUG for (unsigned i = 0; i < m_edges.size(); ++i) { if (!is_feasible(m_edges[i])) { return false; } } -#endif return true; } diff --git a/src/smt/theory_diff_logic_def.h b/src/smt/theory_diff_logic_def.h index d7be7ae5f..6ffea4380 100644 --- a/src/smt/theory_diff_logic_def.h +++ b/src/smt/theory_diff_logic_def.h @@ -341,9 +341,8 @@ void theory_diff_logic::pop_scope_eh(unsigned num_scopes) { m_scopes.shrink(new_lvl); unsigned num_edges = m_graph.get_num_edges(); m_graph.pop(num_scopes); - TRACE("arith", m_graph.display(tout);); - SASSERT(m_graph.is_feasible()); - if (true || (num_edges != m_graph.get_num_edges() && m_num_simplex_edges > 0)) { + CTRACE("arith", !m_graph.is_feasible(), m_graph.display(tout);); + if (num_edges != m_graph.get_num_edges() && m_num_simplex_edges > 0) { m_S.reset(); m_num_simplex_edges = 0; m_objective_rows.reset();