Leonardo de Moura
1f37cc7b41
feat: add next x₁ ... xₙ => tac tactic
2021-08-29 10:51:01 -07:00
Leonardo de Moura
1e5a4729c3
feat: case _ ... => ... as solve next goal
2021-08-29 10:45:38 -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
00193fb953
feat: add theorems for tutorial
2021-08-26 12:13:15 -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
795ccf6e2b
chore: add Trans instances for tutorial
2021-08-25 08:50:51 -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
63b11368ca
chore: add Or.elim for tutorial
2021-08-24 14:11:18 -07:00
Leonardo de Moura
82eb1b3558
chore: add Or.intro_left and Or.intro_right
...
for porting manuals
2021-08-24 14:06:29 -07:00
Wojciech Nawrocki
e3d866bc03
feat: initial TraceExplorer
...
Motivation: trace messages from systems such as instance synthesis or defeq checks can be massive and it is hard to find the relevant info within. We provide an interactive TraceExplorer component to do this.
2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
7babcc2425
fix: tail-recursion in Format pretty-printer
2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
77365abc8b
chore: Repr Syntax and minor cleanup
2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
bc8027cdc6
perf: speed up String.intercalate
2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
528283bc7d
feat: MonadPrettyFormat
2021-08-24 08:57:41 -07:00
Leonardo de Moura
4dccaa963b
feat: add List.mapTR and csimp lemma
2021-08-22 09:32:19 -07:00
Leonardo de Moura
ec6af1ba26
feat: use simple List.append definition and add csimp theorem
2021-08-21 16:11:54 -07:00
Leonardo de Moura
3b240d9a14
feat: use simple List.length definition and add csimp theorem
2021-08-21 13:11:06 -07:00
Leonardo de Moura
7066619123
refactor: define Nat.le using inductive type
2021-08-20 19:39:45 -07:00
Leonardo de Moura
33a0da8c6f
chore: remove simp annotation from PUnit.eq_punit
...
closes #635
2021-08-19 11:22:13 -07:00
Leonardo de Moura
107712f8be
feat: add instance from CoeSort to CoeTail
2021-08-18 20:24:43 -07:00
Leonardo de Moura
8d90872d28
chore: add not_not_intro
2021-08-17 21:32:32 -07:00
Leonardo de Moura
7c5ab8b4c9
chore: prepare to add <- as simp argument
2021-08-14 06:59:55 -07:00
Leonardo de Moura
25344453c0
feat: add simpStar parser
2021-08-14 06:29:26 -07:00
Leonardo de Moura
a15a36b8d3
chore: cleanup Subarray instances
2021-08-13 19:29:09 -07:00
Leonardo de Moura
4b58c4cc02
refactor: instances that "hide" coercions
...
Example:
```
instance [CoeHTCT α β] [Add β] : HAdd α β β where
hAdd a b := Add.add a b
```
2021-08-13 17:18:55 -07:00
Leonardo de Moura
ef46b0145b
chore: use binop% to define the notations >> and <|>
...
Motivation: we want to delete the instances
```
instance [CoeHTCT α β] [OrElse β] : HOrElse α β β where
hOrElse a b := OrElse.orElse a b
instance [CoeHTCT α β] [OrElse β] : HOrElse β α β where
hOrElse a b := OrElse.orElse a b
instance [CoeHTCT α β] [AndThen β] : HAndThen α β β where
hAndThen a b := AndThen.andThen a b
instance [CoeHTCT α β] [AndThen β] : HAndThen β α β where
hAndThen a b := AndThen.andThen a b
```
after we update stage0
2021-08-13 17:13:01 -07:00
Leonardo de Moura
b012050917
chore: remove some macros that use binop%
...
For example, given `i : Int` and `n : Nat`, we don't want to coerce `n`
into a `Int` in the term `i ^ n`.
2021-08-13 17:00:59 -07:00
Leonardo de Moura
be23709737
chore: use binop% to define ++ notation
2021-08-13 16:26:35 -07:00
Leonardo de Moura
24fe2875c6
chore: change Pow class
...
Based on the suggestion at https://github.com/leanprover/lean4/issues/433
2021-08-12 13:59:55 -07:00
Sebastian Ullrich
6c220423ed
chore: adjust stx precedences
2021-08-12 07:48:42 -07:00
Daniel Selsam
040141f137
feat: unexpander for Subtype
2021-08-12 09:32:33 +02:00
Leonardo de Moura
f4433f3147
feat: add Alternative (StateRefT' ω σ m)
2021-08-10 14:27:05 -07:00
François G. Dorais
358a129d78
fix: protect rfl
2021-08-07 13:25:54 -07:00
Leonardo de Moura
9cc94296e5
chore: remove staging workaround theorems
2021-08-07 12:52:31 -07:00
Leonardo de Moura
a821dcbff2
chore: enforce naming convention for theorems
...
see issue #402
fix: `ElabTerm.lean`
2021-08-07 12:48:38 -07:00
Leonardo de Moura
8a84532760
feat: add PEmpty
...
closes #537
2021-08-06 19:18:22 -07:00
Leonardo de Moura
a230fe2d06
fix: forallMetaTelescope issue
...
This commit incorporates the fix at PR #612 , and clean up
`Meta/Basic.lean` using Lean 4 features.
2021-08-06 09:47:10 -07:00
Leonardo de Moura
4dbb3e6db1
fix: add workaround to prevent code explosion at deriving for FromJson
...
fixes #569
2021-08-05 06:58:07 -07:00
Daniel Selsam
0036111db9
feat: pp.analyze original mvars are not unknown
2021-08-03 09:13:18 +02:00
Daniel Selsam
db4d33487a
fix: unexpanders can't specify exact names
2021-08-03 09:13:18 +02:00
Daniel Selsam
9744b51c1b
fix: unexpand pairs
2021-08-03 09:13:18 +02:00
Daniel Selsam
b3bb82ee7e
feat: turn more delaborators into unexpanders
2021-08-03 09:13:18 +02:00
Daniel Selsam
89364b802b
feat: top-down heuristic delaboration
2021-08-03 09:13:18 +02:00
Leonardo de Moura
ea37a29e4c
chore: remove TODO
2021-08-02 20:25:29 -07:00
Leonardo de Moura
cfb7e27b87
fix: isStructure vs isStructureLike
2021-08-02 18:54:19 -07:00
Wojciech Nawrocki
f1b4d9a193
chore: restore non-generic Format
...
Motivation: it is unclear whether this is the best solution for embedding objects in pretty-printer outputs.
2021-08-01 09:58:44 +02:00
Wojciech Nawrocki
b022a7c1d2
style: indent
2021-08-01 09:58:44 +02:00