Commit graph

26741 commits

Author SHA1 Message Date
Jannis Limperg
2dae878b79 refactor: optimise BinomialHeap.head? 2021-08-17 10:19:12 -07:00
Jannis Limperg
a4cb981569 feat: add BinomialHeap.{toArray,toListUnordered,toArrayUnordered} 2021-08-17 10:19:12 -07:00
Jannis Limperg
7e56c4dc0b refactor: simplify BinomialHeap.Heap 2021-08-17 10:19:12 -07:00
Jannis Limperg
6ed99b77e9 chore: rm redundant branch in BinomialHeap.toList 2021-08-17 10:19:12 -07:00
Jannis Limperg
c569c62e85 chore: reformat BinomialHeap 2021-08-17 10:19:12 -07:00
Sebastian Ullrich
fc707f3343 test: fix test on Windows 2021-08-17 12:50:58 +02:00
Sebastian Ullrich
94437bcfbb fix: import hint 2021-08-17 11:14:42 +02:00
Leonardo de Moura
9d24f614fa chore: update stage0 2021-08-16 18:03:57 -07:00
Leonardo de Moura
b01239b25b fix: use enableInitializersExecution at leanpkg 2021-08-16 18:02:51 -07:00
Leonardo de Moura
a05b7589b5 fix: assertion violation 2021-08-16 18:02:41 -07:00
Leonardo de Moura
74fccd89eb chore: update stage0 2021-08-16 17:44:27 -07:00
Leonardo de Moura
d775dc6195 feat: add flag for controlling the execution of initialize commands when importing modules programmatically
Fixes issue reported at
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Environment.20extensions.20in.20importModules
2021-08-16 17:43:28 -07:00
Leonardo de Moura
02163f8bac chore: update stage0 2021-08-16 16:15:08 -07:00
Leonardo de Moura
6ced2cdece refactor: move lean_name_eq to runtime, add lean_name_hash in C 2021-08-16 16:13:55 -07:00
Leonardo de Moura
14b611af96 refactor: move buffer.h and *_ref.h files to runtime 2021-08-16 15:39:38 -07:00
Leonardo de Moura
571a0491ee feat: add Meta.byCases helper tactic 2021-08-16 14:58:51 -07:00
Leonardo de Moura
fcbd807c9d chore: some Expr constructors 2021-08-16 13:58:48 -07:00
Leonardo de Moura
f59b9813fb feat: add environment extension for caching Simp.Context for splitIf 2021-08-16 13:05:01 -07:00
Leonardo de Moura
34b092700e feat: add LazyInitExtension 2021-08-16 12:54:50 -07:00
Leonardo de Moura
a3a3c7c80c chore: add LEAN_PATH_SEPARATOR cmake variable
Motivation: try to fix failure at 81ff285427
2021-08-16 10:50:01 -07:00
Leonardo de Moura
ca0c205389 feat: add registerSimpAttr 2021-08-16 09:59:58 -07:00
Leonardo de Moura
81ff285427 chore: use leanmake instead of leanpkg 2021-08-16 08:52:27 -07:00
Leonardo de Moura
4fe65f3200 test: mathport issue https://github.com/dselsam/mathport/issues/18 2021-08-15 08:11:20 -07:00
Leonardo de Moura
9182ebd4c1 feat: elaborate * simp argument 2021-08-15 08:02:21 -07:00
Leonardo de Moura
3c68703f39 feat: elaborate <- modifier at simp arguments 2021-08-15 07:07:58 -07:00
Leonardo de Moura
d4410c217b chore: update stage0 2021-08-14 07:00:52 -07:00
Leonardo de Moura
7c5ab8b4c9 chore: prepare to add <- as simp argument 2021-08-14 06:59:55 -07:00
Leonardo de Moura
25344453c0 feat: add simpStar parser 2021-08-14 06:29:26 -07:00
Leonardo de Moura
cbd36e897b chore: remove ToExpr Expr 2021-08-14 06:16:46 -07:00
Leonardo de Moura
d8340f55a5 doc: document new binop% elaborator 2021-08-13 20:10:30 -07:00
Leonardo de Moura
d52de3392b chore: remove workaround 2021-08-13 19:35:47 -07:00
Leonardo de Moura
fc6f9324ac chore: update stage0 2021-08-13 19:32:49 -07:00
Leonardo de Moura
a15a36b8d3 chore: cleanup Subarray instances 2021-08-13 19:29:09 -07:00
Leonardo de Moura
ddec62f77b feat: synthesize pending metavariables created before binop% too
Reason: some of the `binop%` arguments may be let-variables, and the
values assigned to the let-variables may be in the pending list.
2021-08-13 19:25:45 -07:00
Leonardo de Moura
2994747ed9 chore: remove workaround 2021-08-13 18:25:32 -07:00
Leonardo de Moura
7de38460d1 chore: update stage0 2021-08-13 17:34:46 -07:00
Leonardo de Moura
4ee2f80d66 fix: improve binop% elaborator 2021-08-13 17:33:32 -07:00
Leonardo de Moura
4239ae69f6 chore: fix tests 2021-08-13 17:24:58 -07:00
Leonardo de Moura
4b58c4cc02 refactor: instances that "hide" coercions
Example:
```
instance [CoeHTCT α β] [Add β] : HAdd α β β where
  hAdd a b := Add.add a b
```
2021-08-13 17:18:55 -07:00
Leonardo de Moura
452b717a97 chore: update stage0 2021-08-13 17:14:38 -07:00
Leonardo de Moura
ef46b0145b chore: use binop% to define the notations >> and <|>
Motivation: we want to delete the instances
```
instance [CoeHTCT α β] [OrElse β] : HOrElse α β β where
  hOrElse a b := OrElse.orElse a b

instance [CoeHTCT α β] [OrElse β] : HOrElse β α β where
  hOrElse a b := OrElse.orElse a b

instance [CoeHTCT α β] [AndThen β] : HAndThen α β β where
  hAndThen a b := AndThen.andThen a b

instance [CoeHTCT α β] [AndThen β] : HAndThen β α β where
  hAndThen a b := AndThen.andThen a b
```
after we update stage0
2021-08-13 17:13:01 -07:00
Leonardo de Moura
b012050917 chore: remove some macros that use binop%
For example, given `i : Int` and `n : Nat`, we don't want to coerce `n`
into a `Int` in the term `i ^ n`.
2021-08-13 17:00:59 -07:00
Leonardo de Moura
3418eb7e1f fix: check whether CoeHTCT has already been defined or not at hasCoe 2021-08-13 17:00:59 -07:00
Leonardo de Moura
be23709737 chore: use binop% to define ++ notation 2021-08-13 16:26:35 -07:00
Leonardo de Moura
d3d03df83c feat: new elaborator for binop%
cc @gebner.
2021-08-13 15:44:59 -07:00
Leonardo de Moura
24fe2875c6 chore: change Pow class
Based on the suggestion at https://github.com/leanprover/lean4/issues/433
2021-08-12 13:59:55 -07:00
Sebastian Ullrich
d3f007b3cd chore: fix stdlib benchmarks 2021-08-12 22:41:42 +02:00
Sebastian Ullrich
16026e9edd perf: restore monad instance specialization hack 2021-08-12 21:09:09 +02:00
Leonardo de Moura
a6b6d61b39 chore: simplify mkProjStx? 2021-08-12 09:50:43 -07:00
Leonardo de Moura
da03262937 fix: check redundant sources at structure instance notation 2021-08-12 09:16:30 -07:00