Commit graph

17403 commits

Author SHA1 Message Date
Wojciech Nawrocki
77365abc8b chore: Repr Syntax and minor cleanup 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
1bab9f6ffc refactor: simplify delaborator monad stacks 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
73f219ddba fix: no non-expr embeds in diagnostics 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
73363bef1f fix: delab structure field annotations 2021-08-24 08:57:41 -07:00
Daniel Selsam
2f484ec096 feat: build info trees in delab 2021-08-24 08:57:41 -07:00
Daniel Selsam
c44d341bd4 feat: SubExpr support for iterating holes 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
fd3bf289c4 fix: text ordering 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
d116e2e923 feat: batch RPC release 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
f49b7c4c57 chore: drop superfluous "server"
Co-authored-by: Gabriel Ebner <gebner@gebner.org>
2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
cc23a21d3e chore: cleanup 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
d48b5548b2 feat: flatten tagged text
Motivation: in JavaScript `JSON.stringify` does not like deeply nested
objects (it blows the stack). With a flatter structure we can show
longer outputs without running into this issue.
2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
ae24d8a2db feat: interactive diagnostics take 1 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
d7c3866e14 perf: tail-recursive Json.compress 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
bc8027cdc6 perf: speed up String.intercalate 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
72df64e8fe chore: move RpcSession 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
2a20d41cd9 feat: BEq Json 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
690a152275 feat: interactive goals 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
dae1a94d53 feat: misc server additions 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
2f16d5f121 feat: expressions with bundled environments for RPC 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
6eaa536595 feat: pretty-printer with tags 2021-08-24 08:57:41 -07:00
Wojciech Nawrocki
528283bc7d feat: MonadPrettyFormat 2021-08-24 08:57:41 -07:00
Leonardo de Moura
269a3478e0 refactor: cleanup mkEquationsFor
and build eliminator type where alternatives have the extra
conditions that ensure none of the previous alternatives are applicable.
2021-08-23 20:19:24 -07:00
Leonardo de Moura
4f45a514fc fix: TC issue introduced by recent bug fix
This commit fixes the issue reported at
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/instance.20not.20synthesizing.20issue.3F
2021-08-23 17:32:19 -07:00
Leonardo de Moura
79e6732fc6 fix: update tokenTable at withNamespace parser combinator
It also moves `withOpen` and `withOpenDecl` applications to simplify
their definitions and make sure we do not need to reset the cache.
2021-08-23 09:41:36 -07:00
Leonardo de Moura
7edc42fdfc fix: scoped command after open command
The issue was reported at
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Ending.20a.20command
2021-08-23 08:29:30 -07:00
Leonardo de Moura
5a7044365b feat: add instances Alternative MetaM and Alternative TacticM 2021-08-22 22:29:09 -07:00
Leonardo de Moura
d93c4317d1 feat: add withOpenDecl and withOpen parsers
It allow us to process `open .. in ..` while parsing.
This is useful for activating a scoped parser while parsing.
TODO: `openOnly` and `openHiding`, these two cases are rarely used
with `open .. in ..`

closes #529
2021-08-22 20:50:35 -07:00
Leonardo de Moura
ca747e9b27 feat: use contradiction at leaves
closes #644
2021-08-22 18:41:02 -07:00
Leonardo de Moura
48e6188e89 feat: use exfalso at ElimEmptyInductive 2021-08-22 18:16:14 -07:00
Leonardo de Moura
e5c380fd4f feat: add exfalso 2021-08-22 18:14:49 -07:00
Leonardo de Moura
ec20725cfb feat: use searchFuel instead of searchDepth at contradiction 2021-08-22 17:41:12 -07:00
Leonardo de Moura
4dccaa963b feat: add List.mapTR and csimp lemma 2021-08-22 09:32:19 -07:00
Leonardo de Moura
21c68a49e3 feat: elaborate nonrec modifier 2021-08-21 17:02:54 -07:00
Leonardo de Moura
54316fabb4 feat: add nonrec parser 2021-08-21 16:39:18 -07:00
Leonardo de Moura
46a5f06121 feat: do not consider dot notation when isAuxDecl is true 2021-08-21 16:35:32 -07:00
Leonardo de Moura
ec6af1ba26 feat: use simple List.append definition and add csimp theorem 2021-08-21 16:11:54 -07:00
Leonardo de Moura
3b240d9a14 feat: use simple List.length definition and add csimp theorem 2021-08-21 13:11:06 -07:00
Leonardo de Moura
6cfdfe9942 feat: apply csimp attribute constant replacements 2021-08-21 12:22:15 -07:00
Leonardo de Moura
71e0ff40c2 feat: add basic support for csimp 2021-08-21 11:58:51 -07:00
Leonardo de Moura
e8d23f305d chore: elaborate open scoped 2021-08-21 07:16:24 -07:00
Leonardo de Moura
519bb1e7d4 feat: add open scoped parser 2021-08-21 07:06:50 -07:00
Leonardo de Moura
7066619123 refactor: define Nat.le using inductive type 2021-08-20 19:39:45 -07:00
Sebastian Ullrich
c138dc7d44 chore: CI: fix patching & copying dependent libs 2021-08-20 09:42:05 -07:00
Sebastian Ullrich
82c97d34fa chore: specify accurate dependencies for leanshared 2021-08-20 09:42:05 -07:00
Sebastian Ullrich
5f4b1b1d44 Revert "Revert "feat: reintroduce libleanshared, link lean & leanpkg against it""
This reverts commit ccbc9d00db.
2021-08-20 09:42:05 -07:00
Sebastian Ullrich
ccbc9d00db Revert "feat: reintroduce libleanshared, link lean & leanpkg against it" 2021-08-20 15:39:00 +02:00
Leonardo de Moura
49520aa2ee feat: generate conditional equation theorems for match expressions 2021-08-19 19:33:31 -07:00
Leonardo de Moura
37f2f7d472 fix: bug at processGenDiseq
We should not assign metavar from outer depth inside `withNewMCtxDepth`
2021-08-19 19:33:26 -07:00
Leonardo de Moura
3c519887d1 chore: generate error message when MatchEqs fail
TODO: we currently do not generate equation theorems
for `match` expressions using array literals.
2021-08-19 17:04:52 -07:00
Leonardo de Moura
1624e42a5d chore: cleaup 2021-08-19 14:39:58 -07:00