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

9177 commits

Author SHA1 Message Date
Nikolaj Bjorner
5fc0f56281 sketch mbi
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
4a2eb909bf Re-fixing a bug in compute_implicant_literals() 2018-06-14 16:08:51 -07:00
Arie Gurfinkel
8445e2a7a2 Fix bug in weak abs
Must ensure that weak model makes all summaries true. Otherwise,
it is possible to get stuck discovering the same lemma forever.
2018-06-14 16:08:51 -07:00
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