Commit graph

96 commits

Author SHA1 Message Date
Leonardo de Moura
f1c2a88e17 feat(library/blast): add proof_expr thin layer for creating proof terms at blast 2015-11-10 10:50:58 -08:00
Leonardo de Moura
5304f62f54 feat(library/blast/hypothesis): track proof depth in hypotheses 2015-11-10 09:54:28 -08:00
Leonardo de Moura
409ad18f9b refactor(library/blast/state): cleanup state interface 2015-11-10 09:20:44 -08:00
Daniel Selsam
fc5dba4cd1 fix(library/simplifier/simp_rule_set): use lists instead of vectors 2015-11-10 08:58:46 -08:00
Leonardo de Moura
b59dd2305c refactor(library/blast): rename state::get ==> state::get_hypothesis_decl 2015-11-09 14:52:21 -08:00
Leonardo de Moura
fb7a47cf2b refactor(library/blast): avoid auxiliary local when creating hypothesis for intros 2015-11-09 14:40:39 -08:00
Leonardo de Moura
a14bb86148 feat(library/blast/state): add mk_lambda/mk_pi for abstracting hrefs 2015-11-09 14:20:19 -08:00
Leonardo de Moura
973a5c4812 feat(library/blast): improve blast type_context push/pop operations 2015-11-09 13:36:49 -08:00
Leonardo de Moura
9c364b410e refactor(library/blast): hypothesis m_depth ==> m_dep_depth 2015-11-09 13:29:07 -08:00
Leonardo de Moura
9a557958f4 refactor(library/blast): merge state and branch classes
We will keep only one active branch in blast.
All other branches are implicit.
2015-11-09 13:24:30 -08:00
Leonardo de Moura
9bdf3a0d33 refactor(library/blast): we should reuse uref/mref/href in idxs
Motivation: avoid nasty bugs when caching results
2015-11-09 12:41:52 -08:00
Leonardo de Moura
d952a1d299 refactor(library/blast/expr): remove unnecessary complexity 2015-11-09 12:27:33 -08:00
Leonardo de Moura
c5117785a8 feat(library/blast): add intros action 2015-11-08 19:18:40 -08:00
Leonardo de Moura
78f1679b03 feat(library/blast): add basic assumption action 2015-11-08 18:16:34 -08:00
Leonardo de Moura
6340b1ae5b feat(library/blast): very basic search procedure and iterative deepening 2015-11-08 17:57:37 -08:00
Leonardo de Moura
8308e87a6c feat(library/blast/blast): initialize local instances at type_context objects 2015-11-08 15:20:05 -08:00
Leonardo de Moura
39019b6873 refactor(library/blast/simplifier): use app_builder mk_congr, mk_congr_arg and mk_congr_fun 2015-11-08 14:05:03 -08:00
Leonardo de Moura
1374f8cba1 fix(library/blast/simplifier): compilation warnings 2015-11-08 14:05:03 -08:00
Leonardo de Moura
b8857b078b feat(library/blast): add get_app_builder to blast API 2015-11-08 14:05:03 -08:00
Leonardo de Moura
1d1f043192 refactor(library/app_builder): throw exception instead of returning none_expr 2015-11-08 14:05:03 -08:00
Daniel Selsam
0061d595d0 feat(library/blast/simplifier): use generated congruence lemmas 2015-11-08 14:05:03 -08:00
Daniel Selsam
b2368ba81b style(library/blast/simplifier): whitespace 2015-11-08 14:05:03 -08:00
Daniel Selsam
f1d5cc5d5b test(library/blast/simplifier): add asserts 2015-11-08 14:05:03 -08:00
Leonardo de Moura
afc7a2af84 feat(library/blast): expose mk_congr_lemma_for_simp and get_fun_info 2015-11-08 14:05:03 -08:00
Daniel Selsam
f3caeb77cd style(library/blast/simplifier): whitespace 2015-11-08 14:05:03 -08:00
Daniel Selsam
6c2c82f47c feat(library/blast/simplifier): conditional rewriting 2015-11-08 14:05:03 -08:00
Daniel Selsam
d4e410162b feat(library/blast/simplifier): expand macros 2015-11-08 14:05:02 -08:00
Daniel Selsam
b727d5810a feat(library/blast/simplifier): rewrite with tmp locals 2015-11-08 14:05:02 -08:00
Daniel Selsam
3f331a261a fix(library/blast/simplifier): stack of caches for local context 2015-11-08 14:05:02 -08:00
Daniel Selsam
b81aa35221 feat(library/blast/simplifier): more informative tracing 2015-11-08 14:05:02 -08:00
Daniel Selsam
0ad41173bb fix(library/blast/simplifier): caches for each relation 2015-11-08 14:05:02 -08:00
Daniel Selsam
a304f6a9df fix(library/blast/simplifier): loop rewrite rules 2015-11-08 14:05:02 -08:00
Daniel Selsam
a73e4e30a3 feat(library/blast/simplifier): use new blast_tmp_type_context constructor 2015-11-08 14:05:02 -08:00
Daniel Selsam
8e5e8e6540 feat(library/blast/simplifier): basic infrastructure 2015-11-08 14:05:02 -08:00
Leonardo de Moura
78b1d4279b fix(library/blast/state): compilation problems in debug mode 2015-11-08 14:05:01 -08:00
Leonardo de Moura
8d9d84f33c refactor(library/blast): we don't require maximally shared terms anymore in blast
This commit also removes the blast::mk_* expr and level functions.
They were just noops.

