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