Nikolaj Bjorner
51ae6eeccc
Merge pull request #8856 from angelica-moreira/memory-safety-pipeline
...
Add ASan/UBSan memory safety CI workflow
2026-03-04 13:05:57 -08:00
Nikolaj Bjorner
e3d592becb
Merge pull request #8860 from Z3Prover/copilot/fix-c3-branch-issue
...
Remove unimplemented `is_subsumed_by` from `nielsen_node` and tests
2026-03-04 13:04:47 -08: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
copilot-swe-agent[bot]
b24a446da1
Initial plan
2026-03-04 20:37:52 +00:00
CEisenhofer
5ce56e2e04
Ported graphviz debug output
2026-03-04 20:33:56 +01:00
CEisenhofer
3e28bad51f
Add testing script for nseq
2026-03-04 19:27:21 +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
Angelica Moreira
123bb620d4
Add ASan/UBSan memory safety CI workflow
...
Adds a workflow that builds and tests Z3 with AddressSanitizer and
UndefinedBehaviorSanitizer on every push to catch runtime memory errors
and undefined behavior. Runs unit tests, SMT-LIB2 benchmarks, and
regression tests under both sanitizers. Includes a Copilot agentic
workflow to generate summary reports as GitHub Discussions.
Triggered on push (path-filtered to src/) and manual dispatch.
2026-03-04 16:31:29 +00:00
CEisenhofer
2d44a4dbf3
Update spec
2026-03-04 16:57:55 +01:00
Clemens Eisenhofer
95e8981362
Merge pull request #8859 from Z3Prover/copilot/implement-parameter-integration
...
Parameter integration for theory_nseq: add smt.nseq.max_depth
2026-03-04 16:56:23 +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
copilot-swe-agent[bot]
47836e6f5b
Initial plan
2026-03-04 15:07:21 +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
Nikolaj Bjorner
13f9fec339
Merge pull request #8854 from Z3Prover/copilot/implement-zipt-string-solver
...
Implement ZIPT string solver as theory_nseq
2026-03-03 15:37:41 -08:00
copilot-swe-agent[bot]
f97d80a5e9
Add smt_seq to smt dependencies in mk_project.py
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-03 23:36:47 +00: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]
a7084de5a8
Initial plan
2026-03-03 21:18:59 +00:00
Nikolaj Bjorner
ce3ddd1718
added specs and research
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-03-03 13:17:29 -08:00
Nikolaj Bjorner
7438ae6975
Merge ranch 'c3' of https://github.com/z3prover/z3 into c3
2026-03-03 13:16:29 -08:00
Nikolaj Bjorner
f0e026104c
added specs and research from running atomic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-03-03 13:16:16 -08:00
Nikolaj Bjorner
a9d0559076
Merge pull request #8849 from Z3Prover/copilot/fix-reconcat-classification
...
sgraph: fix re.concat classification and s_loop nullability
2026-03-03 13:10:39 -08:00
Nikolaj Bjorner
a80652270d
Merge branch 'c3' into copilot/fix-reconcat-classification
2026-03-03 13:10:25 -08:00
Nikolaj Bjorner
bf8b860015
Merge pull request #8848 from Z3Prover/copilot/apply-zipt-code-improvements
...
ZIPT: fix loop nullable, drop bounds check, symmetric star merging
2026-03-03 13:08:38 -08:00
Nikolaj Bjorner
7febc19e4c
Merge pull request #8851 from Z3Prover/copilot/examine-nielsen-graphs-constraints
...
doc: Add ZIPT port comparison summary to seq_nielsen.h
2026-03-03 13:08:08 -08: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]
e92f0be8c5
Initial plan
2026-03-03 16:29:34 +00:00
copilot-swe-agent[bot]
c0ed79c93b
improve s_loop nullable extraction: clearer comments and sentinel values
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-03 05:40:16 +00:00
copilot-swe-agent[bot]
a0b359212e
Apply ZIPT improvements: fix loop nullable, drop bounds check, symmetric star merging
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-03 05:39:33 +00:00
copilot-swe-agent[bot]
69da8f02c2
fix re.concat classification and loop nullability in euf_sgraph.cpp
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-03 05:19:06 +00:00
copilot-swe-agent[bot]
d902ce166e
Initial plan
2026-03-03 05:17:55 +00:00
copilot-swe-agent[bot]
593e22ba4e
Initial plan
2026-03-03 05:17:21 +00:00
Nikolaj Bjorner
fb674ac5b2
Merge pull request #8828 from Z3Prover/copilot/port-nielsen-graph-generation
...
Port Nielsen graph constraint framework from ZIPT into smt/seq
2026-03-02 19:10:49 -08:00
Nikolaj Bjorner
d40c4721d8
Merge pull request #8838 from Z3Prover/copilot/fix-no-such-field-error
...
Fix NoSuchFieldError in Java JNI wrapper for BOOL OUT/INOUT parameters
2026-03-02 19:10:21 -08:00
copilot-swe-agent[bot]
361f57976b
Fix build: update seq_nielsen tests to use new sgraph(m, eg) constructor after c3 merge
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-03 01:46:26 +00:00
Nikolaj Bjorner
fedb610da1
Merge remote-tracking branch 'origin/c3' into copilot/port-nielsen-graph-generation
2026-03-02 16:56:55 -08:00
Nikolaj Bjorner
9031089999
add zipt reviewer to master branch
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-03-02 16:51:52 -08:00
Nikolaj Bjorner
585e2cc4ba
Merge pull request #8829 from Z3Prover/copilot/update-sgraph-seq-plugin
...
Refactor sgraph/seq_plugin ownership, add hash matrix and substitution caching
2026-03-02 16:45:51 -08:00
Nikolaj Bjorner
83315f4054
fix python build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-03-03 00:42:07 +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
Nikolaj Bjorner
df7d5cc49b
Merge pull request #8839 from Z3Prover/copilot/examine-new-files-for-improvements
...
Add ZIPT code reviewer agentic workflow (4x daily)
2026-03-02 16:09:31 -08:00
copilot-swe-agent[bot]
7c8f2d93bb
Change seq_plugin m_sg to sgraph& reference, enode_concat_hash takes sgraph& directly
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-03 00:07:53 +00:00
copilot-swe-agent[bot]
28d1c4a27f
Add ZIPT code reviewer agentic workflow (runs 4x daily)
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-03 00:00:36 +00:00
copilot-swe-agent[bot]
c384710b08
Fix NoSuchFieldError in JNI for BoolPtr: use Z field descriptor and SetBooleanField
...
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-02 23:56:42 +00:00
copilot-swe-agent[bot]
67f4d30577
Initial plan
2026-03-02 23:55:15 +00:00
copilot-swe-agent[bot]
027b46b2ed
Initial plan
2026-03-02 23:52:53 +00:00