Leonardo de Moura
7f364feeb5
chore: add Classical.lean, Equivalence, and cleanup
2020-11-10 14:55:34 -08:00
Leonardo de Moura
7e51020685
chore: move SizeOf to its own file
2020-11-10 14:43:03 -08:00
Leonardo de Moura
6c9c9c3955
chore: remove tactic framework dependency
2020-11-10 14:32:58 -08:00
Leonardo de Moura
7c393a1b3f
chore: cleanup
2020-11-10 14:06:11 -08:00
Leonardo de Moura
6ae2525e8f
chore: new prelude experiment
2020-11-10 14:02:58 -08:00
Leonardo de Moura
043fa5e16f
chore: update stage0
2020-11-10 12:35:22 -08:00
Leonardo de Moura
bd5c668347
feat: add helper functions for new Prelude.lean
2020-11-10 12:34:40 -08:00
Leonardo de Moura
de15bab918
chore: update stage0
2020-11-10 12:00:19 -08:00
Leonardo de Moura
1c01bd59be
chore: add numBitsEq
2020-11-10 11:59:16 -08:00
Leonardo de Moura
2daeb195b5
chore: use new names
2020-11-10 10:15:19 -08:00
Leonardo de Moura
cf0f4c04ed
chore: update stage0
2020-11-10 10:12:21 -08:00
Leonardo de Moura
2ef9199c56
chore: prepare to rename "predicate-like" classes
2020-11-10 10:12:21 -08:00
Sebastian Ullrich
e4f53fd92d
chore: adjust list & array spacing
2020-11-10 10:11:24 -08:00
Sebastian Ullrich
ce9be52ffb
feat: pretty print lists and arrays
2020-11-10 10:11:24 -08:00
Sebastian Ullrich
3665e3b7b5
feat: pretty print match
...
Fixes #177
2020-11-10 10:11:24 -08:00
Sebastian Ullrich
3d9f97574b
refactor: use and improve mkAppStx
2020-11-10 10:11:24 -08:00
Leonardo de Moura
33251fe069
chore: update stage0
2020-11-09 19:01:46 -08:00
Leonardo de Moura
7e8a7e6660
feat: elaborate fun/forall binder extensions
2020-11-09 19:00:40 -08:00
Leonardo de Moura
faa9ea3c98
chore: update stage0
2020-11-09 18:45:35 -08:00
Leonardo de Moura
25083fba9f
feat: extend binder syntax
2020-11-09 18:41:48 -08:00
Leonardo de Moura
defa45ae2f
feat: improve error message
...
when match-expression LHSs still contain metavariables after elaboration
2020-11-09 18:26:14 -08:00
Leonardo de Moura
f91b2cc89c
chore: typo
2020-11-09 18:13:02 -08:00
Leonardo de Moura
82d6dd2eb6
feat: improve Structural.lean
2020-11-09 13:23:25 -08:00
Leonardo de Moura
c7ebc33f97
chore: fix typo
2020-11-09 11:43:57 -08:00
Leonardo de Moura
f1a2d4dee1
doc: fix and expand lean3changes.md
2020-11-09 11:37:34 -08:00
Leonardo de Moura
425f45a623
chore: fix test
2020-11-09 06:43:52 -08:00
Leonardo de Moura
cf77799364
doc: add lean3changes.md
2020-11-08 14:25:56 -08:00
Leonardo de Moura
fdb7db5650
chore: rename Eq.subst argument
2020-11-08 14:05:17 -08:00
Leonardo de Moura
ded043bd53
test: old Lean3 begin ... end as a macro
...
@Kha I am adding a few examples to use in the manual.
This one is a bit ugly due to two issues
1- We can't easily copy the position information from one token to
another. You suggested a notation in the past, but we never
implemented it. In the new example, we must copy the `end` position to
`}` to get the "unsolved goals" error message at the `end` token.
2- The quotation `` `(by { $ts* }) `` doesn't do what we want.
The issue is that we are using `group` instead of `nodeWithAntiquot`
to define `tacticSeqBracketed`. I will have to go over all parsers we
have defined, and check how many other places have this problem.
2020-11-08 11:53:13 -08:00
Leonardo de Moura
a8a457b355
refactor: move getTailInfo/copyTailInfo/etc to LeanInit
2020-11-08 11:52:14 -08:00
Leonardo de Moura
1f592ddf92
chore: update stage0
2020-11-08 08:13:59 -08:00
Leonardo de Moura
029510d4f5
feat: syntax for setting allowTrailingSep
...
@Kha This commit allows us to set `allowTrailingSep` for `sepBy` and
`sepBy1` from the `syntax` command.
```lean
syntax "[" (sepBy (allowTrailingSep := true) term ",") "]" : term
```
The new syntax is a bit verbose :)
What do you think? Any suggestions?
2020-11-08 08:12:54 -08:00
Leonardo de Moura
4a3b9c75e1
feat: add Quote Bool instance
2020-11-08 08:07:17 -08:00
Leonardo de Moura
fc4d991707
feat: add allowTrailingSep parameter to ParserDescr.sepBy and ParserDescr.sepBy1
2020-11-08 07:51:10 -08:00
Leonardo de Moura
ef3f8c8723
feat: add funext tactic macro
2020-11-08 07:30:24 -08:00
Leonardo de Moura
c03b98e46e
chore: update stage0
2020-11-08 07:24:20 -08:00
Leonardo de Moura
d618bf5b16
feat: expand new syntax Syntax
2020-11-08 07:22:38 -08:00
Leonardo de Moura
1171590d2e
chore: update stage0
2020-11-08 07:03:18 -08:00
Leonardo de Moura
231b20c4fb
feat: add syntax parsers for withPosition and checkCol
2020-11-08 07:02:14 -08:00
Leonardo de Moura
c39ce2db32
chore: update stage0
2020-11-08 06:51:35 -08:00
Leonardo de Moura
34cba1ec2e
feat: add withPosition and checkCol constructors
2020-11-08 06:42:25 -08:00
Leonardo de Moura
8b4f2227f3
chore: update stage0
2020-11-07 17:32:13 -08:00
Leonardo de Moura
2d2d39c78e
chore: use mut
2020-11-07 17:32:13 -08:00
Leonardo de Moura
917d2b4aa4
chore: update stage0
2020-11-07 17:32:13 -08:00
Leonardo de Moura
6c6595cd9b
feat: only allow variables declared with mut to be reassigned
2020-11-07 17:32:13 -08:00
Leonardo de Moura
f484be1409
chore: update stage0
2020-11-07 17:32:13 -08:00
Leonardo de Moura
1c558d279f
feat: add mut modifier to doLet
2020-11-07 17:32:13 -08:00
Leonardo de Moura
6b89e8e670
chore: update stage0
2020-11-07 17:32:13 -08:00
Leonardo de Moura
89fd299c9e
chore: prepare mut
2020-11-07 17:32:12 -08:00
Leonardo de Moura
1e30d0831d
feat: allow recursive application in the discriminant of a nested match
2020-11-07 17:32:12 -08:00