Nikolaj Bjorner
e68c72755a
fix leak
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-29 14:49:53 -07:00
Nikolaj Bjorner
f381d51c83
update badge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-29 14:04:12 -07:00
calebstanford-msr
c939195c10
add regex support for reverse and left/right derivative rewriting ( #4477 )
...
* partial work on adding 'reverse' (broken code)
* new op codes for derivative and reverse + associated rewrite rules
* incorporate reverses and derivatives in rewriter + some fixes
* enable rewriting str.in_re constraints with right derivative
2020-05-29 13:00:37 -07:00
Nikolaj Bjorner
3d9d52f742
add detection of string equalities
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-29 10:40:47 -07:00
Nikolaj Bjorner
e0130f5cf4
remove Kleene naming as it is a misnomer in this context
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-28 20:41:03 -07:00
Nikolaj Bjorner
0911a06d81
bounds
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-28 20:05:32 -07:00
Nikolaj Bjorner
ea1f50b77e
simplify extended contains patterns
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-28 19:11:29 -07:00
Nikolaj Bjorner
6a90072a98
bug in non-member disjunction
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-28 12:03:40 -07:00
Nikolaj Bjorner
90708576fe
from #4468
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-27 14:04:30 -07:00
Nikolaj Bjorner
87f8da022e
fix non-empty -> empty typo
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-27 12:13:25 -07:00
Nikolaj Bjorner
dbd90e5f86
dbg proagate_eq
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-27 10:33:45 -07:00
Nikolaj Bjorner
9dd8ebb474
fix build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-27 10:10:25 -07:00
Nikolaj Bjorner
94ffd63b51
change to iterative unfolding left build broken for some time
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-26 21:25:53 -07:00
Nikolaj Bjorner
88e36c6bf3
add general purpose emptiness/non-emptiness check
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-26 20:42:21 -07:00
Nikolaj Bjorner
a97bc65af4
hoist co-factors eagerly without adding axioms
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-25 15:10:45 -07:00
Nikolaj Bjorner
e938ee33bb
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-25 14:11:59 -07:00
Nikolaj Bjorner
4e01d5b5c1
tune axioms for derivatives
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-25 14:11:59 -07:00
Nikolaj Bjorner
eb3f20832e
initial pass at using derivatives in regex unfolding
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-23 11:53:07 -07:00
Nikolaj Bjorner
d1d14111cb
turn on Unicode parsing when they fit in 8 bits
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-22 10:41:19 -07:00
Nikolaj Bjorner
9eedd4ecd6
gate mk_bool_app by existence of regex
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-22 10:09:16 -07:00
Nikolaj Bjorner
82fb7573d7
more rewrites for emptiness
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-22 09:56:21 -07:00
Margus Veanes
5d6be3f17f
adding regex simplification rewriter ( #4440 )
2020-05-22 09:55:29 -07:00
Nikolaj Bjorner
18bb90f93d
fix #4426
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-21 21:27:26 -07:00
Nikolaj Bjorner
9da0b61d30
na
2020-05-21 21:04:48 -07:00
Nikolaj Bjorner
6381cfdc05
remove old functionality
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-19 16:34:21 -07:00
Nikolaj Bjorner
209f6a9e2e
regression free behavior
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-19 16:21:19 -07:00
Nikolaj Bjorner
287bccde30
disable new incomplete functionality for master
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-19 15:56:57 -07:00
Nikolaj Bjorner
7756e2c6d5
in progress ( #4386 )
...
* initial work on replacing str in regex check
* finish rewriter for empty string in regex
* remove unnecessary argument in mk_regexp_contains_emptystr; initial template for eval_regexp_derivative
* progress on string in regexp general check using derivatives
* added recursive nullable and derivative funcitons, partially working
* remove tests from z3test
* fix rewriting infinite loop and some failing simplify checks
* several fixes addressing comments for z3 main branch PR #4386
* redo derivative to return an expr_ref, and null on failure
Co-authored-by: calebstanford-msr <t-casta@microsoft.com>
2020-05-19 15:55:19 -07:00
Nikolaj Bjorner
fca44ff3f2
fix #4394
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-19 13:40:03 -07:00
Nikolaj Bjorner
5fe0eeda63
disable regressions in ST mode
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-19 09:37:06 -07:00
Nikolaj Bjorner
0f8f886389
use single return pattern
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 20:27:50 -07:00
Nikolaj Bjorner
bc03ffb800
typing error
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 20:19:33 -07:00
Nikolaj Bjorner
d26ef08c69
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 19:41:37 -07:00
Nikolaj Bjorner
ff34d84b35
ranges are never nullable
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 19:41:04 -07:00
Nikolaj Bjorner
6e55880601
constant folding
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 19:38:21 -07:00
Nikolaj Bjorner
5bbf05c93c
kleene
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 19:35:31 -07:00
Nikolaj Bjorner
10edee48f3
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 19:11:59 -07:00
Nikolaj Bjorner
9d6c870e97
remove case with hi = 0
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 19:11:35 -07:00
Nikolaj Bjorner
f8d328b1fb
add nullable, get-head-tail with Caleb
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 19:10:00 -07:00
Nikolaj Bjorner
5844964d95
rename temporary macro
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 17:17:51 -07:00
Nikolaj Bjorner
c8c02060ee
another module level ifdef for #4382
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 15:01:27 -07:00
Murphy Berzish
1c760b04cf
re.range with non-unit arguments is the empty language ( #4360 )
2020-05-17 19:08:50 -07:00
Murphy Berzish
152d6338f8
fix hex digit radix in unicode escape ( #4356 )
2020-05-17 19:07:51 -07:00
Nikolaj Bjorner
1def58bc9f
optional unicode mode
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-17 19:06:34 -07:00
Nikolaj Bjorner
30f17b1509
fix #4355
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-17 12:28:30 -07:00
Nikolaj Bjorner
fc8dfe3e40
seq
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-17 05:35:32 -07:00
Nikolaj Bjorner
34cc60410f
additional str/re operators, remove encoding option from zstring
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-17 05:08:36 -07:00
Nikolaj Bjorner
bfb38451d1
add unicode encoding back
2020-05-16 17:11:47 -07:00
Nikolaj Bjorner
363690791a
update TBD
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-16 14:34:39 -07:00
Murphy Berzish
6f0a367357
add SMTLIB2.6 names for QF_SLIA and string-int conversion operators ( #4341 )
2020-05-16 14:31:47 -07:00