From fea14245a026d6de7c366170d007750916e1fb3e Mon Sep 17 00:00:00 2001 From: Nikolaj Bjorner Date: Wed, 11 Aug 2021 19:43:42 -0700 Subject: [PATCH] #5454 --- src/qe/mbp/mbp_arith.cpp | 9 ++++++--- src/sat/smt/q_mbi.cpp | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/qe/mbp/mbp_arith.cpp b/src/qe/mbp/mbp_arith.cpp index 8b855a758..120931536 100644 --- a/src/qe/mbp/mbp_arith.cpp +++ b/src/qe/mbp/mbp_arith.cpp @@ -552,10 +552,13 @@ namespace mbp { if (fmls.empty() || defs.empty()) return; expr_safe_replace subst(m); - for (auto const& d : defs) - subst.insert(d.var, d.term); - unsigned j = 0; expr_ref tmp(m); + for (unsigned i = defs.size(); i-- > 0; ) { + auto const& d = defs[i]; + subst(d.term, tmp); + subst.insert(d.var, tmp); + } + unsigned j = 0; for (expr* fml : fmls) { subst(fml, tmp); fmls[j++] = tmp; diff --git a/src/sat/smt/q_mbi.cpp b/src/sat/smt/q_mbi.cpp index da6fe4191..84859781f 100644 --- a/src/sat/smt/q_mbi.cpp +++ b/src/sat/smt/q_mbi.cpp @@ -321,7 +321,7 @@ namespace q { eqs.push_back(m.mk_eq(v, val)); } rep(fmls); - TRACE("q", tout << "generated formulas\n" << fmls << "\ngenerated eqs:\n" << eqs;); + TRACE("q", tout << "generated formulas\n" << fmls << "\ngenerated eqs:\n" << eqs << "\n";); return mk_and(fmls); }