Commit graph

11817 commits

Author SHA1 Message Date
Leonardo de Moura
a85d027c90 chore(library/init/sigma): remove 'sorry' 2016-06-20 09:39:22 -07:00
Leonardo de Moura
32f382991a feat(library/init/meta/tactic): intro returns new free_var 2016-06-20 09:37:06 -07:00
Leonardo de Moura
a2745aa273 perf(library/metavar_util): do nothing if term does not contain assigned metavars 2016-06-20 09:06:04 -07:00
Leonardo de Moura
02904c5b87 feat(library/init/meta): add 'reflexivity', 'symmetry' and 'transitivity' tactics 2016-06-18 20:01:53 -07:00
Leonardo de Moura
05eafa08eb chore(library/tactic/tactic_state): style 2016-06-18 14:55:47 -07:00
Leonardo de Moura
991a461932 feat(library/init/meta): add 'injection' tactic 2016-06-18 14:47:48 -07:00
Leonardo de Moura
90d07a7360 feat(library/tactic/clear_tactic): add 'clear_fv' tactic 2016-06-18 14:43:57 -07:00
Leonardo de Moura
82a604e3f5 fet(library/init/meta/expr): add auxiliary functions for expr 2016-06-18 14:29:11 -07:00
Leonardo de Moura
dc180dcd15 feat(library/tactic/assert_tactic): add 'pose' tactic 2016-06-18 14:28:28 -07:00
Leonardo de Moura
9371aa0e99 refactor(library/data/list/basic): move tail to init 2016-06-18 14:27:57 -07:00
Leonardo de Moura
8065318c40 feat(library/init/meta/constructor_tactic): add 'existsi' tactic 2016-06-18 13:15:43 -07:00
Leonardo de Moura
724d356c42 feat(library/init/meta/tactic): add 'get_arity' 2016-06-18 13:03:21 -07:00
Leonardo de Moura
b546167a64 feat(library/tactic/tactic_state): add tactic mk_fresh_name 2016-06-18 13:02:45 -07:00
Leonardo de Moura
bf5cf18d8d feat(library/init/meta): add 'constructor', 'split', 'left', 'right', 'constructor_idx' tactics 2016-06-18 12:40:21 -07:00
Leonardo de Moura
7089762cd6 refactor(library/data/list): move nth to init 2016-06-18 12:40:00 -07:00
Leonardo de Moura
5021b02043 feat(library/init/meta/tactic,library/tactic/tactic_state): add tactics for setting options 2016-06-18 12:05:58 -07:00
Leonardo de Moura
5846dc1812 feat(library/tactic/tactic_state): add get_assignment and get_univ_assignment 2016-06-18 11:34:00 -07:00
Leonardo de Moura
6a0f11f705 feat(library/tactic/tactic_state,library/init/meta/tactic): add mk_meta_univ, mk_meta_var, mk_const
This commit also changes the semantics of the unify tactic.
It fails if the arguments are not unifiable.
2016-06-18 11:12:51 -07:00
Leonardo de Moura
560048c53f feat(library/init/monad): add and_then notation 2016-06-18 11:04:39 -07:00
Leonardo de Moura
f05e0cfa5a fix(library/tactic/apply_tactic): instantiate metavariables before type class resolution 2016-06-18 10:38:54 -07:00
Leonardo de Moura
9cc3fb90ff chore(library/tactic/apply_tactic): remove trace msg 2016-06-18 10:35:12 -07:00
Leonardo de Moura
00717318f0 feat(library/tactic/apply_tactic): add option to disable type class resolution to apply_core 2016-06-18 10:03:38 -07:00
Leonardo de Moura
735aa4ebfa feat(library/tactic/tactic_state): add 'is_class' and 'apply_instance' tactics 2016-06-18 09:51:02 -07:00
Leonardo de Moura
dc2fbe6bfc refacto(library): move prod inhabited and has_decidable_eq instances to init folder 2016-06-18 09:49:22 -07:00
Leonardo de Moura
66c6d3b87a feat(library/tactic/apply_tactic): add remove_redundant_goals 2016-06-17 20:21:17 -07:00
Leonardo de Moura
61a845c005 feat(library/tactic): add 'apply' tactic 2016-06-17 20:11:52 -07:00
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
6371a8db38 fix(library/tactic/tactic_state): consume solved goals 2016-06-17 15:19:50 -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
eef3debcf5 fix(library/type_context): bug in revert with let-decls 2016-06-17 14:50:01 -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
46cf91c969 chore(frontends/lean): remove 'assert' keyword
In Lean3, `assert` was just an alias for `have`.
2016-06-17 14:20:26 -07:00
Leonardo de Moura
1f49d126ed feat(library/init/meta/tactic): add dsimp 2016-06-17 14:04:11 -07:00
Leonardo de Moura
87a5b88f66 fix(library/type_context): typo 2016-06-17 13:57:50 -07:00
Leonardo de Moura
d0afe0aa99 feat(library/tactic): add 'change' tactic 2016-06-17 13:21:52 -07:00
Leonardo de Moura
73b21b9e48 fix(library): assertion violations 2016-06-17 13:16:17 -07:00
Leonardo de Moura
e53ce1828a fix(library/defeq_simplifier): assertion 2016-06-17 12:30:09 -07:00
Leonardo de Moura
2d6742b091 feat(library/tactic): add tactic.defeq_simp 2016-06-17 11:20:15 -07:00
Leonardo de Moura
f36db4085e feat(library/trace): add helper constructor 2016-06-17 11:17:08 -07:00
Leonardo de Moura
1fb8cc0dfd feat(library/defeq_simplifier): move defeq simplifier to new type_context 2016-06-17 10:51:07 -07:00
Leonardo de Moura
8333500457 refactor(library): move try_eta to util 2016-06-17 10:29:02 -07:00
Leonardo de Moura
f4695c4a1d chore(frontends/lean): remove #defeq_simplify command 2016-06-17 10:16:53 -07:00
Leonardo de Moura
7f810d3db5 chore(tests/lean): fix tests output 2016-06-17 09:56:57 -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