Commit graph

4455 commits

Author SHA1 Message Date
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
0b92195ec8 feat: refine auto bound implicit feature 2022-04-21 10:17:15 -07:00
Leonardo de Moura
4727fd6883 feat: do not hightlight auxiliary declarations used to compile recursive definitions as variables
They are "morally" constants.
2022-04-21 08:11:22 -07:00
Leonardo de Moura
73076b855c fix: bug at processGenDiseq 2022-04-20 10:46:05 -07:00
Leonardo de Moura
4a18679c92 chore: include problematic match auxiliary declaration name in the error message 2022-04-20 10:46:05 -07:00
Sebastian Ullrich
b6446902c2 feat: server.stderrAsMessages option
/cc @leodemoura
2022-04-19 22:29:26 +02:00
Leonardo de Moura
597313135a fix: index out of bounds at computeFixedIndexBitMask
closes #1112
2022-04-19 05:21:43 -07:00
Leonardo de Moura
4848ad4869 feat: implement autoUnfold at simp
Right now, it only supports the following kind of definitions
- Recursive definitions that support smart unfolding.
- Non-recursive definitions where the body is a match-expression. This
kind of definition is only unfolded if the match can be reduced.
2022-04-18 16:51:52 -07:00
Leonardo de Moura
bb2df569bc fix: bug at declare_config_elab 2022-04-18 14:56:22 -07:00
Leonardo de Moura
e6aee1e463 feat: make sure cases and induction alternatives are processed using the order provided by the user
Motivation: improve the effectiveness of the `save` and `checkpoint` tactics.
2022-04-18 11:45:36 -07:00
Leonardo de Moura
822375aaff chore: ensure _ alternative is the last one in the cases and induction tactics 2022-04-18 11:18:03 -07:00
Leonardo de Moura
5599cefe2e feat: add sleep tactic for debugging purposes 2022-04-18 09:53:45 -07:00
Leonardo de Moura
d9f007e4dd fix: tactic cache corruption 2022-04-17 15:52:21 -07:00
Leonardo de Moura
d4183cf646 feat: add option tactic.dbg_cache 2022-04-17 13:47:28 -07:00
Leonardo de Moura
4a303ec214 feat: include tactic position in the cache key 2022-04-17 13:47:12 -07:00
Leonardo de Moura
deab1ebc56 feat: add save tactic
It is a more convenient way of creating checkpoints.
2022-04-17 08:46:08 -07:00
Leonardo de Moura
fa16a96692 chore: avoid nested noImplicitLambda annotations 2022-04-17 08:09:10 -07:00
Leonardo de Moura
726b735c6d fix: using invalid name generator at ContextInfo.runMetaM
Already used `MVarId`s were being "reused" potentially creating cyclic
metavar assignment. See issue #1031 for an example.

closes #1031
2022-04-15 18:42:34 -07:00
Leonardo de Moura
7995cb071f chore: add assertions to make sure TagDeclarationExtension and MapDeclarationExtension are not being misused
see #1111
2022-04-15 13:49:35 -07:00
Sebastian Ullrich
7797fa3e2d fix: fun (x ...) ... should not be treated as a pattern 2022-04-15 10:00:26 -07:00
Leonardo de Moura
a57403be6e feat: add hasCSimpAttribute 2022-04-15 09:44:50 -07:00
Ed Ayers
d8e2d58da7 doc: InfoTree code review
Co-authored-by: Wojciech Nawrocki <wjnawrocki+gh@protonmail.com>
2022-04-15 09:07:35 -07:00
E.W.Ayers
7d128c17dc doc: #1107 review 2022-04-15 09:04:28 -07:00
E.W.Ayers
9598e39c82 doc: InfoTree docstrings 2022-04-15 09:04:26 -07:00
E.W.Ayers
06e8cf5200 fix: allow non-leaf custom info
At the moment InfoTree has a constructor ofJson but this means that
you can't have a non-leaf ofJson. It would be better to have `ofJson` be a constructor of `Info`.
This is what this PR does.
2022-04-15 08:53:34 -07:00
Sebastian Ullrich
f98b6a3bb1 fix: fall-out from syntax kind lookup change 2022-04-15 08:50:46 -07:00
Sebastian Ullrich
a2baf2cb96 refactor: split term/command quotations 2022-04-15 08:50:46 -07:00
Sebastian Ullrich
e1fbc04c3b chore: accept unregistered syntax kinds in stage 1 2022-04-15 08:50:46 -07:00
E.W.Ayers
712967c6f6 refactor: registerRpcProcedure 2022-04-13 13:23:04 -07:00
Wojciech Nawrocki
d649fc9159 fix: RPC error message 2022-04-13 13:23:04 -07:00
Wojciech Nawrocki
367b0fc80f doc: note persistent exts are sometimes needed 2022-04-13 13:23:04 -07:00
E.W.Ayers
30dfabb2c7 fix: userRpcProcedures uses a persistent env ext 2022-04-13 13:23:04 -07:00
Leonardo de Moura
8d2d0b3fbe chore: remove {} from structure command 2022-04-13 10:19:00 -07:00
Leonardo de Moura
efb859013e chore: ignore {} annotations at mk_projections 2022-04-13 10:16:41 -07:00
Leonardo de Moura
bd35e8a2be chore: remove {} from ctor parser 2022-04-13 08:47:21 -07:00
Leonardo de Moura
dbf5366704 feat: ignore {} annotation at constructors 2022-04-13 08:30:21 -07:00
Leonardo de Moura
2ec8385767 fix: isDomainDefEq 2022-04-13 07:54:47 -07:00
Leonardo de Moura
600769811e fix: bug at fixedIndicesToParams 2022-04-13 07:33:32 -07:00
Leonardo de Moura
3bdb385c19 fix: make sure "eta for structures" in the elaborator uses projection functions if available 2022-04-11 19:23:10 -07:00
Leonardo de Moura
1add9b814b chore: style 2022-04-11 18:48:09 -07:00
Leonardo de Moura
3de607193f fix: withoutModifyingStateWithInfoAndMessagesImpl
Make sure it does not produced a corrupted `InfoTree`.
2022-04-11 16:57:55 -07:00
Leonardo de Moura
9f8dd99ccd fix: macro declare_config_elab was corrupting the info tree 2022-04-11 16:49:56 -07:00
Leonardo de Moura
e49179c807 fix: simp at local declaration should not create an auxiliary declaration when result is definitionally equal 2022-04-11 07:54:15 -07:00
Leonardo de Moura
fb64a4ccc0 fix: unfold should not create an auxiliary declaration when result is definitionally equal
This commit fixes an issue reported on Zulip
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Unfolding.20the.20type.20of.20a.20variable.20creates.20a.20new.20variable
2022-04-11 07:54:15 -07:00
larsk21
7cf4642d1b fix: apply workspace symbol limit after sorting by score 2022-04-11 16:08:55 +02:00
larsk21
235b6d8f69 fix: remove unnecessary fuzzy scoring rule 2022-04-11 16:08:55 +02:00
Leonardo de Moura
c2c2783f32 feat: improve dot name resolution by lazily unfolding resulting type
See new test to understand issue being fixed by this commit.
2022-04-10 14:37:27 -07:00
Leonardo de Moura
e4304ea1de fix: always save completion info at resolveName
See new test.
2022-04-10 08:00:03 -07:00