Commit graph

2692 commits

Author SHA1 Message Date
Leonardo de Moura
154f02ca32 feat(library/init/meta/contradiction_tactic): add 'exfalso' tactic 2016-06-17 17:35:53 -07:00
Leonardo de Moura
ded1fe74c5 refactor(library/init/meta/tactic): implement num_goals in Lean 2016-06-17 16:18:15 -07:00
Leonardo de Moura
ee888e9872 feat(library/init/meta/tactic): add 'now' tactic 2016-06-17 16:15:32 -07:00
Leonardo de Moura
b21a3376e0 feat(library/init/meta/tactic): add 'focus' and 'all_goals' tacticals 2016-06-17 16:11:40 -07:00
Leonardo de Moura
514c09d7b8 chore(library/data/nat/div): move instances to top-level 2016-06-17 15:36:33 -07:00
Leonardo de Moura
0b2ed21561 feat(library/init/meta/tactic): add rotate_left and rotate_right tactics 2016-06-17 15:11:08 -07:00
Leonardo de Moura
c5f92f08b8 feat(library/tactic): add 'assert' tactic
Remark: the new assert tactic does have the problem described in issue #621
2016-06-17 14:42:28 -07:00
Leonardo de Moura
1f49d126ed feat(library/init/meta/tactic): add dsimp 2016-06-17 14:04:11 -07:00
Leonardo de Moura
d0afe0aa99 feat(library/tactic): add 'change' tactic 2016-06-17 13:21:52 -07:00
Leonardo de Moura
2d6742b091 feat(library/tactic): add tactic.defeq_simp 2016-06-17 11:20:15 -07:00
Leonardo de Moura
c8c43a866b feat(library/tactic): implement assumption tactic in Lean 2016-06-17 09:06:35 -07:00
Leonardo de Moura
b24795b2b1 feat(library/init/meta/expr): mark expr.app as a coercion 2016-06-17 08:50:06 -07:00
Leonardo de Moura
27085c3d16 feat(library/tactic/tactic_state): add tactic.mk_instance 2016-06-17 08:39:18 -07:00
Leonardo de Moura
84e33f6ae2 feat(library/init/meta/contradiction_tactic): improve contradiction tactic 2016-06-16 18:32:08 -07:00
Leonardo de Moura
469066bd00 feat(library/init/meta/contradiction_tactic): use whnf to be able to handle (a + 1 = 0) 2016-06-16 18:24:19 -07:00
Leonardo de Moura
301f3f93aa feat(library/init/meta): add contradiction tactic 2016-06-16 18:17:14 -07:00
Leonardo de Moura
67aa755a94 feat(library/init/meta): add helper functions 2016-06-16 18:16:35 -07:00
Leonardo de Moura
7e15b114e6 refactor(library/init/list): move list notation to the top-level 2016-06-16 18:15:43 -07:00
Leonardo de Moura
586baa4118 feat(library,frontends/lean): support for quoted expressions in the VM, compiler and frontend
TODO: invoke elaborator at tactic.to_expr
2016-06-15 16:06:39 -07:00
Leonardo de Moura
5b8ac6ba30 feat(library/tactic): add 'exact' tactic 2016-06-14 21:30:58 -07:00
Leonardo de Moura
c5ec35ac65 chore(library/init/meta/name): change notation for mk_str_name 2016-06-14 21:09:24 -07:00
Leonardo de Moura
cb9b5650b7 feat(library/tactic): add 'subst' tactic 2016-06-14 21:01:57 -07:00
Leonardo de Moura
50b6f9517a feat(library/tactic/app_builder_tactics): add tactic.mk_mapp 2016-06-14 17:33:32 -07:00
Leonardo de Moura
9fad884dd8 feat(library/tactic): add tactic.mk_app for using app_builder 2016-06-14 17:13:10 -07:00
Leonardo de Moura
48fa99163a feat(init): add <$>, <*> and >>= notation 2016-06-14 16:07:37 -07:00
Leonardo de Moura
23cd318b1e feat(library/data/option): add monad instance 2016-06-14 15:56:03 -07:00
Leonardo de Moura
a16e3343a0 chore(library,frontends/lean): disable modules that need to be refactored 2016-06-14 10:02:11 -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
906bb45a44 feat(library/tactic/tactic_state): add format_result tactic 2016-06-13 12:46:41 -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
125a80ad69 feat(library/tactic): add 'clear' tactic 2016-06-11 20:23:24 -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
62116f5b4b feat(library/tactic): add 'revert' tactic 2016-06-11 10:12:43 -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
5e2dc4e28b fix(library/init): add missing file 2016-06-09 14:39:56 -07:00
Leonardo de Moura
4cbcb34817 feat(library/init): add combinators SKI 2016-06-09 14:39:20 -07:00
Leonardo de Moura
876793c21e feat(library/init/meta): add 'inhabited' instances 2016-06-09 13:19:49 -07:00
Leonardo de Moura
831a887bdb feat(library/init/meta/format): add trace_fmt 2016-06-09 10:51:49 -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
c2c4593648 chore(library): unit.star ==> () 2016-06-08 17:31:44 -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
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