Commit graph

1551 commits

Author SHA1 Message Date
Leonardo de Moura
ae03f15c92 test: default value set at copied structure 2021-08-10 19:00:34 -07:00
Leonardo de Moura
3b1285bee8 feat: process overriden default values in copied parents 2021-08-10 18:55:12 -07:00
Leonardo de Moura
295cae8afd feat: copy field default values
Only basic examples are working. We still have many TODOs
2021-08-10 16:53:10 -07:00
Leonardo de Moura
47b8fa15f1 fix: propagate visibility annotation 2021-08-10 15:34:07 -07:00
Leonardo de Moura
972f00b0ff fix: pending metavariable issue
It fixes issue reported at https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/let.20overload
2021-08-10 14:52:53 -07:00
Leonardo de Moura
9cd729265e fix: missing instantiateMVars 2021-08-10 10:04:16 -07:00
Leonardo de Moura
9fe1cd1026 chore: modify default value for option structureDiamondWarning
We still have some TODO items, but structure diamond support is
already useful in practice.
2021-08-10 09:24:53 -07:00
Leonardo de Moura
50deae9b8b feat: copy binderInfo and inferMod from original field 2021-08-10 09:12:58 -07:00
Leonardo de Moura
bc26a9b527 feat: improve copyNewFieldsFrom 2021-08-10 09:08:35 -07:00
Leonardo de Moura
af1cecc641 feat: better error message 2021-08-10 07:46:15 -07:00
Leonardo de Moura
9e5998baf0 feat: register instance/reducible attribute for structuer diamond coercions 2021-08-10 07:16:59 -07:00
Leonardo de Moura
0f184a8c93 fix: binder annotation for class diamond coercions 2021-08-10 06:59:28 -07:00
Sebastian Ullrich
0b3e548672 fix: syntax tree returned by syntax elaborator 2021-08-10 12:02:04 +02:00
Leonardo de Moura
bccad8edb1 feat: add coercion to parent structure whose fields having been copied 2021-08-09 19:01:08 -07:00
Leonardo de Moura
97664de3ee fix: diamonds with dependent fields 2021-08-09 19:01:08 -07:00
Leonardo de Moura
e8403f89b0 fix: ensure field names are atomic 2021-08-09 19:01:08 -07:00
Leonardo de Moura
6f318ddde3 feat: save binderInfo and inferMod ad registerStructure 2021-08-09 19:01:08 -07:00
Leonardo de Moura
f67501a890 chore: cleanup 2021-08-09 19:01:08 -07:00
Leonardo de Moura
3f3e5d9dcb fix: private field + default value bug 2021-08-09 19:01:08 -07:00
Leonardo de Moura
3896c44b55 chore: fix incorrect comment
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2021-08-09 19:01:08 -07:00
Leonardo de Moura
fdce7a99e1 feat: structure diamonds basic support
See TODO in the new comments.
2021-08-09 19:01:08 -07:00
Leonardo de Moura
a821dcbff2 chore: enforce naming convention for theorems
see issue #402

fix: `ElabTerm.lean`
2021-08-07 12:48:38 -07:00
Leonardo de Moura
6e2b7189e8 fix: fixes #242 2021-08-06 18:39:55 -07:00
Leonardo de Moura
dca9278e09 feat: add elabModuleDoc 2021-08-06 13:45:36 -07:00
Leonardo de Moura
1be41f2adb chore: fix stdlib 2021-08-06 12:58:58 -07:00
Leonardo de Moura
76cc99179d fix: fixes #370 2021-08-06 12:52:23 -07:00
Leonardo de Moura
4dbb3e6db1 fix: add workaround to prevent code explosion at deriving for FromJson
fixes #569
2021-08-05 06:58:07 -07:00
Wojciech Nawrocki
3bbf19a404 feat: FromToJson for nested inductives 2021-08-05 06:27:57 -07:00
Leonardo de Moura
aff28f51cd fix: fixes #604 2021-08-04 17:19:17 -07:00
Leonardo de Moura
0869bbe558 fix: missig registerMVarErrorImplicitArgInfo for postponed instance mvars 2021-08-04 16:58:00 -07:00
Leonardo de Moura
91b60cbb22 chore: indentation 2021-08-04 16:50:57 -07:00
Leonardo de Moura
61cdf93750 fix: missing registerMVarErrorImplicitArgInfo 2021-08-04 16:09:18 -07:00
Leonardo de Moura
4ca7345956 refactor: remove old workaround 2021-08-03 19:50:16 -07:00
Leonardo de Moura
4cd7e359df feat: elaborate strict implicit binders 2021-08-03 19:40:44 -07:00
Leonardo de Moura
d1d7ce1839 feat: start support for strict implicit binder annotation 2021-08-03 18:42:15 -07:00
Leonardo de Moura
68cd66a2b6 feat: elaborate visibility modifier at initialization commands 2021-08-03 17:56:52 -07:00
Leonardo de Moura
f9672fe4c6 feat: add optional visibitily modifier to initialize and builtin_initialize commands 2021-08-03 14:37:22 -07:00
Leonardo de Moura
65aafc070c chore: remove mkInternalSubobjectFieldName hack 2021-08-03 12:05:10 -07:00
Daniel Selsam
6940166db4 chore: rebase and rm rawPos 2021-08-03 09:13:18 +02:00
Daniel Selsam
89364b802b feat: top-down heuristic delaboration 2021-08-03 09:13:18 +02:00
Leonardo de Moura
d864afae91 feat: private fields
closes #418
2021-08-02 20:20:21 -07:00
Leonardo de Moura
90047e73e8 feat: cache structure parent names 2021-08-02 18:58:00 -07:00
Leonardo de Moura
cfb7e27b87 fix: isStructure vs isStructureLike 2021-08-02 18:54:19 -07:00
Leonardo de Moura
635bc78d72 feat: use structure extension to implement Structure.lean 2021-08-02 18:03:20 -07:00
Leonardo de Moura
1ca62e21fd feat: add environment extension for storing structure field information 2021-08-02 16:17:35 -07:00
Leonardo de Moura
bba9353619 fix: make sure isDefEqOffset does not expose kernel nat literals
This issue is similar to a bug where `isDefEqOffset` was exposing
`Nat.add` when processing `HAdd.hAdd`.

Fixes #561
The example at issue #561 is now working, but we may have other places
where raw literals are being accidentally exposed.
2021-08-02 11:27:00 -07:00
Leonardo de Moura
9e4582a7d0 fix: fixes #593 2021-08-02 10:46:12 -07:00
Leonardo de Moura
89e333ab52 chore: move import Lean.Elab.Open 2021-08-02 10:13:35 -07:00
Wojciech Nawrocki
a937fa26ba chore: fewer explicit types 2021-08-01 09:58:44 +02:00
Wojciech Nawrocki
f51b80060d feat: generic tagged Format 2021-08-01 09:58:44 +02:00