I kept only mk_uref, mk_href and mk_mref
2015-11-08 14:05:01 -08:00
Leonardo de Moura
45c02cb65c feat(library/blast/blast): add extra constructor 2015-11-08 14:05:01 -08:00
Leonardo de Moura
980eb95e0c fix(library/type_context,library/blast/blast): blast uses multiple type_context objects, this commit makes sure all of them use the same local name generator 2015-11-08 14:05:01 -08:00
Leonardo de Moura
98b79373cc feat(library/blast/blast): add blast::internalize 2015-11-08 14:05:01 -08:00
Leonardo de Moura
43efc11f36 feat(library/blast/blast): automatically clear tmp_type_context at recycling time 2015-11-08 14:05:01 -08:00
Leonardo de Moura
3517a3dfa9 feat(library/blast): add blast_tmp_type_context 2015-11-08 14:05:01 -08:00
Leonardo de Moura
aa697206e8 refactor(library/type_context): rename set_context to set_local_instances 2015-11-08 14:05:01 -08:00
Leonardo de Moura
fb7efa9337 feat(library/type_context): new tmp local_constant policy 2015-11-08 14:05:01 -08:00
Leonardo de Moura
333ba83087 feat(library/type_context): add mk_tmp_local that allows us to specify the pretty printing name
We also modify the type inference procedure to preserve the binder names.
2015-11-08 14:05:01 -08:00
Leonardo de Moura
5b71025b07 fix(library/blast/blast): temporary type_context for blast must handle external meta-variables. 2015-11-08 14:05:01 -08:00
Leonardo de Moura
f8916ed411 feat(library/blast/blast): create tmp_type_context that is compatible with blast 2015-11-08 14:05:00 -08:00
Leonardo de Moura
18d9272f22 refactor(library/type_context): revise get_assignment
It is safer to return optional.
2015-11-08 14:05:00 -08:00
Leonardo de Moura
27904787fe refactor(library/type_inference): rename type_inference module to type_context 2015-11-08 14:05:00 -08:00
Leonardo de Moura
914f3b4e34 chore(library/blast/blast): fix style 2015-11-08 14:05:00 -08:00
Leonardo de Moura
0e4f97792e feat(library/blast): add blast::scope_debug auxiliary class for testing blast related procedures 2015-11-08 14:05:00 -08:00