Leonardo de Moura
9a967001be
chore(library/equations_compiler/compiler): use exception until well_founded recursion support is implemented
2016-09-19 14:41:25 -07:00
Leonardo de Moura
a9578513ea
fix(library/type_context): use copy_tag when create auxiliary meta-variables
2016-09-19 13:59:08 -07:00
Leonardo de Moura
e4553e0446
fix(library/type_context): bug in occurs check
2016-09-19 11:40:00 -07:00
Leonardo de Moura
0a6f571f07
fix(library/tactic/simplifier/simplifier): assertion
2016-09-19 11:29:03 -07:00
Leonardo de Moura
9d9f2b2636
fix(library/equations_compiler/structural_rec): bug at check_arg_type
2016-09-18 18:36:20 -07:00
Leonardo de Moura
4ba9644bd7
chore(library/rfl_lemmas): comment assertion
...
TODO: investigate why we have added it.
2016-09-18 18:20:18 -07:00
Leonardo de Moura
5df705ebe8
fix(library/equations_compiler/compiler): nested match-exprs in meta_definitions
2016-09-18 17:20:52 -07:00
Leonardo de Moura
194d1be0dd
fix(library/equations_compiler/structural_rec): reflexive type support
2016-09-18 16:15:31 -07:00
Leonardo de Moura
b524e3d5f1
fix(frontends/lean/elaborator): postprocess rec_fn_macros used in meta_definitions
2016-09-18 13:01:50 -07:00
Leonardo de Moura
6657876566
feat(library/equations_compiler): add support for meta_definitions
2016-09-18 10:52:38 -07:00
Leonardo de Moura
75d5087d43
fix(library/type_context): using incorrect local_context at revert
2016-09-17 19:44:38 -07:00
Leonardo de Moura
adcfd89623
feat(library/type_context): remove normalize
2016-09-17 18:29:11 -07:00
Leonardo de Moura
90bfd84a07
feat(frontends/lean): Type is now (Type 1)
...
In the standard library, we should use explicit universe variables for
universe polymorphic definitions.
Users that want to declare universe polymorphic definitions but do not
want to provide universe level parameters should use
Type _
or
Type*
2016-09-17 14:30:54 -07:00
Daniel Selsam
52f87760d8
feat(src/library/inductive_compiler): support for nested inductive types
2016-09-16 12:50:59 -07:00
Leonardo de Moura
a53abd5d65
fix(library/type_context): branch is reachable
2016-09-16 09:04:59 -07:00
Leonardo de Moura
7fb407d2fd
fix(library/equations_compiler/structural_rec): typo
2016-09-16 07:56:28 -07:00
Leonardo de Moura
9b996f14c2
fix(library/type_context): normalize assignment
2016-09-16 07:42:23 -07:00
Leonardo de Moura
af0f8bcd29
fix(library/explicit): annotation name
2016-09-15 17:57:01 -07:00
Leonardo de Moura
f8fbc95e29
fix(library/delayed_abstraction): nested delayed abstractions
2016-09-15 15:46:25 -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
78c77d8981
feat(library/type_context): support delayed_abstraction's at is_def_eq
2016-09-14 11:20:21 -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
6e9d49584b
fix(library/type_context): occurs check for universes
2016-09-13 20:40:32 -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
cf30d31024
fix(library/tactic/cases_tactic): missing case
2016-09-12 17:41:22 -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
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
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
Daniel Selsam
b0c5744eea
feat(inductive_compiler): support for mutually inductive types
2016-09-10 14:22:27 -07:00
Leonardo de Moura
e6dd5242fc
feat(library/equations_compiler): add option eqn_compiler.zeta
2016-09-10 14:00:16 -07:00
Leonardo de Moura
1afd81384f
chore(library/let): delete let-macro hack
2016-09-10 13:06:07 -07:00
Leonardo de Moura
50ef0185d9
fix(library/equations_compiler/structural_rec): missing relaxed_whnf
2016-09-10 12:14:00 -07:00
Leonardo de Moura
96d27b6b8f
fix(library/equations_compiler/elim_match): missing case for is_complete_transition
2016-09-10 12:13:31 -07:00
Leonardo de Moura
b7a9174a9c
fix(library/type_context): never unfold constant x when solving x =?= x
...
This is a clean version of #1127
2016-09-10 09:57:38 -07:00