Arie Gurfinkel
df7ab0e496
pred_transformer: factor rule bookkeeping to a separate class
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
4099f31f4f
Fix refutation generation
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
18e3c7b13d
Fix bug introduced by formatting
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
f3466bb3e4
tidy
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
1920450f98
throttle ite-blasting
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
1f0fd38c99
ground sat refutation from spacer (wip)
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
0534b72c4d
sort hypotheses
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
c5fb1c1223
Use vector instead of a hashtable to represent a set
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
e84ca25f05
Check whether one proof node is an ancestor of another on-demand
...
Instead of pre-computing sets
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
a40e0dce0c
proof_utils: use expr_mark instead of hashtable
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
2a6b694373
Imrove hypothesis_reducer
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
4b2196f114
nits
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
6adaed718f
remove pdr
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
cefdb8c01d
Use reachable cache
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
9fef466c63
Respect children order in spacer/pdr
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
f74ca2f0c0
Fix caching bug in mbc
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
54add824e9
Debug print
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
c3fb863ad1
formatting/reviewing
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
d2ae3b4025
Create children for pdr in spacer
...
This is first working version of gpdr strategy. Passes one test.
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
e1a45671b3
Cleanup spacer options
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
1994f1d7e4
Cleanup of spacer options
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
fca0442487
Fix proof_checker to use is_int_expr
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
8b689ae27f
Moved is_int_expr into arith_recognizers
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
cb683389f6
spacer::context: Factor params into udpt_params
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
521392a8f1
First partially working pdr strategy in spacer
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
ab5f579d0b
Comments in pdr_context.cpp
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
ece2e53c98
Ported model_search and model_node from pdr into spacer
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
478d7c790e
mbc: moved code under get_subst()
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
e860e4d045
Bug fix for quantified pob generation
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
2a243d38d1
Model based Cartesian decomposition
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
fee7828b51
fix solve bug
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
3178f7f86d
Add random order of children in spacer
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
5756871738
Always attempt to eliminate all existential variables
...
Sometimes variables that cannot be eliminated in one context, can be
eliminated in the other. Pass all available variables to MBP to be
eliminated if possible
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
7396ad72ab
Give up when a lemma is re-discovered too many times
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
6fb6279f07
Cleanup array_eq_generalizer
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
da66ad6f80
Cleanup derivation::create_next_child
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
c5ff5ac2a1
Clen up spacer::pred_transformer::get_origin_summary
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
d7dc10212e
Clean up spacer::context::create_children
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
b61da6fcc0
Debug print in org-mode format
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
6b82068d8d
Bug fix in spacer::derivation::exist_skolemize
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
4ca734528e
Formatting
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
dd064bd8f9
Bug fix to spacer::sym_mux
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
38c2b56f0e
Rewrite spacer::sym_mux
...
Simpler implementation that only provides functionality actually used
by spacer
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
268274911a
Fix to cube-and-clause interface in prop_solver
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
e0e435582a
Minor code cleanup
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
6464468cd8
Remove dead code
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
aa77a918cd
Optimizing qe_lite
2018-06-14 16:08:50 -07:00
Nikolaj Bjorner
bfeb15b876
move to list of clauses
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
502e323678
Fixes to pred_tranformer::updt_solver
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
862eef5ec0
Eliminate all existential variables from reach facts
2018-06-14 16:08:50 -07:00