Leonardo de Moura
325177bfd9
chore(tests/lean): make sure all tests can be processed using new elaborator
2016-09-19 16:17:32 -07:00
Leonardo de Moura
186716cbcd
chore(tests/lean): delete old tests
2016-09-19 15:53:43 -07:00
Leonardo de Moura
bc5504b482
fix(tests/lean/run): disable tests that do not type check in the elaborator because it doesn't unfold theorems
2016-09-19 15:34:12 -07:00
Leonardo de Moura
b0361b49e2
chore(tests/lean/run/662): move test to new elaborator
2016-09-19 14:36:46 -07:00
Leonardo de Moura
1cf5419757
chore(tests/lean/run): move tests to new elaborator
2016-09-19 11:43:59 -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
10f4a22fff
fix(frontends/lean/elaborator): try to synthesize pending type class instances before processing eliminator/recursor
2016-09-19 11:14:49 -07:00
Leonardo de Moura
fab357dd94
chore(tests/lean/run): move tests to new elaborator
2016-09-19 11:04:14 -07:00
Leonardo de Moura
6bfecdf00c
chore(tests/lean/run): move tests to new elaborator
2016-09-18 19:10:48 -07:00
Leonardo de Moura
677d3d4cf9
fix(frontends/lean/elaborator): ignore annotations around function when deciding which kind of elaborator strategy should be used
2016-09-18 19:10:13 -07:00
Leonardo de Moura
c81f283068
chore(tests/lean/run): move tests to new elaborator
2016-09-18 18:38:41 -07:00
Leonardo de Moura
4e0e812811
fix(frontends/lean/builtin_exprs): patterns in do-notation
2016-09-18 18:19:51 -07:00
Leonardo de Moura
bc31e43317
chore(tests/lean/run): delete old tests
2016-09-18 18:19:04 -07:00
Leonardo de Moura
ba974cc1d6
refactor(library/init/state): fix stateT at universe 1
2016-09-18 17:48:37 -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
98da86eac0
chore(tests/lean/run): move tests to new elaborator
2016-09-18 17:13:13 -07:00
Leonardo de Moura
51845d1622
fix(frontends/lean/parser): support as_atomic exprs at to_pattern_fn
2016-09-18 16:55:59 -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
06df5fef1d
chore(tests/lean/run): make sure tests work with new elaborator
2016-09-18 14:48:47 -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
ac87de33e7
fix(frontends/lean/structure_cmd): universe level validation in the structure command
2016-09-18 10:00:31 -07:00
Leonardo de Moura
14db9259f8
refactor(library/init): universe polymorphic monad library
2016-09-17 18:58:27 -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
Leonardo de Moura
928d567a3f
chore(tests/lean): providing universes
2016-09-17 12:54:20 -07:00
Leonardo de Moura
29b35ef12d
chore(tests/lean/hott): delete old HoTT tests
2016-09-17 12:26:11 -07:00
Leonardo de Moura
f8df2cd44f
fix(frontends/lean/decl_util): section variables/parameters
2016-09-16 15:32:51 -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
63be1418f7
refactor(library/init): move files to new elaborator
2016-09-16 08:31:21 -07:00
Leonardo de Moura
f60de96d98
fix(frontends/lean/elaborator): bug at @@ annotation
2016-09-15 17:03:59 -07:00
Leonardo de Moura
f42afe2b65
feat(frontends/lean/elaborator): [elab_with_expected_type] is the new default strategy
2016-09-15 14:45:52 -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
0ff5733d70
refactor(frontends/lean/elaborator): checkpoints
2016-09-14 17:29:51 -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
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
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
24049d8f40
refactor(library/init/logic): rename decidable.tt/ff to decidable.is_true/is_false
2016-09-13 13:40:02 -07:00
Leonardo de Moura
e718e4c600
chore(tests/lean/set_attr1): adjust test output
2016-09-13 08:52:58 -07:00
Leonardo de Moura
9632f00fbe
test(tests/lean/run): the lean2 macro dec_trivial is tricky to support in the new elaborator
...
Here are some workarounds.
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
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
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