3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-23 00:55:31 +00:00
Commit graph

18858 commits

Author SHA1 Message Date
Nikolaj Bjorner
93360318b2 fixes to asserts
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-03-16 11:55:23 +01:00
Nikolaj Bjorner
1ba86c8ce3 fixup assertion
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-03-16 08:38:10 +01:00
Nikolaj Bjorner
622b8431b3 use v1, v2 instead of r1, r2 (roots) to get narrower equality conflicts
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-03-16 08:26:42 +01:00
Nikolaj Bjorner
c8e3ab75dc fix unsoundness bug related to tracking equality assumptions outside of polysat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-03-16 06:23:17 +01:00
Clemens Eisenhofer
eab31d5600 Moved logging to better place 2023-03-15 17:00:39 +01:00
Clemens Eisenhofer
135da9b824 Log also last conflict 2023-03-15 16:22:58 +01:00
Jakob Rath
03a6d74c58 fix eval justifications 2023-03-15 11:33:20 +01:00
Jakob Rath
5eb9fb2eb1 Check all bool/eval conflicts on the search stack before activate/narrow 2023-03-13 16:51:33 +01:00
Jakob Rath
47d6663c67 support other ops 2023-03-13 09:29:21 +01:00
Jakob Rath
3b7b7a6867 Fix parity lemma 2023-03-13 07:55:42 +01:00
Jakob Rath
69fbfc3616 fix 2023-03-13 07:37:17 +01:00
Jakob Rath
233baf170c support checking pseudo-inverses 2023-03-12 18:31:57 +01:00
Jakob Rath
07d1f86575 cleanup conflict::init and promote assertion 2023-03-12 16:28:54 +01:00
Jakob Rath
aef0c739a7 Lemma validity check 2023-03-12 16:26:05 +01:00
Jakob Rath
50876a4dae Add helper for printing polysat constraints 2023-03-12 16:15:25 +01:00
Jakob Rath
be72a37440 find_op_by_result_var 2023-03-12 16:14:12 +01:00
Jakob Rath
9a061d8f4a find_op 2023-03-12 15:59:44 +01:00
Jakob Rath
9f7c9dfb17 fix one try_parity rule 2023-03-12 15:56:42 +01:00
Jakob Rath
f7baba4091 min_parity at most N 2023-03-11 23:23:32 +01:00
Jakob Rath
d4428c6cef fix eval replay 2023-03-11 17:56:27 +01:00
Jakob Rath
3096ddaf33 disable old bounds prop as it is unsound 2023-03-11 11:22:24 +01:00
Jakob Rath
592b206097 fix lemma 2023-03-11 10:36:25 +01:00
Jakob Rath
f2ff1145bd add some lemma names 2023-03-11 10:36:02 +01:00
Jakob Rath
d075759659 mk_clause with name 2023-03-11 10:32:19 +01:00
Jakob Rath
47f3353af6 Add int/unsigned overloads in pairs to avoid implicit conversions 2023-03-11 09:56:22 +01:00
Jakob Rath
1541c70b2b Fix lemma_shl 2023-03-11 09:50:08 +01:00
Jakob Rath
ed03b5183e do evaluation according to pvar watchlists 2023-03-10 15:52:24 +01:00
Jakob Rath
de88fb3875 revert 2023-03-10 15:36:30 +01:00
Jakob Rath
40d5b96ffa Add assertion 2023-03-10 15:31:58 +01:00
Jakob Rath
c8c40f0154 Give higher priority to boolean propagation and bool/eval conflicts 2023-03-10 15:30:01 +01:00
Jakob Rath
538c4ee25f hack to avoid wrong propagation justifications due to fallback solver 2023-03-10 12:42:00 +01:00
Jakob Rath
ffb7b5f85d try_op bugfixes 2023-03-10 12:23:53 +01:00
Jakob Rath
dba8a4b73a guard against different bitwidth 2023-03-09 13:51:10 +01:00
Jakob Rath
9773ce60d6 Return variable to queue 2023-03-09 13:38:15 +01:00
Jakob Rath
686f1c6aaf UNREACHABLE was actually reachable 2023-03-09 13:35:07 +01:00
Clemens Eisenhofer
60a405d134 Frequent lsb special case 2023-03-07 18:07:39 +01:00
Clemens Eisenhofer
f059b5e16b Leftover debug return 2023-03-07 15:53:32 +01:00
Clemens Eisenhofer
6d0c3c0770 Merge branch 'polysat' of https://github.com/Z3Prover/z3 into polysat 2023-03-07 15:21:53 +01:00
Clemens Eisenhofer
5b35450891 Several changes:
- Extend fixed-bit FI to both directions
- really randomized restart
- MSB for fixed-bits
- Forward propagation (band, lshift, rshift) with good justifications (strengthen during saturation)
2023-03-07 15:21:14 +01:00
Jakob Rath
57d1506a0a remove debug output 2023-03-07 10:35:33 +01:00
Nikolaj Bjorner
b84f9694cd undo unnecessary change
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-03-06 21:39:46 -08:00
Nikolaj Bjorner
5c7506306b missing 2023-03-06 17:35:49 -08:00
Nikolaj Bjorner
6c00d40513 polysat fixes
1. ensure that force_push is invoked before polysat updates state.
2. extract conflicts based on dependencies of both new literal that was conflicting with existing literal that had its value assigned based on dependencies.
2023-03-06 17:35:39 -08:00
Jakob Rath
be0d0d5b9b Use checked division 2023-03-06 21:39:43 +01:00
Jakob Rath
5a8c0ce9c0 use N for consistency 2023-03-06 15:57:49 +01:00
Jakob Rath
be0c7aeb09 update/fix constraint simplifications 2023-03-06 15:52:39 +01:00
Jakob Rath
ac66622b05 Fix redundant lemma in umul_ovfl::narrow_bound 2023-03-06 12:59:35 +01:00
Clemens Eisenhofer
ac5682409e Commit missing change 2023-03-06 10:15:11 +01:00
Clemens Eisenhofer
e343a3ecd3 Parity bug fix
Moved div_monotonicity to extra lemma
2023-03-06 10:12:32 +01:00
Jakob Rath
d80f9f83dc cleanup 2023-03-05 22:54:09 +01:00