Commit graph

23682 commits

Author SHA1 Message Date
Leonardo de Moura
8bb7cc10ff chore: cleanup 2021-01-25 11:33:48 -08:00
Sebastian Ullrich
5fea8fcba3 fix: statically link GMP into leanpkg if STATIC=ON 2021-01-25 15:24:16 +01:00
Sebastian Ullrich
38819ef6ea doc: more on Unicode symbols in LaTeX 2021-01-25 12:44:03 +01:00
Sebastian Ullrich
f9a696fc72 doc: update LaTeX highlighting section 2021-01-25 11:44:49 +01:00
Sebastian Ullrich
ddabe1aa6f chore: alternative fix to 15185a1 2021-01-25 10:34:34 +01:00
Leonardo de Moura
4848533717 fix: make sure we have "heartbeats" even when `-D SMALL_ALLOC=OFF" 2021-01-24 19:42:45 -08:00
Leonardo de Moura
da5d46cd5d fix: memory access violation 2021-01-24 18:21:20 -08:00
Leonardo de Moura
83ab2e5555 chore: update stage0 2021-01-24 17:53:36 -08:00
Leonardo de Moura
8bc88bde6b chore: undefine LEAN_PATH
@Kha This doesn't work on my machine. It seems this is a GNU make feature.
2021-01-24 17:52:14 -08:00
Leonardo de Moura
f53e83b182 feat: add options maxHeartbeats and synthInstance.maxHeartbeats 2021-01-24 17:45:50 -08:00
Leonardo de Moura
d834d88b88 fix: performance bottleneck
@Kha @dselsam

The instances
```
instance (sep) : Coe (Array Syntax) (SepArray sep)

instance (sep) : Coe (SepArray sep) (Array Syntax)
```
The instances above generate a loop. The current `isNewAnswer`
predicate is too weak and assumes that answers with different
metavariables are different. Note that, using `isDefEq` there is
incorrect and too expensive. I will fix this later in the future.
In the meantime, I am using `CoeTail` to avoid the loop.
2021-01-24 17:45:50 -08:00
Leonardo de Moura
7ff62ee46b feat: add CoeHTCT 2021-01-24 17:45:50 -08:00
Leonardo de Moura
acfac85ac0 feat: add IO.getNumHeartbeats 2021-01-24 17:45:50 -08:00
Sebastian Ullrich
446f953461 feat: allow hygienic capture of section variables in quotations 2021-01-24 11:46:04 -08:00
Sebastian Ullrich
15185a1775 fix: unset LEAN_PATH before building stdlib 2021-01-24 19:41:16 +01:00
vvs-
b15e770231 fix: crash in IO.Process.wait on 32-bit architecture
The implemetation of unbox_uint32 is the same as unbox on 64-bit
but it is different for 32-bit platforms

Fixes #290
2021-01-24 14:37:23 +01:00
Leonardo de Moura
3c631de0d0 chore: update stage0 2021-01-22 14:28:16 -08:00
Leonardo de Moura
51de663e2c fix: crash when using TransparencyMode.instances 2021-01-22 14:17:19 -08:00
Leonardo de Moura
8f028a41ae fix: eta-expanded term at levelMVarToParam
This issue produced a nested inductive datatype that could not be
handled by the kernel. See new test.

Without the fix, the inductive declaration contained the term
```
 ((fun α {n : Nat} (t : Vec α n) => ...) Expr n x)
```
The nested occurrence `Vec Expr n` only becomes explicit after
beta-reduction.
2021-01-22 14:17:19 -08:00
Sebastian Ullrich
9aa3b2858f chore: Nix: search for root directory in lean-dev after all
Otherwise `lean4-diff-test-file` will use the Lean version when Emacs was started...
2021-01-22 19:19:37 +01:00
Sebastian Ullrich
2a341c01e0 doc: replace variables 2021-01-22 18:38:49 +01:00
Wojciech Nawrocki
a3f5aca22f fix: tail-recursive readBinToEnd 2021-01-22 18:02:31 +01:00
Wojciech Nawrocki
d9c6a992b5 feat: specify version in waitForDiagnostics 2021-01-22 18:02:31 +01:00
Wojciech Nawrocki
b9cc6a709f feat: amortise fileworker restarts and change processing 2021-01-22 18:02:31 +01:00
Wojciech Nawrocki
d5ba10a316 feat: IO API for retrieving monotonic time 2021-01-22 18:02:31 +01:00
Wojciech Nawrocki
8addea6e74 chore: remove Handle.size 2021-01-22 18:02:31 +01:00
Sebastian Ullrich
0c91b3769e chore: replace variables in src/ 2021-01-22 14:36:05 +01:00
Sebastian Ullrich
55102eb548 chore: update stage0 2021-01-22 14:36:05 +01:00
Sebastian Ullrich
8a02dfec4f feat: subsume variables under variable
/cc @leodemoura
2021-01-22 14:36:05 +01:00
Sebastian Ullrich
48f4f6a908 doc: Nix: clarify .#executable command 2021-01-22 12:41:18 +01:00
Leonardo de Moura
7ae861f6bd test: simplify 2021-01-21 18:32:23 -08:00
Leonardo de Moura
9fb5118990 chore: update stage0 2021-01-21 17:45:55 -08:00
Leonardo de Moura
d6eb5a9ff2 feat: generate sizeOf equality lemmas for constructors
TODO: support for nested inductive types.
2021-01-21 17:44:15 -08:00
Leonardo de Moura
c78a06d9a5 test: add Kyle's experiment to test suite 2021-01-21 10:35:22 -08:00
Leonardo de Moura
1f88d66035 feat: add missing instances 2021-01-21 10:35:22 -08:00
Leonardo de Moura
0bce549d92 test: remove code that is being generated automatically 2021-01-21 10:35:22 -08:00
Sebastian Ullrich
941a68165a fix: hover/definition for applications with only implicit arguments 2021-01-21 17:23:17 +01:00
Sebastian Ullrich
c1a07e5687 chore: Nix: delete obsolete workaround 2021-01-21 15:01:40 +01:00
Sebastian Ullrich
2a45525b24 chore: clean up code 2021-01-21 15:00:38 +01:00
Sebastian Ullrich
fbb1184f25 feat: auto-add stdlib to LEAN_SRC_PATH for installed Lean 2021-01-21 14:18:52 +01:00
Leonardo de Moura
f0cbf08cb0 chore: update stage0 2021-01-20 18:20:43 -08:00
Leonardo de Moura
f5517f9e14 chore: update stage0 2021-01-20 18:16:46 -08:00
Leonardo de Moura
1abd36dc0d test: sizeOf 2021-01-20 18:14:52 -08:00
Leonardo de Moura
e8401ea6e7 chore: remove old instances 2021-01-20 18:12:35 -08:00
Leonardo de Moura
7c6d09496e chore: define SizeOf Lean.Name instance manually 2021-01-20 18:07:14 -08:00
Leonardo de Moura
46c62a3fed chore: add missing instances 2021-01-20 17:53:43 -08:00
Leonardo de Moura
2b6e3bb696 chore: do not generate SizeOf instance for classes 2021-01-20 17:48:27 -08:00
Leonardo de Moura
ce11b23a59 feat: use deriving insertion sizeOf for types defined at Prelude.lean 2021-01-20 17:48:17 -08:00
Leonardo de Moura
757a56af9c chore: update stage0 2021-01-20 17:22:26 -08:00
Leonardo de Moura
65ffb15dff feat: add mkSizeOfHandler 2021-01-20 17:18:51 -08:00