Jakob Rath
0c62b81a56
Rename confusing methods
...
avoid difference between c.is_eq() and c->is_eq()
2023-06-23 11:59:18 +02:00
Nikolaj Bjorner
8c67c23883
update print to elide overly long sets of intervals
2023-04-17 16:14:33 -07:00
Jakob Rath
d7930b3997
Find more undetected bool/eval conflicts in viable::resolve_interval
2023-03-29 15:47:10 +02:00
Jakob Rath
810a68ace9
disable some debug output
2023-03-29 15:40:17 +02:00
Jakob Rath
707a5b78f7
Print less output in non-verbose mode
2023-03-18 08:04:03 +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
538c4ee25f
hack to avoid wrong propagation justifications due to fallback solver
2023-03-10 12:42:00 +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
f6213bdaa6
return on conflict (missing from earlier commit)
2023-03-05 22:50:00 +01:00
Jakob Rath
01d0df0a4f
remove debug output
2023-03-05 13:09:51 +01:00
Jakob Rath
e0db58c998
viable: detect eval/bool conflicts with side conditions
2023-03-05 13:02:51 +01:00
Jakob Rath
f6b8c8da21
disable replay
2023-03-02 12:24:26 +01:00
Jakob Rath
8347c043e1
Merge remote-tracking branch 'origin/polysat' into polysat
2023-02-20 17:37:44 +01:00
Jakob Rath
455abb1db3
update
2023-02-20 16:19:56 +01:00
Jakob Rath
4cca164bb4
fix
2023-02-20 16:13:55 +01:00
Jakob Rath
1d04d08a0c
Update has_max_forbidden
2023-02-20 12:19:06 +01:00
Clemens Eisenhofer
790229a5d9
Bug fix for inverse of lsb-mask
2023-02-18 17:29:33 +01:00
Clemens Eisenhofer
578f2ec4e8
Assertions
2023-02-18 14:26:45 +01:00
Clemens Eisenhofer
e8b4875a17
Multiply by inverse to detect more parity constraints
2023-02-18 14:15:51 +01:00
Clemens Eisenhofer
a6fbd71c6b
Bugfixes
2023-02-17 17:06:28 +01:00
Clemens Eisenhofer
d976251390
Removed debug output
2023-02-17 15:42:14 +01:00
Clemens Eisenhofer
3f8edb9aac
Contract bit information to large unit-intervals
2023-02-17 15:32:43 +01:00
Clemens Eisenhofer
0dae2d40b5
Prefer larger masks for justifications
2023-02-16 07:31:13 +01:00
Clemens Eisenhofer
5fbfa0be8f
Moved quick-check out of the refinement loop
2023-02-16 07:21:17 +01:00
Clemens Eisenhofer
5ddc727f91
Do a quick check for feasibility w.r.t. bits before using forbidden intervals
2023-02-15 20:06:13 +01:00
Jakob Rath
06cc15d1cc
refinement loop output
2023-02-09 16:28:52 +01:00
Jakob Rath
bf03886a87
elem
2023-02-07 09:57:32 +01:00
Jakob Rath
a2ff185187
Put (arbitrary) bound on number of refinements
2023-01-23 16:33:07 +01:00
Jakob Rath
2056d392ba
Detect gap in has_max_forbidden
2023-01-19 13:48:06 +01:00
Jakob Rath
d1ef8029a9
simpler condition
2023-01-19 13:43:50 +01:00
Jakob Rath
f9f61249e1
debug output
2023-01-19 13:42:33 +01:00
Jakob Rath
85a8d8b005
debug output
2023-01-18 18:46:40 +01:00
Jakob Rath
c62ba26cf4
simplify
2023-01-18 18:38:44 +01:00
Jakob Rath
3e42dbe591
Fix assertions
2023-01-18 18:30:25 +01:00
Jakob Rath
c954e82503
assertion should hold now after recent fix
2023-01-16 16:51:16 +01:00
Jakob Rath
015fcb457c
avoid warnings
2023-01-16 16:50:36 +01:00
Jakob Rath
caf624589e
Accelerate interval widening in refine_equal_lin
2023-01-13 15:41:28 +01:00
Jakob Rath
3f5e6a4bfa
bugfix: don't intersect forbidden intervals if variable is already assigned
2023-01-09 17:10:18 +01:00
Jakob Rath
aeb6138c25
No result if there is no other interval
2023-01-05 17:21:25 +01:00
Jakob Rath
a406e01fb8
e0 instead of first?
2023-01-05 16:44:45 +01:00
Jakob Rath
ffa12eb37c
flip args to match description
2023-01-05 16:43:01 +01:00
Nikolaj Bjorner
824c10711c
testing inference based on complementary bounds
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-02 17:30:08 -08:00
Nikolaj Bjorner
96341d7f0a
wip try_add_mul_bound2
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-29 18:31:39 -08:00
Nikolaj Bjorner
ab9a9d2308
wip - more general ranges for add_mul_bound
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-28 14:09:51 -08:00
Nikolaj Bjorner
6f8b3a997e
add max forbidden based on constant intervals
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-27 20:49:17 -08:00
Nikolaj Bjorner
49a7f8446d
disable match_non_max and match_non_zero
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-24 15:19:37 -08:00
Nikolaj Bjorner
e978b81c7a
add review comment to bug location
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-24 12:40:47 -08:00
Nikolaj Bjorner
4e0604bc22
add hooks for multiplication overflow
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-23 15:48:03 -08:00
Nikolaj Bjorner
50cbe2659a
extract multiple bounds for upper/lower bound
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-23 14:52:41 -08:00