Sebastian Ullrich
2734a5baba
feat: show state on by
2021-05-02 23:07:15 +02:00
Leonardo de Moura
1a0fc816b1
feat: rename inaccessible variable names at cases
2021-05-01 21:51:58 -07:00
Leonardo de Moura
663a5124f4
chore: naming convention
2021-05-01 21:29:06 -07:00
Leonardo de Moura
93189e0fce
chore: prepare to change case tactic
2021-05-01 19:53:44 -07:00
Leonardo de Moura
ba5d622e59
chore: avoid case tactic
2021-05-01 19:50:50 -07:00
Leonardo de Moura
106952622a
chore: modify induction hypotheses generated names
2021-05-01 16:21:12 -07:00
Leonardo de Moura
a2e8bc0780
feat: use binop% to define arith operators
...
closes #382
2021-04-30 19:40:45 -07:00
Leonardo de Moura
9d934694e7
feat: refine binop% elaborator
...
see issue #382
2021-04-30 19:37:58 -07:00
Leonardo de Moura
d01fb5451c
feat: add support for binop% at elabCDotFunctionAlias
2021-04-30 19:17:16 -07:00
Leonardo de Moura
0a018f2369
chore: add support for binop% in patterns
2021-04-30 18:38:44 -07:00
Leonardo de Moura
f22fd49ae2
feat: add binop% elaborator
...
This is an experiment, we will probably need to tweak its behavior.
See issue #382
2021-04-30 18:21:21 -07:00
Leonardo de Moura
f8ac5d25dd
feat: add notation for helper elaboration function
...
This similar to `binrel%` but for binary operators.
See issue #382
2021-04-30 17:14:17 -07:00
Sebastian Ullrich
e1cde87c43
fix: server: completion & goal state at EOF
2021-04-30 19:25:53 +02:00
tydeu
44f45f426c
feat: add scoped macro_rules ( #432 )
2021-04-30 09:05:09 +02:00
Leonardo de Moura
adae6fdb40
fix: tolerate type incorrect terms
...
This bug was producing a type error when I was using `set_option trace.Elab true`
2021-04-29 21:34:15 -07:00
Daniel Fabian
d54c964a51
fix: improve the tactic for brecOn for inductive predicates.
2021-04-29 17:19:09 -07:00
Sebastian Ullrich
ae9b2131c1
chore: reset prefer_native
2021-04-29 13:37:41 +02:00
Sebastian Ullrich
f0960b7f89
fix: ignore antiquotations outside quotations
2021-04-29 13:33:48 +02:00
Sebastian Ullrich
73cf3533a1
fix: count quotation depth in parser correctly
2021-04-29 13:33:48 +02:00
Sebastian Ullrich
7990f6e6e1
perf: use optimized withAntiquot in leading_parser
2021-04-29 13:30:09 +02:00
Sebastian Ullrich
683ecb2d65
feat: ignore unquoted identifiers in prechecked quotations
2021-04-29 13:30:09 +02:00
Leonardo de Moura
f75c9caf30
chore: disable check in the prelude inferInstance helper functions
2021-04-28 17:22:20 -07:00
Leonardo de Moura
45bcf4a32c
feat: check instance implicit binder annotations
2021-04-28 17:15:08 -07:00
Sebastian Ullrich
40b17bc364
refactor: introduce a few double-backtick quotations
2021-04-28 12:09:13 +02:00
Sebastian Ullrich
75e95f93a9
feat: improve let error locality
2021-04-27 16:38:46 -07:00
Sebastian Ullrich
9f0fa19237
feat: notation: unfold to prechecked quotation
2021-04-27 16:38:37 -07:00
Sebastian Ullrich
ad7ee2c81b
fix: disable quotation precheck if hygiene is false
2021-04-27 16:38:37 -07:00
Sebastian Ullrich
9301e05a7e
feat: double-quoted quotation semantics and basic precheck hooks
2021-04-27 16:38:37 -07:00
Sebastian Ullrich
e9441e4d45
refactor: iterative fun expansion as a macro
2021-04-27 16:38:37 -07:00
Sebastian Ullrich
8119daeb18
feat: syntax & attribute for double-quoted quotations
2021-04-27 16:38:37 -07:00
Leonardo de Moura
26b6953558
chore: remove dead code
...
Tuple notation is a macro now.
2021-04-27 16:14:45 -07:00
Leonardo de Moura
5f29cf1568
fix: update ref after macro expansion
2021-04-27 16:05:44 -07:00
Leonardo de Moura
e8531ef4de
fix: new type ascription elaborator
...
It was propating the incorrect type.
2021-04-27 16:03:27 -07:00
Sebastian Ullrich
2e250e6f04
refactor: paren as a (partial) macro
2021-04-27 14:50:44 -07:00
Leonardo de Moura
920a2b2a14
perf: Ord USize instance and missing inline
2021-04-27 12:08:21 -07:00
Daniel Fabian
0238bf8c33
refactor: use Ordering inside of rbmap instead of lt.
2021-04-27 07:58:58 -07:00
Leonardo de Moura
18085b9712
fix: improve match generalizing feature
2021-04-26 19:22:03 -07:00
Daniel Fabian
1f05f5bf11
chore: rename ProofBelow to below.
2021-04-26 20:33:21 +02:00
Daniel Fabian
eda4bdd337
test: extend inductive_pred.lean with tests using the new construction.
2021-04-25 20:02:22 -07:00
Daniel Fabian
371504e9cf
feat: add ProofBelow construction for inductive predicates.
...
This construction allows us to define `brecOn` for inductive predicates.
2021-04-25 20:02:22 -07:00
Sebastian Ullrich
53b0e7dde8
fix: ban tabs
...
Fixes #339
2021-04-25 19:55:15 -07:00
Leonardo de Moura
675bebb446
fix: isLevelDefEq missing case
2021-04-25 10:27:14 -07:00
Leonardo de Moura
d68d1f0841
fix: fixes #423
2021-04-25 10:00:38 -07:00
Leonardo de Moura
67f007fb51
feat: improve error message
2021-04-25 09:59:32 -07:00
Leonardo de Moura
f47f605039
fix: remove incorrect test
...
It had two problems:
- It was preventing coercions from being applied.
- It was compromising error recovery. The body of the lambda was not
being elaborated when the exception was thrown.
The new error message is more verbose and potentially confusing, but
it is better than the one produced this morning.
2021-04-24 22:17:29 -07:00
Leonardo de Moura
1f9975d35d
feat: improve error message and include variables introduced by the implicit lambda notation
2021-04-24 21:34:42 -07:00
Leonardo de Moura
10185d24dd
feat: improve error message
2021-04-24 20:43:13 -07:00
Leonardo de Moura
a6888f72dd
fix: instance + where + implicts issue
...
The following could not be elaborated.
```lean
instance : MulComm Bool where
mulComm := fun {a b} =>
match a, b with
| true, true => rfl
| true, false => rfl
| false, true => rfl
| false, false => rfl
```
2021-04-24 20:07:35 -07:00
Leonardo de Moura
2ff8052ce4
fix: missing do
2021-04-24 19:40:40 -07:00
Leonardo de Moura
c76820a251
fix: no method lift over let
2021-04-24 19:33:55 -07:00