3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-03-09 23:00:30 +00:00
Commit graph

40 commits

Author SHA1 Message Date
Nikolaj Bjorner
fd66d2f26c better equality solver for bit-vectors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-07-29 21:02:57 -07:00
Jakob Rath
1292fb2adb extra px < qx axioms 2024-05-13 22:46:49 +02:00
Jakob Rath
f904c08116 enable the saturation rules 2024-05-10 14:59:19 +02:00
Jakob Rath
7925ef731f relax eq_resolve conditions
fixes Example 1
2024-05-06 15:24:00 +02:00
Jakob Rath
91a9feb5a8 warnings 2024-03-20 12:16:24 +01:00
Jakob Rath
7da7e99ca2 try_umul_blast 2024-03-13 14:01:07 +01:00
Nikolaj Bjorner
187a6b17dd fix blast rule for overflow
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-02-05 08:16:34 -08:00
Nikolaj Bjorner
10d56d9af9 fixes, updates 2024-02-02 16:54:49 -08:00
Nikolaj Bjorner
38771defa1 bugfixes to encoding overflow conditions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-02-01 22:49:21 -08:00
Nikolaj Bjorner
ac0a786484 bugfixes to encoding overflow conditions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-02-01 22:26:32 -08:00
Nikolaj Bjorner
88b315cdb0 update names and nature of multiplication blast rules
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-02-01 17:12:35 -08:00
Nikolaj Bjorner
60add85c47 add saturation rules for overflow
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-02-01 12:55:17 -08:00
Nikolaj Bjorner
6e72182194 remove unused propagation in umul_overflow code. Rename propagate to saturate to reflect where it gets used
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-02-01 09:57:28 -08:00
Nikolaj Bjorner
e6f7ba90f1 more saturation for overflow
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-01-31 20:12:01 -08:00
Nikolaj Bjorner
677e261bb1 constant overflow forbidden interval
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-01-15 09:46:45 -08:00
Nikolaj Bjorner
a2df3cb828 have propagate return whether it did something 2024-01-11 11:45:05 -08:00
Nikolaj Bjorner
33f17215f7 bugfixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-01-10 11:00:16 -08:00
Nikolaj Bjorner
e7c9c5f7a2 add built-in support for bvor: the rewriter converts bitwise and to bit-wise or so using bvor as a basis makes better sense
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-01-10 10:16:31 -08:00
Nikolaj Bjorner
cb672c7992 overflow example works
- introduce weak/strong eval to temper unit propagation to use only weak evaluation.
- harness the amount of interval propagation provided on overflow constraints
- weak evaluation on overflow constraints is now trivialized
- viable insertion also does conflict detection
2024-01-04 15:55:24 -08:00
Nikolaj Bjorner
7b0c04a3e8 bugbash 2024-01-04 10:54:02 -08:00
Nikolaj Bjorner
adebd2fd94 debugging
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-01-01 19:10:11 -08:00
Nikolaj Bjorner
ff7854f4ea build fixes 2023-12-31 15:51:15 -08:00
Nikolaj Bjorner
7dd37a748d import equality superposition 2023-12-31 15:40:04 -08:00
Nikolaj Bjorner
b25451bd87 cleanup 2023-12-31 15:22:21 -08:00
Nikolaj Bjorner
483508d257 move all saturation functionality into saturation.cpp, differentiate basic multiplication by -1, 1 from other powers of 2. 2023-12-31 14:42:10 -08:00
Nikolaj Bjorner
f328ddf88e Add monomials container to keep track of non-linear multipliers
Refine constraints to include an unfolded version of them where multiplier definitions are expanded.
2023-12-30 14:14:12 -08:00
Nikolaj Bjorner
03e012c1d8 bugfixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-29 15:13:11 -08:00
Nikolaj Bjorner
658f079efd remove literal polarity from dependencies 2023-12-25 09:39:51 -08:00
Nikolaj Bjorner
5398429c21 n/a
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-25 09:27:51 -08:00
Nikolaj Bjorner
cf6d7d2c4b move extract saturation as an axiom 2023-12-24 05:15:59 -08:00
Nikolaj Bjorner
50358e43ed updates to saturation 2023-12-23 16:59:17 -08:00
Nikolaj Bjorner
d183ac23d0 don't rely on initializer list implementations, there are no constructors in the standard
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-22 10:48:37 -08:00
Nikolaj Bjorner
09fa657be9 update to saturation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-22 09:35:44 -08:00
Nikolaj Bjorner
1d1457f81a migrating interface
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-22 07:05:17 -08:00
Nikolaj Bjorner
78aea59387 comments
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-21 15:45:29 -08:00
Nikolaj Bjorner
21791f12bf updates to solver interface and adding some saturation rules 2023-12-17 18:16:47 -08:00
Nikolaj Bjorner
b1597fd499 na 2023-12-16 16:51:29 -08:00
Nikolaj Bjorner
c6d3b7ec5d ps
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-16 16:50:55 -08:00
Nikolaj Bjorner
064832e891 disable from python build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-16 16:46:03 -08:00
Nikolaj Bjorner
3c1d15b598 new files 2023-12-16 16:46:03 -08:00