mirror of
https://github.com/Z3Prover/z3
synced 2026-02-15 05:11:49 +00:00
Refactor SMT core: use structured bindings for enode_pair access (#8427)
* Initial plan * Refactor SMT core to use C++17 structured bindings for enode pairs Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com> * Use const& in structured bindings to avoid copying Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com> * Refactor variable unpacking in DEBUG_CODE --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com> Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
078be3bd65
commit
477e4d695d
4 changed files with 16 additions and 14 deletions
|
|
@ -101,8 +101,8 @@ void theory_seq::add_consequence(bool uses_eq, expr_ref_vector const& clause) {
|
|||
linearize(dep, eqs, lits);
|
||||
for (auto& lit : lits)
|
||||
lit.neg();
|
||||
for (auto eq : eqs)
|
||||
lits.push_back(~mk_eq(eq.first->get_expr(), eq.second->get_expr(), false));
|
||||
for (auto const& [n1, n2] : eqs)
|
||||
lits.push_back(~mk_eq(n1->get_expr(), n2->get_expr(), false));
|
||||
for (auto f : clause)
|
||||
lits.push_back(mk_literal(f));
|
||||
add_axiom(lits);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue