Leonardo de Moura
|
eca906b074
|
feat(library/module): add inductive decls to .olean files
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-26 15:38:09 -07:00 |
|
Leonardo de Moura
|
49e1f78a33
|
feat(library/kernel_serializer): add serializer/deserializer for inductive decls
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-26 15:37:53 -07:00 |
|
Leonardo de Moura
|
bb9830f10c
|
test(shell): add command line tests
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-26 04:53:04 -07:00 |
|
Leonardo de Moura
|
2d31c6c0b2
|
feat(library/coercion): improve get_user_coercions API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 11:35:47 -07:00 |
|
Leonardo de Moura
|
e058839d24
|
fix(library/coercion): allow cycles in the coercion graph
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 11:08:49 -07:00 |
|
Leonardo de Moura
|
71b555ab15
|
test(lua): coercion module error messages
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 10:01:04 -07:00 |
|
Leonardo de Moura
|
ef14c3d67e
|
fix(library/coercion): coercion replacement
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 09:49:26 -07:00 |
|
Leonardo de Moura
|
eb6d72a20c
|
fix(library/coercion): typo
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 08:55:20 -07:00 |
|
Leonardo de Moura
|
fc1819aadd
|
test(lua): coercion serialization
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 08:38:50 -07:00 |
|
Leonardo de Moura
|
f598c6a110
|
fix(library/coercion): bug in coercion to function-class
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 08:21:53 -07:00 |
|
Leonardo de Moura
|
118eae2733
|
fix(library/coercion): bug add_coercion
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 07:45:49 -07:00 |
|
Leonardo de Moura
|
e9e61fec51
|
feat(library/coercion): add for_each_coercion procedure
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 07:45:49 -07:00 |
|
Leonardo de Moura
|
a408883c92
|
fix(library/coercion): bug in de-Bruijn indices
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 07:45:49 -07:00 |
|
Leonardo de Moura
|
f050308df7
|
feat(kernel/instantiate): relax apply_beta pre-conditions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 07:45:41 -07:00 |
|
Leonardo de Moura
|
1ee6bb48fc
|
fix(library/coercion): bug in add_coercion_trans
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 06:25:31 -07:00 |
|
Leonardo de Moura
|
6536232107
|
feat(library/coercion): expose coercion module in the Lua API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-25 06:05:31 -07:00 |
|
Leonardo de Moura
|
2be9bcef78
|
feat(library/coercion): add coercion management implementation
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-24 19:28:42 -07:00 |
|
Leonardo de Moura
|
1cff37a084
|
feat(library/module): use io_state to report warning messages
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-24 14:08:15 -07:00 |
|
Leonardo de Moura
|
5df2331159
|
feat(library/io_state): add constructor for copying io_state, but replacing channels
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-24 13:51:39 -07:00 |
|
Leonardo de Moura
|
49b2bb209d
|
refactor(kernel/formatter): formatter_cell object should not perform destructive updates
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-24 13:51:39 -07:00 |
|
Leonardo de Moura
|
f8255ddac6
|
fix(library/module): deadlock
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 16:46:53 -07:00 |
|
Leonardo de Moura
|
d30c600eb2
|
fix(library/module): bug in module import
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 16:23:47 -07:00 |
|
Leonardo de Moura
|
879572ee7e
|
fix(kernel/module): non-termination
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 15:12:47 -07:00 |
|
Leonardo de Moura
|
902b6160fa
|
fix(kernel/module): deadlock
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 14:43:03 -07:00 |
|
Leonardo de Moura
|
2344fb9476
|
feat(kernel/expr): use the expression depth in the hash code
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 14:16:51 -07:00 |
|
Leonardo de Moura
|
a3b0200d32
|
feat(library/module): do not use threads when lean is not compiled with LEAN_MULTI_THREAD
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 11:32:24 -07:00 |
|
Leonardo de Moura
|
b68b9ccc05
|
fix(kernel/environment): bug in extension id checking
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 11:24:00 -07:00 |
|
Leonardo de Moura
|
be96dc2ddf
|
fix(library/module): bug in next_task method
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 11:13:38 -07:00 |
|
Leonardo de Moura
|
c593247fcc
|
fix(library/kernel_serializer): bug in declaration serialization
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 11:11:16 -07:00 |
|
Leonardo de Moura
|
61b662151e
|
fix(library/module): bug in export_module procedure
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 10:57:11 -07:00 |
|
Leonardo de Moura
|
6bbb9d3667
|
feat(library/kernel_bindings): declarations added with the function add_decl are automatically registered in the to-export list
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 10:52:47 -07:00 |
|
Leonardo de Moura
|
1a663afda4
|
feat(library/module): add extra function for adding uncertified declarations when trust_lvl > LEAN_BELIEVER_TRUST_LEVEL
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 10:50:34 -07:00 |
|
Leonardo de Moura
|
a0a70bcea7
|
feat(library/kernel_bindings): expose import/export functions in the Lua API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-23 09:35:32 -07:00 |
|
Leonardo de Moura
|
21905289fa
|
feat(library/module): add module import procedure
The modules are processed in parallel.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-22 18:15:44 -07:00 |
|
Leonardo de Moura
|
76177d7765
|
feat(library/kernel_bindings): improve type_checker:check Lua API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-22 14:10:25 -07:00 |
|
Leonardo de Moura
|
6246fae32c
|
fix(kernel/inductive): inductive datatype declaration validation bug pointed out by Cody Roux
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-21 16:29:25 -07:00 |
|
Leonardo de Moura
|
a45dc0bb86
|
chore(kernel): remove dead code, we don't have level constraints anymore
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-21 15:46:17 -07:00 |
|
Leonardo de Moura
|
f375ed5f7a
|
test(tests/kernel/environment): add more tests for environment objects
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-21 12:42:29 -07:00 |
|
Leonardo de Moura
|
e39feabb72
|
feat(library/module): add declaration reader
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-21 11:54:29 -07:00 |
|
Leonardo de Moura
|
9f4bae6856
|
feat(library/kernel_bindings): add hott_environment Lua API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-21 11:49:30 -07:00 |
|
Leonardo de Moura
|
45d473d44e
|
feat(kernel): add mk_hott_environment function for creating HoTT compatible environments
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-21 11:31:34 -07:00 |
|
Leonardo de Moura
|
4d1fecb21d
|
refactor(library/kernel_bindings): rename empty_environment ==> bare_environment in the Lua API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-21 11:24:24 -07:00 |
|
Leonardo de Moura
|
f08a852da8
|
feat(library/kernel_bindings): expose environment::add(declaration) method in the Lua API, and add example to demonstrate its usage
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-21 11:12:55 -07:00 |
|
Leonardo de Moura
|
9b9041fa2e
|
feat(kernel/environment): add method for adding declarations that were not type checked (if trust_lvl() > LEAN_BELIEVER_TRUST_LEVEL)
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-21 11:12:26 -07:00 |
|
Leonardo de Moura
|
8ffe66dc4f
|
feat(library): add module system API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-20 18:35:59 -07:00 |
|
Leonardo de Moura
|
dd3edcb19f
|
feat(library): add shared environment object
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-20 15:42:52 -07:00 |
|
Leonardo de Moura
|
11fc917102
|
test(lua): add tests for improving kernel_bindings coverage
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-20 12:16:12 -07:00 |
|
Leonardo de Moura
|
c5e8c10c9d
|
fix(library/normalize): bug in normalize
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-20 11:53:58 -07:00 |
|
Leonardo de Moura
|
8872d4a531
|
refactor(kernel): rename definition class to declaration
The name was misleading since not every declaration is a definition.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-20 10:41:38 -07:00 |
|
Leonardo de Moura
|
00b1a84051
|
feat(library/kernel_bindings): expose environment::for_each method in the Lua API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-20 10:16:19 -07:00 |
|
Leonardo de Moura
|
34a9c8304a
|
feat(kernel/environment): add for_each method for traversing environment declarations
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-20 10:15:28 -07:00 |
|
Leonardo de Moura
|
8a8c5a2b84
|
feat(library/kernel_bindings): add normalize, whnf, type_check, infer_type methods to environment object Lua API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-20 09:40:50 -07:00 |
|
Leonardo de Moura
|
11793e7998
|
feat(library): add simple normalization procedure
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-20 09:40:30 -07:00 |
|
Leonardo de Moura
|
4103c85ce3
|
feat(library/kernel_bindings): improve Fun/Pi Lua APIs
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-20 09:00:19 -07:00 |
|
Leonardo de Moura
|
bcb9965844
|
feat(library/kernel_bindings): improve Fun/Pi Lua APIs
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 17:07:20 -07:00 |
|
Leonardo de Moura
|
9de8249d8f
|
feat(kernel): let Pi/Fun also take local constants
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 17:03:48 -07:00 |
|
Leonardo de Moura
|
df9c935f0a
|
fix(kernel/inductive): remove unused argument, bug in is_rec_argument (free variable occurrence)
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 17:02:20 -07:00 |
|
Leonardo de Moura
|
3e3d3c8380
|
feat(kernel/inductive): check in add_inductive whether the environment supports inductive datatypes or not
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 15:44:15 -07:00 |
|
Leonardo de Moura
|
a7aacaa782
|
feat(library/kernel_bindings): improve list_level support in the Lua interface
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 15:18:48 -07:00 |
|
Leonardo de Moura
|
a1086e440d
|
feat(kernel/inductive): use non-dependent elimination for Bool/Prop only if it is proof irrelevant
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 13:33:29 -07:00 |
|
Leonardo de Moura
|
eb92f3722f
|
fix(kernel/inductive): typo
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 13:27:05 -07:00 |
|
Leonardo de Moura
|
f3ed20a229
|
feat(kernel/inductive): add normalizer extension for inductive datatypes, add procedure for creating an standard (empty) Lean environment
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 12:52:25 -07:00 |
|
Leonardo de Moura
|
edc8af7bb3
|
refactor(kernel): reduce code duplication
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 11:11:19 -07:00 |
|
Leonardo de Moura
|
0e582675d9
|
feat(kernel/inductive): store computational rules in an environment extension
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 10:45:52 -07:00 |
|
Leonardo de Moura
|
90d83fa2ad
|
fix(kernel/environment): bug in get_extension
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 10:41:22 -07:00 |
|
Leonardo de Moura
|
1a9122f158
|
doc(kernel/inductive): improve module documentation
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 10:04:28 -07:00 |
|
Leonardo de Moura
|
2aacb769dd
|
feat(kernel/inductive): generate computational rules RHS for inductive datatypes
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 09:08:19 -07:00 |
|
Leonardo de Moura
|
eb409a9ce3
|
feat(kernel/abstract): add more Fun functions for simplifying the creation lambda-expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 09:01:20 -07:00 |
|
Leonardo de Moura
|
5566186c34
|
feat(util/list_fn): add get_ith function
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 09:00:09 -07:00 |
|
Leonardo de Moura
|
2daad71d47
|
fix(kernel/type_checker): memory access violation, closures (for printing error messages) had a uninteded reference to the type_checker
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 08:59:32 -07:00 |
|
Leonardo de Moura
|
39e101d323
|
feat(kernel/formatter): improve simple printer support for Pi and lambda
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-19 08:16:32 -07:00 |
|
Leonardo de Moura
|
28b70b4e04
|
feat(kernel/inductive): use nondependent elimination when the datatype is in Bool/Prop
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-18 15:39:48 -07:00 |
|
Leonardo de Moura
|
45252e2229
|
feat(kernel/inductive): add eliminator/recursor for inductive datatype declarations
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-18 14:17:57 -07:00 |
|
Leonardo de Moura
|
f826e98196
|
feat(kernel/formatter): avoid hierarchical names when printing local constants
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-18 13:50:29 -07:00 |
|
Leonardo de Moura
|
405b24861c
|
feat(util/name): add methods append_after and append_before
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-18 13:49:24 -07:00 |
|
Leonardo de Moura
|
7bf0011905
|
feat(kernel/expr): add additional template for mk_app
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-18 13:15:58 -07:00 |
|
Leonardo de Moura
|
08aa4afb3e
|
feat(kernel/abstract): add more Pi functions for simplifying the creation Pi-expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-18 13:15:00 -07:00 |
|
Leonardo de Moura
|
950d69b977
|
test(lua): add tests for exercising datatype validation code
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 20:10:45 -07:00 |
|
Leonardo de Moura
|
ff3a7bd734
|
fix(kernel/type_checker): style
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 19:21:09 -07:00 |
|
Leonardo de Moura
|
8fcb84c8f2
|
feat(kernel/inductive): finish inductive datatype declaration validation
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 19:19:32 -07:00 |
|
Leonardo de Moura
|
5c7d3c79c4
|
feat(kernel/expr): improve get_app_args interface
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 19:19:10 -07:00 |
|
Leonardo de Moura
|
28e8299f6d
|
feat(kernel/type_checker): add swap method
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 19:18:46 -07:00 |
|
Leonardo de Moura
|
4325b126d4
|
feat(util/list): add map2 for list<T1> -> list<T2>, where T1 and T2 may be different, we still keep map because compiler can automatically infer all template arguments, this is not the case for map2
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 19:18:18 -07:00 |
|
Leonardo de Moura
|
f818c1a63e
|
feat(kernel/inductive): add more inductive datatype validation
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 14:47:06 -07:00 |
|
Leonardo de Moura
|
d03e35aaac
|
feat(kernel/inductive): add datatype and introduction rules declarations to environment, and fix tests
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 13:59:06 -07:00 |
|
Leonardo de Moura
|
f7bc5ac514
|
fix(library/kernel_bindings): style
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 13:44:51 -07:00 |
|
Leonardo de Moura
|
d0e7c88ea8
|
feat(library/kernel_bindings): improve universe level Lua API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 13:40:35 -07:00 |
|
Leonardo de Moura
|
18a17cd48b
|
feat(kernel/level): add is_geq predicate, we need it for implementing the inductive datatype validation
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 13:39:54 -07:00 |
|
Leonardo de Moura
|
4348d5e63f
|
refactor(kernel): remove unnecessary module
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 12:35:41 -07:00 |
|
Leonardo de Moura
|
a85a6b685b
|
feat(kernel/formatter): add binding_body_fresh, let_body_fresh, and simplify formatter
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 12:30:03 -07:00 |
|
Leonardo de Moura
|
5ce134e24e
|
chore(kernel): binder => binding where appropriate
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 11:37:27 -07:00 |
|
Leonardo de Moura
|
33ae79cd9e
|
refactor(kernel): move shallow copy function to library
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 11:20:24 -07:00 |
|
Leonardo de Moura
|
d625c9a26c
|
refactor(kernel): move max_sharing to library
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 11:15:08 -07:00 |
|
Leonardo de Moura
|
aafdd98acb
|
refactor(kernel): remove telescope type, and procedures
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 10:51:40 -07:00 |
|
Leonardo de Moura
|
36b070cb5b
|
refactor(kernel/inductive): simplify inductive datatype API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 09:24:34 -07:00 |
|
Leonardo de Moura
|
4ec89e8561
|
feat(library/kernel_bindings): add sugar for level expressions in the Lua API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-17 08:10:36 -07:00 |
|
Leonardo de Moura
|
5fc0f06a8d
|
feat(library/kernel_bindings): add Lua API for declaring datatypes
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-16 18:08:50 -07:00 |
|
Leonardo de Moura
|
ace5dee63d
|
feat(kernel/inductive): add getters for inductive decls
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-16 17:47:37 -07:00 |
|
Leonardo de Moura
|
6dedb480ec
|
fix(kernel/abstract): bug in abstract for telescopes
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-16 17:47:04 -07:00 |
|
Leonardo de Moura
|
e6c52d17a6
|
fix(kernel/expr): memory leak introduced today
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-05-16 16:21:31 -07:00 |
|