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

18823 commits

Author SHA1 Message Date
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
Jakob Rath
f6213bdaa6 return on conflict (missing from earlier commit) 2023-03-05 22:50:00 +01:00
Jakob Rath
4f96249570 Repropagate the conflict clause 2023-03-05 18:13:45 +01:00
Jakob Rath
666c937b06 Remove unsound bvshl lemma 2023-03-05 15:38:07 +01:00
Jakob Rath
9ed6bc66ce Merge remote-tracking branch 'origin/polysat' into polysat 2023-03-05 13:13:56 +01:00
Jakob Rath
01d0df0a4f remove debug output 2023-03-05 13:09:51 +01:00
Jakob Rath
1ef01c5042 Add vector::erase_if
(ended up unused but I didn't want to throw it away)
2023-03-05 13:02:51 +01:00
Jakob Rath
e0db58c998 viable: detect eval/bool conflicts with side conditions 2023-03-05 13:02:51 +01:00
Jakob Rath
5067707a9c fix eval_invariant 2023-03-05 12:42:02 +01:00
Jakob Rath
0433f81f78 Update eval_invariant 2023-03-05 07:55:06 +01:00
Jakob Rath
2285ed90fb move comment 2023-03-05 07:45:56 +01:00
Jakob Rath
3116b2c8d5 Clean up replay 2023-03-05 07:44:18 +01:00
Jakob Rath
1b17fe79f8 Replay is needed for evaluated literals 2023-03-05 07:41:33 +01:00
Nikolaj Bjorner
827374952b fix test for non-val node
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-03-04 10:47:05 -08:00
Jakob Rath
235c465ae2 extract_bilinear_form: handle case where top variable is different on LHS and RHS 2023-03-04 17:19:58 +01:00
Nikolaj Bjorner
d5271df888 fix assert
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-03-02 09:01:55 -08:00
Nikolaj Bjorner
de6fea95f6 use symbolic coefficients for y
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-03-02 08:34:13 -08:00
Nikolaj Bjorner
b823d486e8 Merge branch 'polysat' of https://github.com/z3prover/z3 into polysat 2023-03-02 08:22:06 -08:00
Nikolaj Bjorner
287a536d40 make work for variables
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-03-02 08:22:02 -08:00
Jakob Rath
60de8f165e debug output 2023-03-02 16:06:26 +01:00
Jakob Rath
5a901e31fd verify 2023-03-02 16:03:55 +01:00
Jakob Rath
d8c6ab3488 split repropagate_units 2023-03-02 16:01:57 +01:00
Jakob Rath
8249a075e1 repropagate outside pop_levels 2023-03-02 15:52:58 +01:00
Jakob Rath
f6b8c8da21 disable replay 2023-03-02 12:24:26 +01:00
Nikolaj Bjorner
6450ad82f4 fixup proof logging
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-02-27 14:46:26 -08:00
Clemens Eisenhofer
4cf24fb5fc Weaken precondition for overflow narrow 2023-02-25 14:51:26 +01:00
Nikolaj Bjorner
8be6dcce31 finish adding eqs to bv_solver justifications
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-02-24 10:21:56 -08:00
Jakob Rath
5e95a226c5 easy AND for size 1 2023-02-24 13:52:52 +01:00
Jakob Rath
133661d81b guard pdd-AND against wrong semantics 2023-02-24 13:51:37 +01:00
Jakob Rath
ae8075e22d check and fix pdd manager confusion 2023-02-24 13:29:59 +01:00
Nikolaj Bjorner
706d542eeb add propagation justification to bv antecedents 2023-02-23 17:52:34 -08:00
Jakob Rath
9b274f349b potential generalization 2023-02-23 11:24:32 +01:00
Jakob Rath
645f4620de catch default case 2023-02-23 10:56:12 +01:00
Jakob Rath
5ffd00073a Enable more general ule simplification ule; flip order 2023-02-22 16:47:14 +01:00
Jakob Rath
6eb0d91504 Tweak ule simplifications 2023-02-22 16:36:10 +01:00
Jakob Rath
14b2c38e7f Add lemma try_umul_ovfl_noovfl for bench23 2023-02-22 16:32:51 +01:00