3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-04-03 02:18:58 +00:00
z3/src/smt/seq
Copilot e3e235aa7f
Refactor: replace int_constraint with constraint struct, promote cur_path to member, expose path leaf side constraints (#9124)
* chore: update plan with cur_path and side constraints requirements

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/1523cf0a-b7a4-41a6-b792-7cd41b4dcd3b

* Refactor: rename int_constraint to constraint, remove int_constraint_kind enum

- Rename int_constraint struct to constraint with fields fml/dep
- Remove int_constraint_kind enum; pre-build formula expressions instead
- nielsen_edge: add_side_int/side_int() -> add_side_constraint/side_constraints()
- nielsen_node: add_int_constraint/int_constraints() -> add_constraint/constraints()
- nielsen_graph: mk_int_constraint(lhs,rhs,kind,dep) -> mk_constraint(fml,dep)
- Remove int_constraint_to_expr (no longer needed)
- search_dfs/simplify_and_init/check_int_feasibility/check_lp_le: drop cur_path param
- Add m_cur_path member to nielsen_graph; m_cur_path.reset() in solve()
- Add get_path_leaf_side_constraints() implementation
- Update seq_parikh.h/cpp and seq_nielsen_pp.cpp to use new constraint API

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* refactor: constraint struct, promote cur_path, expose path leaf side constraints

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/1523cf0a-b7a4-41a6-b792-7cd41b4dcd3b

* fix: remove spurious includes from seq_nielsen.cpp

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/aa283d79-cd42-4b87-aaf0-4273a8327b76

* fix: update test files to use renamed constraint API and fix inverted root guard

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/b09bbc56-9617-4277-8e0c-27fa7e588037

---------

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: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-03-24 22:18:30 -07:00
..
CMakeLists.txt refactor: move nielsen graph display/to_dot routines into seq_nielsen_pp.cpp (#9090) 2026-03-22 17:44:22 -07:00
seq_nielsen.cpp Refactor: replace int_constraint with constraint struct, promote cur_path to member, expose path leaf side constraints (#9124) 2026-03-24 22:18:30 -07:00
seq_nielsen.h Refactor: replace int_constraint with constraint struct, promote cur_path to member, expose path leaf side constraints (#9124) 2026-03-24 22:18:30 -07:00
seq_nielsen_pp.cpp Refactor: replace int_constraint with constraint struct, promote cur_path to member, expose path leaf side constraints (#9124) 2026-03-24 22:18:30 -07:00
seq_parikh.cpp Refactor: replace int_constraint with constraint struct, promote cur_path to member, expose path leaf side constraints (#9124) 2026-03-24 22:18:30 -07:00
seq_parikh.h Refactor: replace int_constraint with constraint struct, promote cur_path to member, expose path leaf side constraints (#9124) 2026-03-24 22:18:30 -07:00
seq_regex.cpp fix bug in non-emptiness witness extraction 2026-03-24 13:27:28 -07:00
seq_regex.h ... and another one... 2026-03-19 15:44:15 +01:00
seq_state.cpp Move nseq_regex/state into smt/seq and seq_model into smt/; rename to seq_* prefix (#8984) 2026-03-14 11:45:32 -07:00
seq_state.h theory_nseq: remove seq_state, embed tracked entries directly in prop_queue (#9045) 2026-03-19 14:45:53 -07:00