diff --git a/src/smt/theory_arith_core.h b/src/smt/theory_arith_core.h index 01eb8a3d4a8..54f61a09aba 100644 --- a/src/smt/theory_arith_core.h +++ b/src/smt/theory_arith_core.h @@ -2943,29 +2943,9 @@ namespace smt { context & ctx = get_context(); if (dump_lemmas()) { TRACE("arith", ante.display(tout) << " --> "; ctx.display_detailed_literal(tout, l); tout << "\n";); - unsigned id = ctx.display_lemma_as_smt_problem(ante.lits().size(), ante.lits().c_ptr(), + ctx.display_lemma_as_smt_problem(ante.lits().size(), ante.lits().c_ptr(), ante.eqs().size(), ante.eqs().c_ptr(), l); -#if 1 - if (id == 394) { - enable_trace("sign_row_conflict"); - enable_trace("nl_arith_bug"); - enable_trace("nl_evaluate"); - enable_trace("propagate_bounds"); - enable_trace("propagate_bounds_bug"); - enable_trace("arith_conflict"); - enable_trace("non_linear"); - enable_trace("non_linear_bug"); - } - SASSERT(id != 395); - if (id == 396) { - disable_trace("nl_arith_bug"); - disable_trace("propagate_bounds"); - disable_trace("arith_conflict"); - disable_trace("non_linear"); - disable_trace("non_linear_bug"); - } -#endif } } @@ -2973,28 +2953,8 @@ namespace smt { void theory_arith::dump_lemmas(literal l, derived_bound const& ante) { context & ctx = get_context(); if (dump_lemmas()) { - unsigned id = ctx.display_lemma_as_smt_problem(ante.lits().size(), ante.lits().c_ptr(), + ctx.display_lemma_as_smt_problem(ante.lits().size(), ante.lits().c_ptr(), ante.eqs().size(), ante.eqs().c_ptr(), l); -#if 1 - if (id == 394) { - enable_trace("nl_arith_bug"); - enable_trace("nl_evaluate"); - enable_trace("propagate_bounds"); - enable_trace("arith_conflict"); - enable_trace("propagate_bounds_bug"); - enable_trace("non_linear"); - enable_trace("non_linear_bug"); - } - SASSERT(id != 395); - if (id == 396) { - enable_trace("sign_row_conflict"); - disable_trace("nl_arith_bug"); - disable_trace("propagate_bounds"); - disable_trace("arith_conflict"); - disable_trace("non_linear"); - disable_trace("non_linear_bug"); - } -#endif } } diff --git a/src/smt/theory_bv.cpp b/src/smt/theory_bv.cpp index 261881a3b34..a0c62b95981 100644 --- a/src/smt/theory_bv.cpp +++ b/src/smt/theory_bv.cpp @@ -161,6 +161,8 @@ namespace smt { theory_var v = n->get_th_var(get_id()); if (v == null_theory_var) { v = mk_var(n); + } + if (m_bits[v].empty()) { mk_bits(v); } return v; diff --git a/src/smt/theory_seq.cpp b/src/smt/theory_seq.cpp index 4c0e9b87d7b..d6937aa7922 100644 --- a/src/smt/theory_seq.cpp +++ b/src/smt/theory_seq.cpp @@ -5163,7 +5163,8 @@ void theory_seq::assign_eh(bool_var v, bool is_true) { } else if (m_util.str.is_contains(e, e1, e2)) { expr_ref_vector disj(m); - if (m_seq_rewrite.reduce_contains(e1, e2, disj)) { + // disabled pending regression on issue 1196 + if (false && m_seq_rewrite.reduce_contains(e1, e2, disj)) { literal_vector lits; literal lit = mk_literal(e); lits.push_back(~lit);