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

19303 commits

Author SHA1 Message Date
Jakob Rath
e45fed472d slicig notes 2023-07-22 06:16:32 +02:00
Jakob Rath
6c2772c9da compile 2023-07-21 16:28:48 +02:00
Jakob Rath
4859858bba notes 2023-07-21 16:14:36 +02:00
Jakob Rath
857f25f54a add notes 2023-07-21 15:54:28 +02:00
Jakob Rath
eb4ea606d5 notes on pvar justifications 2023-07-21 14:55:29 +02:00
Jakob Rath
f14c3c3cb4 fix zero/sign extension 2023-07-21 14:32:22 +02:00
Jakob Rath
e7c9112beb bugfix 2023-07-21 12:45:46 +02:00
Jakob Rath
e1bb0f5377 sign_ext 2023-07-21 11:25:31 +02:00
Jakob Rath
6dfc9dd936 try zero_ext 2023-07-21 10:52:07 +02:00
Jakob Rath
0b17a14c83 extract/concat plumbing 2023-07-21 10:19:21 +02:00
Jakob Rath
e45807db0c extract/concat in constraint_manager 2023-07-20 17:41:46 +02:00
Jakob Rath
f321811b18 fix line endings 2023-07-20 17:40:20 +02:00
Jakob Rath
ef337f3a3f shortcut in merge 2023-07-20 17:28:37 +02:00
Jakob Rath
3e23742bcf mk_concat 2023-07-20 17:27:55 +02:00
Jakob Rath
b725b61c57 inv 2023-07-20 17:26:32 +02:00
Jakob Rath
e45d13ffdf refactor creation of concat nodes 2023-07-20 17:11:01 +02:00
Jakob Rath
4b3cfa8c50 Add recognizers for different kinds of enodes 2023-07-20 17:06:23 +02:00
Jakob Rath
6d00d18ee4 use universal reference 2023-07-20 17:03:38 +02:00
Jakob Rath
e533c6c78d extract method add_equation 2023-07-20 15:21:22 +02:00
Jakob Rath
4142201d88 fix disequality conflict shortcut 2023-07-20 15:10:58 +02:00
Jakob Rath
ec4be975ee no need to handle both x=y and y=x 2023-07-20 14:54:21 +02:00
Jakob Rath
73757e3fa4 mk_extract 2023-07-19 19:37:21 +02:00
Jakob Rath
69e54b62c5 no need to store bit-width separately 2023-07-19 12:56:35 +02:00
Jakob Rath
114e7b73e5 move callback into member function 2023-07-19 12:51:35 +02:00
Jakob Rath
b67caf5fc3 fix get_name for variables 2023-07-19 12:40:18 +02:00
Jakob Rath
85d80a0ae1 track origin slice for concat nodes 2023-07-19 12:06:02 +02:00
Jakob Rath
af73f26941 slicing: track disequalities 2023-07-19 12:04:45 +02:00
Jakob Rath
970e68c70e slicing: use proper bv sorts for expressions 2023-07-19 08:58:34 +02:00
Jakob Rath
66f813154b basic slicing integration 2023-07-18 16:19:54 +02:00
Jakob Rath
28ed3bd7ab fix backtracking of m_needs_congruence 2023-07-18 16:00:26 +02:00
Jakob Rath
a96df2292e fix build 2023-07-18 15:13:53 +02:00
Jakob Rath
68b151b0d2 move some todos 2023-07-18 15:11:46 +02:00
Jakob Rath
4742985906 add proposed query interface 2023-07-18 15:07:53 +02:00
Jakob Rath
bac52313da move function impl 2023-07-18 14:53:20 +02:00
Jakob Rath
c124cbae97 Add virtual concat terms on demand during propagation 2023-07-18 14:48:32 +02:00
Jakob Rath
4049716946 explain conflict 2023-07-18 11:26:18 +02:00
Jakob Rath
5e5164ed2c add_value 2023-07-18 11:24:12 +02:00
Jakob Rath
0d80e47350 update deps handling (need to support pvars as well) 2023-07-18 11:22:02 +02:00
Jakob Rath
11d9e5c862 minor 2023-07-17 19:04:17 +02:00
Jakob Rath
d1cb02b735 use abstract sort also for value slices 2023-07-17 18:31:17 +02:00
Jakob Rath
a2fdb03625 propagate value when splitting a slice 2023-07-17 18:18:12 +02:00
Jakob Rath
490b77d8a1 mk_value_slice 2023-07-17 14:41:45 +02:00
Jakob Rath
30323a6ba1 update unit test 2023-07-17 14:41:45 +02:00
Jakob Rath
741e37c2d7 find is now get_root 2023-07-17 14:41:45 +02:00
Jakob Rath
b8d118a558 use enode* instead of custom slice index; extract explanations from egraph 2023-07-17 14:41:45 +02:00
Jakob Rath
82b1f9297b utils 2023-07-17 14:41:45 +02:00
Jakob Rath
8c17e231ad don't 'find' when creating subslice 2023-07-12 16:45:51 +02:00
Jakob Rath
0fb81fc437 use z3's egraph (wip) 2023-07-12 16:21:38 +02:00
Jakob Rath
d8d8c67a3b slicing interface 2023-07-12 15:56:27 +02:00
Jakob Rath
1d3a31c323 Add getter for target and justification to enode 2023-07-12 15:47:33 +02:00