Kyle Miller
5fc079d9ce
fix: dsimp missing consumeMData when closing goals by rfl ( #2776 )
...
Fixes #2514
2023-10-30 09:32:32 +11:00
Sebastian Ullrich
9874848f83
perf: inline checkInterrupted
...
Amazingly, the extra result allocation seems to have triggered a mathlib
heartbeat timeout
2023-10-26 08:33:09 +02:00
Sebastian Ullrich
c5691f816a
feat: cancel tasks on document edit
2023-10-26 08:33:09 +02:00
Sebastian Ullrich
fa3cf4d613
feat: translate interrupted kernel exception
2023-10-26 08:33:09 +02:00
Sebastian Ullrich
74b8dda181
feat: check task cancellation in elaborator
2023-10-26 08:33:09 +02:00
Leonardo de Moura
a3642bd8d9
feat: add support for expanding let-declarations to simp
...
Given a local context containing `x : t := e`,
`simp (config := { zeta := false }) [x]` will expand `x` even
if `zeta := false`.
2023-10-25 03:12:35 -07:00
Leonardo de Moura
771ec8324c
chore: fix configuration for UnificationHints
2023-10-25 03:12:35 -07:00
Leonardo de Moura
691defdc5d
chore: typos and PR feedback
...
Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
2023-10-25 03:12:35 -07:00
Leonardo de Moura
3b831271ee
fix: fixes #2669 #2281
2023-10-25 03:12:35 -07:00
Leonardo de Moura
3a13200772
refactor: add configuration options to control WHNF
...
This commit also removes parameter `simpleReduce` from discrimination
trees, and take WHNF configuration options.
Reason: it is more dynamic now. For example, the simplifier
will be able to use different configurations for discrimination tree insertion
and retrieval. We need this feature to address issues #2669 and #2281
This commit also removes the dead Meta.Config field `zetaNonDep`.
2023-10-25 03:12:35 -07:00
Leonardo de Moura
aecc83e2fc
chore: add some doc strings and cleanup
2023-10-25 03:12:35 -07:00
thorimur
6063deb6bd
fix: rw ... at h unknown fvar bug ( #2728 )
2023-10-25 01:52:19 +00:00
thorimur
291e95e3c5
fix: add instantiateMVars to replaceLocalDecl ( #2712 )
...
* fix: `instantiateMVars` in `replaceLocalDecl`
* docs: update `replaceLocalDecl`
* test: `replaceLocalDecl` instantiates mvars
2023-10-25 10:26:09 +11:00
Buster Copley
bccbefdc1c
fix: version numbers in code actions ( #2721 )
...
Co-authored-by: Richard Copley <buster@buster.me.uk>
2023-10-24 22:55:47 +11:00
Scott Morrison
d07ec56c33
chore: correcting typos ( #2746 )
2023-10-24 10:55:30 +00:00
Leonardo de Moura
a7323c9805
feat: use forall_prop_domain_congr in simp tactic
...
closes #1926
2023-10-23 06:19:19 -07:00
Leonardo de Moura
370476cc14
fix: bug at substCore
2023-10-22 06:48:22 -07:00
Leonardo de Moura
9a7565d66c
perf: closes #2552
2023-10-22 06:48:22 -07:00
thorimur
b5e95bf632
fix: allow constants to be marked for dsimp
2023-10-20 19:06:40 -07:00
Leonardo de Moura
419100d42b
feat: add Simp.Config.ground for simplifying nested ground terms
...
This is an experimental new feature. We need more bells and whistles,
and `cbv` tactic for improving its performance.
2023-10-19 13:59:17 -07:00
Scott Morrison
fb0d0245db
Revert "Cancel outstanding tasks on document edit in the language server" ( #2703 )
...
* Revert "perf: inline `checkInterrupted`"
This reverts commit 6494af4513 .
* Revert "fix: switch to C++ interruption whitelist"
This reverts commit 5aae74199b .
* Revert "fix: do not throw interrupt exceptions inside pure functions"
This reverts commit c0e3b9568e .
* Revert "feat: cancel tasks on document edit"
This reverts commit a2e2481c51 .
* Revert "feat: translate `interrupted` kernel exception"
This reverts commit 14c640c15e .
* Revert "feat: check task cancellation in elaborator"
This reverts commit 2070df2328 .
* Revert "feat: move `check_interrupted` from unused thread class to `Task` cancellation"
This reverts commit bf48a18cf9 .
2023-10-17 00:59:11 +00:00
Mario Carneiro
e0cba05167
refactor: env extensions can only modify .extensions ( #2661 )
2023-10-16 14:22:09 +11:00
Scott Morrison
1e74c6a348
feat: use nat_gcd in the kernel ( #2533 )
...
* feat: use nat_gcd in the kernel
---------
Co-authored-by: Sebastian Ullrich <sebasti@nullri.ch>
2023-10-15 13:49:41 +11:00
Scott Morrison
66ab016723
chore: simp tracing reports ← ( #2621 )
...
* chore: simp tracing reports ←
---------
Co-authored-by: Mario Carneiro <di.gama@gmail.com>
2023-10-15 12:12:10 +11:00
Leonardo de Moura
b8af36fba0
chore: update comments at src/Lean/Meta/Basic.lean
...
Co-authored-by: Timo <timorcb@gmail.com>
2023-10-14 10:20:29 -07:00
Leonardo de Moura
29198371d9
chore: update comments at src/Lean/Meta/ExprDefEq.lean
...
Co-authored-by: Timo <timorcb@gmail.com>
2023-10-14 10:20:29 -07:00
Leonardo de Moura
3bc18797b0
fix: ensure transient cache results for different transparency modes don't mix up
2023-10-14 10:20:29 -07:00
Sebastian Ullrich
6d0a3287e0
fix: cache typos
2023-10-14 10:20:29 -07:00
Leonardo de Moura
e3b08060d0
fix: chore add workaround for corrupted cache
2023-10-14 10:20:29 -07:00
Leonardo de Moura
2253b788b4
perf: fine grain isDefEq cache for terms not containing metavariables
2023-10-14 10:20:29 -07:00
mhuisi
d0ae87d13f
chore: improve error
2023-10-13 16:42:19 +02:00
mhuisi
b5348786a6
fix: pre-dependency-build-mode compatibility
2023-10-13 16:42:19 +02:00
mhuisi
253a5b931d
fix: correct handling of FileWorker restarts
2023-10-13 16:42:19 +02:00
mhuisi
9945fa04d6
feat: FileWorker handling of --no-build
2023-10-13 16:42:19 +02:00
Sebastian Ullrich
4e1d95ce58
feat: pass along extra print-paths flags and handle no-build Lake error in server
2023-10-13 16:42:19 +02:00
Sebastian Ullrich
6494af4513
perf: inline checkInterrupted
...
Amazingly, the extra result allocation seems to have triggered a mathlib
heartbeat timeout
2023-10-13 09:52:26 +02:00
Sebastian Ullrich
a2e2481c51
feat: cancel tasks on document edit
2023-10-13 09:52:26 +02:00
Sebastian Ullrich
14c640c15e
feat: translate interrupted kernel exception
2023-10-13 09:52:26 +02:00
Sebastian Ullrich
2070df2328
feat: check task cancellation in elaborator
2023-10-13 09:52:26 +02:00
Scott Morrison
5d096c3fd8
chore: make Environment.add private ( #2642 )
...
* feat: replay constants into an Environment
* suggestions from code review
* chore: make Environment.add private
* patch Lake to use Environment.add via extern
2023-10-12 15:00:27 +11:00
Mario Carneiro
14e626a925
feat: ToMessageData (α × β) instance
2023-10-11 10:12:06 +02:00
Wojciech Nawrocki
856a9b5153
fix: treat pretty-printed names as strings
...
I initially expected `Name`s to always faithfully represent internal data, in particular that a name with macro scopes would have a form such as ```foo._@.Module._hyg.1``, and that tombstones would only appear in types that represent pretty-printed output such as as `String` or `Format`. However, that is not what happens. We have `sanitizeNames` which rewrites the `userName` field of local hypotheses to be `Name.str .anonymous "blah✝"`.
Then in the server code, we put these into `names : Array Name`e. This works fine for displaying in the infoview, but if we try to deserialize an `InteractiveHypothesisBundle` inside an RPC method for widget purposes, the `FromJson Name` instance blows up in `String.toName`.
I think my preferred solution is to, rather than 'fix' `String.toName` to accept these names with tombstones, stop pretending that they are actual `Name`s and re-type `InteractiveHypothesisBundle.names : Array String`. This should be a backwards-compatible change w.r.t. infoview code as the JSON representation is a string in either case. It is not backwards compatible w.r.t. meta code that uses this field.
2023-10-11 09:51:14 +02:00
Mario Carneiro
115991066d
chore: remove unnecessary partial in ForEachExpr.visit ( #2657 )
2023-10-11 04:28:54 +00:00
Scott Morrison
076908d13b
feat: replay constants into an Environment ( #2617 )
...
* feat: replay constants into an Environment
2023-10-11 14:08:03 +11:00
Scott Morrison
ca0e6b0522
chore: fix MVarId.getType' ( #2595 )
...
* chore: fix MVarId.getType'
* add test
2023-10-09 11:04:33 +00:00
Sebastian Ullrich
00e981edcd
perf: do not inhibit caching of default-level match reduction
2023-10-08 17:24:20 -07:00
Leonardo de Moura
9f50f44eed
perf: missing cache at whnfImp
2023-10-08 17:22:14 -07:00
int-y1
8d7520b36f
chore: fix typos in comments
2023-10-08 10:46:05 +02:00
David Christiansen
b0b922bae4
feat: list the valid case tags when the user writes an invalid one
...
Before, Lean would simply emit the message "tag not found". With this
change, it also tells the user what they could have written that would
be accepted.
2023-10-06 11:14:21 +02:00
David Christiansen
4c6d2b3998
doc: fix typo in comment
...
Fix a misspelled/mistyped word in a comment.
2023-10-06 11:14:21 +02:00