Leonardo de Moura
cbf2b6c0db
feat: change synthinstance threshold
...
Before this commit, the threshold was the amount of "fuel".
Now, it is the maximum number of instances used to solve a TC problem.
We have two thresholds
- `maxInstSize`: default 128
- `maxCoeSize`: default 16. It is similar to `maxInstSize`, but used for automatic coercions.
cc @Kha
2020-12-07 10:45:08 -08:00
Leonardo de Moura
a08dcef4f6
chore: update stage0
2020-12-06 19:08:18 -08:00
Leonardo de Moura
6af3eac142
feat: add MonadStateCacheT based on StateT
2020-12-06 19:07:28 -08:00
Leonardo de Moura
906cb81319
feat: improve inferAppType
...
See comment at `Expr.instantiateRevRange`
2020-12-06 19:01:23 -08:00
Leonardo de Moura
32325838a3
chore: fix test
2020-12-06 19:00:24 -08:00
Leonardo de Moura
91dec25a35
fix: bug at runST and runEST
2020-12-06 18:52:28 -08:00
Leonardo de Moura
265b7571b4
chore: change checkCache type
2020-12-06 16:24:51 -08:00
Leonardo de Moura
d25f520143
feat: elaborate #reduce command
2020-12-06 10:54:57 -08:00
Leonardo de Moura
e2c934ccea
chore: update stage0
2020-12-06 09:33:26 -08:00
Leonardo de Moura
1c0943ad82
feat: add #reduce command parser
2020-12-06 09:32:25 -08:00
Leonardo de Moura
f15986a25d
fix: use levelMVarToParam at #check command
2020-12-06 09:28:41 -08:00
Leonardo de Moura
f33473a39e
chore: use exists notation
2020-12-05 16:50:01 -08:00
Leonardo de Moura
1aaf7c0778
feat: add SimpleScopedEnvExtension
...
`ParserExtension` will probably be the only case where we need the
general case.
2020-12-05 16:38:35 -08:00
Leonardo de Moura
f0372f724c
chore: remove unused attribute
2020-12-05 16:28:58 -08:00
Leonardo de Moura
44d0fe993a
feat: ensure scoped instances cannot be used outside namespaces
2020-12-05 16:26:31 -08:00
Leonardo de Moura
dcf5f855dd
test: scoped and local instances
2020-12-05 16:10:27 -08:00
Leonardo de Moura
926c7f34ef
chore: update stage0
2020-12-05 16:04:37 -08:00
Leonardo de Moura
533192c369
feat: implement instanceExtension using ScopedEnvExtension
2020-12-05 16:04:37 -08:00
Leonardo de Moura
4fa107c6a3
test: add test for issue fixed in previous commit
2020-12-05 15:50:24 -08:00
Leonardo de Moura
fdc2c9f281
feat: process local instance ... and scoped instance ... commands
2020-12-05 15:46:25 -08:00
Leonardo de Moura
8c62db8ee8
chore: update stage0
2020-12-05 15:37:56 -08:00
Leonardo de Moura
d27770ea0e
chore: prepare to add scoped and local instances
2020-12-05 15:36:23 -08:00
Leonardo de Moura
1af03901da
feat: scoped and local unification hints
2020-12-05 14:34:14 -08:00
Leonardo de Moura
c5aba69471
chore: update stage0
2020-12-05 14:25:50 -08:00
Leonardo de Moura
1faed06dc1
feat: new attrKind syntax
2020-12-05 13:59:08 -08:00
Leonardo de Moura
c4b4625a72
chore: update stage0
2020-12-05 13:51:36 -08:00
Leonardo de Moura
f1f8c2482f
feat: prepare to change attrKind parser
...
We want to add a proper node and kind.
2020-12-05 13:49:59 -08:00
Leonardo de Moura
32d5ef8b78
feat: scoped and local unification hints
2020-12-05 13:49:36 -08:00
Leonardo de Moura
f000aa0155
test: scoped parser after open
2020-12-05 08:35:30 -08:00
Leonardo de Moura
b6badf21ae
chore: update stage0
2020-12-05 08:08:42 -08:00
Leonardo de Moura
d43a65aed0
feat: elaboarate local syntax, infix and notation commands
2020-12-05 08:05:40 -08:00
Leonardo de Moura
94ff89bfc4
chore: update stage0
2020-12-05 07:48:37 -08:00
Leonardo de Moura
10102bf370
chore: remove "local" before attribute command
...
`local` is now part of the `Term.attrInstance` parser.
2020-12-05 07:47:28 -08:00
Leonardo de Moura
9389bca624
feat: elaborate attrKind
2020-12-05 07:40:55 -08:00
Leonardo de Moura
6f6e153a85
chore: update stage0
2020-12-05 07:40:35 -08:00
Leonardo de Moura
bcf4ffdd1a
feat: local modifier at @[...]
2020-12-05 07:24:55 -08:00
Leonardo de Moura
ad59ab0d7c
chore: update stage0
2020-12-05 07:01:10 -08:00
Leonardo de Moura
c6ab0b4d2c
feat: allow local modifier at infix, notation, and syntax commands
2020-12-05 07:00:06 -08:00
Leonardo de Moura
4d428c8660
feat: add ScopedEnvExtension.addLocalEntry
2020-12-05 06:54:03 -08:00
Leonardo de Moura
2463371a25
chore: fix test
2020-12-04 18:13:36 -08:00
Leonardo de Moura
b37213e378
chore: remove workaround
2020-12-04 18:11:53 -08:00
Leonardo de Moura
42232609b9
chore: update stage0
2020-12-04 18:08:14 -08:00
Leonardo de Moura
752578a64c
chore: temporary staging workaround
2020-12-04 18:07:09 -08:00
Leonardo de Moura
8f223fb8f2
chore: update stage0
2020-12-04 18:03:44 -08:00
Leonardo de Moura
aad8ea9c76
feat: stable parser names
...
```
syntax term "+" term : term -- generates `term_+_`
syntax "[" sepBy(term, ", ") "]" : term -- generates `term[_,]`
syntax "done" : tactic -- generates `tacticDone`
```
cc @Kha
2020-12-04 18:00:51 -08:00
Leonardo de Moura
8dbbe37d38
chore: fix test
2020-12-04 16:22:45 -08:00
Leonardo de Moura
54723409c3
test: scoped parsers
2020-12-04 16:22:45 -08:00
Leonardo de Moura
c2cfbf2cdd
chore: remove workaround
2020-12-04 16:22:45 -08:00
Leonardo de Moura
ff32de6e7f
chore: update stage0
2020-12-04 16:22:45 -08:00
Leonardo de Moura
2ef84a1b64
chore: temporary staging workaround
...
@Kha It seems the new builtin antiquotation notation you added depends
on the array literal notation that is not builtin. I got the following
error after `update-stage0`
```
Lean/PrettyPrinter/Delaborator/Builtins.lean:455:2: error: elaboration function for '_kind.term._@.Init.Data.Array.Basic._hyg.3391' has not been implemented
```
The base name changed from `_kind.term` to `termKind`. I had to change
it because every parser we were defining was in the artificial (sub-)namespace
`_kind` :)
We didn't notive because we didn't have scoped parsers.
2020-12-04 16:22:44 -08:00