Leonardo de Moura
|
88b6ad4756
|
feat: add etaStruct to Meta.Simp.Config
|
2021-11-25 11:31:00 -08:00 |
|
Gabriel Ebner
|
f55649f81b
|
fix: prefer simp lemmas with *higher* priority
|
2021-11-22 11:52:45 -08:00 |
|
Leonardo de Moura
|
2a7b33089a
|
fix: transparency settings at simp TC check
fixes #790
|
2021-11-15 18:09:31 -08:00 |
|
Leonardo de Moura
|
83cf5b20a1
|
fix: simpLet
Given `let x := v; b`, `simpLet` was using an incorrect local context to simplify `v`.
|
2021-10-22 16:29:00 -07:00 |
|
Leonardo de Moura
|
b5e640a423
|
fix: avoid getMVarType' at cleanup tactic
`getMVarType'` applies `whnf`
|
2021-10-19 06:43:07 -07:00 |
|
Leonardo de Moura
|
6b2303b243
|
fix: bug at tryLemmaCore when numExtraArgs > 1
Fixes bug reported at
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Simp.20bug.20-.20produces.60application.20type.20mismatch.60/near/257711901
|
2021-10-18 13:59:19 -07:00 |
|
Sebastian Ullrich
|
e068833e8d
|
fix: register missing simp trace classes
|
2021-10-11 15:37:56 +02:00 |
|
Leonardo de Moura
|
91d2f6d4fc
|
feat: add cleanup tactic
|
2021-10-06 19:54:28 -07:00 |
|
Leonardo de Moura
|
59d7b00557
|
feat: add mapping from mvar user name to MVarId
|
2021-10-02 15:26:44 -07:00 |
|
Leonardo de Moura
|
dba358067a
|
chore: remove workaround
|
2021-09-30 22:37:20 -07:00 |
|
Leonardo de Moura
|
3fed9c9df7
|
feat: reject partial when if constant is not a function
fixes #697
|
2021-09-28 21:07:14 -07:00 |
|
Leonardo de Moura
|
f1be1d5bba
|
feat: add simpProj
Simplifier for kernel projections.
|
2021-09-27 19:06:10 -07:00 |
|
Leonardo de Moura
|
2775298fef
|
feat: add applyMatchSplitter
It applies the match splitter without using simplification theorems
|
2021-09-18 16:30:47 -07:00 |
|
Leonardo de Moura
|
6fbb6c7215
|
feat: add delta?
|
2021-09-17 18:46:09 -07:00 |
|
Leonardo de Moura
|
70a4d2691f
|
chore: cleanup
|
2021-09-17 16:00:00 -07:00 |
|
Leonardo de Moura
|
42eba87325
|
feat: add simpMatchTarget
|
2021-09-17 14:20:28 -07:00 |
|
Leonardo de Moura
|
dc32a827b3
|
fix: missing instantiateMVars
|
2021-09-17 14:20:28 -07:00 |
|
Leonardo de Moura
|
35d036b09a
|
chore: cleanup
|
2021-09-14 16:09:56 -07:00 |
|
Leonardo de Moura
|
ea37c64b52
|
feat: add Meta.Rewrite.Config
|
2021-09-12 18:44:08 -07:00 |
|
Leonardo de Moura
|
54d0fc043e
|
feat: preserve Expr.mdata at simp
|
2021-09-11 04:49:36 -07:00 |
|
Leonardo de Moura
|
e667385cf5
|
feat: simpLet when zeta reduction is disabled
|
2021-09-10 19:34:38 -07:00 |
|
Leonardo de Moura
|
0cf2c19fc2
|
fix: condition for selecting split target
Only discriminants must not have loose bound variables
|
2021-09-10 14:56:15 -07:00 |
|
Leonardo de Moura
|
19a710ffc9
|
feat: add getMatchWithExtra and improve tryLemma at simp
|
2021-09-09 19:28:09 -07:00 |
|
Leonardo de Moura
|
87f49be5dd
|
fix: missing withReducible
|
2021-09-09 18:31:10 -07:00 |
|
Leonardo de Moura
|
496cc92ae9
|
feat: add simpMatch helper conv tactic
|
2021-09-09 17:29:32 -07:00 |
|
Leonardo de Moura
|
09eecc5c08
|
fix: simp was not applying rewrites to the function application prefixes
|
2021-09-09 17:07:14 -07:00 |
|
Leonardo de Moura
|
3c49969832
|
feat: add replaceLocalDeclDefEq
|
2021-09-09 13:07:33 -07:00 |
|
Leonardo de Moura
|
9b0dfc4b90
|
feat: convert "orphan" kernel nat literals n into ofNat n
|
2021-09-08 14:58:13 -07:00 |
|
Leonardo de Moura
|
445cc3085f
|
refactor: avoid Name, MVarId, and FVarId confusion
|
2021-09-07 19:06:50 -07:00 |
|
Leonardo de Moura
|
7a69c6483d
|
feat: add congr conv tactic
|
2021-09-01 18:32:21 -07:00 |
|
Leonardo de Moura
|
5f762171cc
|
feat: add support for split at
|
2021-08-31 19:35:07 -07:00 |
|
Leonardo de Moura
|
6db4b53c40
|
fix: missing flag
|
2021-08-31 19:29:09 -07:00 |
|
Leonardo de Moura
|
8fec444e55
|
feat: add injections tactic
|
2021-08-31 19:12:06 -07:00 |
|
Leonardo de Moura
|
c7d797f5b6
|
feat: add simpMatch and use it at splitMatch
|
2021-08-31 12:53:41 -07:00 |
|
Leonardo de Moura
|
6d4422e5ac
|
refactor: add Simp.tryLemma?
|
2021-08-31 12:32:34 -07:00 |
|
Leonardo de Moura
|
aba0a479ec
|
fix: intro at split tactic
|
2021-08-30 20:58:04 -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
|
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
|
6f71cb1047
|
refactor: add Meta.intros
|
2021-08-24 17:24:29 -07:00 |
|
Leonardo de Moura
|
48e6188e89
|
feat: use exfalso at ElimEmptyInductive
|
2021-08-22 18:16:14 -07:00 |
|
Leonardo de Moura
|
e5c380fd4f
|
feat: add exfalso
|
2021-08-22 18:14:49 -07:00 |
|
Leonardo de Moura
|
ec20725cfb
|
feat: use searchFuel instead of searchDepth at contradiction
|
2021-08-22 17:41:12 -07:00 |
|
Leonardo de Moura
|
37f2f7d472
|
fix: bug at processGenDiseq
We should not assign metavar from outer depth inside `withNewMCtxDepth`
|
2021-08-19 19:33:26 -07:00 |
|
Leonardo de Moura
|
bffefa61bd
|
feat: extend contradiction for MatchEqs.lean
|
2021-08-19 12:52:50 -07:00 |
|
Leonardo de Moura
|
7b881b6020
|
chore: add Contradiction.Config
|
2021-08-19 11:43:12 -07:00 |
|
Leonardo de Moura
|
015df19808
|
feat: add trySubst
|
2021-08-19 07:08:02 -07:00 |
|
Leonardo de Moura
|
45d3b85d5a
|
refactor: cleanup MatchEqs and simplify SplitIf
|
2021-08-18 18:34:34 -07:00 |
|
Leonardo de Moura
|
158636b8c0
|
feat: add spliIfGoal
TODO: remove unnecessary complexity, `MatchEqs` doesn't need all this
complexity, and we should not recurse here.
|
2021-08-17 21:32:32 -07:00 |
|