3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-07-03 13:56:08 +00:00
Commit graph

311 commits

Author SHA1 Message Date
Nikolaj Bjorner
e72c082818 use vector with object destructor 2026-05-16 22:32:29 -07:00
Copilot
27cd086d24
Fix python build: remove circular smt_enode.h include from seq_nielsen.cpp (#9508)
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/e0d3c96d-3caa-4c0b-a723-d0fb4a9db3c9

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-05-12 13:33:02 -04:00
CEisenhofer
71d7d70080 Missing dependency bug. Still not fixed, but better now 2026-05-12 14:00:50 +02:00
CEisenhofer
c9fb432191 The side-condition of the "if"-split belongs on the edges 2026-05-12 10:30:29 +02:00
CEisenhofer
bb639af485 Bit more pp 2026-05-12 09:29:49 +02:00
CEisenhofer
22583a7abd Typo in pp: lt != le 2026-05-12 09:08:47 +02:00
CEisenhofer
55ea1929e9 A bit more "dot" improvements 2026-05-11 19:22:45 +02:00
CEisenhofer
d20a27e1df Make dot output a bit more readable 2026-05-11 19:17:00 +02:00
CEisenhofer
fb6b05aa83 Fixed the "partial automaton" after we push regex unwinding to ITE splitting 2026-05-11 17:57:06 +02:00
Nikolaj Bjorner
7ec3bf55ff merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-05-07 10:48:03 -04:00
CEisenhofer
50f471a95b For membership constraints just unwind 2026-05-07 16:20:04 +02:00
CEisenhofer
f7f2ee8f74 Using only one solver 2026-05-07 15:49:16 +02:00
CEisenhofer
712cd68e8c Don't add duplicate equations and membership constraints to Nielsen root 2026-05-06 16:38:26 +02:00
Nikolaj Bjorner
57692811fa reduce set of assumptions passed into m_core_solver 2026-05-06 03:58:29 -07:00
CEisenhofer
11ff3ccae7 Power unwinding was unsound 2026-05-06 10:22:39 +02:00
Nikolaj Bjorner
8c02ec087b fix crash with D:\\bench\\inputs\\QF_S\\20240318-omark\\cyclic-xy.smt2
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-05-05 10:53:12 -07:00
CEisenhofer
b65f22ef3b Bug fix 2026-05-05 14:58:42 +02:00
CEisenhofer
e7cc24d7ea Next step towards partial automata 2026-05-05 13:58:15 +02:00
CEisenhofer
bfa9d17408 We need new variables 2026-05-05 10:48:49 +02:00
CEisenhofer
e2e876c7a9 Removed legacy code 2026-05-04 20:16:13 +02:00
CEisenhofer
5b3d734ecb Fixed regex factorization again 2026-05-04 19:25:07 +02:00
CEisenhofer
adb9ca4305 Some steps towards partial automatons 2026-05-04 18:31:38 +02:00
Nikolaj Bjorner
266008e81f update seq_model draft
redo seq_model to be compatible with model_generator
2026-05-03 13:57:56 -07:00
Nikolaj Bjorner
014315764d re-fix the same bug pointed out to an earlier version
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-26 08:16:37 -07:00
Nikolaj Bjorner
abbe36561d cleanup service
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-24 17:22:04 -07:00
Nikolaj Bjorner
cedd896ea5 redo length re-computation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-24 15:49:19 -07:00
Nikolaj Bjorner
7fc68d20ea brain got parked somewhere?
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-23 19:16:18 -07:00
Nikolaj Bjorner
1cf5e3e300 remove unused function
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-23 13:04:02 -07:00
CEisenhofer
e045e650da Fixed order of undoing 2026-04-23 17:18:04 +02:00
Nikolaj Bjorner
ace4105a90 fix test build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-23 08:06:15 -07:00
CEisenhofer
3873f387be Model construction has to respect the length constraints 2026-04-22 19:51:09 +02:00
CEisenhofer
0a1eb26952 Avoid Skolem functions for length and symbolic characters introduced during Nielsen saturation (power exponents are still Skolem functions) 2026-04-22 11:06:55 +02:00
CEisenhofer
46364a1502 Extract argument of unit when adding constant character to range 2026-04-21 18:54:36 +02:00
CEisenhofer
8b2643ff02 Missing unit around symbolic characters 2026-04-21 18:38:03 +02:00
Nikolaj Bjorner
b2fa00ecf4 fix vector<le, false> to vector<le> we need the copy and destructor semantics for expr_ref
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-21 18:37:23 +02:00
CEisenhofer
03c990e0e1 Push substitutions back to base solver 2026-04-21 18:29:40 +02:00
Nikolaj Bjorner
4446705eae clean up conflict generation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-21 18:28:25 +02:00
Nikolaj Bjorner
3296681a19 add code review comments
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-21 17:17:19 +02:00
Nikolaj Bjorner
40122b494c add comments, fix a bug in early return for min-term version of expansion
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-21 16:49:29 +02:00
Nikolaj Bjorner
3beeadfe51 nits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-21 16:20:17 +02:00
CEisenhofer
ec92a532b8 Use dedicated string variables based on mod. count 2026-04-21 10:53:35 +02:00
Nikolaj Bjorner
8cc85a7d7b code simplification, fix conflict in new_diseq_eh
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-21 10:17:43 +02:00
Nikolaj Bjorner
352b14fe2b fix and optimize not-contains and regex equalities
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-21 09:16:00 +02:00
Nikolaj Bjorner
e172aa370d add simplification rule to concatentations of regex to avoid stack overflow in derivatives of very long expressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-20 18:20:43 +02:00
CEisenhofer
41412293fe Let's try to justify bounds 2026-04-20 15:52:35 +02:00
Nikolaj Bjorner
64e7f29533 remove spurious include
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-16 04:57:27 +02:00
Nikolaj Bjorner
c97aebe2b6 remove spurious ref
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-16 04:53:39 +02:00
CEisenhofer
82df1afeaf tentative solution: use existing nullability check (we might want to check in the future which guards of the ITE are actually true) 2026-04-14 18:07:03 +02:00
Nikolaj Bjorner
725b13680e na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-04-14 08:39:22 -07:00
CEisenhofer
0c4e4ad702 Regex factorization missed some justifications 2026-04-14 17:19:07 +02:00