Leonardo de Moura
|
3f9c854194
|
feat: auto local implicit chaining
|
2022-03-05 17:30:15 -08:00 |
|
Leonardo de Moura
|
f7130d8e07
|
refactor: use CPS at addAutoBoundImplicits
We want to be able to declare new local variables there.
|
2022-03-05 16:24:33 -08:00 |
|
Leonardo de Moura
|
22731c02b0
|
fix: auto implicit locals in inductive families
|
2022-03-05 15:47:20 -08:00 |
|
Leonardo de Moura
|
613cf19509
|
fix: discrimination trees and "stuck" terms
See comments and new test.
|
2022-03-05 15:12:20 -08:00 |
|
Leonardo de Moura
|
d39102f865
|
fix: smart unfolding for reducible definitions
When `TransparencyMode.reducible`, smart unfolding for reducible
definitions was not being used.
|
2022-03-05 14:42:47 -08:00 |
|
Leonardo de Moura
|
9e76cd7d65
|
fix: toName function at elabAppFnId
closes #1038
|
2022-03-04 16:56:02 -08:00 |
|
Leonardo de Moura
|
a670ed1e2d
|
fix: use withoutErrToSorry at apply
closes #1037
|
2022-03-04 14:36:10 -08:00 |
|
Leonardo de Moura
|
a2457110db
|
chore: update RELEASES.md
|
2022-03-03 20:05:58 -08:00 |
|
Leonardo de Moura
|
82b056aa75
|
chore: fix test
|
2022-03-03 19:53:35 -08:00 |
|
Leonardo de Moura
|
8b248e2d8c
|
feat: elaborate for h : x in xs do ... notation
|
2022-03-03 19:52:26 -08:00 |
|
Leonardo de Moura
|
ef38c82c77
|
fix: missing hypotheses at List.sizeOf_lt_of_mem
|
2022-03-03 19:52:05 -08:00 |
|
Leonardo de Moura
|
99677823c3
|
fix: ForIn' instance binder annotations
|
2022-03-03 19:51:45 -08:00 |
|
Leonardo de Moura
|
b4ddcd600b
|
chore: fix test
|
2022-03-03 19:15:07 -08:00 |
|
Leonardo de Moura
|
538eee0b6a
|
chore: update stage0
|
2022-03-03 19:11:27 -08:00 |
|
Leonardo de Moura
|
5d2420b1c9
|
chore: add auxiliary notation for ForIn'
|
2022-03-03 19:10:24 -08:00 |
|
Leonardo de Moura
|
d8ee03c1bb
|
feat: add ForIn' instance that is similar to ForIn but provides a proof that the iterated elements are in the collection
|
2022-03-03 19:05:27 -08:00 |
|
Leonardo de Moura
|
7462e3ad52
|
chore: update stage0
|
2022-03-03 18:29:04 -08:00 |
|
Leonardo de Moura
|
92937b3aba
|
feat: add for h : x in xs do ... notation
The idea is to have `h : x \in xs`.
This commit just adds the parser.
|
2022-03-03 18:27:40 -08:00 |
|
Leonardo de Moura
|
51ec4522fe
|
fix: documentation
|
2022-03-03 18:18:37 -08:00 |
|
Leonardo de Moura
|
e1424653b9
|
chore: remove workaround
|
2022-03-03 18:16:54 -08:00 |
|
Leonardo de Moura
|
0847c59667
|
chore: update stage0
|
2022-03-03 18:13:34 -08:00 |
|
Leonardo de Moura
|
b745c4f51a
|
fix: recursive overapplication at WF/Fix.lean
|
2022-03-03 18:13:34 -08:00 |
|
Leonardo de Moura
|
f306c9b69b
|
fix: split tactic
`unreachable!` assertions at `simpIfLocalDecl` and
`simpTargetLocalDecl` were reachable.
|
2022-03-03 18:13:34 -08:00 |
|
Leonardo de Moura
|
f4e98be163
|
fix: use whnfD at mkNoConfusion
The `split` tactic failed at `Array.sizeOf_lt_of_mem` because the type
in the equality is `Id Bool` when we write `true` instead of `id true`.
|
2022-03-03 18:13:34 -08:00 |
|
Leonardo de Moura
|
337c55f322
|
fix: missing import
|
2022-03-03 18:13:34 -08:00 |
|
Leonardo de Moura
|
4657d47c16
|
chore: fix tests
|
2022-03-03 18:13:34 -08:00 |
|
Leonardo de Moura
|
aeb9b2fb8c
|
chore: add Membership instance for Array
|
2022-03-03 18:13:34 -08:00 |
|
Leonardo de Moura
|
fd519401ff
|
feat: add Membership instance for List
and the theorem `a ∈ as -> sizeOf a < sizeOf as`.
We will use theorems like this one to improve the `decreasing_tactic`.
|
2022-03-03 18:13:21 -08:00 |
|
Leonardo de Moura
|
022a4d5ac1
|
feat: add ∈ notation
|
2022-03-03 17:18:51 -08:00 |
|
Leonardo de Moura
|
f629be745b
|
chore: add Nat.le_refl as simp theorem
|
2022-03-03 17:18:11 -08:00 |
|
Leonardo de Moura
|
89c3820781
|
chore: naming convention
|
2022-03-03 17:17:51 -08:00 |
|
Leonardo de Moura
|
5845002e8c
|
feat: use WF at anyM
|
2022-03-03 16:43:05 -08:00 |
|
Leonardo de Moura
|
3fa001911b
|
feat: add ite_self simp theorem
|
2022-03-03 11:55:05 -08:00 |
|
Leonardo de Moura
|
e4fa3e5d83
|
chore: add link to RELEASES.md
|
2022-03-03 11:31:24 -08:00 |
|
Leonardo de Moura
|
30409fc73d
|
chore: add example to RELEASES.md
|
2022-03-03 11:28:37 -08:00 |
|
Leonardo de Moura
|
02d7cedba8
|
chore: remove unnecessary termination_by annotations
|
2022-03-03 11:24:06 -08:00 |
|
Leonardo de Moura
|
35c587afbf
|
chore: update stage0
|
2022-03-03 11:17:35 -08:00 |
|
Leonardo de Moura
|
137c70f055
|
chore: add LinearArith/Nat/Solver.lean
|
2022-03-03 11:13:40 -08:00 |
|
Leonardo de Moura
|
043d338271
|
feat: add getForbiddenByTrivialSizeOf
|
2022-03-03 11:12:32 -08:00 |
|
Leonardo de Moura
|
1f2618adba
|
feat: delaborate cond using bif-then-else
|
2022-03-03 07:41:39 -08:00 |
|
Leonardo de Moura
|
8dd76868ff
|
test: plan for supporting combinators (e.g., List.foldl) in WF recursion
|
2022-03-02 15:18:25 -08:00 |
|
Leonardo de Moura
|
e091e7fb30
|
test: simplify proofs
|
2022-03-02 13:57:43 -08:00 |
|
Leonardo de Moura
|
4ba97c22ec
|
test: proving properties of mutually defined functions
|
2022-03-02 13:40:19 -08:00 |
|
Leonardo de Moura
|
1155d52702
|
chore: update TODO comment
|
2022-03-02 12:51:46 -08:00 |
|
Leonardo de Moura
|
14ef4b4304
|
test: add WF test that exposes the need for better error messages
|
2022-03-02 12:47:19 -08:00 |
|
Leonardo de Moura
|
093ab49b7f
|
feat: improve generateElements a bit
|
2022-03-02 11:58:47 -08:00 |
|
Leonardo de Moura
|
52403fca83
|
feat: add support for guessing (very) simple WF relations
There are a lot of TODOs, but it is already useful for simple cases.
closes #847
|
2022-03-02 11:52:00 -08:00 |
|
Leonardo de Moura
|
99204d2226
|
refactor: modify elabWFRel to CPS
|
2022-03-02 11:52:00 -08:00 |
|
Leonardo de Moura
|
88a2645a5f
|
refactor: add Lean/Meta/Tactic/LinearArith/Basic.lean
|
2022-03-02 11:52:00 -08:00 |
|
Leonardo de Moura
|
f171286e74
|
refactor: add src/Lean/Meta/Tactic/LinearArith/Nat
|
2022-03-02 11:52:00 -08:00 |
|