3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-10 19:27:06 +00:00

fix mk_unpure_equalities

This commit is contained in:
Arie Gurfinkel 2018-06-11 22:48:24 -07:00
parent 0f799eb2ae
commit 2288931b46

View file

@ -780,12 +780,15 @@ namespace qe {
expr *rep = nullptr;
if (!m_root2rep.find(t.get_id(), rep)) return;
obj_hashtable<expr> members;
members.insert(rep);
term const * r = &t;
do {
expr* member = mk_pure(*r);
SASSERT(member);
if (member != rep && (!is_projected(*r) || !is_solved_eq(rep, member))) {
if (!members.contains(member) &&
(!is_projected(*r) || !is_solved_eq(rep, member))) {
res.push_back(m.mk_eq(rep, member));
members.insert(member);
}
r = &r->get_next();
}