mirror of
https://github.com/Z3Prover/z3
synced 2025-08-23 03:27:52 +00:00
fixes to #7250
This commit is contained in:
parent
49610f5159
commit
b831a589e5
8 changed files with 47 additions and 9 deletions
|
@ -278,9 +278,9 @@ namespace euf {
|
|||
r.push_back(get_literal(e));
|
||||
else {
|
||||
multiple_theories = true;
|
||||
size_t idx = get_justification(e);
|
||||
size_t idx = get_justification(e);
|
||||
auto* ext = sat::constraint_base::to_extension(idx);
|
||||
SASSERT(ext != this);
|
||||
SASSERT(ext != this);
|
||||
sat::literal lit = sat::null_literal;
|
||||
ext->get_antecedents(lit, idx, r, probing);
|
||||
}
|
||||
|
@ -307,11 +307,11 @@ namespace euf {
|
|||
void solver::get_eq_antecedents(enode* a, enode* b, literal_vector& r) {
|
||||
m_egraph.begin_explain();
|
||||
m_explain.reset();
|
||||
m_egraph.explain_eq<size_t>(m_explain, nullptr, a, b);
|
||||
for (unsigned qhead = 0; qhead < m_explain.size(); ++qhead) {
|
||||
size_t* e = m_explain[qhead];
|
||||
if (is_literal(e))
|
||||
r.push_back(get_literal(e));
|
||||
m_egraph.explain_eq<size_t>(m_explain, nullptr, a, b);
|
||||
for (unsigned qhead = 0; qhead < m_explain.size(); ++qhead) {
|
||||
size_t* e = m_explain[qhead];
|
||||
if (is_literal(e))
|
||||
r.push_back(get_literal(e));
|
||||
else {
|
||||
size_t idx = get_justification(e);
|
||||
auto* ext = sat::constraint_base::to_extension(idx);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue