mirror of
https://github.com/Z3Prover/z3
synced 2025-07-19 10:52:02 +00:00
fix mk_unpure_equalities
This commit is contained in:
parent
0f799eb2ae
commit
2288931b46
1 changed files with 4 additions and 1 deletions
|
@ -780,12 +780,15 @@ namespace qe {
|
||||||
expr *rep = nullptr;
|
expr *rep = nullptr;
|
||||||
if (!m_root2rep.find(t.get_id(), rep)) return;
|
if (!m_root2rep.find(t.get_id(), rep)) return;
|
||||||
obj_hashtable<expr> members;
|
obj_hashtable<expr> members;
|
||||||
|
members.insert(rep);
|
||||||
term const * r = &t;
|
term const * r = &t;
|
||||||
do {
|
do {
|
||||||
expr* member = mk_pure(*r);
|
expr* member = mk_pure(*r);
|
||||||
SASSERT(member);
|
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));
|
res.push_back(m.mk_eq(rep, member));
|
||||||
|
members.insert(member);
|
||||||
}
|
}
|
||||||
r = &r->get_next();
|
r = &r->get_next();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue