Commit graph

155 commits

Author SHA1 Message Date
Leonardo de Moura
2ad5c2ab73 feat(library/init): add has_lift has_coe has_coe_to_fun type classes 2016-07-30 10:11:30 -07:00
Sebastian Ullrich
e090326f98 fix(library): remove classical instances from global scope 2016-07-29 23:44:23 -04:00
Leonardo de Moura
de237fa6e4 chore(library/coercion): disable coercion attribute 2016-07-29 13:15:10 -07:00
Leonardo de Moura
7ddf1e817b chore(frontends/lean): coercions are disabled by default 2016-07-29 13:03:23 -07:00
Daniel Selsam
1b7f70dde9 feat(simplifier): expose simp_lemmas data structure 2016-07-29 10:44:44 -07:00
Leonardo de Moura
14ac5fb25a fix(library/init/meta/mk_measurable_instance) : add 1 for each constructor 2016-07-23 13:01:09 -07:00
Leonardo de Moura
b5cddede6b feat(library/init/meta): add mk_measurable_instance tactic 2016-07-23 12:30:41 -07:00
Leonardo de Moura
85e3f51fd5 feat(library/bin_app): uniform foldr, add helper methods for synthesizing recursive functions
foldr combinator is used to define brec_on recursor.
It is easier to access the brec_on "dictionary" if the representation is
uniform.
2016-07-23 12:11:18 -07:00
Leonardo de Moura
0db1f3a9d1 feat(library/init/meta): add helper functions 2016-07-23 11:39:11 -07:00
Leonardo de Moura
212d222047 feat(frontends/lean): quoted names 2016-07-22 19:06:57 -07:00
Leonardo de Moura
fa04e5f36f refactor(library/init/meta): move set/get option tactics to separate file 2016-07-21 17:10:38 -07:00
Leonardo de Moura
ada260309e refactor(library/init/meta): move defeq simplifier related tactics to separate file 2016-07-21 17:07:09 -07:00
Leonardo de Moura
d70bf2f04e refactor(library/init/meta): move simplifier related tactics to separate file 2016-07-21 17:03:19 -07:00
Leonardo de Moura
1b55507971 refactor(library/init/meta): rename C++ intro to intro_core, and define smarter intro in C++ 2016-07-21 16:54:23 -07:00
Leonardo de Moura
90eb79a295 feat(library/init/meta): add mk_inhabited_instance tactic 2016-07-20 21:01:50 -04:00
Leonardo de Moura
9beacebf33 doc(library/init/meta/mk_dec_eq_instance): missing documentation 2016-07-20 20:30:02 -04:00
Leonardo de Moura
0163c1aa5b feat(library/init): use mk_dec_eq_instance in the init folder
We cannot mk_dec_eq_instance everywhere in the init folder because some
dec_eq instances are used to define the tactic mk_dec_eq_instance.
2016-07-20 20:21:58 -04:00
Leonardo de Moura
40b3410ede feat(library/init/meta): add tactic mk_dec_eq_instance 2016-07-20 19:57:12 -04:00
Leonardo de Moura
2580b40dc1 feat(library/init/meta/tactic): add helper tactic whnf_target 2016-07-20 19:29:22 -04:00
Leonardo de Moura
f0f927919d feat(library/init/meta/expr): add get_app_args 2016-07-20 19:28:36 -04:00
Leonardo de Moura
7f0b4b4573 feat(library/init/meta/environment): add is_recursive API 2016-07-20 19:27:43 -04:00
Leonardo de Moura
3dccaa8e39 feat(library/init/string): add utf8_length 2016-07-19 14:22:37 -04:00
Leonardo de Moura
7597952bad fix(library/tactic/unfold_tactic): should use type_context locals 2016-07-18 19:08:31 -04:00
Leonardo de Moura
0d8213cf92 feat(library/tactic): add unfold tactic 2016-07-18 15:46:56 -04:00
Leonardo de Moura
a20abd61e8 feat(library/tactic): implement rewrite and kabstract using occurrences object 2016-07-18 10:10:37 -04:00
Leonardo de Moura
3e6b4577e2 feat(library/tactic): add occurrences object 2016-07-18 09:49:49 -04:00
Leonardo de Moura
7f0276f592 feat(library/tactic): add 'rewrite' tactic and variants 2016-07-17 16:08:11 -04:00
Leonardo de Moura
26177995c2 feat(library/tactic): add 'generalize' tactic 2016-07-16 15:41:32 -04:00
Leonardo de Moura
a5307a34bc feat(library/tactic): add 'cases' tactic skeleton 2016-07-12 14:05:03 -04:00
Leonardo de Moura
5f2591b3a3 feat(library/init/meta/backward): expose back_lemmas (index)
Motivation: the user can create the index once and use it many times.
2016-07-10 17:11:24 -07:00
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
aacd812cc8 feat(library/init/meta/tactic): add 'by_contradiction' tactic 2016-07-09 19:14:36 -07:00
Leonardo de Moura
f81daab596 feat(library/init): add 'has_andthen' type class, and ';' notation 2016-07-09 18:39:27 -07:00
Leonardo de Moura
6b30b89c89 feat(library/init/meta/tactic): add 'simp_at' tactics 2016-07-09 17:23:45 -07:00
Leonardo de Moura
d5a648a12a feat(library/init/meta/tactic): add 'simp_using' and 'simp_using_hs', add 'try triv' after 'simp' 2016-07-09 16:37:55 -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
dce8776cfd refactor(library/fun_info): separate subsingleton information from general param_info 2016-07-07 07:39:26 -07:00
Leonardo de Moura
441c0d7434 fix(library/init/meta/fun_info): typo 2016-07-07 07:39:25 -07:00
Leonardo de Moura
02fb2c9c8a feat(library/init): add 'guard' and helper typeclasses 2016-07-07 00:52:52 -07:00
Leonardo de Moura
9e1c4b5c99 feat(library/init/meta): add helper functions, improve contradiction tactic 2016-07-05 18:34:48 -07:00
Leonardo de Moura
7bbd43ba5e chore(library/init/meta/tactic): cleanup mk_eq_simp_ext 2016-07-04 17:32:16 -07:00
Daniel Selsam
ba756eec4b chore(library/meta/tactic): remove duplicate todo 2016-07-04 17:14:14 -07:00
Daniel Selsam
ac57795871 feat(init/meta/tactic): mk_eq_simp_ext helper 2016-07-04 17:13:41 -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
945faefd78 feat(library/tactic): add 'flat_assoc' tactic 2016-07-03 21:27:05 +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
5be11a5738 chore(library/init/meta/constructor_tactic): cleanup 2016-06-30 11:44:00 +01:00
Leonardo de Moura
75eab6471d fix(library/init/meta/relation_tactics): typo 2016-06-29 07:25:58 +01:00