Commit graph

17310 commits

Author SHA1 Message Date
Sebastian Ullrich
617f17facb feat: reintroduce libleanshared, link lean & leanpkg against it 2021-08-18 13:54:52 +02:00
Leonardo de Moura
83eaa47e0a chore: move MatchEqs 2021-08-17 21:32:32 -07:00
Leonardo de Moura
158636b8c0 feat: add spliIfGoal
TODO: remove unnecessary complexity, `MatchEqs` doesn't need all this
complexity, and we should not recurse here.
2021-08-17 21:32:32 -07:00
Leonardo de Moura
bb755d6245 feat: add commitIfNoEx 2021-08-17 21:32:32 -07:00
Leonardo de Moura
e04976614f feat: check if metavar is not assigned at simp tactics
and make sure `simpLocalDecl` does not change the goal if it didn't simplify
2021-08-17 21:32:32 -07:00
Leonardo de Moura
8d90872d28 chore: add not_not_intro 2021-08-17 21:32:32 -07:00
Leonardo de Moura
60d38606e7 fix: missing instantiateMVars 2021-08-17 21:32:32 -07:00
Leonardo de Moura
a5b9306e04 fix: deep recursion at contradiction 2021-08-17 21:32:32 -07:00
Leonardo de Moura
4cfbe6030f feat: add simpLocalDecl 2021-08-17 21:32:32 -07:00
Leonardo de Moura
52b52b22ef fix: to do unfold matcher applications that cannot be reduced when smartUnfolding is true
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/How.20to.20WHNF.20without.20exposing.20recursors.3F
2021-08-17 21:32:32 -07:00
Leonardo de Moura
4635c3afd1 chore: add notNot? 2021-08-17 21:32:32 -07:00
Leonardo de Moura
60ff468a8b feat: add simpGoal helper method
chore: rename `simpGoal?`
2021-08-17 21:32:32 -07:00
Leonardo de Moura
5a76f70bc8 feat: add optional argument discharge? to simp basic methods 2021-08-17 21:32:32 -07:00
Jannis Limperg
1d3e2aa7b1 chore: rename BinomialHeap.WellFormed constructors 2021-08-17 10:19:12 -07:00
Jannis Limperg
343d2c9c35 feat: add BinomialHeap.{ofList,ofArray} 2021-08-17 10:19:12 -07:00
Jannis Limperg
b43e03699b doc: document some BinomialHeap defs 2021-08-17 10:19:12 -07:00
Jannis Limperg
8e89cdc05c feat: add BinomialHeap.{deleteMin,tail?} 2021-08-17 10:19:12 -07:00
Jannis Limperg
3709234971 chore: BinomialHeap: rename lt to le 2021-08-17 10:19:12 -07:00
Jannis Limperg
63628ef61b fix: BinomialHeap: insert (head h) (tail h) = h
fixes #629
2021-08-17 10:19:12 -07:00
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
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
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
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
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
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
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
4ee2f80d66 fix: improve binop% elaborator 2021-08-13 17:33:32 -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