3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-02-02 07:16:17 +00:00
z3/src/sat/smt
Copilot ef5ee85bfd
Refactor pb_solver to use structured bindings for wliteral patterns (#8391)
* Initial plan

* Refactor pb_solver.cpp to use C++17 structured bindings for wliteral patterns

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Fix active2wlits to avoid unnecessary wliteral reconstruction

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-27 13:58:14 -08:00
..
arith_axioms.cpp fix #7753 2025-08-17 17:20:10 -07:00
arith_diagnostics.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
arith_internalize.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
arith_solver.cpp Adopt C++17 structured bindings for map/pair iteration (#8159) 2026-01-11 17:44:12 -08:00
arith_solver.h remove set cardinality operators from array theory. Make final-check use priority levels 2025-11-26 15:35:19 -08:00
arith_theory_checker.h update format and checker for implied-eq 2023-07-27 13:21:45 -07:00
arith_value.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
arith_value.h Add intblast solver 2023-12-15 13:50:38 -08:00
array_axioms.cpp Refactor mk_and and mk_app to use std::span API (#8285) 2026-01-22 16:58:38 -08:00
array_diagnostics.cpp remove '#include <iostream>' from headers and from unneeded places 2022-06-17 14:10:19 +01:00
array_internalize.cpp Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
array_model.cpp Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
array_solver.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
array_solver.h remove stale experimental code #8063 2025-12-12 05:49:05 +00:00
atom2bool_var.cpp Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
atom2bool_var.h mbp (#4741) 2020-10-21 15:48:40 -07:00
ba_xor.h arrays (#4684) 2020-09-13 19:29:59 -07:00
bv_ackerman.cpp Sls (#7439) 2024-11-02 12:32:48 -07:00
bv_ackerman.h don't have bv-ackerman influence simplification 2022-08-21 15:25:18 -07:00
bv_delay_internalize.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
bv_internalize.cpp Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
bv_invariant.cpp Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
bv_solver.cpp Refactor bv_solver to use structured bindings for var_pos patterns (#8384) 2026-01-27 11:48:21 -08:00
bv_solver.h remove stale experimental code #8063 2025-12-12 05:49:05 +00:00
bv_theory_checker.cpp remove once pragma from cpp file 2022-10-18 14:57:49 -07:00
bv_theory_checker.h wip - add bit-vector validator plugins and logging 2022-10-18 14:50:21 -07:00
CMakeLists.txt move smt params to params directory, update release.yml 2025-06-09 10:47:22 -07:00
distinct_theory_checker.h wip - features and bug-fixes to proof logging 2022-10-18 07:54:49 -07:00
dt_solver.cpp Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
dt_solver.h remove stale experimental code #8063 2025-12-12 05:49:05 +00:00
euf_ackerman.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
euf_ackerman.h wip - updates to proof logging and self-checking 2022-10-16 23:33:30 +02:00
euf_internalize.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
euf_invariant.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
euf_model.cpp remove a few useless dynamic casts 2025-09-13 21:06:55 +01:00
euf_proof.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
euf_proof_checker.cpp Sls (#7439) 2024-11-02 12:32:48 -07:00
euf_proof_checker.h Replace empty destructors with = default for compiler optimization (#8189) 2026-01-13 10:50:10 -08:00
euf_relevancy.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
euf_relevancy.h more fixes on relevancy 2022-01-04 22:02:28 -08:00
euf_solver.cpp remove set cardinality operators from array theory. Make final-check use priority levels 2025-11-26 15:35:19 -08:00
euf_solver.h add an option to register callback on quantifier instantiation 2025-08-06 21:11:55 -07:00
fpa_solver.cpp Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
fpa_solver.h #6364 - remove option of redundant clauses from internalization 2022-10-24 00:38:31 -07:00
intblast_solver.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
intblast_solver.h Sls (#7439) 2024-11-02 12:32:48 -07:00
pb_card.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
pb_card.h Use noexcept more. (#7058) 2023-12-16 12:14:53 +00:00
pb_constraint.cpp streamline pb solver interface and naming after removal of xor 2021-02-28 12:32:04 -08:00
pb_constraint.h remove unneeded iterator functions 2024-09-23 12:59:04 +01:00
pb_internalize.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
pb_pb.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
pb_pb.h Adopt C++17 structured bindings for map/pair iteration (#8159) 2026-01-11 17:44:12 -08:00
pb_solver.cpp Refactor pb_solver to use structured bindings for wliteral patterns (#8391) 2026-01-27 13:58:14 -08:00
pb_solver.h Adopt C++17 structured bindings for map/pair iteration (#8159) 2026-01-11 17:44:12 -08:00
pb_solver_interface.h Add and fix a few general compiler warnings. (#5628) 2021-10-29 15:42:32 +02:00
q_clause.cpp fixes to sat.euf ematching #5573 2021-10-16 15:52:37 -07:00
q_clause.h log also quantifier generation (besides binding) 2022-10-20 17:49:15 -07:00
q_ematch.cpp Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
q_ematch.h update namespace, hoist exported functions outside of embedded namespace 2025-05-07 15:57:47 -07:00
q_eval.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
q_eval.h #5753 2022-01-15 09:35:25 -08:00
q_mbi.cpp handle build warnings 2025-06-06 15:13:31 +02:00
q_mbi.h track quantifier instantiation method in proof hint #7080 2024-01-20 17:44:07 -08:00
q_model_fixer.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
q_model_fixer.h Use = default for virtual constructors. 2022-08-05 18:11:46 +03:00
q_queue.cpp Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
q_queue.h redo bindings/fingerprints 2021-10-05 10:15:56 -07:00
q_solver.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
q_solver.h track quantifier instantiation method in proof hint #7080 2024-01-20 17:44:07 -08:00
q_theory_checker.cpp #6364 2022-10-20 16:39:43 -07:00
q_theory_checker.h wip - updates to proof logging and self-checking 2022-10-16 23:33:30 +02:00
recfun_solver.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
recfun_solver.h #6364 - remove option of redundant clauses from internalization 2022-10-24 00:38:31 -07:00
sat_internalizer.h fix #6623 2023-04-09 21:10:24 -07:00
sat_smt.h CNF conversion refactoring (#5547) 2021-09-20 08:53:10 -07:00
sat_th.cpp Refactor sat_th to use structured bindings for enode_pair patterns (#8386) 2026-01-27 12:02:28 -08:00
sat_th.h move smt params to params directory, update release.yml 2025-06-09 10:47:22 -07:00
sls_solver.cpp throttle value smt -> sls 2025-01-26 14:16:43 -08:00
sls_solver.h build fixes 2024-11-14 21:55:44 -08:00
specrel_solver.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
specrel_solver.h remove default destructors 2024-10-02 22:20:12 +01:00
tseitin_theory_checker.cpp strengthen Tseitin checker to take true/false constants into account 2023-07-28 16:54:33 -07:00
tseitin_theory_checker.h wip - proof checking, add support for distinct, other fixes 2022-10-17 17:51:10 -07:00
user_solver.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
user_solver.h fix bugs with tracking premises in user propagator in sat/smt 2024-05-31 11:25:09 +04:00
xor_solver.cpp wip - remove stale skaffolding for retrieving sub-hints. 2022-10-16 17:18:08 -07:00
xor_solver.d Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
xor_solver.h fix build 2022-10-24 10:23:50 +01:00