Commit graph

673 commits

Author SHA1 Message Date
Leonardo de Moura
e48fa15b71 feat(library/tactic/backward/backward_chaining): add 'pre_tactic' to backward_chaining_core 2016-07-10 16:11:13 -07:00
Leonardo de Moura
7c8d0f444f feat(library/tactic/backward): finish backward chaining tactic 2016-07-10 13:49:28 -07:00
Leonardo de Moura
af9c7148b3 feat(library/tactic/backward): add backward_chaining skeleton tactic 2016-07-10 11:45:25 -07:00
Leonardo de Moura
bc9a0701f8 refactor(library/tactic/apply_tactic): expose 'apply' tactic for internal use 2016-07-10 10:41:02 -07:00
Leonardo de Moura
2ae516ebe0 refactor(library): move backward lemmas to tactic 2016-07-10 10:17:56 -07:00
Leonardo de Moura
142f7da03c refactor(library): move gexpr to tactic folder 2016-07-10 09:21:05 -07:00
Leonardo de Moura
69cc58dbda fix(library/tactic/clear_tactic): fail if hypothesis has dependecies 2016-07-09 17:19:49 -07:00
Daniel Selsam
010c81f8aa chore(simplifier): remove duplicate include statement 2016-07-09 10:15:07 -07:00
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
dce8776cfd refactor(library/fun_info): separate subsingleton information from general param_info 2016-07-07 07:39:26 -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
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
34fc12eda0 feat(library/tactic/intro_tactic): improve low-level intron 2016-07-05 13:50:21 -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
f47bd06630 feat(library/tactic/simplifier): canonize instances
This is a cleanup of
10d23f0075
2016-07-04 17:23:16 -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
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
58569b82d3 refactor(frontends/lean,library,library/tactic): move type_context_cache_helper to type_context module 2016-06-30 12:03:40 +01:00
Leonardo de Moura
1c2804256e fix(library/tactic/tactic_state): do not assume combinator.K is in the environment 2016-06-28 16:48:53 +01:00
Leonardo de Moura
f1986b57e9 feat(library/init/meta/tactic): 'revert' tactic returns the number of actually reverted hypothesis 2016-06-28 15:36:50 +01:00
Leonardo de Moura
48d6319c1c feat(library/init/meta/tactic): add 'when_tracing' tactical 2016-06-28 11:29:39 +01:00
Leonardo de Moura
d524ab013f refactor(library/init/meta): make sure 'transparency' is the first argument 2016-06-28 10:25:38 +01:00
Leonardo de Moura
23565ff43c fix(library/tactic/match_tactic): check whether all meta-variables have been assigned 2016-06-27 14:53:42 +01:00
Leonardo de Moura
afffd31a7b feat(library/tactic): add match_pattern tactic 2016-06-27 14:26:31 +01:00
Leonardo de Moura
59f2b9e8c2 refactor(library/type_context): "metavar_context & m_mctx" ==> "metavar_context m_mctx" 2016-06-25 13:08:03 -07:00
Leonardo de Moura
72606479ec feat(library/tactic/tactic_state): add get_tactic_vm_state 2016-06-24 15:56:19 -07:00
Daniel Selsam
3915af9592 fix(library/tactic/simplifier): freset cache when adding to context 2016-06-24 15:29:28 -07:00
Leonardo de Moura
77fb7dfd1c chore(library/tactic/simplifier): move tactic_simp to simplifier module 2016-06-24 15:28:05 -07:00
Daniel Selsam
e1bc0a68e6 refactor(simplifier): port skeleton to new tactic framework
Conflicts:
	library/init/meta/tactic.lean
	src/library/tactic/tactic_state.cpp
2016-06-24 15:20:40 -07:00
Leonardo de Moura
490a116baa refactor(library): remove abstract_expr and abstract_expr_manager modules 2016-06-24 15:16:57 -07:00
Leonardo de Moura
3912da372a feat(library/tactic/defeq_simplifier): invoke defeq_canonize from defeq_simp 2016-06-24 14:46:43 -07:00
Leonardo de Moura
085c52938e feat(library/tactic/defeq_simplifier): add transparency parameter to defeq_simp 2016-06-24 13:31:32 -07:00
Leonardo de Moura
2be8fa646c refactor(library/tactic/defeq_simplifier): move VM binding for defeq_simp 2016-06-24 13:24:11 -07:00