CEisenhofer
|
63a668a71f
|
Give up with we have nasty replace_all or friends (otw. we would be unsound due to Nielsen saturation)
|
2026-06-26 15:14:44 +02:00 |
|
CEisenhofer
|
d2db79e1a7
|
For whatever reason int-extraction got moved into an assertion
Cleanup
|
2026-06-26 10:38:08 +02:00 |
|
CEisenhofer
|
af0c0efae9
|
Branch on all minterms to speed up partial automata construction
|
2026-06-25 17:03:29 +02:00 |
|
CEisenhofer
|
2aa1d1ee01
|
Memorize previous conflicts
|
2026-06-25 15:40:53 +02:00 |
|
CEisenhofer
|
64fed10e86
|
Projection operator => view
|
2026-06-25 10:48:20 +02:00 |
|
CEisenhofer
|
fd8100475c
|
Eliminate top-level nonsense cases from regex decomposition
|
2026-06-11 16:01:08 +02:00 |
|
CEisenhofer
|
be627007e1
|
Use lookahead for regex decomposition
Make snode const
|
2026-06-11 15:34:25 +02:00 |
|
CEisenhofer
|
2dbefbcd56
|
Lookahead for regex splits applied to membership constraints
Rewriting constraint/prefix/suffix with constant strings to regexes
|
2026-06-10 20:35:36 +02:00 |
|
CEisenhofer
|
dbb3f70873
|
Moved the regex splitting into rewriter
Added some simplifications
|
2026-06-10 15:00:58 +02:00 |
|
CEisenhofer
|
294ee984b8
|
Remove cyclic dependency
|
2026-06-10 13:56:58 +02:00 |
|
CEisenhofer
|
9f44a9cce8
|
Flatten concat when deciding if it is constant
|
2026-06-09 16:39:09 +02:00 |
|
CEisenhofer
|
2e4c165a16
|
Misclassified giving-up on decomposition as conflict
|
2026-06-09 16:22:41 +02:00 |
|
CEisenhofer
|
64f422abc5
|
sigma of full_seq was missing
|
2026-06-09 15:49:41 +02:00 |
|
CEisenhofer
|
069068ce5e
|
Don't use enodes for justifying disequality conflicts
|
2026-06-09 15:40:28 +02:00 |
|
CEisenhofer
|
3c39fc4238
|
Complement
|
2026-06-09 15:12:50 +02:00 |
|
CEisenhofer
|
7c7ca27822
|
Sounder?
|
2026-06-06 15:24:25 +02:00 |
|
CEisenhofer
|
eee5a9dcef
|
A bit of cleanup
|
2026-06-05 20:26:58 +02:00 |
|
CEisenhofer
|
67906da97a
|
Corrected string extraction
|
2026-06-05 19:57:00 +02:00 |
|
CEisenhofer
|
8ac7a242eb
|
Z3 arguments got ignored in the Nielsen graph
|
2026-06-05 19:19:08 +02:00 |
|
CEisenhofer
|
c20bc0e631
|
First attempt for monadic decomposition
|
2026-06-05 18:40:36 +02:00 |
|
CEisenhofer
|
e94b6db8e5
|
Removed assertion to make the build dependencies acyclic
|
2026-06-03 10:58:25 +02:00 |
|
CEisenhofer
|
5b41c6eb9f
|
Better tracking for debugging
|
2026-06-01 19:50:34 +02:00 |
|
CEisenhofer
|
2da7c7b3db
|
Cache result of Z3 emptiness checks
|
2026-06-01 17:53:28 +02:00 |
|
CEisenhofer
|
1637b006c5
|
Output automaton
|
2026-06-01 17:29:09 +02:00 |
|
CEisenhofer
|
cebe57dffa
|
Avoid unnecessary regex cycle splits
|
2026-05-29 19:14:08 +02:00 |
|
CEisenhofer
|
70031b674c
|
Added real projection operator
|
2026-05-29 15:51:35 +02:00 |
|
CEisenhofer
|
ff99cb442a
|
Unique name for decomposed regex
|
2026-05-28 18:45:48 +02:00 |
|
CEisenhofer
|
e5d5b493d3
|
Remove trivial membership constraints also after simplifications
|
2026-05-28 18:26:50 +02:00 |
|
CEisenhofer
|
7d7199dec6
|
use expr id when doing model construction and not internal id
|
2026-05-28 18:02:41 +02:00 |
|
CEisenhofer
|
8f74296cf2
|
Output substitutions in dot
|
2026-05-28 16:29:33 +02:00 |
|
CEisenhofer
|
2bbd75a186
|
We should not bypass checking primitive constraints being empty
|
2026-05-28 15:29:43 +02:00 |
|
CEisenhofer
|
54782e68e0
|
Disequalities over units can be processed differently
|
2026-05-27 18:59:00 +02:00 |
|
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 |
|