mirror of
https://github.com/Z3Prover/z3
synced 2025-04-10 19:27:06 +00:00
fix regression from today, see #5676
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
87aec8819f
commit
71cbb160d2
|
@ -150,13 +150,6 @@ namespace smt {
|
|||
|
||||
literal theory::mk_literal(expr* _e) {
|
||||
expr_ref e(_e, m);
|
||||
if (has_quantifiers(e)) {
|
||||
expr_ref fn(m.mk_fresh_const("aux-literal", m.mk_bool_sort()), m);
|
||||
expr_ref eq(m.mk_eq(fn, e), m);
|
||||
ctx.assert_expr(eq);
|
||||
ctx.internalize_assertions();
|
||||
return mk_literal(fn);
|
||||
}
|
||||
bool is_not = m.is_not(_e, _e);
|
||||
if (!ctx.e_internalized(_e)) {
|
||||
ctx.internalize(_e, is_quantifier(_e));
|
||||
|
|
|
@ -146,7 +146,17 @@ void theory_user_propagator::propagate() {
|
|||
lit.neg();
|
||||
for (auto const& [a,b] : m_eqs)
|
||||
m_lits.push_back(~mk_eq(a->get_expr(), b->get_expr(), false));
|
||||
literal lit = mk_literal(prop.m_conseq);
|
||||
|
||||
literal lit;
|
||||
if (has_quantifiers(prop.m_conseq)) {
|
||||
expr_ref fn(m.mk_fresh_const("aux-literal", m.mk_bool_sort()), m);
|
||||
expr_ref eq(m.mk_eq(fn, prop.m_conseq), m);
|
||||
ctx.assert_expr(eq);
|
||||
ctx.internalize_assertions();
|
||||
lit = mk_literal(fn);
|
||||
}
|
||||
else
|
||||
lit = mk_literal(prop.m_conseq);
|
||||
ctx.mark_as_relevant(lit);
|
||||
m_lits.push_back(lit);
|
||||
ctx.mk_th_lemma(get_id(), m_lits);
|
||||
|
|
Loading…
Reference in a new issue