Leonardo de Moura
|
07bd5ae2b8
|
chore: remove dead code
|
2021-09-18 07:36:14 -07:00 |
|
Leonardo de Moura
|
d413aa1dc5
|
feat: generate proofs for structural (conditional) equality theorems
|
2021-09-17 18:57:39 -07:00 |
|
Leonardo de Moura
|
1a0badac06
|
feat: generate conditional structural equation theorem types
TODO: proofs
|
2021-09-17 16:49:30 -07:00 |
|
Leonardo de Moura
|
6ffb3f91f0
|
feat: save information for generating structural equation theorems later
|
2021-09-17 14:20:28 -07:00 |
|
Leonardo de Moura
|
94ede53940
|
chore: use doc string
|
2021-09-17 14:20:28 -07:00 |
|
Leonardo de Moura
|
d378df47d7
|
fix: fixes #633
|
2021-09-16 14:11:34 -07:00 |
|
Leonardo de Moura
|
0a898965a3
|
chore: use snake_case for user-facing tactic names
|
2021-09-16 10:23:12 -07:00 |
|
Leonardo de Moura
|
c2a5e37c60
|
feat: simp discharger
|
2021-09-16 10:11:27 -07:00 |
|
Leonardo de Moura
|
fd8fb3cf9e
|
chore: prepare to change simp syntax
|
2021-09-16 07:41:04 -07:00 |
|
Leonardo de Moura
|
deea3996be
|
fix: allow renameI to rename shadowed names
|
2021-09-13 06:43:34 -07:00 |
|
Leonardo de Moura
|
bfa1c86b24
|
feat: add optional config parser to rewrite tactics
|
2021-09-12 19:05:15 -07:00 |
|
Leonardo de Moura
|
ea37c64b52
|
feat: add Meta.Rewrite.Config
|
2021-09-12 18:44:08 -07:00 |
|
Leonardo de Moura
|
f43ab76641
|
feat: doc string for syntax abbreviations
|
2021-09-12 18:26:36 -07:00 |
|
Leonardo de Moura
|
8c82302aca
|
refactor: add config syntax and macro for boilerplate code
|
2021-09-12 18:09:19 -07:00 |
|
Leonardo de Moura
|
bbe6d37109
|
fix: specialize
|
2021-09-11 19:52:51 -07:00 |
|
Leonardo de Moura
|
de05b0a038
|
chore: add Eqns.lean entry point
|
2021-09-11 13:12:09 -07:00 |
|
Leonardo de Moura
|
1fd3cfb19f
|
feat: pretty print let_fun
|
2021-09-11 05:15:11 -07:00 |
|
Leonardo de Moura
|
f26c905130
|
refactor: split Structural.lean into smaller files
|
2021-09-11 03:40:51 -07:00 |
|
Leonardo de Moura
|
964095ba6e
|
chore: clean up before refactoring
|
2021-09-11 02:58:55 -07:00 |
|
Leonardo de Moura
|
c06ae66c53
|
feat: add withScope
|
2021-09-10 19:20:25 -07:00 |
|
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
|
474395aae4
|
perf: use binary search
|
2021-09-08 16:54:54 -07:00 |
|
Leonardo de Moura
|
193d4dc9f5
|
feat: optimized deriving DecidableEq for enumeration types
The proof term is liner on the number of constructors, but type
checking is not linear because the reduction engine in the kernel is
not efficient.
|
2021-09-08 16:21:32 -07:00 |
|
Christian Pehle
|
bd02f16b43
|
feat: optimized ``deriving BEq`` for enumeration types
|
2021-09-08 14:57:21 -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
|
55f01fb6e1
|
feat: elaborate binop_lazy%
|
2021-09-07 13:30:09 -07:00 |
|
Leonardo de Moura
|
5a862a06c6
|
chore: remove leftover
|
2021-09-07 12:57:27 -07:00 |
|
Leonardo de Moura
|
f46eedac84
|
fix: fixes #655
|
2021-09-07 12:17:28 -07:00 |
|
Leonardo de Moura
|
d43a1c7d9a
|
chore: move Constructions to Meta
|
2021-09-06 10:51:11 -07:00 |
|
Leonardo de Moura
|
a8044eb252
|
feat: improve Match module for patterns containing Fin and UInt literals
|
2021-09-05 20:43:40 -07:00 |
|
Leonardo de Moura
|
c3bb948009
|
feat: ignore nested proofs in patterns
|
2021-09-05 15:46:03 -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 |
|