Rob Lewis
|
44a099f6f1
|
feat(norm_num): performance and style fixes
|
2015-11-12 20:53:37 -08:00 |
|
Rob Lewis
|
4bf0519843
|
feat(norm_num): numeral normalizer works for +, -, *, /
|
2015-11-12 20:53:37 -08:00 |
|
Rob Lewis
|
616450be64
|
feat(library/norm_num): extend norm_num to handle subtraction
|
2015-11-12 20:53:37 -08:00 |
|
Leonardo de Moura
|
8f378db661
|
feat(library/blast): add normalize procedure to blast API
|
2015-11-12 20:42:58 -08:00 |
|
Leonardo de Moura
|
e1f81cfdcd
|
feat(library/type_context): add normalizer for type_context
|
2015-11-12 20:31:36 -08:00 |
|
Leonardo de Moura
|
d9816b6e21
|
fix(library/type_context): avoid errors in the infer type method due to opaque constants
|
2015-11-12 20:04:46 -08:00 |
|
Leonardo de Moura
|
1d1cd0fc24
|
feat(library/congr_lemma_manager): add congruence lemma for normalization and congruence closure
|
2015-11-12 18:54:12 -08:00 |
|
Leonardo de Moura
|
15cd92f89f
|
fix(library/type_context): methods assign and force_assign were not processing postponed constraints
|
2015-11-12 18:52:31 -08:00 |
|
Leonardo de Moura
|
1e436b8b3e
|
fix(library/blast/state): incorrect assertions
|
2015-11-12 16:28:09 -08:00 |
|
Leonardo de Moura
|
98f91931bf
|
fix(library/blast/state): compilation errors
|
2015-11-12 16:25:59 -08:00 |
|
Leonardo de Moura
|
6eef52196e
|
feat(library/blast): add gexpr "generalized expressions"
|
2015-11-11 16:11:51 -08:00 |
|
Leonardo de Moura
|
fee0cff295
|
feat(library/blast): add simple indexing data-structure for active hypotheses
|
2015-11-11 00:02:47 -08:00 |
|
Leonardo de Moura
|
41e14fddf8
|
feat(library/head_map): support local name in the head_map
|
2015-11-10 20:02:31 -08:00 |
|
Leonardo de Moura
|
bd06bf9fb1
|
doc(library/blast): document action_result
|
2015-11-10 17:49:41 -08:00 |
|
Leonardo de Moura
|
48eb6cb138
|
refactor(library/blast/state): simplify state
|
2015-11-10 17:27:39 -08:00 |
|
Leonardo de Moura
|
511337a4e9
|
fix(library/blast): missing file
|
2015-11-10 17:00:26 -08:00 |
|
Leonardo de Moura
|
f8f3f9402e
|
feat(library/blast): major reorg and basic backward chaining action
|
2015-11-10 17:00:16 -08:00 |
|
Leonardo de Moura
|
5be1893d98
|
fix(library/blast/state): bug at instantiate_urefs_mrefs
|
2015-11-10 16:38:44 -08:00 |
|
Leonardo de Moura
|
6f01a7339a
|
refactor(library/blast): move simple search strategy to separate module
|
2015-11-10 11:44:18 -08:00 |
|
Leonardo de Moura
|
6ac2bf9c6c
|
refactor(library/blast): add choice_point object
|
2015-11-10 11:28:59 -08:00 |
|
Leonardo de Moura
|
b76cdb1c68
|
refactor(library/blast): move blast options to separate module
|
2015-11-10 11:03:54 -08:00 |
|
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 |
|
Leonardo de Moura
|
f74e8288bd
|
refactor(library/congr_lemma_manager): API
|
2015-11-08 14:05:03 -08:00 |
|
Leonardo de Moura
|
f19fcf255a
|
chore(library/constants.cpp): regenerate automatically generated file
|
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
|
78a9116a23
|
chore(library/congr_lemma_manager): fix style
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
77c0866599
|
feat(library/congr_lemma_manager): fallback to simple congruence theorem if needed
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
0eb0a679e8
|
feat(library/congr_lemma_manager): add support for complex lemmas
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
ba477a0e98
|
feat(library/congr_lemma_manager): handle simple congruence lemmas
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
3dc8f72c32
|
feat(frontends/lean/builtin_cmds): display congr lemma arg mask
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
df94864809
|
fix(library/congr_lemma_manager): use abstract_local
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
8a7321714a
|
feat(library/congr_lemma_manager): add mk_congr_simp that takes the number of expected arguments
Use sorry to be able to test first part
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
5a48a2cebe
|
feat(library/app_builder): add mk_sorry method
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
c16423194c
|
feat(library/fun_info_manager): add method for getting information about function prefix
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
559c5a26a3
|
fix(library/congr_lemma_manager): take resulting type into account when computing congruence lemma
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
b89b4cb5f0
|
fix(library/fun_info_manager): bug tracking dependecies
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
7d588636a1
|
feat(library/fun_info_manager): collect additional information
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
22dcf6825e
|
feat(library/congr_lemma_manager): add congr_lemma_manager skeleton and compute type of congruence lemma
proof is still missing
|
2015-11-08 14:05:02 -08:00 |
|
Leonardo de Moura
|
01bde866d6
|
feat(library/util): add auxiliary recognizers
|
2015-11-08 14:05:01 -08:00 |
|
Leonardo de Moura
|
2d04156959
|
fix(library/app_builder): bug in eq_drec
|
2015-11-08 14:05:01 -08:00 |
|
Leonardo de Moura
|
34d5882b9a
|
refactor(library/util): rename old is_eq_rec
|
2015-11-08 14:05:01 -08:00 |
|
Leonardo de Moura
|
6519e570f3
|
feat(library/fun_info_manager): safer "replace" function
|
2015-11-08 14:05:01 -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
|
7e7919950d
|
fix(library/type_context): compilation warning
|
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
|
749d468440
|
feat(library): add fun_info_manager
|
2015-11-08 14:05:01 -08:00 |
|
Leonardo de Moura
|
e23523bb02
|
feat(library/type_context): add mk_subsingleton_instance
|
2015-11-08 14:05:01 -08:00 |
|
Daniel Selsam
|
a104b478f3
|
feat(library/type_context): make expand_macro public
|
2015-11-08 14:05:01 -08:00 |
|
Leonardo de Moura
|
f84f024b92
|
refactor(library/app_builder): change app_builder constructor
|
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
|
b2c9f2f6c5
|
feat(library/type_context): document our approach for managing meta-variables in 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
|
01259a2d1c
|
feat(library/app_builder): add helper functions for creating eq.rec applications
|
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
|
f21102a725
|
feat(frontends/lean): add test commands for new app_builder features
|
2015-11-08 14:05:01 -08:00 |
|
Leonardo de Moura
|
1c2c2a6077
|
feat(library/app_builder): mk_app with mask
|
2015-11-08 14:05:01 -08:00 |
|
Leonardo de Moura
|
8e0a3eec3f
|
chore(library/relation_manager): fix bogus style warnings
|
2015-11-08 14:05:01 -08:00 |
|
Leonardo de Moura
|
0f631889b7
|
feat(library/app_builder): add helper methods for creating binary relations, and refl/symm/trans proofs
|
2015-11-08 14:05:00 -08:00 |
|
Leonardo de Moura
|
b5c40e30ef
|
feat(library/app_builder): add set_context
|
2015-11-08 14:05:00 -08:00 |
|
Leonardo de Moura
|
137ec27059
|
feat(library/app_builder): add constructor for app_builder that may take subclasses of tmp_type_context
We need this feature because blast has its own version of tmp_type_context.
|
2015-11-08 14:05:00 -08:00 |
|
Leonardo de Moura
|
ee0974650a
|
feat(library/app_builder): new app_builder on top of type_context
The new version is more robust, and invokes type class resolution if needed.
|
2015-11-08 14:05:00 -08:00 |
|
Leonardo de Moura
|
87ec7383dd
|
fix(library/tmp_type_context): initialization
|
2015-11-08 14:05:00 -08:00 |
|