Leonardo de Moura
|
5d3765a6b7
|
fix(frontends/lean/elaborator): missing instantiate_mvars
|
2016-09-15 13:59:09 -07:00 |
|
Leonardo de Moura
|
6a331e2ab8
|
feat(frontends/lean/elaborator): better error message when there is a mismatch between inferred and synthesized instances
|
2016-09-15 09:05:19 -07:00 |
|
Leonardo de Moura
|
8d51607ea0
|
chore(frontends/lean/elaborator): remove verbose trace message
|
2016-09-14 18:14:53 -07:00 |
|
Leonardo de Moura
|
59ce650033
|
feat(frontends/lean/elaborator): improve how type class instances are handled at visit_app_with_expected
|
2016-09-14 18:07:01 -07:00 |
|
Leonardo de Moura
|
13d1aff3d4
|
fix(library/type_context): revert method may modify the size of the input argument
|
2016-09-14 17:29:57 -07:00 |
|
Leonardo de Moura
|
0ff5733d70
|
refactor(frontends/lean/elaborator): checkpoints
|
2016-09-14 17:29:51 -07:00 |
|
Leonardo de Moura
|
78c77d8981
|
feat(library/type_context): support delayed_abstraction's at is_def_eq
|
2016-09-14 11:20:21 -07:00 |
|
Leonardo de Moura
|
b426119e83
|
chore(frontends/lean/elaborator): rename attribute [elab_default] ==> [elab_simple]
|
2016-09-14 09:42:30 -07:00 |
|
Leonardo de Moura
|
83cc67ba67
|
feat(frontends/lean/definition_cmds): use . instead of [none] to represent the empty set of equations
|
2016-09-14 09:38:30 -07:00 |
|
Leonardo de Moura
|
cd6acb5d1d
|
chore(library/pp_options): pp.binder_types true by default
|
2016-09-14 09:02:42 -07:00 |
|
Leonardo de Moura
|
9bb8b0e6ef
|
feat(frontends/lean/elaborator): always use approximate is_def_eq in the elaborator
|
2016-09-14 09:01:09 -07:00 |
|
Leonardo de Moura
|
9461595a70
|
chore(frontends/lean/elaborator): remove leftover
|
2016-09-13 21:55:55 -07:00 |
|
Leonardo de Moura
|
6c84a0a7b1
|
feat(frontends/lean): use new notation for declaring universes in constant and structure decls
|
2016-09-13 21:45:16 -07:00 |
|
Leonardo de Moura
|
ce53c035bc
|
feat(frontends/lean/decl_util): use the same notation for declaring universes in mutual and single decls
|
2016-09-13 21:05:18 -07:00 |
|
Leonardo de Moura
|
20cce8a0f6
|
feat(frontends/lean/parser): nicer notation for providing universes
|
2016-09-13 20:41:00 -07:00 |
|
Leonardo de Moura
|
6e9d49584b
|
fix(library/type_context): occurs check for universes
|
2016-09-13 20:40:32 -07:00 |
|
Leonardo de Moura
|
2ff3e4aaeb
|
feat(frontends/lean/elaborator): better error position
|
2016-09-13 16:17:50 -07:00 |
|
Leonardo de Moura
|
cf1c50f4e9
|
fix(frontends/lean/elaborator): get_elim_info_for_builtin
|
2016-09-13 14:17:08 -07:00 |
|
Leonardo de Moura
|
9765151156
|
feat(kernel/inductive): relax restriction on metavariables
This change does not affect correctness of the kernel, since QED only
process terms that do not contain metavariables.
|
2016-09-13 13:50:04 -07:00 |
|
Leonardo de Moura
|
5f8f7bcccb
|
feat(frontends/lean/elaborator): add proxy_attribute for elaborator strategies
This commit also adds a template for creating proxy_attribute's.
|
2016-09-13 13:02:37 -07:00 |
|
Leonardo de Moura
|
51407d09f9
|
refactor(library/attribute_manager): minimize the number of attr_data allocations
|
2016-09-13 10:00:52 -07:00 |
|
Leonardo de Moura
|
b996b81c35
|
refactor(library/reducible): rename proxy_attribute to reducibility_proxy_attribute
|
2016-09-13 09:45:58 -07:00 |
|
Leonardo de Moura
|
2ac2badd58
|
fix(library/compiler/preprocess): do not unfold proofs
|
2016-09-13 08:47:39 -07:00 |
|
Leonardo de Moura
|
4a85c8c145
|
feat(library/type_context): add is_proof
|
2016-09-13 08:47:39 -07:00 |
|
Leonardo de Moura
|
0d166970de
|
fix(frontends/lean/elaborator): missing instantiate_mvars
|
2016-09-13 08:09:12 -07:00 |
|
Leonardo de Moura
|
cf30d31024
|
fix(library/tactic/cases_tactic): missing case
|
2016-09-12 17:41:22 -07:00 |
|
Leonardo de Moura
|
d79fbee421
|
fix(frontends/lean/elaborator): visit_app_with_expected
Mark ite and dite with elab_with_expected_type.
|
2016-09-12 16:48:21 -07:00 |
|
Leonardo de Moura
|
aa2f9fadee
|
feat(frontends/lean/elaborator): add support for nondependent eliminators in the new elaborator
|
2016-09-12 15:26:13 -07:00 |
|
Leonardo de Moura
|
2248dccfd4
|
feat(library/equations_compiler/elim_match): do not create auxiliary definition when compiling meta-definitions and/or lemmas
|
2016-09-12 12:54:01 -07:00 |
|
Leonardo de Moura
|
d980aa3724
|
feat(library/rfl_lemmas): move rfl lemma rewrite procedure to library
|
2016-09-12 12:42:14 -07:00 |
|
Leonardo de Moura
|
af78fd0a3c
|
fix(library/tactic/user_attribute): make sure it compiles when using older versions of g++
|
2016-09-12 10:51:25 -07:00 |
|
Sebastian Ullrich
|
5e3e54e208
|
feat(library/tactic/user_attribute): Support pure function caching for user-defined attributes
|
2016-09-12 10:38:48 -07:00 |
|
Leonardo de Moura
|
d43764b6fb
|
refactor(library/tactic/defeq_simplifier): move defeq_simp_lemmas to library
This commit also renames them to "rfl_lemmas".
Reason: these lemmas will be used at type_context::is_def_eq and type_context::whnf
|
2016-09-12 10:36:11 -07:00 |
|
Leonardo de Moura
|
0b90ace9f8
|
feat(frontends/lean/builtin_exprs): basic support for let-expr with patterns
|
2016-09-11 22:21:10 -07:00 |
|
Leonardo de Moura
|
b957d3ee94
|
fix(frontends/lean/parser): make sure anonymous constructors can be used in patterns
|
2016-09-11 22:13:50 -07:00 |
|
Leonardo de Moura
|
c9d054ccaa
|
chore(library/constructions/cases_on): fix warning
|
2016-09-11 20:39:32 -07:00 |
|
Leonardo de Moura
|
38f7f9bbdc
|
fix(library/type_context): ignore unification constraints of the form ?m =?= delayed[?m]
|
2016-09-11 17:25:30 -07:00 |
|
Leonardo de Moura
|
2e609c8539
|
fix(library/type_context): support for delayed_abstraction at check_assignment
|
2016-09-11 17:12:32 -07:00 |
|
Leonardo de Moura
|
4bc4cc1549
|
chore(library/type_context): fix style
|
2016-09-11 16:29:12 -07:00 |
|
Leonardo de Moura
|
6ac64c7250
|
feat(library/equations_compiler/elim_match): make process_transport more robust
|
2016-09-11 16:21:15 -07:00 |
|
Leonardo de Moura
|
4ae0ab79d9
|
feat(library/pp_options): show delayed_abstractions by default
|
2016-09-11 11:07:17 -07:00 |
|
Leonardo de Moura
|
70c7561094
|
feat(library/type_context): add more tracing messages for failures
|
2016-09-11 11:05:37 -07:00 |
|
Leonardo de Moura
|
24f76d5260
|
feat(frontends/lean/elaborator): improve convoy and elim
|
2016-09-10 22:51:26 -07:00 |
|
Leonardo de Moura
|
61f7702940
|
feat(frontends/lean/elaborator): disable checks
|
2016-09-10 22:50:29 -07:00 |
|
Leonardo de Moura
|
f53ff9a3b6
|
feat(frontends/lean/elaborator): add [elab_as_eliminator] attribute
|
2016-09-10 21:58:30 -07:00 |
|
Leonardo de Moura
|
214e91d1ae
|
feat(frontends/lean/elaborator): improve match_convoy in the new elaborator
|
2016-09-10 21:41:40 -07:00 |
|
Leonardo de Moura
|
4d06f71e72
|
chore(frontends/lean/elaborator): remove unnecessary procedure
|
2016-09-10 21:14:58 -07:00 |
|
Leonardo de Moura
|
318c94bfce
|
fix(kernel/inductive/inductive): kernel should reject inductive datatype declaration for I where I occurs in an index
|
2016-09-10 17:45:58 -07:00 |
|
Leonardo de Moura
|
932d14241b
|
chore(kernel): remove support for mutually inductive datatypes from the kernel
|
2016-09-10 17:39:17 -07:00 |
|
Daniel Selsam
|
5787b469d0
|
feat(inductive_compiler): a few useful helper functions
|
2016-09-10 14:22:27 -07:00 |
|