Commit graph

2460 commits

Author SHA1 Message Date
Leonardo de Moura
68ad696777 chore(frontends/lean/nested_declaration): do not allow attributes in abstract ... end blocks 2016-07-31 19:14:33 -07:00
Leonardo de Moura
da98191256 chore(tests/lean/run): preparing tests for new elaborator 2016-07-31 17:45:43 -07:00
Leonardo de Moura
e5298c9d8f feat(frontends/lean/elaborator): modify the pre-term for overloaded notation
The new encoding is better for the new elaborator.
2016-07-31 17:14:01 -07:00
Leonardo de Moura
9fc222b9af chore(library/pp_options): remove option pp.metavar_args 2016-07-31 16:00:21 -07:00
Leonardo de Moura
138d1bb146 fix(library/type_context): missing case 2016-07-31 15:16:52 -07:00
Leonardo de Moura
877bfe0250 fix(frontends/lean/pp): pp_meta bug 2016-07-31 14:54:37 -07:00
Leonardo de Moura
f461b53a7f refactor(library): remove eq.ops namespace 2016-07-31 12:50:11 -07:00
Leonardo de Moura
1aeda0e74b feat(frontends/lean/elaborator): invoke tactics 2016-07-31 11:56:52 -07:00
Leonardo de Moura
e28e4fc896 feat(frontends/lean/elaborator): convert unassigned universe levels into universe parameters, basic support for by tactic 2016-07-31 03:45:18 -07:00
Leonardo de Moura
c46403265b feat(library/local_context): add instance_mvars method for local_context object 2016-07-31 02:36:51 -07:00
Leonardo de Moura
f72f9dd561 fix(frontends/lean/pp): purify metavar_decl_ref's
The tests become too fragile if we don't purify them.
2016-07-30 20:30:03 -07:00
Leonardo de Moura
fafea473b8 feat(frontends/lean/elaborator): coercions to sort 2016-07-30 19:47:04 -07:00
Leonardo de Moura
b4fefd8c0b feat(frontends/lean/elaborator): coercions to functions 2016-07-30 18:54:20 -07:00
Leonardo de Moura
b6139ab59d fix(library/type_context): bug in type class resolution 2016-07-30 15:54:28 -07:00
Leonardo de Moura
8b533a54c2 feat(frontends/lean/pp): improve purify_metavars 2016-07-30 15:31:06 -07:00
Leonardo de Moura
44a77f6907 test(tests/lean/coe1): add coercion tests 2016-07-30 12:29:12 -07:00
Leonardo de Moura
f18c84ca59 feat(frontends/lean/pp): add option for hiding coercions 2016-07-30 12:25:18 -07:00
Leonardo de Moura
68f73851d9 test(tests/lean/elab4b): test error messages when pp.full_names is false 2016-07-30 12:02:14 -07:00
Leonardo de Moura
a0589ce8b8 feat(frontends/lean): automatic coercions 2016-07-30 11:53:25 -07:00
Leonardo de Moura
671784e35f chore(tests/lean/pp_all2): fix test output 2016-07-29 23:35:10 -07:00
Leonardo de Moura
264c23a24f chore(library/class): disable [trans_instance] attribute
Conflicts:
	src/library/class.cpp
