Commit graph

6508 commits

Author SHA1 Message Date
Daniel Selsam
237ff5dbf6 fix(simplifier): need scope_trace_env when pp-ing exprs with tmp-metavariables
Conflicts:
	src/library/tactic/simplifier/simplifier.cpp
2016-07-09 10:14:20 -07:00
Daniel Selsam
ea19bb40dd feat(simplifier): detect refl proofs from simp extensions 2016-07-09 10:11:58 -07:00
Daniel Selsam
a354973fee chore(simplifier): remove old TODO 2016-07-09 10:11:45 -07:00
Daniel Selsam
10773760bc fix(simplifier): need to instantiate mvars in results from simp extensions 2016-07-09 10:11:12 -07:00
Daniel Selsam
c3d44249bc feat(simplifier): take list of lemmas and tactic as args to simplify 2016-07-09 10:10:59 -07:00
Leonardo de Moura
c49f51dccc perf(library/tactic/simplifier/simplifier): minimize number of check_system invocations 2016-07-08 21:53:33 -07:00
Leonardo de Moura
ec4cd87172 perf(library/tactic/simplifier/simplifier): avoid instantiate, use 'for' instead of 'for_each' 2016-07-08 21:38:16 -07:00
Leonardo de Moura
8a24f06054 chore(library/type_context): remove dead code 2016-07-08 18:24:22 -07:00
Leonardo de Moura
1f71bc9798 feat(library/type_context): simplify on_is_def_eq_failure 2016-07-08 18:06:27 -07:00
Leonardo de Moura
519f47c9a7 fix(library/type_context): ignore assigned variables 2016-07-08 16:50:25 -07:00
Leonardo de Moura
e3df5e83b9 feat(library/type_context): cache on_is_def_eq_failure 2016-07-08 16:42:46 -07:00
Leonardo de Moura
ce9be907d9 perf(library/type_context): cache result of is_aux_recursor predicate 2016-07-08 09:25:45 -07:00
Leonardo de Moura
1ae6ce3f9c perf(library/type_context): use expr_struct_map for whnf_cache 2016-07-08 09:21:30 -07:00
Leonardo de Moura
f34e84dacb feat(frontends/lean/parser): cute binders 2016-07-08 07:50:58 -07:00
Leonardo de Moura
862b535c80 perf(library/type_context): cache whnf 2016-07-07 22:20:49 -07:00
Leonardo de Moura
d900a1b156 feat(library/type_context): faster find_unsynth_metavar
10% performance improvement on
../../tests/lean/perf/perm_ac_commring_50.lean
2016-07-07 07:39:26 -07:00
Leonardo de Moura
dce8776cfd refactor(library/fun_info): separate subsingleton information from general param_info 2016-07-07 07:39:26 -07:00
Leonardo de Moura
9fb3e0d1e1 feat(library/type_context): use equiv_manager 2016-07-07 07:39:25 -07:00
Leonardo de Moura
9f8e3752f0 feat(kernel/equiv_manager): use expr_struct_map in the equiv_manager 2016-07-07 07:39:25 -07:00
Leonardo de Moura
c379783c84 chore(library/old_tactic/tactic): remove old code
It has already been ported to new tactic framework.
2016-07-07 07:39:25 -07:00
Leonardo de Moura
b390521b30 feat(library/tactic/induction_tactic): clear major premise 2016-07-07 07:39:25 -07:00
Leonardo de Moura
7b1e67d899 feat(library/tactic/clear_tactic): add low-level induction tactic 2016-07-07 07:39:25 -07:00
Leonardo de Moura
925d538337 chore(library/tactic/induction_tactic): uniform error messages 2016-07-07 07:39:25 -07:00
Leonardo de Moura
60c4384d09 fix(library/compiler/elim_recursors): buggy way to detect recursive arguments 2016-07-06 23:27:04 -07:00
Sebastian Ullrich
c5a8fe02ac feat(frontends/lean): add parent classes to local context in struct definitions
Fixes #1066
2016-07-05 19:22:08 -07:00
Leonardo de Moura
dbbe070060 feat(library/tactic): add 'induction' tactic 2016-07-05 19:13:23 -07:00
Leonardo de Moura
14111829bf feat(library/tactic): add helper functions, improve intron 2016-07-05 19:11:15 -07:00
Leonardo de Moura
4474f0ce44 feat(library/tactic/tactic_state): add pp_goal 2016-07-05 18:35:11 -07:00
Leonardo de Moura
80cf1e8353 feat(library/metavar_context): use head_beta_reduce at mk_metavar_decl 2016-07-05 13:50:44 -07:00
Leonardo de Moura
34fc12eda0 feat(library/tactic/intro_tactic): improve low-level intron 2016-07-05 13:50:21 -07:00
Leonardo de Moura
07388479e6 feat(library/local_context): helper functions 2016-07-05 09:08:11 -07:00
Leonardo de Moura
c1b06fe49a feat(library/tactic/intro_tactic): add low-level intron procedures 2016-07-05 09:08:04 -07:00
Leonardo de Moura
e9ec52c122 chore(emacs/lean-syntax): add register_simp_ext to list of keywords 2016-07-04 17:32:22 -07:00
Leonardo de Moura
f47bd06630 feat(library/tactic/simplifier): canonize instances
This is a cleanup of
10d23f0075
2016-07-04 17:23:16 -07:00
Leonardo de Moura
cda867b124 fix(library/defeq_canonizer): bugs found by Daniel
This is a cleanup of
10d23f0075
2016-07-04 17:22:37 -07:00
Daniel Selsam
d3cfd39278 chore(tactic/simplifier/simplifier): remove old todos 2016-07-04 17:14:30 -07:00
Daniel Selsam
f03df9196b chore(simplifier/simp_extensions): remove commented block 2016-07-04 17:14:22 -07:00
Daniel Selsam
044a61d350 feat(simplifier): try synthesized congruence lemmas 2016-07-04 17:14:03 -07:00
Daniel Selsam
562151d6b5 doc(simplifier): remove old comment 2016-07-04 17:13:51 -07:00
Daniel Selsam
f8816e3ccb feat(library/tactic/simplifier): basic simplifier extensions 2016-07-04 17:13:30 -07:00
Daniel Selsam
9c3b7ad979 feat(simplifier/simp_extensions): basic bookkeeping 2016-07-04 17:13:19 -07:00
Leonardo de Moura
e4b028c596 feat(library/app_builder): add efficient mk_congr_arg
mk_congr_arg was a bottleneck at perm_ac tactic.
New tests are 10x faster after this commit.
2016-07-04 16:16:58 -07:00
Leonardo de Moura
6526a48c50 feat(library/tactic/ac_tactics): add 'perm_ac' tactic
TODO: add macro to postpone proof generation
2016-07-03 23:09:25 +01:00
Leonardo de Moura
34d23764fd feat(library/tactic/ac_tactics): expose flat_assoc in the C++ API 2016-07-03 21:31:02 +01:00
Leonardo de Moura
945faefd78 feat(library/tactic): add 'flat_assoc' tactic 2016-07-03 21:27:05 +01:00
Leonardo de Moura
9740515be1 chore(frontends/lean/builtin_exprs): remove '#tactic' 2016-07-02 11:15:46 +01:00
Leonardo de Moura
6cb63d5f9a feat(frontends/lean/builtin_exprs): simplify '@' and '@@' 2016-07-02 11:08:18 +01:00
Leonardo de Moura
90d920b7c9 chore(frontends/lean,library/explicit): remove dead code 2016-07-02 01:57:43 +01:00
Leonardo de Moura
97719a4c5f refactor(frontends/lean): disable '!' operator, and adjust standard library 2016-07-02 01:41:46 +01:00
Leonardo de Moura
58569b82d3 refactor(frontends/lean,library,library/tactic): move type_context_cache_helper to type_context module 2016-06-30 12:03:40 +01:00