Skip to content

Commit 13be3c3

Browse files
reset model converter between rounds to elim-unconstrained.
1 parent 0daa05a commit 13be3c3

File tree

3 files changed

+4
-2
lines changed

3 files changed

+4
-2
lines changed

src/ast/converters/generic_model_converter.h

+2
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ class generic_model_converter : public model_converter {
6868
void get_units(obj_map<expr, bool>& units) override;
6969

7070
vector<entry> const& entries() const { return m_entries; }
71+
72+
void reset() { m_entries.reset(); }
7173
};
7274

7375
typedef ref<generic_model_converter> generic_model_converter_ref;

src/ast/rewriter/bv_rewriter.cpp

-1
Original file line numberDiff line numberDiff line change
@@ -555,7 +555,6 @@ br_status bv_rewriter::mk_leq_core(bool is_signed, expr * a, expr * b, expr_ref
555555
result = m.mk_and(result, m_util.mk_ule(m_util.mk_numeral(r1-r2, sz), a2));
556556
else if (r1 < r2)
557557
result = m.mk_or(result, m_util.mk_ule(m_util.mk_numeral(r1-r2, sz), a2));
558-
verbose_stream() << result << "\n";
559558
return BR_REWRITE2;
560559
}
561560

src/ast/simplifiers/elim_unconstrained.cpp

+2-1
Original file line numberDiff line numberDiff line change
@@ -426,14 +426,15 @@ void elim_unconstrained::reduce() {
426426
generic_model_converter_ref mc = alloc(generic_model_converter, m, "elim-unconstrained");
427427
m_inverter.set_model_converter(mc.get());
428428
m_created_compound = true;
429-
for (unsigned rounds = 0; m_created_compound && rounds < 1; ++rounds) {
429+
for (unsigned rounds = 0; m_created_compound && rounds < 3; ++rounds) {
430430
m_created_compound = false;
431431
init_nodes();
432432
eliminate();
433433
reconstruct_terms();
434434
vector<dependent_expr> old_fmls;
435435
assert_normalized(old_fmls);
436436
update_model_trail(*mc, old_fmls);
437+
mc->reset();
437438
}
438439

439440
}

0 commit comments

Comments
 (0)