Clemens Eisenhofer
b116d5ac9e
Fixed assignment bug for shifts/band
2022-11-21 16:40:28 +01:00
Clemens Eisenhofer
0341851958
Deal with special case that coefficients are multiples directly (Without calculating the symbolic inverse)
2022-11-21 14:36:01 +01:00
Clemens Eisenhofer
7cb87df00c
Bug fix; may not rewrite inequality
2022-11-21 11:34:23 +01:00
Clemens Eisenhofer
133f3d0a02
Evaluate bitwise operations on values
2022-11-21 09:38:53 +01:00
Clemens Eisenhofer
5c3180562d
Some more ways of calculating the inverse
2022-11-21 09:19:17 +01:00
Clemens Eisenhofer
5240a8382a
Make it compile again
2022-11-20 17:34:37 +01:00
Clemens Eisenhofer
4f4d56eb91
Added alternative way of calculating number of trailing zeros + hamming distance
2022-11-20 17:25:04 +01:00
Clemens Eisenhofer
98d572b48b
First try to generalize variable elimination
2022-11-20 11:35:12 +01:00
Jakob Rath
022c06f75d
pdd::subst_get
2022-11-18 15:14:38 +01:00
Jakob Rath
adc9f7abe4
Add basic implementation of left shift
2022-11-17 17:37:52 +01:00
Jakob Rath
68707eefe7
Fix lshr axioms
2022-11-17 17:37:52 +01:00
Jakob Rath
f12ae0af12
clause_builder: rename push to insert
2022-11-17 17:37:52 +01:00
Jakob Rath
dbe814d568
Add forbidden interval lemma separately
2022-11-17 15:00:16 +01:00
Jakob Rath
b4ee8cef1a
Add helper for creating op_constraints
2022-11-17 12:59:37 +01:00
Jakob Rath
38a43bd087
Remove conflict_kind
2022-11-17 12:25:28 +01:00
Jakob Rath
00e8c53f9a
Remove unused code
2022-11-17 12:22:40 +01:00
Jakob Rath
097454cf37
Fix eval_lshr
2022-11-17 11:47:12 +01:00
Jakob Rath
2c4e3184d7
For now, do not delete variables.
2022-11-16 15:49:58 +01:00
Jakob Rath
aa59de9056
Track max jump level from side lemmas
2022-11-14 15:43:46 +01:00
Jakob Rath
cd83a6ec69
Remove bailout state from conflict
2022-11-14 15:15:35 +01:00
Jakob Rath
e2804c3db2
Remove bail_vars
2022-11-14 15:02:58 +01:00
Jakob Rath
eec8e8ebe4
Fix name: value propagation -> evaluation (for boolean literals)
2022-11-14 14:58:20 +01:00
Jakob Rath
436881c18c
print lemmas
2022-11-14 14:51:54 +01:00
Jakob Rath
01af25ca02
Remove backjump state from conflict
2022-11-14 14:33:19 +01:00
Jakob Rath
406696f0a3
Remove unused code
2022-11-11 10:25:49 +01:00
Jakob Rath
fc773ef19e
Remove old file
2022-11-10 14:42:55 +01:00
Jakob Rath
d3f70c0fb8
Rename: explain -> superposition
2022-11-10 14:42:13 +01:00
Nikolaj Bjorner
27f8b8d13a
inline definition in header file
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-09 09:55:05 -08:00
Nikolaj Bjorner
a98502b62f
weaken assertion, remove dependency on hash_compare in unittest for hashtables
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-09 09:28:49 -08:00
Jakob Rath
abc4cc5295
Simplify boolean propagation level
2022-11-09 16:59:51 +01:00
Jakob Rath
27d65df70b
Use correct level for pvar propagations (v := val)
2022-11-09 16:58:34 +01:00
Jakob Rath
c08866dcec
Disable simplify_clause::try_recognize_bailout for now
2022-11-09 14:30:33 +01:00
Jakob Rath
05ddac5ddc
Allow disabling log messages
2022-11-08 17:15:56 +01:00
Jakob Rath
eaf38abf17
Normalize to 0 < 0 instead of 1 <= 0
2022-11-07 15:32:34 +01:00
Jakob Rath
e7c77a22ab
Dedup quot_rem and lshr too
2022-11-07 15:25:05 +01:00
Jakob Rath
2953b1c093
Dedup op constraints
2022-11-07 15:02:48 +01:00
Jakob Rath
89acd96a89
All constraints have bvars now
2022-11-07 14:14:36 +01:00
Jakob Rath
586ffdf402
Remove unnecessary argument
2022-11-07 14:04:28 +01:00
Jakob Rath
a1736473a4
Move bit-wise expressions to constraint_manager
2022-11-07 14:00:02 +01:00
Jakob Rath
7662427d92
Split constraint_manager into separate file
2022-11-07 13:33:48 +01:00
Jakob Rath
e33f728128
hm
2022-10-31 15:54:56 +01:00
Jakob Rath
29695391de
First pass at free variable elimination
2022-10-31 15:22:03 +01:00
Jakob Rath
4cdd3bf77d
Add overload for conflict::add_lemma
2022-10-31 15:19:36 +01:00
Jakob Rath
6a03df9017
Track set of variables that occur in conflict constraints
2022-10-31 15:18:48 +01:00
Jakob Rath
eba59356f3
Disable problematic resolve_with_assignment
2022-10-31 15:17:32 +01:00
Nikolaj Bjorner
0da0fa2b27
#6429
2022-10-29 13:43:07 -07:00
Nikolaj Bjorner
edad727cd5
#6364
...
ensure substitutions are applied to eliminate internal variables from results
2022-10-20 13:14:54 -07:00
Nikolaj Bjorner
fc30461828
unused variables
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-10-20 09:09:06 -07:00
Nikolaj Bjorner
eaf52f4c32
fix infinite loop issue in def::operator+, other issues remain though for #6404
...
The example from #6404 results in an incorrect result. It uses integer division on private variables where MBQI support is new and not tested for substitutions.
2022-10-18 14:52:30 -07:00
Nikolaj Bjorner
b758d5b2b1
wip - proof checking, add support for distinct, other fixes
2022-10-17 17:51:10 -07:00