Commit graph

1149 commits

Author SHA1 Message Date
E.W.Ayers
ece1c1085c feat: add Expr lensing functions using SubExpr.Pos 2022-06-17 17:47:51 -07:00
Leonardo de Moura
bbc196eeb7 fix: make sure WF/Fix.lean tolerates MatcherApp.addArg? failures
see #1228
2022-06-17 17:37:33 -07:00
Leonardo de Moura
3228db29dd chore: use double ticks 2022-06-15 07:17:17 -07:00
Leonardo de Moura
f6d1e48cb8 fix: constant => opaque issues 2022-06-14 17:19:54 -07:00
Leonardo de Moura
02c4e548df feat: replace constant with opaque 2022-06-14 17:02:59 -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
E.W.Ayers
4165b7e8ba doc: ToHide.collect 2022-06-13 16:32:01 -07:00
Leonardo de Moura
fb574af873 fix: mkSplitterProof
This commit fixes the first issue reported at #1179

closes #1179
2022-06-12 19:38:54 -07:00
Leonardo de Moura
09d1530d8e feat: detect unexpected occurrences of match-expression minor premises
The error message is far from perfect, but it is better than ignoring
the issue and failing later with an even more incomprehensible error
message.

see #1179
2022-06-12 12:07:42 -07:00
Leonardo de Moura
17db981880 fix: equation theorem for match with more than one "as" pattern
see #1195
see #1179
2022-06-10 18:23:13 -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
2832442e7a fix: unfold declarations tagged with [matchPattern] at reduceMatcher? even if transparency setting is not the default one
see #1193

It fixes one of the issues exposed at the issue above.
2022-06-06 15:53:40 -07:00
Leonardo de Moura
e24483d6d3 doc: expand isGenDiseq comment 2022-06-06 15:53:40 -07:00
Wojciech Nawrocki
5b13a4909b
doc: fix transform docstring 2022-06-06 23:06:47 +02:00
Leonardo de Moura
22281f25c8 fix: typo at sameHeadSymbol
see #1190
2022-06-06 07:46:57 -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
32db316166 fix: enumeration type noConfusion was not registered
This commit fixes issue reported at
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/.28kernel.29.20function.20expected.20.2EnoConfusion/near/284634050
2022-06-01 17:58:46 -07:00
Leonardo de Moura
704242f865 feat: zetaReduce should expand nested let-expressions too 2022-05-31 07:01:52 -07:00
Leonardo de Moura
d8aab852e8 feat: add usedLetOnly parameter to Meta.transform 2022-05-31 07:00:53 -07:00
Leonardo de Moura
e997cd94c6 chore: style 2022-05-31 06:04:48 -07:00
Leonardo de Moura
9818de078b fix: fixes #1168 2022-05-30 07:24:23 -07:00
Leonardo de Moura
fb45eb4964 fix: universe polymorphic enumeration types
Fixes issue reported at https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Incorrect.20number.20of.20universe.20levels.20parameters/near/284283021
2022-05-30 06:43:46 -07:00
Leonardo de Moura
2c5bafcbd8 fix: dead variables at match equation hypotheses
This commit addresses an issue reported at https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Structural.20Recursion.20Problem/near/284238723
2022-05-28 16:09:35 -07:00
Leonardo de Moura
e26f86dd45 fix: improve simpH?, remove unnecessary hypotheses 2022-05-28 15:30:01 -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
fad21a4cda chore: remove leftovers 2022-05-25 20:38:20 -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
Sebastian Ullrich
ff6537be1b fix: use consistent goal prefix everywhere 2022-05-09 17:49:00 +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
3cd46888bf fix: check types using default reducibility at synthInstance?
closes #1131
2022-05-08 06:49:14 -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
8c23bef399 feat: add support for casesOn applications to structural and well-founded recursion modules 2022-05-06 17:12:10 -07:00