Jakob Rath
|
11b582cce7
|
Add rational::next_power_of_two
|
2023-08-16 09:48:32 +02:00 |
|
Jakob Rath
|
0bfebe3de1
|
Enable conflict logger with polysat.log_conflicts=true
|
2023-08-16 09:40:16 +02:00 |
|
Jakob Rath
|
20ab0bc13a
|
Invoke debugger if VERIFY fails in debug mode
|
2023-08-16 09:36:28 +02:00 |
|
Jakob Rath
|
1f640b96c9
|
compile unit tests
|
2023-08-14 14:00:41 +02:00 |
|
Jakob Rath
|
32d66951a8
|
bugfix
|
2023-08-11 14:52:26 +02:00 |
|
Jakob Rath
|
81609ed043
|
viable now takes into account fixed bits from slicing
|
2023-08-11 14:51:24 +02:00 |
|
Jakob Rath
|
586dcba661
|
slicing::collect_fixed should start at low-order base slice
|
2023-08-11 14:49:17 +02:00 |
|
Jakob Rath
|
89f0fb05a5
|
forgot to commit CMakeLists
|
2023-08-08 17:54:33 +02:00 |
|
Jakob Rath
|
f9cbee3b3d
|
explain_fixed is currently just explain_value for a slice
|
2023-08-08 17:26:52 +02:00 |
|
Jakob Rath
|
6eb81fbb9d
|
use struct
|
2023-08-08 17:19:46 +02:00 |
|
Jakob Rath
|
3573305917
|
no need to keep an enode_pair, since the other is always the root
|
2023-08-08 17:13:05 +02:00 |
|
Jakob Rath
|
99a078dd69
|
add note on current example
|
2023-08-08 16:21:07 +02:00 |
|
Jakob Rath
|
5ec11c591f
|
slicing-conflict debug output
|
2023-08-08 16:05:36 +02:00 |
|
Jakob Rath
|
46a794ff67
|
slicing with fixed bits (wip)
|
2023-08-08 16:04:21 +02:00 |
|
Jakob Rath
|
f22ed9002f
|
tab -> space
|
2023-08-08 15:44:44 +02:00 |
|
Jakob Rath
|
63c41c3e04
|
Use struct fixed_bits_info instead of separate arguments
and track sat::literal as justifications rather than viable::entry
(we won't have a viable::entry for fixed bits coming from slicing)
|
2023-08-08 15:40:57 +02:00 |
|
Jakob Rath
|
e832325a8b
|
viable::entry::refined can be a boolean flag
because we always copy the 'src' from the original entry to the refined one
|
2023-08-08 14:35:26 +02:00 |
|
Jakob Rath
|
036a3f31ca
|
call m_egraph.merge() at a single point
|
2023-08-07 17:56:43 +02:00 |
|
Jakob Rath
|
d36262d731
|
fix unit tests
|
2023-08-07 17:38:00 +02:00 |
|
Jakob Rath
|
4b4f0558b4
|
no need to introduce names for zero_ext/sign_ext arguments
|
2023-08-07 15:44:06 +02:00 |
|
Jakob Rath
|
5c53f588b7
|
Additional shortcuts for extract/concat
|
2023-08-07 15:33:51 +02:00 |
|
Jakob Rath
|
bc0119f333
|
Treat constraints of the form "x = val" more like variable assignments
|
2023-08-07 15:28:17 +02:00 |
|
Jakob Rath
|
aa81f6c9fb
|
Propagate value assignments discovered by the slicing e-graph
|
2023-08-07 15:20:04 +02:00 |
|
Jakob Rath
|
3fe591e5bb
|
Also print original exprs for polysat unsat core
|
2023-08-07 14:39:45 +02:00 |
|
Jakob Rath
|
2a2015f61d
|
fix bit width of extract on constants
|
2023-08-04 11:10:49 +02:00 |
|
Jakob Rath
|
d62aa82762
|
track pvar_kind
|
2023-08-04 10:12:50 +02:00 |
|
Jakob Rath
|
63e81e2bb0
|
fix zero_ext constraint (2)
|
2023-08-03 15:16:27 +02:00 |
|
Jakob Rath
|
6e9f07e7c5
|
temporary fix
|
2023-08-03 15:03:09 +02:00 |
|
Jakob Rath
|
1d9322b5ae
|
slicing bugfixes
|
2023-08-03 14:53:14 +02:00 |
|
Jakob Rath
|
d42d253068
|
fix
|
2023-08-03 14:48:42 +02:00 |
|
Jakob Rath
|
13f000942a
|
fix viable
|
2023-08-03 11:41:13 +02:00 |
|
Jakob Rath
|
b72a0ed4c8
|
notes
|
2023-08-03 10:30:10 +02:00 |
|
Jakob Rath
|
e7e025a2fc
|
rename to log_start for clarity
|
2023-08-03 10:25:32 +02:00 |
|
Jakob Rath
|
6bbd68cdf1
|
fix for gcc
|
2023-08-01 16:14:46 +02:00 |
|
Jakob Rath
|
f6fb9bf316
|
minor refactor
|
2023-08-01 16:08:42 +02:00 |
|
Jakob Rath
|
417dbf3354
|
fix
|
2023-08-01 16:03:17 +02:00 |
|
Jakob Rath
|
f2d1ed7b07
|
add parameter to control congruence terms in slicing
|
2023-08-01 14:13:59 +02:00 |
|
Jakob Rath
|
8b90a45233
|
remove unused variables
|
2023-08-01 13:48:13 +02:00 |
|
Jakob Rath
|
d943eb4787
|
fix polysat params
|
2023-08-01 13:40:31 +02:00 |
|
Jakob Rath
|
cd373527ff
|
static_assert
|
2023-07-27 16:54:59 +02:00 |
|
Jakob Rath
|
8b9d9db77e
|
compile
|
2023-07-27 15:49:50 +02:00 |
|
Jakob Rath
|
c09859fe63
|
store viable intervals in separate layers by bit-width
|
2023-07-27 15:41:50 +02:00 |
|
Jakob Rath
|
7a96853721
|
fix
|
2023-07-27 15:35:59 +02:00 |
|
Jakob Rath
|
9335b6eed6
|
refactor slicing dep
|
2023-07-27 15:35:59 +02:00 |
|
Jakob Rath
|
eb20b8971b
|
slicing notes
|
2023-07-27 15:33:36 +02:00 |
|
Jakob Rath
|
fe03918f6d
|
Add macro version of pointer tagging
|
2023-07-27 15:32:02 +02:00 |
|
Jakob Rath
|
305943a091
|
Add dll_elements
|
2023-07-27 15:31:06 +02:00 |
|
Jakob Rath
|
edbe1087e3
|
one check in get_name is enough
|
2023-07-26 15:08:21 +02:00 |
|
Jakob Rath
|
1e528e264f
|
collect_fixed
|
2023-07-26 15:07:53 +02:00 |
|
Jakob Rath
|
6cb84dc4cd
|
collect_simple_overlaps
|
2023-07-26 14:39:46 +02:00 |
|