3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-06-28 03:18:49 +00:00
Commit graph

279 commits

Author SHA1 Message Date
CEisenhofer
4fffc267ec Trivial constraint != satisfied 2026-05-27 18:20:03 +02:00
CEisenhofer
dc7c94a3ac le != lt 2026-05-27 17:37:39 +02:00
CEisenhofer
b7f9019a6e Duplicate function signature 2026-05-27 17:29:06 +02:00
CEisenhofer
0fa1e75f3f Remove redundant function 2026-05-27 17:27:48 +02:00
CEisenhofer
e74b235d87 Solve disequalities lazily 2026-05-27 17:25:39 +02:00
CEisenhofer
4cd908345a Prevent expressions in partial dfa being freed to early 2026-05-26 13:07:38 +02:00
CEisenhofer
c18aa647e1 Removed recursion from regex unwinding 2026-05-22 15:15:48 +02:00
CEisenhofer
cedb13d045 First check for conflict and then sat 2026-05-22 14:38:07 +02:00
CEisenhofer
2ea1c74071 Make var-nielsen case non-recursive 2026-05-21 19:12:15 +02:00
CEisenhofer
dafa3cf5bd Added feature (?) to SAT core to prefer the Nielsen assumptions during splitting 2026-05-21 19:06:45 +02:00
CEisenhofer
ca12eae670 WIP: Undid internal constraints 2026-05-21 17:17:49 +02:00
CEisenhofer
315a09aea8 [WIP] Try to replace "recursive reusage" of variables by seq.slice 2026-05-20 17:24:57 +02:00
CEisenhofer
dd00dd7362 First step towards not-reusing variables 2026-05-20 10:11:50 +02:00
CEisenhofer
9bb0f7e337 Fix some IDE warnings 2026-05-19 16:03:21 +02:00
CEisenhofer
0d1ee09e62 Keep most of the Nielsen graph and do a hot-restart when only external literals changed 2026-05-19 15:33:20 +02:00
Nikolaj Bjorner
2a36b9a68e split into context and sub-solver, move length force predicates to context-solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-05-17 19:01:03 -07:00
Nikolaj Bjorner
9d4feed0ae remove expr_ref from dependencies, only use literals that are true.
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-05-17 13:28:12 -07:00
Nikolaj Bjorner
b75acc5c14 replace seq::le by generic expr_ref
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-05-16 23:10:44 -07:00
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