3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-21 02:30:23 +00:00
Commit graph

3359 commits

Author SHA1 Message Date
Lev Nachmanson
94263167ec cheap eqs
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-12 22:11:11 -07:00
Lev Nachmanson
1587497562 cheap equalities
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-12 22:11:11 -07:00
Lev Nachmanson
b3bdce7837 make lp_bound_propagator a field of theory_lra::imp
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-12 22:11:11 -07:00
Lev Nachmanson
dd30b5e3af some simplifications in cheap eqs
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-12 22:11:11 -07:00
Lev Nachmanson
4de38d09e2 cheap eqs
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-12 22:11:11 -07:00
Lev Nachmanson
4f0bd93124 debug cheap_eqs
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-12 22:11:11 -07:00
Lev Nachmanson
110ab5e6ef debug cheap_eqs
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-12 22:11:11 -07:00
Lev Nachmanson
1e4e887221 propagate cheap eqs
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-12 22:11:11 -07:00
Nikolaj Bjorner
865dfe0590 own refs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-12 17:07:06 -07:00
Nikolaj Bjorner
41430cd128 register unhandled expressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-12 16:12:24 -07:00
Nikolaj Bjorner
b0da5409c1 substitute into non-ground regexes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-09 14:58:25 -07:00
Nikolaj Bjorner
08cc5bc2e5 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-09 11:39:26 -07:00
calebstanford-msr
1fd567d1e9
fix bug in seq rewriter op_cache::find (#4509)
* remove unneeded reverse case in derivative; placeholder for generalized lifted derivative

* experimental tweaks to RE rewriter to improve performance

* if-then-else lifting
(broken code -- preserving this commit in case this idea is useful later)

* if-then-else derivative optimizations: new approach templates

* implement if-then-else BDD normal form for derivatives
(code compiles but is still buggy)

* remove std::cout debugging for PR

* Revert "remove std::cout debugging for PR"

This reverts commit c7bdc44d31.

* debugging

* fix derivative interaction with reverse; add flags for left/right derivative and lifting over union/intersection

* remove debugging statements for PR

* Revert "remove debugging statements for PR"

This reverts commit 38e85a7288.

* revert some purely cosmetic changes from upstream; fix a bug

* revert unnecessary changes

* remove some redundant rewrites and add a new one for str.in_re(s, comp(r))

* add disabled rewrite for complement

* fix bug in op cache find (result was not saved)

* remove debugging std::cout for PR
2020-06-09 11:36:31 -07:00
Nikolaj Bjorner
d2a12f6db5 tuning
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-07 12:52:13 -07:00
Nuno Lopes
1809ee5107 fix regression in FPA internalization 2020-06-07 15:50:53 +01:00
Nikolaj Bjorner
ba1ca33637 normalization of union/intersection
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-06 12:54:44 -07:00
Nikolaj Bjorner
ccea27de35 add nullable propagation instead of waiting for length assignment
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-06 12:11:04 -07:00
Nikolaj Bjorner
65b6ccd651 add nullable propagation instead of waiting for length assignment
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-06 11:32:43 -07:00
Nikolaj Bjorner
1b9fcc7098 integrate ite-normalized derivatives
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-05 17:28:48 -07:00
Nikolaj Bjorner
9f8887cc2e throw from push #4425
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-04 01:05:23 -07:00
Nikolaj Bjorner
9ca5b3f304 fix #4449
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-03 21:10:07 -07:00
Nikolaj Bjorner
cbf089e10d fix #4448
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-03 19:41:25 -07:00
Nikolaj Bjorner
ae2f0ca85b fix #4448
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-03 19:40:26 -07:00
Nikolaj Bjorner
743573aac5 fix #4447, or mask it
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-03 19:32:05 -07:00
Nikolaj Bjorner
3a7df2c6ef fix various nullability checks in seq_regex
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-03 12:28:32 -07:00
Nikolaj Bjorner
377dbad3b9 fix #4435
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-03 10:27:08 -07:00
Nikolaj Bjorner
8ae42b5ae1 fix #4433
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-03 10:23:26 -07:00
Nuno Lopes
7ac2791482 remove a bunch of constructors to avoid copies
still not enough to guarantee that vector::expand doesnt copy (WIP)
2020-06-03 17:09:27 +01:00
Nuno Lopes
98b5abb1d4 buffer: require a move constructor to avoid copies
remove unneded copy constructors from several classes
2020-06-03 11:57:49 +01:00
Nuno Lopes
3d98bccc33 fix mem leak in buffer and remove copies in interval (#4458) 2020-06-03 10:26:00 +01:00
Nikolaj Bjorner
3f2dafe047 fix $4457
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-02 18:32:01 -07:00
Nikolaj Bjorner
d3e20d41b2 fix $4457
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-02 18:31:28 -07:00
Nikolaj Bjorner
320cd81140 fix #4476
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-02 13:00:55 -07:00
Nikolaj Bjorner
4ef480e2a5 add op cache
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-02 12:52:42 -07:00
Nuno Lopes
023b630b5a remove unused class fields in BV theory 2020-06-02 16:36:38 +01:00
Nuno Lopes
b9ecf2512f more tweaks to BV internalizer & remove dead code 2020-06-02 15:26:57 +01:00
Lev Nachmanson
742be83503
Lpbounds (#4492)
* remove inheritance from bound propagation

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* less inheritance

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* less inheritance

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* fix the build

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-02 01:00:06 -07:00
Nikolaj Bjorner
29ce22cfb1 fix #4493, use standard model evaluation for variables that have not been regiestered with solver (e.g., they are non-shared and unconstrained)
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-02 00:57:49 -07:00
Nikolaj Bjorner
48f07932f7 reset zero before resetting nlsat #4493b
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-02 00:40:54 -07:00
Murphy Berzish
99f20c59e4
Merge pull request #4490 from mtrberzi/issue4486
z3str3: construct proper cex for str.at model construction
2020-06-01 20:06:51 -05:00
Nikolaj Bjorner
7343783efe finetune
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-01 15:40:02 -07:00
Nikolaj Bjorner
8849cef4b7 add stub for equality propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-01 15:33:52 -07:00
Murphy Berzish
f395c8643c z3str3: construct proper cex for str.at model construction 2020-06-01 14:55:44 -04:00
Nuno Lopes
e079af9d0d
add context::internalize() API that takes multiple expressions at once (#4488) 2020-06-01 11:51:39 -07:00
trinhmt
48a2d3d5b6
fix #4481 (#4484) 2020-06-01 09:02:50 -07:00
Lev Nachmanson
c58bd3105b adding more aggressive patching in nl
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-05-31 20:20:49 -07:00
Nikolaj Bjorner
c424165d94 block deep based on condition for internalization #4192
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-31 13:31:16 -07:00
Nikolaj Bjorner
7d4c9e6126 fix #4480
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-31 12:40:04 -07:00
Nikolaj Bjorner
7f7663a3b4 fix #4478
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-31 11:16:21 -07:00
Nuno Lopes
31e75d1401 minor simplifications 2020-05-31 13:26:27 +01:00