Leonardo de Moura
40129203b2
chore: update RELEASES.md
2022-04-17 13:55:46 -07:00
Leonardo de Moura
f875c2d107
chore: update release notes
2022-04-13 10:33:25 -07:00
Leonardo de Moura
3d9439f3c9
chore: missing annotation
2022-04-13 09:03:58 -07:00
Leonardo de Moura
9126d33dda
doc: update release notes
2022-04-13 09:01:55 -07:00
Leonardo de Moura
8b53cc8dbb
chore: update RELEASES.md
2022-04-09 15:39:40 -07:00
Sebastian Ullrich
4aed79a13e
feat: less strict, hopefully more helpful syntax ident matching semantics
2022-04-08 15:53:58 +02:00
Sebastian Ullrich
24697026e8
feat: always accept antiquotations, simplify quotDepth code
2022-04-06 19:43:07 +02:00
Leonardo de Moura
5470100830
feat: better binder names at reorderCtorArgs
2022-04-03 10:03:47 -07:00
Leonardo de Moura
3ee8ceafb4
feat: better error message when constructor parameter universe level is too big
2022-04-03 08:37:38 -07:00
Leonardo de Moura
64cfbc1ae3
feat: add helper tactic for applying sizeOf (a.get i) < sizeOf a automatically in termination proofs
2022-04-02 18:29:41 -07:00
Leonardo de Moura
2c7c7471db
feat: add case' tactic for writing macros
...
It is similar to `case` but does not admit goal in case of failure.
This is useful for writing macros.
2022-04-02 17:54:06 -07:00
Leonardo de Moura
9f29d7ecb7
feat: add stop tactic macro
2022-04-02 15:39:03 -07:00
Leonardo de Moura
9fe5458077
feat: do not display inaccessible proposition names if they do not have forward dependencies
...
Even if `pp.inaccessibleNames = true`
2022-04-02 13:15:17 -07:00
Leonardo de Moura
e058fe65a9
feat: make the hypothesis name optional in the by_cases tactic
2022-04-01 19:36:13 -07:00
Leonardo de Moura
d473cc5a4c
chore: update release notes for issue #1090
...
closes #1090
2022-04-01 11:38:50 -07:00
Leonardo de Moura
4c9c62752e
feat: improve checkpoint tactic
2022-03-31 20:51:53 -07:00
Leonardo de Moura
3dd0c84c4d
chore: enforce naming convetion for tactics
2022-03-30 16:19:05 -07:00
Leonardo de Moura
46ce3013d0
feat: cleanup local context before elaborating match alternatives RHS
2022-03-29 18:52:07 -07:00
Leonardo de Moura
86432f1833
feat: improve let-pattern and have-pattern macro expansion
2022-03-29 07:33:22 -07:00
Sebastian Ullrich
bef34e30e7
feat: Nix: render examples using LeanInk+Alectryon
2022-03-26 22:50:04 +01:00
Sebastian Ullrich
7ce5b0c4ff
feat: CI: build darwin_aarch64
2022-03-26 16:29:52 +01:00
Sebastian Ullrich
2740cab3fc
chore: update RELEASES
2022-03-26 00:02:13 +01:00
Leonardo de Moura
9aca413e31
chore: add link to doc/examples
2022-03-25 14:46:43 -07:00
Leonardo de Moura
be7c71d1c8
chore: update date
2022-03-23 07:44:15 -07:00
Leonardo de Moura
321d6b0e67
feat: support for user-defined simp attributes in the simp tactic.
...
See `RELEASES.md`
TODO: make sure `-thm` also removes `thm` from user-defined simp attributes.
2022-03-20 18:45:57 -07:00
Leonardo de Moura
6d926c7989
feat: macro expand match alternatives
...
see #371
This commit does not implement all features discussed in this issue.
It has implemented it as a macro expansion. Thus, the following is
accepted
```lean
inductive StrOrNum where
| S (s : String)
| I (i : Int)
def StrOrNum.asString (x : StrOrNum) :=
match x with
| I a | S a => toString a
```
It may confuse the Lean LSP server. The `a` on `toString` shows the
information for the first alternative after expansion (i.e., `a` is an `Int`).
After expansion, we have
```
def StrOrNum.asString (x : StrOrNum) :=
match x with
| I a => toString a
| S a => toString a
```
2022-03-20 14:20:13 -07:00
Sebastian Ullrich
4fd520e902
feat: generalize inferred namespace notation to functions
2022-03-16 23:40:05 +01:00
Leonardo de Moura
231120c118
chore: update RELEASES.md
2022-03-12 20:02:39 -08:00
Leonardo de Moura
cf0ca026fb
feat: equation theorems at rw
2022-03-12 13:53:02 -08:00
Leonardo de Moura
15e30a93f3
feat: update RELEASES.md
2022-03-11 16:28:01 -08:00
Leonardo de Moura
ddf93d2f8a
feat: support for arrow types in the dot notation
...
cc @gebner
2022-03-11 15:39:41 -08:00
Leonardo de Moura
2364bc7b46
chore: add link to issue
2022-03-10 17:10:12 -08:00
Leonardo de Moura
002412e9d0
chore: missing code block annotation
2022-03-10 17:08:54 -08:00
Leonardo de Moura
e1fa9c131c
feat: inferring namespace from expected type a la Swift
...
Now that `PatternVars.lean` has been redesigned, it is feasible to
implement issue #944 .
closes #944
2022-03-10 16:55:25 -08:00
Leonardo de Moura
3214a20d33
feat: allow overloaded notation in patterns
2022-03-10 12:51:34 -08:00
Leonardo de Moura
c1b1a916eb
doc: update release notes
2022-03-10 08:26:27 -08:00
Leonardo de Moura
4ee131981d
feat: in an inductive family the longest fixed prefix of indices is now promoted to parameters
...
This modification is relevant for fixing regressions on recent changes
to the auto implicit behavior for inductive families.
The following declarations are now accepted:
```lean
inductive HasType : Fin n → Vector Ty n → Ty → Type where
| stop : HasType 0 (ty :: ctx) ty
| pop : HasType k ctx ty → HasType k.succ (u :: ctx) ty
inductive Sublist : List α → List α → Prop
| slnil : Sublist [] []
| cons l₁ l₂ a : Sublist l₁ l₂ → Sublist l₁ (a :: l₂)
| cons2 l₁ l₂ a : Sublist l₁ l₂ → Sublist (a :: l₁) (a :: l₂)
inductive Lst : Type u → Type u
| nil : Lst α
| cons : α → Lst α → Lst α
```
TODO: universe inference for `inductive` should be improved. The
current approach is not good enough when we have auto implicits.
TODO: allow implicit fixed indices that do not depend on indices that
cannot be moved to become parameters.
2022-03-08 17:56:34 -08:00
Sebastian Ullrich
dca5da6b18
chore: update RELEASES.md
2022-03-07 17:28:51 +01:00
Leonardo de Moura
d9a6680536
doc: describe the auto implicit chaining in the release notes
2022-03-05 17:45:56 -08:00
Leonardo de Moura
22731c02b0
fix: auto implicit locals in inductive families
2022-03-05 15:47:20 -08:00
Leonardo de Moura
a2457110db
chore: update RELEASES.md
2022-03-03 20:05:58 -08:00
Leonardo de Moura
30409fc73d
chore: add example to RELEASES.md
2022-03-03 11:28:37 -08:00
Leonardo de Moura
52403fca83
feat: add support for guessing (very) simple WF relations
...
There are a lot of TODOs, but it is already useful for simple cases.
closes #847
2022-03-02 11:52:00 -08:00
Leonardo de Moura
7eba003f53
chore: style
2022-03-01 18:54:10 -08:00
Leonardo de Moura
ca5696330c
doc: update RELEASES.md
2022-03-01 18:51:15 -08:00
Leonardo de Moura
10657f5e81
feat: add trace <string> tactic
2022-02-28 11:16:42 -08:00
Leonardo de Moura
c5fdd54cd8
feat: support for acyclicity at unifyEqs
...
closes #1022
2022-02-27 10:03:40 -08:00
Leonardo de Moura
cabd599de1
feat: add fail tactic
2022-02-26 09:31:19 -08:00
Leonardo de Moura
ff76958959
feat: basic support for linear Nat arithmetic at simp
2022-02-26 08:58:32 -08:00
Leonardo de Moura
bdea43a52a
feat: while and repeat macros
2022-02-24 16:26:07 -08:00