Leonardo de Moura
|
5baac1905f
|
fix: use private names for theorems that are created on demand
closes #1006
|
2022-02-07 13:16:22 -08:00 |
|
Leonardo de Moura
|
12e2a79170
|
chore: fix codebase after removing auto pure
|
2022-02-03 18:08:14 -08:00 |
|
Leonardo de Moura
|
da06bb6605
|
fix: matching inside new termination_by
|
2022-01-17 08:47:05 -08:00 |
|
Leonardo de Moura
|
1620987b6c
|
fix: recursive applications in discriminants
|
2022-01-13 09:56:33 -08:00 |
|
Leonardo de Moura
|
9162901c86
|
fix: expandTerminationByNonCore
|
2022-01-12 16:22:54 -08:00 |
|
Leonardo de Moura
|
91a0ac8a12
|
feat: elaborate new termination_by syntax
|
2022-01-12 16:15:30 -08:00 |
|
Leonardo de Moura
|
addcbc6fa3
|
feat: process termination_by syntax
|
2022-01-12 16:15:30 -08:00 |
|
Leonardo de Moura
|
de19767594
|
feat: basic skeleton for termination_by' vs termination_by
|
2022-01-11 16:53:39 -08:00 |
|
Leonardo de Moura
|
868a43a747
|
chore: remove dead code
|
2022-01-11 16:22:20 -08:00 |
|
Leonardo de Moura
|
430b641e81
|
feat: use decreasing_tactic
|
2022-01-11 14:47:19 -08:00 |
|
Leonardo de Moura
|
a087b21bc0
|
fix: bug at WF/Fix.lean
|
2022-01-11 14:38:31 -08:00 |
|
Leonardo de Moura
|
4c918a2363
|
feat: use default_decreasing_tactic at WF/Fix.lean
|
2022-01-10 14:55:38 -08:00 |
|
Leonardo de Moura
|
98f4e51a12
|
feat: add mkUnfoldEq skeleton
|
2022-01-06 17:42:45 -08:00 |
|
Leonardo de Moura
|
ff49fd6b7e
|
fix: apply afterCompilation attributes after we have compiled *all* definitions in a mutual block
|
2022-01-05 15:57:51 -08:00 |
|
Leonardo de Moura
|
4d1343d670
|
chore: use _eq instead of eq to name auto generated equational theorems
|
2022-01-04 17:23:34 -08:00 |
|
Leonardo de Moura
|
b2918e0c76
|
test: add tests for WF.mkEqns
|
2022-01-04 17:18:51 -08:00 |
|
Leonardo de Moura
|
d782a97f5c
|
feat: add WF.mkProof for WF.mkEqns
|
2022-01-04 17:00:54 -08:00 |
|
Leonardo de Moura
|
2a0cd18d4b
|
feat: add WF.mkEqns
|
2022-01-04 15:44:05 -08:00 |
|
Leonardo de Moura
|
d941e97716
|
feat: add WF/Eqns.lean skeleton
|
2022-01-04 15:31:22 -08:00 |
|
Leonardo de Moura
|
e9c112007b
|
fix: avoid Syntax trees leaks into .olean files
closes #918
|
2022-01-03 09:36:06 -08:00 |
|
Leonardo de Moura
|
6b82e15069
|
feat: preserve variable names when packing domain
|
2021-12-17 07:10:26 -08:00 |
|
Leonardo de Moura
|
8b7411bdd8
|
feat: improve error location at well-founded recursion
|
2021-12-17 06:50:20 -08:00 |
|
Leonardo de Moura
|
68bd55af32
|
chore: fix codebase
|
2021-12-10 13:12:09 -08:00 |
|
Sebastian Ullrich
|
177d45a752
|
chore: fail without decreasing proof
|
2021-11-06 18:29:59 +01:00 |
|
Leonardo de Moura
|
b7ff5d3352
|
fix: make sure unused 'let'-declarations are preserved in WF
|
2021-10-19 06:51:54 -07:00 |
|
Leonardo de Moura
|
a2bcb1c4c1
|
fix: typo
|
2021-10-19 06:47:14 -07:00 |
|
Leonardo de Moura
|
e494329fb3
|
fix: addNonRecPreDefs at WF/Main.lean
|
2021-10-19 06:43:07 -07:00 |
|
Leonardo de Moura
|
697e0ce2db
|
feat: apply cleanup tactic before applying decreasing tactic
Alternative design: apply it only before reporting a failure.
|
2021-10-06 19:56:57 -07:00 |
|
Leonardo de Moura
|
f10101cd58
|
fix: preserve user variable names in decreasing goals
|
2021-10-06 18:45:48 -07:00 |
|
Leonardo de Moura
|
079ad47f02
|
fix: mixed unary and non-unary functions
|
2021-10-06 17:33:51 -07:00 |
|
Leonardo de Moura
|
988e43d2b4
|
fix: WF should reject definitions that do not take any arguments
|
2021-10-04 13:24:30 -07:00 |
|
Leonardo de Moura
|
85c49cfeb3
|
feat: apply termination tactic provided by user
|
2021-10-03 18:47:52 -07:00 |
|
Leonardo de Moura
|
23740778d4
|
refactor: termination hints
|
2021-10-03 18:09:35 -07:00 |
|
Leonardo de Moura
|
09d0c93589
|
feat: declare functions in mutual block using auxiliary fuction defined using WF
|
2021-09-29 11:24:52 -07:00 |
|
Leonardo de Moura
|
bd98e6a586
|
feat: refine WellFounded.fix functional F over PSigma.casesOn
|
2021-09-27 19:06:10 -07:00 |
|
Leonardo de Moura
|
d0391d07c2
|
feat: use PSigma.casesOn instead of projections at packDomain
Reason: we want to "refine" the `WellFounded.fix` functional `F` over it.
|
2021-09-27 19:06:10 -07:00 |
|
Leonardo de Moura
|
8b79176102
|
feat: refine WellFounded.fix functional F over Sum.casesOn
|
2021-09-27 19:06:10 -07:00 |
|
Leonardo de Moura
|
108518aad1
|
feat: use simp at mkDecreasingProof
|
2021-09-26 16:32:48 -07:00 |
|
Leonardo de Moura
|
d13bdef6e2
|
feat: add WF.mkFix
|
2021-09-26 16:01:07 -07:00 |
|
Leonardo de Moura
|
9d69189a60
|
chore: use Sum instead of PSum at PackMutual
|
2021-09-25 17:24:56 -07:00 |
|
Leonardo de Moura
|
d4509878bb
|
feat: add WellFoundedRelation for termination_by
|
2021-09-25 17:21:03 -07:00 |
|
Leonardo de Moura
|
ceb9889b0e
|
feat: elaborate temination_by term
|
2021-09-25 16:54:41 -07:00 |
|
Leonardo de Moura
|
58c938cef8
|
feat: 'termination_by' goodies
|
2021-09-22 21:09:33 -07:00 |
|
Leonardo de Moura
|
38f91a2fa4
|
doc: PackMutual.lean
|
2021-09-22 18:27:57 -07:00 |
|
Leonardo de Moura
|
0b7b174f25
|
feat: replace recursive applications at packMutual
|
2021-09-22 18:07:07 -07:00 |
|
Leonardo de Moura
|
b8454f3568
|
fix: packDomain
|
2021-09-22 18:00:22 -07:00 |
|
Leonardo de Moura
|
65983ef45b
|
feat: add WF/PackMutual.lean
|
2021-09-22 15:46:47 -07:00 |
|
Leonardo de Moura
|
a909e8cf26
|
feat: arity mismatch error message at well-founded recursion
|
2021-09-21 20:34:15 -07:00 |
|
Leonardo de Moura
|
ee2bdc1f84
|
feat: add WF/PackDomain.lean
|
2021-09-21 19:38:43 -07:00 |
|
Leonardo de Moura
|
5a301d8c3b
|
refactor: add src/Lean/Elab/PreDefinition/WF directory
|
2021-09-21 15:44:21 -07:00 |
|