Commit graph

1156 commits

Author SHA1 Message Date
Leonardo de Moura
790980013a feat(library/init/meta): add 'trace_expr' 2016-06-08 17:27:37 -07:00
Leonardo de Moura
dde4a46fe3 feat(library/vm): add 'trace' 2016-06-08 16:32:20 -07:00
Leonardo de Moura
586e9447d1 feat(frontends/lean/builtin_cmds): add command #tactic for testing new tactic framework 2016-06-08 16:19:41 -07:00
Leonardo de Moura
94ef8e3078 chore(library/init/meta/base_tactic): change or_else notation 2016-06-08 15:12:48 -07:00
Leonardo de Moura
cf073f5ed0 feat(library/tactic): add tactic_state 2016-06-08 15:12:22 -07:00
Leonardo de Moura
a90926a2d0 feat(library/vm/vm_environment): add rest of environment API 2016-06-07 17:51:04 -07:00
Leonardo de Moura
b28e724709 feat(library/vm): expose 'environment' C++ object 2016-06-07 17:01:17 -07:00
Leonardo de Moura
376bc8a090 feat(library/vm): expose 'declaration' C++ object 2016-06-07 15:38:48 -07:00
Leonardo de Moura
7ff06e1b2c feat(library/meta): exceptional monad 2016-06-07 15:19:43 -07:00
Leonardo de Moura
36c61bc0fb refactor(library/init): cmp_result => ordering 2016-06-07 10:14:07 -07:00
Leonardo de Moura
36046072a4 chore(library/init/meta/base_tactic): exception takes 'options' 2016-06-07 09:54:50 -07:00
Leonardo de Moura
414bdc1abb refactor(library): move 'meta' to 'init' folder
Motivation: tactic framework should be always available.
2016-06-06 19:08:07 -07:00
Leonardo de Moura
c23f4dcce3 chore(library/init): minimize number of sorry's in the init folder
Motivation: the new tactic framework has more dependencies, and cannot
be used until all dependencies have been defined
2016-06-06 18:56:45 -07:00
Leonardo de Moura
31e066633c chore(library): fix dependencies 2016-06-06 16:43:43 -07:00
Leonardo de Moura
0280281b1c chore(library): remove old tactic definition 2016-06-06 14:11:40 -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
35ed68e3c2 feat(library/meta): add has_to_string instance for 'name' 2016-06-01 19:24:03 -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
f60d088572 feat(library/init): add 'has_to_string' type class 2016-05-26 10:43:26 -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
6d37c26b5d feat(library/compiler/erase_irrelevant): add support for IO monad.return 2016-05-24 18:28:06 -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
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
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
9d0dfb8404 refactor(frontends/lean): remove calc_proof_elaborator 2016-03-03 17:22:45 -08:00
Leonardo de Moura
2c70ca83a8 refactor(frontends/lean/calc): remove '{}' notation for eq.subst in calc mode 2016-03-03 14:18:20 -08:00
Jeremy Avigad
4050892889 refactor(library/*): rename 'compose' to 'comp' 2016-03-02 22:48:05 -05:00
Daniel Selsam
c23528b5d8 feat(library/blast/blast): use defeq_simplifier to normalize 2016-03-01 13:44:33 -08:00
Leonardo de Moura
deb1b3dc79 refactor(library): replace assert-exprs with have-exprs 2016-02-29 11:53:26 -08:00