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

19459 commits

Author SHA1 Message Date
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
Jakob Rath
681293c23f use slicing conflict clause 2023-07-26 09:48:08 +02:00
Jakob Rath
19c1ba5158 update tests 2023-07-26 09:47:34 +02:00
Jakob Rath
8f314d4a7f reuse more slices for extractions 2023-07-26 09:44:17 +02:00
Jakob Rath
16188945ab better slicing conflict clauses 2023-07-26 09:41:52 +02:00
Jakob Rath
12e9356f0f pvar deps also need to track the slice they're coming from 2023-07-26 09:38:29 +02:00
Jakob Rath
2f0d74fca8 fix 2023-07-26 09:34:45 +02:00