CEisenhofer
f404bef4ba
Fixed CoPilot comment
2026-03-05 19:08:31 +01:00
copilot-swe-agent[bot]
17894601ba
refactor: use constructor delegation in dep_tracker to eliminate duplicate initialization
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-05 17:57:41 +00:00
CEisenhofer
2be1b175cc
Updated benchmarking script
2026-03-05 18:42:31 +01:00
CEisenhofer
608227a27e
Fixed definition extension rule
2026-03-05 18:33:58 +01:00
CEisenhofer
d8871e5c1e
Eliminate common suffix for simplification
2026-03-05 18:19:58 +01:00
CEisenhofer
5a95b40bdb
Canceling out common variables is a simplification step now
2026-03-05 18:17:04 +01:00
CEisenhofer
272000a466
Minor code changes
2026-03-05 18:04:51 +01:00
CEisenhofer
7dcebcdb0a
A bit cleanup
2026-03-05 17:14:54 +01:00
CEisenhofer
c5e7cbc29d
Fix to_dot
2026-03-05 16:58:58 +01:00
copilot-swe-agent[bot]
2eebe57467
Extract handle_empty_side helper in seq_nielsen to eliminate duplicate code
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-05 03:21:02 +00:00
CEisenhofer
5ce56e2e04
Ported graphviz debug output
2026-03-04 20:33:56 +01:00
CEisenhofer
b935394aaf
Fixed nseq model construction
2026-03-04 19:15:50 +01:00
CEisenhofer
b2838b472d
We don't need to handle negative membership constraints explicitly
2026-03-04 19:07:36 +01:00
CEisenhofer
4e7d83f996
Deleted leftover code from subsumption
2026-03-04 17:42:14 +01:00
CEisenhofer
e4787e57f6
Use correct parameters for iterative deepening
...
Updated spec
2026-03-04 17:37:04 +01:00
copilot-swe-agent[bot]
5003cece9d
Implement Parameter integration for theory_nseq (smt.nseq.max_depth)
...
Co-authored-by: CEisenhofer <56730610+CEisenhofer@users.noreply.github.com>
2026-03-04 15:45:55 +00:00
Nikolaj Bjorner
5aa3713d19
first end-pass. Atomic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-03-04 02:05:26 -08:00
copilot-swe-agent[bot]
927b03615c
Fix dangling pointer in fresh variable name construction in generate_extensions()
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-03 21:53:55 +00:00
copilot-swe-agent[bot]
0bdec633d7
Implement ZIPT string solver skeleton (theory_nseq)
...
Add theory_nseq, a Nielsen-graph-based string solver plugin for Z3.
## New files
- src/smt/nseq_state.h/.cpp: constraint store bridging SMT context to
Nielsen graph with manual push/pop backtracking
- src/smt/nseq_regex.h/.cpp: regex membership handling via Brzozowski
derivatives (stub delegates to sgraph::brzozowski_deriv)
- src/smt/nseq_model.h/.cpp: model generation stub
- src/smt/theory_nseq.h/.cpp: main theory class implementing smt::theory
with its own private egraph/sgraph, returns FC_GIVEUP as skeleton
- src/test/nseq_basic.cpp: unit tests covering instantiation, parameter
validation, trivial-equality SAT, and node simplification
## Extensions to seq_nielsen.h/.cpp
- Add search_result enum and solve() iterative-deepening DFS entry point
- Add search_dfs() recursive DFS driver
- Add simplify_node(), generate_extensions(), collect_conflict_deps()
- Add nielsen_node::simplify_and_init(): trivial removal, empty
propagation, prefix matching, symbol clash detection
- Add nielsen_node::is_satisfied(), is_subsumed_by()
- Implement Det, Const Nielsen, and Eq-split modifiers in
generate_extensions()
## Integration
- smt_params.cpp: accept 'nseq' as valid string_solver value
- smt_params_helper.pyg: document 'nseq' option
- smt_setup.h/.cpp: add setup_nseq(), wire into setup_QF_S() and
setup_seq_str()
- smt/CMakeLists.txt: add new sources and smt_seq dependency
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-03 21:50:21 +00:00
copilot-swe-agent[bot]
dd1363f031
Add ZIPT port comparison summary to seq_nielsen.h
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-03 16:34:32 +00:00
copilot-swe-agent[bot]
7c328647de
Move seq_nielsen from src/ast/rewriter to src/smt/seq with new smt_seq component
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-03 00:17:10 +00:00
Lev Nachmanson
6ec40153cc
fix #7677 : treat FC_CONTINUE from check_nla as FEASIBLE in maximize
...
When check_nla returns FC_CONTINUE it means NLA found constraint
violations and added lemmas. The current LP value is a valid lower
bound, so the status should be FEASIBLE, not UNBOUNDED.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-27 12:29:14 -10:00
copilot-swe-agent[bot]
4860d57ae9
Fix intblast ubv_to_int bug: add bv2int axioms for compound expressions
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-02-25 00:46:13 +00:00
copilot-swe-agent[bot]
46daa160ed
Fix FPA soundness issue: reset rewriter cache in pop_scope_eh (issue #8345 )
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-02-21 03:35:47 +00:00
Nikolaj Bjorner
38ce0882db
remove lattice component
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-02-19 15:49:45 -08:00
copilot-swe-agent[bot]
866f352ea9
Fix ambiguous svector constructor calls in theory_finite_set_lattice_refutation.cpp
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-02-19 17:57:04 +00:00
Nikolaj Bjorner
86dc55691d
add extra parameter
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-02-18 21:34:29 -08:00
Nikolaj Bjorner
7fe9b1f873
Merge branch 'master' into finite-sets
2026-02-18 21:11:44 -08:00
Nikolaj Bjorner
07d8971ef9
add sketch for incremental algorithm
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-02-18 21:10:17 -08:00
Nikolaj Bjorner
69b73c64cf
enable post setup parameter tweaking in theory solvers, update azure-pipeline
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-02-18 21:08:24 -08:00
Nikolaj Bjorner
c32b213a20
add finite sets to datatype recursion, delay initialize finite_set plugin, fix bugs in are_distinct and equality simplification
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-02-18 21:07:40 -08:00
Nikolaj Bjorner
534361dee4
fix #8563 - align indices for flat quantifiers with sks vector layout, and also guard creating instantiation equalities with sort checks
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-02-18 21:02:29 -08:00
copilot-swe-agent[bot]
eedade141c
Restore defensive SASSERT in smt_conflict_resolution
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-02-18 21:02:26 -08:00
copilot-swe-agent[bot]
d958036711
Add initializer_list overloads and update all call sites
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-02-18 21:02:26 -08:00
Copilot
d9c6da215f
Eliminate unnecessary copies with std::move for ref-counted types ( #8591 )
2026-02-18 21:02:24 -08:00
Nikolaj Bjorner
c031058978
small update to testing on p.m_sls_worker instead of should_run_sls
2026-02-18 21:02:22 -08:00
Nuno Lopes
f6f8beaf78
Remove copies ( #8583 )
2026-02-18 21:02:22 -08:00
Nuno Lopes
23a0a529fb
revert swap changes to fix CI
2026-02-18 21:02:18 -08:00
Nuno Lopes
bbb29911f3
fix crash
2026-02-18 21:02:17 -08:00
Nuno Lopes
9152013fbd
remove a few copies
2026-02-18 21:02:17 -08:00
Nikolaj Bjorner
6b28d65487
set random seed directly on m_smt_params before context initialization
...
updates to random seed on ctx does not get propagated to arithmetic solver, preventing diversity within arithmetic solver.
2026-02-18 21:02:17 -08:00
Copilot
58431ec158
Replace user-defined swap with C++11 move semantics for covert move patterns ( #8543 )
2026-02-18 21:02:17 -08:00
copilot-swe-agent[bot]
119008b46f
Fix all build warnings with surgical changes
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-02-18 20:58:05 -08:00
Copilot
adf72f2a66
Modern C++: Add std::span overload for mk_or, adopt std::clamp, optimize stream output ( #8507 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-02-18 20:58:05 -08:00
Copilot
73f6dae095
Refactor mk_concat call sites to use std::initializer_list ( #8494 )
...
* Initial plan
* Refactor mk_concat call sites to use std::initializer_list
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-02-18 20:58:03 -08:00
Copilot
17c8958d70
Remove redundant default constructors when they're the only constructor ( #8461 )
...
* Initial plan
* Modernize C++ constructors to use C++11 default member initialization - Phase 1
Co-authored-by: nunoplopes <2998477+nunoplopes@users.noreply.github.com>
* Fix theory_pb.h struct definition - move reset() back inside struct
Co-authored-by: nunoplopes <2998477+nunoplopes@users.noreply.github.com>
* Modernize C++ constructors to use C++11 default member initialization - Phase 2
Co-authored-by: nunoplopes <2998477+nunoplopes@users.noreply.github.com>
* Fix opt_solver.h - revert rational initialization (complex type)
Co-authored-by: nunoplopes <2998477+nunoplopes@users.noreply.github.com>
* Modernize C++ constructors to use C++11 default member initialization - Phase 3
Co-authored-by: nunoplopes <2998477+nunoplopes@users.noreply.github.com>
* Fix sparse_matrix.h - explicitly initialize union member in default constructor
Co-authored-by: nunoplopes <2998477+nunoplopes@users.noreply.github.com>
* Remove unnecessary default constructors when they're the only constructor
Co-authored-by: nunoplopes <2998477+nunoplopes@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: nunoplopes <2998477+nunoplopes@users.noreply.github.com>
2026-02-18 20:58:01 -08:00
Copilot
31e4945922
Remove redundant non-virtual destructors with = default ( #8462 )
...
* Initial plan
* Remove 6 non-virtual destructors with no code (= default)
Co-authored-by: nunoplopes <2998477+nunoplopes@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: nunoplopes <2998477+nunoplopes@users.noreply.github.com>
2026-02-18 20:58:01 -08:00
Copilot
d4e0a7fe21
Use structured bindings for stack entries in theory_datatype ( #8442 )
...
* Initial plan
* Refactor theory_datatype to use C++17 structured bindings
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix structured binding syntax error in smt_justification.cpp
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>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-02-18 20:58:01 -08:00
Nuno Lopes
0c73df9579
fix build
2026-02-18 20:58:00 -08:00
Nuno Lopes
c0af7c5566
fix build
2026-02-18 20:57:59 -08:00