Commit graph

26011 commits

Author SHA1 Message Date
Leonardo de Moura
aba0a479ec fix: intro at split tactic 2021-08-30 20:58:04 -07:00
Leonardo de Moura
0a215ac1d2 feat: store the number of parameters in each match splitter alternative 2021-08-30 20:57:18 -07:00
Leonardo de Moura
941f4a5887 chore: update stage0 2021-08-30 18:32:29 -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
92cf7c987f chore: cleanup 2021-08-30 16:33:05 -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
2a6473641a chore: fix theorem name 2021-08-30 10:10:54 -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
f4c72025ee feat: add calc tactic macro 2021-08-30 09:33:32 -07:00
Leonardo de Moura
ce47000e33 fix: missing whnf at tryLemma? 2021-08-30 08:33:58 -07:00
Leonardo de Moura
79938056ad chore: add isIte and isDIte 2021-08-30 07:08:19 -07:00
Leonardo de Moura
02224548d2 chore: generalize signatures 2021-08-30 07:05:40 -07:00
Leonardo de Moura
34d8ecc066 fix: use show .. from .. to implement calc
Recall that `show .. from ..` ensures that proof has exactly the type
provided by the user.
In the new test, `rw [ih]` without this change because the goal would
be
```
... |- 0 + succ n = succ n
```
2021-08-29 11:33:50 -07:00
Leonardo de Moura
1f37cc7b41 feat: add next x₁ ... xₙ => tac tactic 2021-08-29 10:51:01 -07:00
Leonardo de Moura
3972f011ee chore: update stage0 2021-08-29 10:47:53 -07:00
Leonardo de Moura
1e5a4729c3 feat: case _ ... => ... as solve next goal 2021-08-29 10:45:38 -07:00
Leonardo de Moura
091efbec4f test: simulate split tactic for match 2021-08-29 10:21:52 -07:00
Leonardo de Moura
9d5f211c28 feat: add environment extension for storing match conditional equations and splitter 2021-08-28 14:49:20 -07:00
Leonardo de Moura
acfa2d7e78 doc: start porting reference manual 2021-08-27 19:30:08 -07:00
Leonardo de Moura
e0e3de5c62 feat: allow (decidable) propositions at #eval 2021-08-27 15:06:48 -07:00
Leonardo de Moura
03f095ccab fix: match + OfNat issue
See https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/simp.20match.20question
2021-08-27 11:48:02 -07:00
Leonardo de Moura
152572386b chore: fix comment 2021-08-27 10:43:51 -07:00
Leonardo de Moura
7c68741c65 chore: update stage0 2021-08-27 10:39:05 -07:00
Leonardo de Moura
7864a57580 chore: update stage0 2021-08-27 10:37:17 -07:00
Leonardo de Moura
6713d8777a fix: work duplication bug at specialize.cpp
closes #646
2021-08-27 10:35:27 -07:00
Leonardo de Moura
b205cfaaf2 chore: missing annotations at List.mapTR 2021-08-27 10:17:49 -07:00
Leonardo de Moura
8ba10521e6 feat: add theorem for tutorial 2021-08-26 12:58:02 -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
00193fb953 feat: add theorems for tutorial 2021-08-26 12:13:15 -07:00
Leonardo de Moura
b5a434d8a9 test: for induction q with Quot.ind issue
See
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Induction.20alternative.20name.20when.20using.20Quot.2Eind.3F
2021-08-26 11:15:14 -07:00
Leonardo de Moura
1aa274e5c0 chore: update stage0 2021-08-26 11:13:16 -07:00
Leonardo de Moura
cf49e6fe8f fix: binder name
Binder names are relevant for the `induction` tactic.
2021-08-26 11:11:37 -07:00
Leonardo de Moura
21a4296ca8 feat: add anyGoals tatic for tutorial 2021-08-26 10:41:06 -07:00
Leonardo de Moura
672849e302 feat: improve error message for constant a b c : Nat
see issue  #645
2021-08-26 08:26:33 -07:00
Leonardo de Moura
efa5db197e fix: position information for implicit type 2021-08-26 08:07:16 -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
dfe7d9432d feat: add withoutModifyingStateWithInfoAndMessages 2021-08-25 15:11:45 -07:00
Leonardo de Moura
795ccf6e2b chore: add Trans instances for tutorial 2021-08-25 08:50:51 -07:00
Leonardo de Moura
5003c74191 chore: fix test 2021-08-25 07:00:25 -07:00
Leonardo de Moura
42f1e16f44 chore: fix calc test 2021-08-25 06:59:46 -07:00
Sebastian Ullrich
f9fd0b3de4 feat: calc 2021-08-25 06:57:09 -07:00
Leonardo de Moura
f08b542068 chore: add Nat.add_mul and Nat.mul_add for tutorial 2021-08-25 06:44:12 -07:00
Leonardo de Moura
fb41e0f4e5 chore: update stage0 2021-08-24 20:26:39 -07:00
Leonardo de Moura
2f8d2e8a12 feat: add procedure for solving subgoals generated by mkSplitterProof 2021-08-24 20:23:13 -07:00
Leonardo de Moura
2b9fded6b7 feat: add splitter theorem 2021-08-24 18:37:12 -07:00
Leonardo de Moura
a3ec6a0565 chore: missing instance 2021-08-24 18:12:12 -07:00
Leonardo de Moura
f4ecbd1102 chore: reduce dependencies 2021-08-24 17:38:43 -07:00
Leonardo de Moura
6f71cb1047 refactor: add Meta.intros 2021-08-24 17:24:29 -07:00
Leonardo de Moura
14b65499e6 feat: construct proof template for the auto generated extended elimination principle 2021-08-24 17:13:42 -07:00