Commit graph

1733 commits

Author SHA1 Message Date
Leonardo de Moura
fb6c9f2879 feat(library/vm/vm_expr): add more functions to 'expr' API 2016-06-06 11:26:19 -07:00
Leonardo de Moura
a55a936db2 feat(library/vm): expose C++ 'expr' object 2016-06-05 21:13:00 -07:00
Leonardo de Moura
792040b1a5 feat(library/init/bool): mark bor, band and cond as inline
The idea is to get short-circuit evaluation for Boolean operators.
2016-06-05 13:03:33 -07:00
Leonardo de Moura
1f8c58415e feat(library/vm): expose C++ 'level' object 2016-06-05 12:55:57 -07:00
Leonardo de Moura
dac2c39646 feat(library/meta/rb_map): add has_to_string and has_to_format type class instances for rb_map 2016-06-03 17:34:49 -07:00
Leonardo de Moura
650a08945c perf(library/meta/rb_map): mark rb_map.mk as inline 2016-06-03 16:11:55 -07:00
Leonardo de Moura
1834cab3f2 feat(library/meta): add has_cmp type class 2016-06-03 14:06:46 -07:00
Leonardo de Moura
9a14f7543c feat(library/vm): expose rb_map object 2016-06-03 13:45:06 -07:00
Leonardo de Moura
eafc78f02d feat(library/meta/name): add extra name functions 2016-06-03 09:36:42 -07:00
Leonardo de Moura
3b57246a62 feat(library/meta/format): add 'pp' helper function 2016-06-02 17:57:29 -07:00
Leonardo de Moura
801a57dba1 feat(library/vm): expose C++ 'format' object 2016-06-02 17:37:27 -07:00
Leonardo de Moura
06cb26176c feat(library/vm): expose C++ options object 2016-06-02 11:46:17 -07:00
Leonardo de Moura
35ed68e3c2 feat(library/meta): add has_to_string instance for 'name' 2016-06-01 19:24:03 -07:00
Leonardo de Moura
6f02d30185 feat(library/vm): add basic support for C++ name objects in the VM
We still need to add support for the recursor
2016-06-01 13:10:24 -07:00
Leonardo de Moura
4ab84f7374 feat(library/init): add unsigned integer 2016-06-01 13:06:28 -07:00
Leonardo de Moura
8bccfc23da feat(library/vm): add example of C function invoking Lean closure 2016-05-31 18:45:14 -07:00
Leonardo de Moura
e89082a97e feat(library/vm,library/init): add builtin timeit primitive for profiling 2016-05-26 12:44:49 -07:00
Leonardo de Moura
29728c0443 feat(library/init/to_string): add fin.has_to_string 2016-05-26 12:02:47 -07:00
Leonardo de Moura
62b8c24c7a feat(library/init/to_string): add decidable.has_to_string 2016-05-26 11:59:54 -07:00
Leonardo de Moura
6eb377033b chore(library/system/IO): suppress unnecessary universe 2016-05-26 11:41:41 -07:00
Leonardo de Moura
f60d088572 feat(library/init): add 'has_to_string' type class 2016-05-26 10:43:26 -07:00
Leonardo de Moura
d96b3e0172 chore(library/data/hlist): make sure we can generate code for hlist.get 2016-05-25 17:53:17 -07:00
Leonardo de Moura
9530f716f9 refactor(library): move list.is_inhabited instance to init folder 2016-05-25 17:26:42 -07:00
Leonardo de Moura
d4a8d14a9c feat(library/init/nat): put nat instances in the top-level 2016-05-25 16:03:21 -07:00
Leonardo de Moura
1bce20c322 feat(library/init): make sure list, char and string decidable_eq instances are defined in the init folder 2016-05-25 15:16:12 -07:00
Leonardo de Moura
2a16b58324 test(tests/lean/run): add another IO test 2016-05-25 14:23:57 -07:00
Leonardo de Moura
6d37c26b5d feat(library/compiler/erase_irrelevant): add support for IO monad.return 2016-05-24 18:28:06 -07:00
Leonardo de Moura
e40c54013a feat(library/vm): add basic support for IO monad 2016-05-24 17:52:22 -07:00
Leonardo de Moura
174fba9dbd feat(frontends/lean): add support for monadic 'do'-notation 2016-05-24 17:18:15 -07:00
Leonardo de Moura
6a9e5079c9 feat(library,frontends/lean/pp): add support for new string encoding 2016-05-24 16:20:43 -07:00
Leonardo de Moura
d22d850b28 refactor(library): redefine string and char 2016-05-24 14:11:24 -07:00
Leonardo de Moura
cf7fcb3f51 feat(library/init): add functor/monad to init folder 2016-05-24 13:06:01 -07:00
Leonardo de Moura
f66494108c chore(library/init/logic): reduce sorry's 2016-05-24 12:45:11 -07:00
Leonardo de Moura
5bc4250c42 chore(library/init/classical): code generation warning 2016-05-23 17:50:01 -07:00
Leonardo de Moura
9dfc5ed787 chore(library/data): make sure we can generate code for the modified functions 2016-05-23 17:50:01 -07:00
Leonardo de Moura
413a0faf99 chore(library/data/nat/bquant): make sure we can generate code for bsub_succ 2016-05-23 17:50:01 -07:00
Leonardo de Moura
e06713b3cd chore(library/init/wf): make sure we can generate code for acc.drec 2016-05-23 17:02:51 -07:00
Leonardo de Moura
af1908be94 feat(frontends/lean/decl_cmds): do not generate warning for definitions that are implemented in the VM 2016-05-13 18:17:20 -07:00
Leonardo de Moura
2e7422fcd6 feat(library/init/logic): mark auxiliary definitions as 'inline' 2016-05-11 10:11:29 -07:00
Leonardo de Moura
a208f9473c refactor(library): reorder and rename decidable constructors
Motivation: make sure the "false" case will have constructor idx 0.
2016-05-10 17:30:22 -07:00
Leonardo de Moura
255fe13929 feat(library/init/logic): make ite and dite as inline 2016-05-07 17:38:37 -07:00
Leonardo de Moura
f05e52e59f fix(library/init/nat): recursor attribute should be in the top-level since nat was defined in the top-level 2016-04-28 16:34:37 -07:00
Leonardo de Moura
54f68226f4 chore(frontends/lean): disable old tactic framework and blast 2016-04-25 16:22:15 -07:00
Leonardo de Moura
d88098f38d chore(frontends/lean): remove some of the tactic support 2016-04-25 15:26:56 -07:00
Leonardo de Moura
de64750621 chore(frontends/lean): disable expressions that use tactic framework 2016-04-25 15:07:26 -07:00
Leonardo de Moura
f573ebd0a4 refactor(library): make sure prod.pr1 is a projection 2016-03-25 16:28:29 -07:00
Leonardo de Moura
384e8bf7bf refactor(library): remove unifier_plugin 2016-03-21 17:57:53 -07:00
Leonardo de Moura
128d6cdec2 refactor(library/tactic): remove tactics whnf and beta 2016-03-21 11:48:36 -07:00
Leonardo de Moura
e7f641ffc4 chore(library): cleanup proofs 2016-03-03 17:37:24 -08:00
Leonardo de Moura
9d0dfb8404 refactor(frontends/lean): remove calc_proof_elaborator 2016-03-03 17:22:45 -08:00