3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-09 04:31:24 +00:00

Move merge_tf handling to euf_internalize

literals true/false are not necessarily created when the merge flag is set.
Also disable merge_tf for if-then-else expressions
Perhaps even not insert children of if expressions into congruence table?
This commit is contained in:
Nikolaj Bjorner 2022-11-24 15:09:13 +07:00
parent eceeb295fc
commit 15dc7b78a0
3 changed files with 29 additions and 12 deletions

View file

@ -146,7 +146,6 @@ namespace euf {
constraint* m_conflict = nullptr;
constraint* m_eq = nullptr;
constraint* m_lit = nullptr;
// proofs
bool m_proof_initialized = false;
@ -266,7 +265,6 @@ namespace euf {
~solver() override {
if (m_conflict) dealloc(sat::constraint_base::mem2base_ptr(m_conflict));
if (m_eq) dealloc(sat::constraint_base::mem2base_ptr(m_eq));
if (m_lit) dealloc(sat::constraint_base::mem2base_ptr(m_lit));
m_trail.reset();
}