mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 09:05:31 +00:00
add simplification experiment (disabled) for tracking, some reshuffling of equation/fixed_equation structs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
e7c17e68b8
commit
bd8e5eee4b
12 changed files with 286 additions and 39 deletions
|
@ -1091,6 +1091,26 @@ public:
|
|||
|
||||
void restart_eh() {
|
||||
m_arith_eq_adapter.restart_eh();
|
||||
#if 0
|
||||
// experiment
|
||||
if (m_lia) {
|
||||
std::function<bool(unsigned)> is_root = [&](unsigned j) {
|
||||
theory_var v = lp().local_to_external(j);
|
||||
if (v < 0)
|
||||
return false;
|
||||
auto* n = get_enode(v);
|
||||
if (!th.is_relevant_and_shared(n))
|
||||
return false;
|
||||
if (n->is_root())
|
||||
return true;
|
||||
theory_var w = n->get_root()->get_th_var(get_id());
|
||||
return w == v;
|
||||
};
|
||||
m_lia->simplify(is_root);
|
||||
for (auto const& [i, j, e] : m_lia->equalities())
|
||||
add_eq(i, j, e, false);
|
||||
}
|
||||
#endif
|
||||
if (m_nla)
|
||||
m_nla->simplify();
|
||||
}
|
||||
|
@ -3843,7 +3863,6 @@ public:
|
|||
m_arith_eq_adapter.collect_statistics(st);
|
||||
m_stats.collect_statistics(st);
|
||||
lp().settings().stats().collect_statistics(st);
|
||||
if (m_nla) m_nla->collect_statistics(st);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue