Leonardo de Moura
e473d7cefc
feat(frontends/lean/definition_cmds): make sure copied lemma is a rfl lemma if source is a rfl lemma
...
The idea is to allow the defeq simplifier to use the copied lemma.
2016-10-06 15:49:38 -07:00
Leonardo de Moura
c745519e50
feat(frontends/lean/definition_cmds): generate equation lemmas for top-level definitions
2016-10-06 15:30:43 -07:00
Gabriel Ebner
996b4375a9
feat(library/flycheck,frontends/lean/elaborator): show trace messages in flycheck
2016-10-05 15:20:00 -07:00
Daniel Selsam
3d2ff8a76d
chore(frontends/lean/inductive_cmd): readable name for ind result level placeholder
2016-10-05 15:10:21 -07:00
Leonardo de Moura
73ed9db161
chore(frontends/lean/token_table): remove old keyword
2016-10-05 08:46:23 -07:00
Leonardo de Moura
d252f4ac7d
feat(frontends/lean/elaborator): improve mini-lenses
2016-10-03 20:17:45 -07:00
Leonardo de Moura
16985d0de1
feat(frontends/lean/elaborator): better error message for eval_expr
2016-10-03 18:23:47 -07:00
Leonardo de Moura
7465529445
feat(library/tactic): 'eval_expr' tactic skeleton
2016-10-03 16:26:28 -07:00
Leonardo de Moura
1baa953b48
feat(frontends/lean/elaborator): improve error localization
2016-10-02 13:33:49 -07:00
Leonardo de Moura
838b3329ce
fix(frontends/lean/elaborator): structure instance update with type classes
2016-10-02 11:36:22 -07:00
Leonardo de Moura
f21f1219d9
fix(frontends/lean/structure_cmd): handle is_one_placeholder
2016-10-02 08:07:19 -07:00
Leonardo de Moura
4f69fe943a
fix(frontends/lean/structure_cmd): make sure structure_cmd takes the option default_priority into account
2016-10-01 13:47:19 -07:00
Leonardo de Moura
95ffdca3f7
feat(frontends/lean/decl_attributes): add 'default_priority' attribute
2016-10-01 13:27:08 -07:00
Leonardo de Moura
837915f06b
fix(frontends/lean/builtin_exprs): bug when parsing in quoted names
2016-10-01 13:19:24 -07:00
Leonardo de Moura
7ab12ed57f
feat(library/init/algebra): improve transport_to_additive (copy attributes)
2016-10-01 12:55:17 -07:00
Leonardo de Moura
c0022253a7
feat(frontends/lean/tactic_notation): allow lemmas to be removed
2016-09-30 19:53:51 -07:00
Leonardo de Moura
fd6dc8154a
feat(library/init/meta/interactive): add interactive tactics
2016-09-30 19:02:45 -07:00
Leonardo de Moura
d627011786
feat(frontends/lean/tactic_notation): do is tactic unit in begin end blocks.
2016-09-30 16:35:45 -07:00
Leonardo de Moura
051b6bd026
feat(frontends/lean/tactic_notation): add notation for entering auto-quotation mode
2016-09-30 16:18:52 -07:00
Leonardo de Moura
9ea858e6fe
feat(frontends/lean/tactic_notation): nested interactive tactics
2016-09-30 14:53:07 -07:00
Leonardo de Moura
23ce2b0587
feat(frontends/lean/tactic_notation, library/init/meta/interactive): add "interactive" versions of define/assert/definev/assertv/note tactics
2016-09-29 18:48:32 -07:00
Leonardo de Moura
572751c56e
feat(frontends/lean): force user to use meta keyword on meta inductive/structure/class
...
Before this commit, we were inferring whether an
inductive/structure/class were meta or not. This was bad since the user
had no clue whether the type was trusted (non meta) or not.
Moreover, users could get confused by this behavior and assume the
kernel was allowing trusted code to rely on untrusted one.
2016-09-29 17:56:35 -07:00
Leonardo de Moura
5726d45e7f
fix(frontends/lean/elaborator): bad error msg
2016-09-29 15:23:20 -07:00
Leonardo de Moura
f97e238b8e
feat(frontends/lean/elaborator): decorate error messages when overloads are used
2016-09-29 15:00:45 -07:00
Leonardo de Moura
f2e8b8794c
feat(frontends/lean/elaborator): display error when failed to elaborate using expected type
2016-09-29 11:55:05 -07:00
Leonardo de Moura
ceeebb7e40
feat(frontends/lean/elaborator): improve error messages for eliminators
2016-09-29 11:29:59 -07:00
Leonardo de Moura
c8a720212b
feat(frontends/lean): 'by' is now also using interactive mode syntax
2016-09-29 01:57:40 -07:00
Leonardo de Moura
84b45b010a
feat(frontends/lean/elaborator): improve overloading support
2016-09-28 20:54:11 -07:00
Leonardo de Moura
1f07e87bc2
refactor(frontends/lean/elaborator): add first_pass_info struct
2016-09-28 20:54:10 -07:00
Leonardo de Moura
d59410cc41
refactor(kernel): support only proof irrelevant mode
2016-09-27 17:18:52 -07:00
Leonardo de Moura
d0d75c0923
refactor(kernel): reduce number of configurations supported in the kernel
...
Now, eta and impredicativity are assumed to be always true.
Motivation: the rest of the system assumes eta.
Regarding impredicativity, we decided to support only the standard library.
2016-09-27 17:07:01 -07:00
Leonardo de Moura
9ef3ebbd5b
refactor(*): delete HoTT support
2016-09-27 16:33:39 -07:00
Leonardo de Moura
d7c3fce8a3
feat(library/init/coe,frontends/lean): more general coercions to fun
...
The new test dep_coe_to_fn.lean motivates the change.
2016-09-27 15:41:06 -07:00
Gabriel Ebner
d0ab6065c3
fix(frontends/lean): type check examples
2016-09-27 14:39:55 -07:00
Leonardo de Moura
c6ec659bf5
feat(frontends/lean): improve 'begin...end' blocks
2016-09-27 13:34:11 -07:00
Leonardo de Moura
6207dd0346
refactor(library/init): simplify has_emptyc type class
2016-09-27 10:03:57 -07:00
Leonardo de Moura
c6609543d0
chore(library/init): minor changes
2016-09-27 07:23:51 -07:00
Leonardo de Moura
6e6609f2aa
fix(frontends/lean): use coercions to sort at elaborate_type
2016-09-26 16:47:31 -07:00
Leonardo de Moura
dd8018eb04
fix(frontends/lean/elaborator): make coercion resolution more robust
2016-09-26 16:18:36 -07:00
Leonardo de Moura
b9b64b121c
feat(frontends/lean/elaborator): add show-goal support (Ctrl-c-g on Emacs)
2016-09-26 11:19:08 -07:00
Leonardo de Moura
78c6bc3a26
feat(frontends/lean): add step-by-step 'begin...end' block execution
2016-09-26 10:56:40 -07:00
Leonardo de Moura
3c71d7eda2
feat(frontends/lean,library/tactic/tactic_state): improve error localization
2016-09-25 18:40:41 -07:00
Leonardo de Moura
bbf21b4e65
feat(frontends/lean/begin_end_block): auto-quote identifiers
2016-09-25 17:25:21 -07:00
Leonardo de Moura
264b614f0d
fix(frontends/lean/elaborator): bug when checking for unassigned metavars
2016-09-25 17:22:45 -07:00
Leonardo de Moura
8b132c758a
feat(frontends/lean/begin_end_block): add basic auto-quotation
2016-09-25 17:03:12 -07:00
Leonardo de Moura
70ca497654
feat(frontends/lean/token_table): add ASCII notation for anonymous constructor
2016-09-25 13:48:52 -07:00
Leonardo de Moura
d5a28f91cc
refactor(library/init): reorganize files and cleanup notation
2016-09-25 13:37:45 -07:00
Leonardo de Moura
97261fcc48
feat(frontends/lean): add very basic 'begin ... end' block support
2016-09-24 21:27:27 -07:00
Leonardo de Moura
d944d78b1d
feat(frontends/lean/decl_cmds): attribute list must occur immediately after 'attribute' keyword
2016-09-24 18:40:57 -07:00
Leonardo de Moura
49cffc0b20
feat(frontends/lean): add compact notation for setting attributes suggested by Sebastian
2016-09-24 15:45:06 -07:00