Leonardo de Moura
69a446c8d1
feat: add field all to DefinitionVal and TheoremVal
...
Remark: we need an update stage0, and the field is not being updated
correctly set yet.
2022-06-23 16:13:26 -07:00
Leonardo de Moura
a802544c90
fix: intro tactic at let-expr
2022-06-22 16:10:33 -07:00
Leonardo de Moura
2a940dd4ae
feat: add Expr.collectFVars, LocalDecl.collectFVars, Pattern.collectFVars, and AltLHS.collectFVars
...
They are all in `MetaM`.
These are helper functions for issue #1237 . We need to "cleanup" the
local context before trying to compile the match-expression.
see issue #1237
2022-06-22 15:53:43 -07:00
Leonardo de Moura
9678be4d81
fix: store discharge depth when caching simp results
...
Closes #1234
2022-06-21 15:35:47 -07:00
Leonardo de Moura
65d24f4e39
fix: typo at LinearExpr.toExpr
...
closes #1236
2022-06-21 14:28:26 -07:00
Leonardo de Moura
e442fbbf54
fix: remove kabstractWithPred
...
The function `kabstractWithPred` was never used, and introduced the
bug exposed by issue #1235 .
fixes #1235
2022-06-20 16:35:18 -07:00
Leonardo de Moura
3228db29dd
chore: use double ticks
2022-06-15 07:17:17 -07:00
Leonardo de Moura
77ae79be46
chore: use let/if in do blocks
2022-06-13 17:10:14 -07:00
Leonardo de Moura
7dbdfa090a
chore: remove debugging leftovers
2022-06-13 16:37:31 -07:00
Leonardo de Moura
d0499ebf4d
fix: fixes #1200
2022-06-08 10:18:05 -07:00
Leonardo de Moura
041827bed5
chore: unused variables
2022-06-07 17:54:10 -07:00
Sebastian Ullrich
f9e2a65f75
chore: further cleanup
...
Co-authored-by: Gabriel Ebner <gebner@gebner.org>
2022-06-07 16:37:45 -07:00
Sebastian Ullrich
8eefbf5227
chore: further clean up refactored code
2022-06-07 16:37:45 -07:00
Sebastian Ullrich
fb2a2b3de2
fix: fixup previous commit
2022-06-07 16:37:45 -07:00
Sebastian Ullrich
ae7b895f7a
refactor: unname some unused variables
2022-06-07 16:37:45 -07:00
Leonardo de Moura
09ddf76029
feat: simp_all now uses dependent hypotheses for simplification
...
However, it does not simplify them.
closes #1194
2022-06-06 18:31:34 -07:00
Leonardo de Moura
5055855637
feat: improve default simp discharge method
...
closes #1193
2022-06-06 17:29:12 -07:00
Leonardo de Moura
3d04899e42
refactor: add unifyEq?
2022-06-06 15:53:40 -07:00
Leonardo de Moura
c9c9b8d835
chore: avoid code duplication
2022-06-06 15:53:40 -07:00
Leonardo de Moura
7dab01be1b
chore: unused eqns
2022-06-06 15:53:40 -07:00
Leonardo de Moura
e24483d6d3
doc: expand isGenDiseq comment
2022-06-06 15:53:40 -07:00
Leonardo de Moura
9d6b67eae2
fix: remove check from Simp.synthesizeArgs
...
Some `simp` dischargers can handle metavariables (e.g,
`assumption`). See new test.
closes #1184
2022-06-03 07:40:30 -07:00
Leonardo de Moura
878ef3a281
feat: improve acyclic tactic
...
closes #1182
2022-06-02 15:25:14 -07:00
Leonardo de Moura
9818de078b
fix: fixes #1168
2022-05-30 07:24:23 -07:00
Leonardo de Moura
3be437cad3
fix: make sure register_simp_attr declares an simp-like attribute parser for user simp attributes
...
closes #1164
2022-05-26 19:49:33 -07:00
Leonardo de Moura
988697b431
fix: fixes #1169
2022-05-26 07:05:32 -07:00
Leonardo de Moura
1d14637680
fix: missing withMVarContext
2022-05-26 06:18:14 -07:00
Leonardo de Moura
2fc23a2a2b
feat: make sure we can use split to synthesize code
2022-05-23 11:55:57 -07:00
Leonardo de Moura
56cd6c1ff5
fix: we should not use implicit targets when creating the key for the CustomEliminator map
2022-05-20 06:55:23 -07:00
Leonardo de Moura
063c77037f
chore: fix typo
2022-05-20 06:44:25 -07:00
Sebastian Ullrich
61c7b8b94c
chore: format string
2022-05-16 15:14:01 +02:00
Leonardo de Moura
e729b32b2b
feat: unfold should fail if it didn't unfold anything
2022-05-09 06:41:17 -07:00
Leonardo de Moura
4875224bd4
feat: unfold tactic tries to reduce match after unfolding
2022-05-09 06:35:40 -07:00
Leonardo de Moura
2c8c20d424
feat: add [eliminator] attribute specifying default recursors/eliminators for the cases and induction tactics
2022-05-07 15:09:42 -07:00
Leonardo de Moura
94b5a9b460
feat: improve split tactic
2022-05-03 17:46:50 -07:00
Leonardo de Moura
c19672e99e
fix: basic support for the new discriminant equality encoding at split
...
TODO: This is a temporary fix. We can do better.
2022-04-29 15:29:39 -07:00
Leonardo de Moura
eac83586c6
chore: remove leftover
2022-04-29 09:10:27 -07:00
Leonardo de Moura
c959c80310
chore: reset local context at correct place
2022-04-29 09:08:44 -07:00
Leonardo de Moura
6bc5433b17
fix: add support for heterogeneous equality at processGenDiseq
2022-04-25 16:56:03 -07:00
Leonardo de Moura
47b379e1bc
feat: dsimp! tactic
2022-04-23 18:41:04 -07:00
Leonardo de Moura
342a26a023
feat: dsimp tactic
2022-04-23 18:05:18 -07:00
Leonardo de Moura
13bcbe91cd
fix: regression reported at issue #1113
...
see issue #1113
2022-04-23 15:39:04 -07:00
Leonardo de Moura
875bf9bf34
fix: apply dsimp at lambda binders
...
This fixes another regression reported at #1113
2022-04-22 13:10:21 -07:00
Leonardo de Moura
c13ed7c0de
fix: regression reported at #1113
...
See #1113
2022-04-22 11:43:58 -07:00
Leonardo de Moura
d1f10a2e71
feat: apply rfl theorems at dsimp
...
closes #1113
2022-04-21 16:26:57 -07:00
Leonardo de Moura
2a0dc1804b
feat: improve isRflProof and isRflTheorem
...
The `Eq.symm` of a `rfl` theorem is a `rfl` theorem, the application
of `rfl` theorem too.
2022-04-21 15:40:38 -07:00
Leonardo de Moura
57c3114875
fix: simpAll and tests
...
We need another `update stage0` to remove workaround at `AC.lean`
2022-04-21 15:00:07 -07:00
Leonardo de Moura
da33347e9d
fix: use defauld reducibility setting at mkImpDepCongrCtx and mkImpCongrCtx
2022-04-21 14:55:29 -07:00
Leonardo de Moura
f891c5724d
feat: track rfl simp theorems
...
See issue #1113
We need update stage0 before closing the issue.
2022-04-21 13:42:04 -07:00
Leonardo de Moura
73076b855c
fix: bug at processGenDiseq
2022-04-20 10:46:05 -07:00