2016-07-29 23:28:36 -07:00
Sebastian Ullrich
e090326f98 fix(library): remove classical instances from global scope 2016-07-29 23:44:23 -04:00
Sebastian Ullrich
c4edad0372 feat(frontends/lean, library): remove attribute and metaclass scoping
All data is now part of either a global, permanent scope or a local,
temporary one
2016-07-29 23:44:21 -04:00
Leonardo de Moura
de237fa6e4 chore(library/coercion): disable coercion attribute 2016-07-29 13:15:10 -07:00
Leonardo de Moura
7ddf1e817b chore(frontends/lean): coercions are disabled by default 2016-07-29 13:03:23 -07:00
Daniel Selsam
1b7f70dde9 feat(simplifier): expose simp_lemmas data structure 2016-07-29 10:44:44 -07:00
Daniel Selsam
5fe08cb24c fix(simplifier): closes #1093 2016-07-29 10:44:44 -07:00
Daniel Selsam
79e5e80dae test(frontends/smt2): basic tests for parser and elaborator 2016-07-29 10:44:44 -07:00
Leonardo de Moura
d05e5422f9 refactor(frontends/lean/elaborator): snapshots 2016-07-29 10:36:14 -07:00
Leonardo de Moura
aae33e02b0 fix(frontends/lean/elaborator): check expected type in applications, make sure we don't accidentally unfold definitions unnecessarily 2016-07-28 17:30:56 -07:00
Leonardo de Moura
cdee8b811a feat(frontends/lean/elaborator): special support for elaborating have-expressions 2016-07-28 16:20:53 -07:00
Leonardo de Moura
a7c8cbc548 feat(frontends/lean/elaborator): add hard coded coercion from bool to Prop 2016-07-28 15:38:22 -07:00
Leonardo de Moura
b5f006d229 feat(frontends/lean/elaborator): use expected types to disambiguate overloads 2016-07-28 15:32:25 -07:00
Leonardo de Moura
e2f14f2dc4 feat(frontends/lean/elaborator): use full_names when displaying ambiguous overload 2016-07-28 15:21:07 -07:00
Leonardo de Moura
ef2e80e635 refactor(library/type_context): remove dangerous 'get_cache' method 2016-07-27 18:32:36 -07:00
Leonardo de Moura
690e39b261 feat(frontends/lean/elaborator): add checkpoint at typed_expr 2016-07-27 18:08:28 -07:00
Leonardo de Moura
12070e589a feat(frontends/lean/elaborator): elaboration procedure for recursor/eliminator applications 2016-07-27 17:58:18 -07:00
Leonardo de Moura
3af268a95a test(tests/lean/run/elab4): test 'calc'-expressions in the new elaborator 2016-07-27 17:11:34 -07:00
Leonardo de Moura
de9075b19d chore(frontends/lean/builtin_cmds): support 'sorry' at #elab command 2016-07-27 17:09:36 -07:00
Leonardo de Moura
4fd69ca2d4 test(tests/lean/elab10): test show/have-exprs using new elaborator 2016-07-27 16:50:18 -07:00
Leonardo de Moura
084f82b00b feat(frontends/lean/elaborator): elaborate Pi, fix visit_lambda, improve ensure_type 2016-07-27 16:42:45 -07:00
Leonardo de Moura
4f2bb65b1e test(tests/lean): more examples 2016-07-27 16:08:33 -07:00
Leonardo de Moura
3a5f6f2e64 feat(frontends/lean/builtin_cmds): improve output produced by #elab command, use kernel type checker to check elaboration result 2016-07-27 15:29:25 -07:00
Leonardo de Moura
b29a9ce325 chore(tests/lean): fix test output 2016-07-27 15:06:05 -07:00
Leonardo de Moura
7ae1a2c067 fix(frontends/lean/elaborator): synthesize metavariables using the context where they were declared 2016-07-27 15:03:17 -07:00
Leonardo de Moura
9477b91978 feat(frontends/lean/elaborator): elaborate lambdas 2016-07-27 11:40:30 -07:00
Leonardo de Moura
f8b48ac955 feat(frontends/lean/elaborator): support for strict implicit arguments 2016-07-27 10:38:59 -07:00
Leonardo de Moura
9a98501966 chore(tests/lean): fix tests output 2016-07-26 17:54:30 -07:00
Leonardo de Moura
3fd452d1db test(tests/lean): add new test for overloaded application 2016-07-26 17:38:51 -07:00
Leonardo de Moura
83d4436079 feat(frontends/lean/elaborator): remove poly case 2016-07-26 14:37:43 -07:00