Commit graph

3310 commits

Author SHA1 Message Date
Leonardo de Moura
5a50102e92 fix(tests/lean): test 2016-06-13 15:28:33 -07:00
Leonardo de Moura
9bcb4e05db feat(library/tactic): store tactic_state at failure 2016-06-13 15:25:55 -07:00
Leonardo de Moura
a9cae34a75 fix(library/type_context): unification hints 2016-06-13 14:53:02 -07:00
Leonardo de Moura
6d78d0cc98 feat(frontends/lean/old_elaborator): interface old_elaborator with new tactic framework
The interface is not efficient, but it is sufficient for testing
purposes. We will replace the elaborator with a new one.
2016-06-13 13:59:01 -07:00
Leonardo de Moura
21bf883fa5 feat(library/tactic/tactic_state,library/init/meta): add helper tactics (context, num_goals, repeat, repeat_at_most, repeat_exactly), rename main_type ==> target 2016-06-11 21:15:00 -07:00
Leonardo de Moura
7058a2ccc8 test(tests/lean/run/meta_tac6): add test for 'clear' tactic 2016-06-11 20:31:35 -07:00
Leonardo de Moura
6829c81f18 feat(library/tactic): add 'rename' tactic 2016-06-11 19:18:25 -07:00
Leonardo de Moura
a732e8ec30 feat(library/tactic/tactic_state): add 'unify_core' where user can specify transparency mode 2016-06-11 19:14:23 -07:00
Leonardo de Moura
5245a25f89 feat(library/tactic/tactic_state): add basic tactics for inferring types, unifying terms, etc 2016-06-11 10:51:33 -07:00
Leonardo de Moura
94169fb8d6 test(tests/lean/run): missing tests 2016-06-11 10:25:16 -07:00
Leonardo de Moura
0ef4bea86b chore(tests/lean): disable tests 2016-06-10 18:29:41 -07:00
Leonardo de Moura
4b022fea01 chore(tests/lean): fix/disable tests 2016-06-10 18:29:41 -07:00
Leonardo de Moura
f51868240f chore(tests/lean/run): disable/fix tests 2016-06-10 18:29:41 -07:00
Leonardo de Moura
0a6cc0ab5a feat(library/tactic): assumption tactic 2016-06-10 18:29:41 -07:00
Leonardo de Moura
13bbac8771 feat(library/tactic): intro_tactic and variants 2016-06-10 18:29:41 -07:00
Leonardo de Moura
2df6fb35e6 feat(library/vm): avoid list<A> eager conversion to vm_obj (for A in {name, level, expr}) 2016-06-09 14:16:32 -07:00
Leonardo de Moura
d64a064d32 chore(library/tactic/tactic_state): improve pp_goal 2016-06-09 10:56:58 -07:00
Leonardo de Moura
181e48e3f3 feat(library/tactic/tactic_state): add tactic_state.to_format 2016-06-09 10:47:17 -07:00
Leonardo de Moura
9a63898c51 chore(tests/lean/run): unit.star ==> () 2016-06-09 09:26:36 -07:00
Leonardo de Moura
222f7429e2 feat(frontends/lean/pp): pp unit.star 2016-06-08 17:30:11 -07:00
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
a90926a2d0 feat(library/vm/vm_environment): add rest of environment API 2016-06-07 17:51:04 -07:00
Leonardo de Moura
8f10e18f53 feat(library/vm/vm_environment): expose 'environment.add_inductive' 2016-06-07 17:24:43 -07:00
Leonardo de Moura
b28e724709 feat(library/vm): expose 'environment' C++ object 2016-06-07 17:01:17 -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
9c4017e59e feat(library/meta/base_tactic): add base_tactic 2016-06-06 15:26:14 -07:00
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
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
224203f215 feat(library,frontends/lean/builtin_cmds): store export cmds and replay them
see #603
closes #723
2016-06-03 12:51:12 -07:00
Sebastian Ullrich
9561b45af1 fix(frontends/lean): uniform handling of declaration compound names
* allow compound names in `namespace` and `structure`
* adjust error messages

Conflicts:
	src/frontends/lean/builtin_tactics.cpp
2016-06-02 18:13:50 -07:00
Leonardo de Moura
3b57246a62 feat(library/meta/format): add 'pp' helper function 2016-06-02 17:57:29 -07:00
Sebastian Ullrich
647078bd40 feat(frontends/lean/pp): add option to hide binder types
Replace old pp.hide_binder_types option

Conflicts:
        src/frontends/lean/pp.cpp
        src/library/pp_options.cpp
        src/library/pp_options.h
2016-06-02 12:01:57 -07:00
Leonardo de Moura
06cb26176c feat(library/vm): expose C++ options object 2016-06-02 11:46:17 -07:00
Leonardo de Moura
5382a5a556 feat(frontends/lean): allow unbounded recursion in meta_definitions 2016-06-01 09:55:07 -07:00
Leonardo de Moura
e7b47a504e feat(frontends/lean): add meta_definition and meta_constant commands 2016-06-01 09:12:41 -07:00
Leonardo de Moura
d763ea1abf chore(tests/lean/run/IO3): remove unnecessary 'open' 2016-05-25 16:05:39 -07:00
Leonardo de Moura
4b002e5bf0 test(tests/lean/run): add IO test 2016-05-25 16:04:54 -07:00
Leonardo de Moura
0239860ad6 test(tests/lean/run): add another IO test 2016-05-25 15:47:02 -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
e82cb6393f test(tests/lean/run): add IO test 2016-05-25 13:46:05 -07:00
Leonardo de Moura
bf2d2b9feb fix(library/vm,library/compiler,frontends/lean): IO monad support 2016-05-25 13:30:43 -07:00
Leonardo de Moura
570ae36148 test(tests/lean): add test for new string support 2016-05-24 16:27:12 -07:00