Commit graph

327 commits

Author SHA1 Message Date
Leonardo de Moura
5154f462f8 feat: add reduce conv tactic 2021-09-09 17:47:10 -07:00
Leonardo de Moura
496cc92ae9 feat: add simpMatch helper conv tactic 2021-09-09 17:29:32 -07:00
Leonardo de Moura
5a7badd69a feat: add support for erasing keyed attributes
This commit addresses any issue described at https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Eq.2Endrec.20vs.20Eq.2Erec
2021-09-09 14:28:41 -07:00
Leonardo de Moura
b5b5370181 feat: add delta to conv mode 2021-09-09 13:07:33 -07:00
Leonardo de Moura
4087525cba feat: add delta tactic 2021-09-09 13:07:33 -07:00
Leonardo de Moura
cd75132378 refactor: add withLocation combinator 2021-09-09 13:07:33 -07:00
Leonardo de Moura
12af1480d6 feat: add specialize tactic 2021-09-08 08:00:02 -07:00
Leonardo de Moura
445cc3085f refactor: avoid Name, MVarId, and FVarId confusion 2021-09-07 19:06:50 -07:00
Leonardo de Moura
3714cf16ec refactor: lazy evaluation for <|>
see #617
2021-09-07 17:06:10 -07:00
Leonardo de Moura
029c5b74a2 feat: ignore implicit arguments at congr conv tactic 2021-09-05 09:44:52 -07:00
Leonardo de Moura
d3c487ddbf feat: change lhs and rhs conv tactic semantics
They can now be applied to non binary applications.
2021-09-05 09:29:40 -07:00
Leonardo de Moura
aedc706e7d feat: in modifier at conv tactic
It is just a macro for `pattern`
2021-09-04 18:20:33 -07:00
Leonardo de Moura
41cfef5bc4 feat: add pattern conv tactic 2021-09-04 18:02:46 -07:00
Leonardo de Moura
53a3831fd5 feat: add apply conv macro 2021-09-03 20:23:15 -07:00
Leonardo de Moura
94bc386fb4 feat: remark goals as conv goals at the end of nested tactic block 2021-09-03 19:52:51 -07:00
Leonardo de Moura
de455a9010 chore: add tactic' => ... which preserves the conv goal annotation 2021-09-03 19:41:39 -07:00
Leonardo de Moura
6988560177 feat: apply allGoals (try rfl) at end of conv nested blocks 2021-09-03 19:21:34 -07:00
Leonardo de Moura
e6c9da0fcc feat: add support for implication at congr conv tactic 2021-09-03 18:50:19 -07:00
Leonardo de Moura
69075c775f fix: missing withMainContext 2021-09-03 16:57:24 -07:00
Leonardo de Moura
44e7033c27 feat: add support for forall_congr at conv 2021-09-03 16:57:15 -07:00
Leonardo de Moura
3f70bc543f feat: add simp conv tactic 2021-09-03 12:06:29 -07:00
Leonardo de Moura
8a249bddd2 feat: add try rfl at end of convTarget 2021-09-03 08:14:47 -07:00
Leonardo de Moura
b5b5ef6fdf feat: add funext conv tactic 2021-09-03 08:00:37 -07:00
Leonardo de Moura
95b83ac2c0 feat: add 'conv at .. => ..' support 2021-09-02 19:40:08 -07:00
Leonardo de Moura
7b8ee8f9d8 feat: add 'change' conv tactic 2021-09-02 19:26:25 -07:00
Leonardo de Moura
397774157f feat: nested tactic support in conv mode 2021-09-02 19:12:05 -07:00
Leonardo de Moura
39adda8ffe fix: missing goals 2021-09-02 19:11:52 -07:00
Leonardo de Moura
41ce24e2c6 feat: add done and traceState conv tactics 2021-09-02 18:46:03 -07:00
Leonardo de Moura
33361929b9 feat: add rewrite conv tactic 2021-09-02 18:13:19 -07:00
Leonardo de Moura
4d32f8eb9d feat: add arg conv tactic 2021-09-02 17:43:43 -07:00
Leonardo de Moura
391366ef24 refactor: add annotation for displaying conv state 2021-09-02 15:52:11 -07:00
Leonardo de Moura
4df9983843 feat: lhs and rhs conv tactics 2021-09-02 15:05:51 -07:00
Leonardo de Moura
e3ccc03a45 chore: add nested conv tactics 2021-09-01 18:44:35 -07:00
Leonardo de Moura
7a69c6483d feat: add congr conv tactic 2021-09-01 18:32:21 -07:00
Leonardo de Moura
346e3ac845 feat: add helper methods for conv 2021-09-01 17:43:32 -07:00
Leonardo de Moura
254f82c273 feat: basic infrastructure for conv mode 2021-09-01 17:00:45 -07:00
Leonardo de Moura
b18af2c15c feat: basic support for displaying conv state 2021-09-01 15:34:59 -07:00
Leonardo de Moura
5f762171cc feat: add support for split at 2021-08-31 19:35:07 -07:00
Leonardo de Moura
8fec444e55 feat: add injections tactic 2021-08-31 19:12:06 -07:00
Leonardo de Moura
b500a2053d feat: split tactic for splitting match and if terms 2021-08-30 18:31:20 -07:00
Leonardo de Moura
ad3b0b4a2c feat: nary generalize tactic
This commit also fixes a bug when using multiple targets with the
`induction` and `cases` tactics.
2021-08-30 16:31:39 -07:00
Leonardo de Moura
2012d9dca1 fix: make sure simp only still uses eq_self 2021-08-30 09:50:11 -07:00
Leonardo de Moura
1e5a4729c3 feat: case _ ... => ... as solve next goal 2021-08-29 10:45:38 -07:00
Leonardo de Moura
c897f63dd0 fix: using incorrect local context to process simp arguments 2021-08-26 12:49:12 -07:00
Leonardo de Moura
21a4296ca8 feat: add anyGoals tatic for tutorial 2021-08-26 10:41:06 -07:00
Leonardo de Moura
1ede4843e3 feat: add renameI tactic 2021-08-25 18:50:59 -07:00
Leonardo de Moura
5e4c79964a fix: nasty bug at rename tactic 2021-08-25 15:27:29 -07:00
Leonardo de Moura
6f71cb1047 refactor: add Meta.intros 2021-08-24 17:24:29 -07:00
Leonardo de Moura
5a7044365b feat: add instances Alternative MetaM and Alternative TacticM 2021-08-22 22:29:09 -07:00
Leonardo de Moura
4cfbe6030f feat: add simpLocalDecl 2021-08-17 21:32:32 -07:00