Commit graph

2398 commits

Author SHA1 Message Date
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
cda29ea107 fix(library/tactic/cases_tactic): incorrect mk_app 2016-07-20 09:32:12 -04:00
Leonardo de Moura
3dccaa8e39 feat(library/init/string): add utf8_length 2016-07-19 14:22:37 -04:00
Leonardo de Moura
d8e6915366 fix(frontends/lean/builtin_cmds): fail if expression contain metavars 2016-07-19 13:22:10 -04:00
Leonardo de Moura
59ff0eef5c feat(frontends/lean/scanner): hexadecimal numerals 2016-07-19 13:04:27 -04:00
Leonardo de Moura
492c90ed1d feat(frontends/lean/scanner): hex scape in character literal 2016-07-19 12:38:20 -04:00
Leonardo de Moura
ceba74f24e feat(library/tactic/unfold_tactic): improve fold failure detection 2016-07-18 20:17:40 -04:00
Leonardo de Moura
ff712dd78d test(tests/lean/run/unfold_crash): add Jared's repro 2016-07-18 20:00:30 -04:00
Leonardo de Moura
16ab639f56 fix(library/tactic/unfold_crash): crash when constant is not a definition 2016-07-18 19:59:17 -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
3218f91e35 feat(frontends/lean): add support for character literals 2016-07-18 14:07:10 -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
7ffcee0cb8 fix(library/type_context): bug at complete_instance 2016-07-17 18:31:04 -04:00
Leonardo de Moura
1ae6ec2ce2 fix(tests/lean/rewrite1): add repeat 2016-07-17 18:19:42 -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
f5b99b33ae fix(tests/lean/perf): fix tests, simp now invokes 'try triv' 2016-07-17 15:34:20 -04:00
Leonardo de Moura
26177995c2 feat(library/tactic): add 'generalize' tactic 2016-07-16 15:41:32 -04:00
Leonardo de Moura
fbefda9b1c feat(frontends/lean): add commands 'add_key_equivalence' and 'print key_equivalences' 2016-07-16 15:41:32 -04:00
Leonardo de Moura
031dbcd380 feat(library/tactic/cases_tactic): add missing case 2016-07-15 13:56:16 -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
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
Leonardo de Moura
021347b757 chore(library/init/reserved_notation): add <= and >= 2016-07-09 14:03:05 -07:00
Daniel Selsam
ea19bb40dd feat(simplifier): detect refl proofs from simp extensions 2016-07-09 10:11:58 -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
519f47c9a7 fix(library/type_context): ignore assigned variables 2016-07-08 16:50:25 -07:00
Leonardo de Moura
f34e84dacb feat(frontends/lean/parser): cute binders 2016-07-08 07:50:58 -07:00
Leonardo de Moura
9565a464ea chore(tests/lean): fix tests 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
b390521b30 feat(library/tactic/induction_tactic): clear major premise 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
Daniel Selsam
e8a0abe45e test(tests/lean/run): add three perf tests 2016-07-05 19:48:20 -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
0e06942d49 chore(tests/lean/run/simp_ext1): cleanup 2016-07-04 17:34:47 -07:00
Leonardo de Moura
7bbd43ba5e chore(library/init/meta/tactic): cleanup mk_eq_simp_ext 2016-07-04 17:32:16 -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
ac57795871 feat(init/meta/tactic): mk_eq_simp_ext helper 2016-07-04 17:13:41 -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
945faefd78 feat(library/tactic): add 'flat_assoc' tactic 2016-07-03 21:27:05 +01:00
Leonardo de Moura
6cb63d5f9a feat(frontends/lean/builtin_exprs): simplify '@' and '@@' 2016-07-02 11:08:18 +01:00
Leonardo de Moura
97719a4c5f refactor(frontends/lean): disable '!' operator, and adjust standard library 2016-07-02 01:41:46 +01:00