Commit graph

2209 commits

Author SHA1 Message Date
Leonardo de Moura
b0efae4823 chore: style 2022-05-30 06:43:46 -07:00
Sebastian Ullrich
ef9976ccda fix: do not discard macro exceptions in expandMacro? 2022-05-30 13:28:42 +02:00
Leonardo de Moura
40fc64480a feat: add tactic subst_vars 2022-05-28 16:19:34 -07:00
Leonardo de Moura
fbd8224b4d fix: allow recursive occurrences in binder types at WF/PackDomain.lean
fixes #1171
2022-05-27 11:23:51 -07:00
Leonardo de Moura
25126cd057 fix: autoParam is structure fields lost in multiple inheritance
closes #1158
2022-05-26 14:35:47 -07:00
Leonardo de Moura
dcb974a1cf chore: remove unused parameter 2022-05-26 14:20:51 -07:00
Leonardo de Moura
fc606f3ab5 fix: closes #1156 2022-05-26 12:51:28 -07:00
Leonardo de Moura
fad21a4cda chore: remove leftovers 2022-05-25 20:38:20 -07:00
Leonardo de Moura
dca8a8ed98 fix: match or-pattern
This issue has been reported at
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Probably.20a.20bug/near/283779934
2022-05-25 20:05:46 -07:00
Leonardo de Moura
bef1cd4872 fix: make structure instance notation (e.g., { a, b }) works in patterns after we define the Set notation in Mathlib 2022-05-25 19:14:22 -07:00
Leonardo de Moura
a26827f58b chore: remove Context.main 2022-05-25 11:58:33 -07:00
Jannis Limperg
6dc5ddac35 fix: apply after-compilation attributes to inductive/structure decls
Attributes with `AttributeApplicationTime.afterCompilation` were
silently not applied to `inductive` and `structure` declarations.
2022-05-25 11:32:08 -07:00
Leonardo de Moura
7c427c1ef2 fix: make sure let-expressions do not affect the structural recursion module
This issue has been reported at https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Termination.20check.20not.20preserved.20under.20let.20binding.2E/near/282934378
2022-05-23 13:42:48 -07:00
Sebastian Ullrich
a2bf2a4abd fix: info at pattern variables 2022-05-17 06:28:59 -07:00
Sebastian Ullrich
46df02877d fix: elab info for decreasing_by 2022-05-16 10:20:49 +02:00
Wojciech Nawrocki
dd6528bceb fix: undo incorrect JSON encoding 2022-05-12 13:22:37 -07:00
Wojciech Nawrocki
7ad1ccab78 feat: use quotation prechecks where possible at FromToJson 2022-05-12 08:38:09 -07:00
Wojciech Nawrocki
9296afca12 chore: undo unnecessary change 2022-05-12 08:38:09 -07:00
Wojciech Nawrocki
460abc4b94 fix: failure in FromToJson 2022-05-12 08:38:09 -07:00
Wojciech Nawrocki
a19c666f2d feat: add helpers 2022-05-12 08:38:09 -07:00
Wojciech Nawrocki
aa2ad384e7 chore: remove old InfoTree ctor 2022-05-12 08:38:09 -07:00
Wojciech Nawrocki
aa5fe5864a doc: document some Deriving utils 2022-05-12 08:38:09 -07:00
Wojciech Nawrocki
4b3c2b1790 doc: document some meta utilities 2022-05-12 08:38:09 -07:00
Leonardo de Moura
a8032e4173 fix: another mut misbehaving example
```
def mutVariableDo2 (list : List Nat) : Nat := Id.run <| do
  let mut sum := 0
  for _ in list do
    sum := sum.add 1  -- first `sum` was not connected, i.e., it was not highlighted when hovering over the second `sum`
  pure sum
```
2022-05-12 08:26:07 -07:00
Leonardo de Moura
362961912b chore: remove unnecessary variable 2022-05-12 06:44:13 -07:00
Leonardo de Moura
f44a701637 chore: style 2022-05-11 15:32:18 -07:00
Leonardo de Moura
94d2a3ef86 feat: improve error message when failing to infer resulting universe level for inductive datatypes and structures 2022-05-10 18:30:53 -07:00
Leonardo de Moura
c935a3ff6a feat: improve error location for universe level errors at inductive command 2022-05-10 12:50:01 -07:00
Leonardo de Moura
f58afaaa43 fix: make sure let _ := val and let _ : type := val are treated at letIdDecl
closes #1114
2022-05-10 06:52:27 -07:00
Sebastian Ullrich
1b51bab4a1 feat: turn on info trees by default 2022-05-10 06:24:31 -07:00
Leonardo de Moura
7ce0471f28 feat: improve binrel% elaborator
It now relies on `binop%` too, and addresses issue reported at
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Regression.20in.20coercion.20inference/near/281737387
2022-05-09 18:39:52 -07:00
Leonardo de Moura
1768067aa0 doc: document elaboration issue
described at
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Regression.20in.20coercion.20inference/near/281737387

TODO: improve `binrel%` elaboration function.
2022-05-09 17:39:24 -07:00
Leonardo de Moura
fc03b2fc31 feat: unfold ident,+ 2022-05-09 07:09:53 -07:00
Leonardo de Moura
995d4f0979 chore: prepare for unfold ident,+ 2022-05-09 07:09:22 -07:00
Sebastian Ullrich
91991649bc fix: connect occurrences of mutable variable inside and outside for in info tree 2022-05-07 15:50:26 -07:00
Sebastian Ullrich
22f8ea147c fix: propagate position information of variables in do blocks 2022-05-07 15:50:26 -07:00
Sebastian Ullrich
2f461d201e fix: info tree of let_delayed 2022-05-07 15:50:26 -07:00
Leonardo de Moura
9043f91d8c fix: if Tactic.Context.recover == false, we must disable "error to sorry" when elaborating terms in tactics
closes #1142
2022-05-07 15:37:12 -07:00
Leonardo de Moura
ab31f9ad5d fix: fixes #1143 2022-05-07 15:27:34 -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
b5bcf252ce chore: cleanup 2022-05-07 14:48:22 -07:00
Leonardo de Moura
af5e13e534 feat: improve binop% elaboration function 2022-05-07 10:32:55 -07:00
Leonardo de Moura
38baeaf373 feat: backtrack when applying default instances if subproblems cannot be solved 2022-05-07 09:56:38 -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
Leonardo de Moura
c65537aea5 feat: Option is a Monad again
TODO: remove `OptionM` after update stage0

see: https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Do.20we.20still.20need.20OptionM.3F/near/279761084
2022-05-04 15:27:42 -07:00
Leonardo de Moura
04d3c6feeb fix: auto implicit behavior on constructors 2022-05-04 15:04:49 -07:00
Leonardo de Moura
a1af8074c9 feat: improve discriminant refinement procedure 2022-05-04 14:46:43 -07:00
Leonardo de Moura
94b5a9b460 feat: improve split tactic 2022-05-03 17:46:50 -07:00
Sebastian Ullrich
e76a2a6d9e chore: normalize spelling 2022-05-03 10:26:11 +02:00
Leonardo de Moura
109363bc7e fix: closes #1132 2022-05-01 08:18:30 -07:00