Nikolaj Bjorner
|
3a71f28c6c
|
Rename dummy_simple_solver to zipt_dummy_simple_solver
|
2026-03-10 15:49:24 -07:00 |
|
copilot-swe-agent[bot]
|
0efb7402e8
|
Fix build: add dummy_simple_solver to nseq_zipt.cpp fixture, fix assert_expr in seq_nielsen.cpp
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 22:47:49 +00:00 |
|
Nikolaj Bjorner
|
d2739d9816
|
use reference to solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2026-03-10 15:22:50 -07:00 |
|
Nikolaj Bjorner
|
c98ea6dc21
|
make simple solver a reference
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2026-03-10 15:10:51 -07:00 |
|
copilot-swe-agent[bot]
|
5744958e46
|
Replace lp_simple_solver in nielsen with context_solver using smt::kernel (seq_len)
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 21:39:29 +00:00 |
|
Nikolaj Bjorner
|
a8269c7d98
|
Merge pull request #8930 from Z3Prover/copilot/introduce-constraints-on-s
Use mod-based constraints for semi-linear regex length sets
|
2026-03-10 13:33:43 -07:00 |
|
copilot-swe-agent[bot]
|
334e6da60d
|
Guard mod constraint: skip for period <= 1
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 20:14:53 +00:00 |
|
copilot-swe-agent[bot]
|
2bae0f02c4
|
Replace fresh-variable semi-linear constraint with mod-based approach
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 19:48:18 +00:00 |
|
copilot-swe-agent[bot]
|
472d9bde6c
|
Fix unused variable build warnings in theory_finite_set, theory_finite_set_size, theory_nseq
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 18:52:40 +00:00 |
|
Nikolaj Bjorner
|
83c8743ea7
|
Merge pull request #8925 from Z3Prover/copilot/add-theory-seq-len-solver
Add theory_seq_len: partial sequence length axiomatization via semi-linear constraints
|
2026-03-10 11:36:33 -07:00 |
|
copilot-swe-agent[bot]
|
d4b99730b9
|
Fix build error: remove stale dep_tracker method definitions from seq_nielsen.cpp
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 18:30:33 +00:00 |
|
copilot-swe-agent[bot]
|
56e9e9df57
|
Add theory_seq_len: partial axiom instantiation for sequence length constraints
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 18:02:04 +00:00 |
|
Nikolaj Bjorner
|
2e636ec25d
|
Merge branch 'c3' into copilot/replace-lp-solver-with-abstract-solver
|
2026-03-10 10:35:44 -07:00 |
|
Nikolaj Bjorner
|
3f0e821207
|
Merge pull request #8923 from Z3Prover/copilot/host-char-range-and-set
Move char_range and char_set from seq_nielsen to zstring
|
2026-03-10 10:18:58 -07:00 |
|
Nikolaj Bjorner
|
c710e1fa14
|
Merge pull request #8922 from Z3Prover/copilot/replace-dep-tracker-with-uint-set
Replace dep_tracker with uint_set in seq_nielsen
|
2026-03-10 10:18:37 -07:00 |
|
copilot-swe-agent[bot]
|
40b33ab353
|
Address code review: simplify constructor, add UNREACHABLE()
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 17:10:36 +00:00 |
|
copilot-swe-agent[bot]
|
35addda546
|
Replace lp_solver in seq_nielsen with abstract simple_solver class
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 17:08:57 +00:00 |
|
copilot-swe-agent[bot]
|
5330bd20bc
|
Replace dep_tracker class in seq_nielsen with uint_set
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 16:58:50 +00:00 |
|
copilot-swe-agent[bot]
|
430a43045a
|
Move char_range and char_set from seq_nielsen to zstring
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 16:57:43 +00:00 |
|
copilot-swe-agent[bot]
|
2f8cc1536c
|
Swap author order: Clemens Eisenhofer before Nikolaj Bjorner in file headers
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-10 16:27:26 +00:00 |
|
CEisenhofer
|
587eec4226
|
More bug fixing in the gpower introduction
|
2026-03-09 15:20:58 +01:00 |
|
CEisenhofer
|
32a09859e3
|
Fixing power introduction
|
2026-03-09 15:03:26 +01:00 |
|
CEisenhofer
|
e1cf20f9bd
|
Added timeout
Some bugfixes
|
2026-03-09 14:21:06 +01:00 |
|
CEisenhofer
|
756673f104
|
Trying to port integer constraints
|
2026-03-06 14:01:21 +01:00 |
|
CEisenhofer
|
009c6de235
|
Ported symbolic characters
|
2026-03-06 11:28:06 +01:00 |
|
CEisenhofer
|
f404bef4ba
|
Fixed CoPilot comment
|
2026-03-05 19:08:31 +01:00 |
|
Nikolaj Bjorner
|
7db00dad9d
|
Merge pull request #8872 from Z3Prover/copilot/simplify-dep-tracker-constructors
refactor(seq_nielsen): eliminate duplicate dep_tracker initialization via constructor delegation
|
2026-03-05 10:00:09 -08:00 |
|
CEisenhofer
|
2562372142
|
The ZIPT tests
|
2026-03-05 18:59:26 +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
|
c73291a3ba
|
Some ZIPT test cases
|
2026-03-05 18:56:18 +01: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 |
|
copilot-swe-agent[bot]
|
477ae7c86c
|
Remove is_subsumed_by method from nielsen_node and its tests
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
|
2026-03-04 20:59:00 +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 |
|
CEisenhofer
|
ee02c1c8f3
|
Changed specifications
|
2026-03-04 15:53:49 +01: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 |
|
Nikolaj Bjorner
|
a80652270d
|
Merge branch 'c3' into copilot/fix-reconcat-classification
|
2026-03-03 13:10:25 -08:00 |
|