Commit graph

6576 commits

Author SHA1 Message Date
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
a50cbf07ab fix(library/app_builder): do not try to instantiate type class instances that have been explicitly provided 2016-07-20 19:42:21 -04:00
Leonardo de Moura
31e0d9d183 fix(library/type_context): local instances were not being initialized 2016-07-20 19:41:45 -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
cda29ea107 fix(library/tactic/cases_tactic): incorrect mk_app 2016-07-20 09:32:12 -04:00
Leonardo de Moura
f576573466 fix(library/tactic/unfold_tactic): crash 2016-07-20 00:08:38 -04:00
Leonardo de Moura
4c3c2d6236 fix(library/tactic/rewrite_tactic): instantiate mvars in the type 2016-07-19 21:59:09 -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
ed73dafa48 chore(library/tactic/unfold_tactic): fix style 2016-07-18 20:20:54 -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
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
a0bd27a91c chore(library/old_tactic/tactic): remove dead code 2016-07-18 16:05:30 -04:00
Leonardo de Moura
0d8213cf92 feat(library/tactic): add unfold tactic 2016-07-18 15:46:56 -04:00
Leonardo de Moura
98867d4ec0 feat(library/tactic/intro_tactic): use head_beta_reduce 2016-07-18 15:14:01 -04:00
Leonardo de Moura
dcd12cfe96 chore(library/old_tactic/tactic): remove dead code 2016-07-18 14:12:23 -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
579f643d1d refactor(library): move kabstract to tactic folder 2016-07-18 09:57:02 -04:00
Leonardo de Moura
3e6b4577e2 feat(library/tactic): add occurrences object 2016-07-18 09:49:49 -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
762104ef33 chore(library/old_tactic/tactic/rewrite_tactic): remove dead code 2016-07-17 16:11:18 -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
b505bce801 feat(library/type_context): put on_is_def_eq_failure back 2016-07-17 15:52:36 -04:00
Leonardo de Moura
0d16d82120 chore(library/kabstract): avoid code duplication 2016-07-17 15:13:05 -04:00
Leonardo de Moura
d787870093 feat(library/kabstract): small optimization 2016-07-17 15:08:53 -04:00
Leonardo de Moura
0add9bd7a7 fix(library/type_context): remove incorrect assertions 2016-07-17 14:35:17 -04:00
Leonardo de Moura
e72bccb2e3 feat(library/vm/vm_list): add to_list 2016-07-17 14:34:47 -04:00
Leonardo de Moura
be88270f09 feat(library/tactic/assert_tactic): expose API 2016-07-17 14:34:22 -04:00
Leonardo de Moura
8cfe7fdeab chore(frontends/lean/token_table): remove old keywords 2016-07-17 14:34:01 -04:00
Leonardo de Moura
7272cab929 feat(library/kabstract): add kabstract with occs 2016-07-17 14:32:21 -04:00
Leonardo de Moura
71bae47d45 chore(library/old_tactic/tactic): remove dead code 2016-07-16 15:41:32 -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
0213f1970f feat(library): add kabstract 2016-07-16 15:41:31 -04:00
Leonardo de Moura
e945db8306 chore(library/old_tactic/tactic): remove dead code 2016-07-16 15:41:20 -04:00
Leonardo de Moura
a30603405c feat(library/vm/vm): add scope_vm_state 2016-07-15 15:10:04 -04:00
Leonardo de Moura
fd068344a6 feat(library/tactic/cases_tactic): merge method
The renaming tables are essential for implementing the new definitional package.
2016-07-15 13:56:17 -04:00
Leonardo de Moura
dfc834fb5c feat(library/old_tactic/tactic/inversion_tactic): remove dead code 2016-07-15 13:56:16 -04:00
Leonardo de Moura
e1a9008d7c feat(library/tactic/cases_tactic): add a list containing the constructor associated with each new goal 2016-07-15 13:56:16 -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
8934172ed2 feat(library/tactic/cases_tactic): start unify_eqs 2016-07-15 13:55:51 -04:00
Leonardo de Moura
2ac7b5afca fix(library/tactic/subst_tactic): typo 2016-07-15 13:52:55 -04:00
Leonardo de Moura
de0ae18dd1 feat(library/tactic/subst_tactic): add low-level subst tactic for internal use 2016-07-14 18:00:29 -04:00
Leonardo de Moura
d9fb21ecc8 feat(library/tactic/cases_tactic): clear auxiliary indices 2016-07-14 16:54:04 -04:00
Leonardo de Moura
95a103b98b feat(library/tactic/cases_tactic): use 'induction' tactic to implement easy case of 'cases' tactic 2016-07-14 16:04:27 -04:00
Leonardo de Moura
af9114d7c9 refactor(library/tactic/induction_tactic): low level induction tactic for internal use 2016-07-14 16:04:05 -04:00
Leonardo de Moura
d49ab7d220 feat(library/tactic/induction_tactic): new flavor of intron 2016-07-14 14:51:45 -04:00