Commit graph

93 commits

Author SHA1 Message Date
Leonardo de Moura
be06ce5fec chore: update TODO list 2020-07-23 16:45:51 -07:00
Leonardo de Moura
ca2e82f39b feat: add projections 2020-07-23 16:42:34 -07:00
Leonardo de Moura
db53d0aa7e fix: validate visibility modifiers 2020-07-23 15:13:55 -07:00
Leonardo de Moura
e4865f5aad fix: resolveGlobalName for atomic references to private names 2020-07-23 14:58:19 -07:00
Leonardo de Moura
07cb21c609 fix: subobject fields 2020-07-23 13:38:56 -07:00
Leonardo de Moura
9c230dd18e feat: add structure declaration 2020-07-23 13:32:15 -07:00
Leonardo de Moura
ca096305b2 feat: make structure constructor 2020-07-23 12:57:06 -07:00
Leonardo de Moura
3ec925ec64 chore: cleanup 2020-07-22 17:36:38 -07:00
Leonardo de Moura
ff6807f561 feat: collect used level parameters 2020-07-22 17:31:55 -07:00
Leonardo de Moura
d506e726f1 feat: structure resulting universe 2020-07-22 14:52:23 -07:00
Leonardo de Moura
9bfb144efd feat: convert unassigned universe metavariables into new parameters 2020-07-22 14:25:52 -07:00
Leonardo de Moura
fe5a0026cd fix: levelMVarToParam consider Expr assignment 2020-07-22 14:01:32 -07:00
Leonardo de Moura
be4d65e936 fix: must collect occurrences in the types 2020-07-21 16:59:28 -07:00
Leonardo de Moura
628be67e66 feat: remove unused scope variables 2020-07-21 16:59:21 -07:00
Leonardo de Moura
a703610347 chore: reject private fields for now
See comment at `src/Lean/Structure.lean`
2020-07-21 16:57:36 -07:00
Leonardo de Moura
801acd3e62 feat: elaborate fields 2020-07-21 16:57:36 -07:00
Leonardo de Moura
27c3e23c17 fix: type is optional in explicit fields
Reason: default value overriding notation.
2020-07-21 16:57:36 -07:00
Leonardo de Moura
19fc369875 feat: throw error at field names starting with '_' 2020-07-21 16:57:36 -07:00
Leonardo de Moura
1267b4908f feat: elaborate parents and subfields 2020-07-20 16:14:36 -07:00
Leonardo de Moura
21980658a5 fix: fieldBinders 2020-07-20 10:32:11 -07:00
Leonardo de Moura
7bffa51d22 fix: missing file 2020-07-17 17:25:15 -07:00
Leonardo de Moura
ad485484a5 chore: minor 2020-07-17 17:15:33 -07:00
Leonardo de Moura
795b5d600a feat: add expandFields 2020-07-17 11:10:34 -07:00
Leonardo de Moura
d2f26e142d chore: naming 2020-07-17 09:18:20 -07:00
Leonardo de Moura
bf88a35888 feat: add views for structure command 2020-07-16 16:35:00 -07:00
Leonardo de Moura
cdd6e48315 fix: do not assume the prefix of a projection function name is the structure name 2020-07-16 11:10:20 -07:00
Leonardo de Moura
ebe66fdbc9 feat: add Elab/Structure.lean 2020-07-16 10:47:40 -07:00
Leonardo de Moura
b247d4901c feat: allow commands such as variable and universe in the preamble of a mutual command block 2020-07-16 09:55:51 -07:00
Leonardo de Moura
6f402a081c fix: register class for class inductive 2020-07-15 16:32:23 -07:00
Leonardo de Moura
232eefcef9 feat: add auxiliary constructions for inductive types 2020-07-15 16:32:23 -07:00
Leonardo de Moura
8a2dd414ff feat: inductive command
cc @Kha
2020-07-15 16:32:23 -07:00
Leonardo de Moura
98d8520158 feat: infer binder annotations for constructor parameters 2020-07-15 16:32:23 -07:00
Leonardo de Moura
9876f91cf7 chore: cleanup 2020-07-15 16:32:23 -07:00
Leonardo de Moura
ab2ea30a19 feat: replace fvars with consts 2020-07-15 16:32:23 -07:00
Leonardo de Moura
4fbef3b6ed feat: collect and sort used level params 2020-07-15 16:32:23 -07:00
Leonardo de Moura
fbf59e0799 fix: register levelNames defined in the inductive command 2020-07-15 16:32:22 -07:00
Leonardo de Moura
26a35e3ab1 feat: updateResultingUniverse 2020-07-15 16:32:22 -07:00
Leonardo de Moura
94154113b5 feat: remove unused variables 2020-07-15 16:32:22 -07:00
Leonardo de Moura
4745519b54 feat: add Lean.Elab.CollectFVars 2020-07-15 16:32:22 -07:00
Leonardo de Moura
02de582941 feat: inductive datatype resulting universe inference 2020-07-14 17:18:58 -07:00
Leonardo de Moura
19b281e11e fix: universe parameter generation 2020-07-14 17:15:15 -07:00
Leonardo de Moura
48c6c7c871 feat: report unused universe parameters 2020-07-14 16:40:56 -07:00
Leonardo de Moura
19595a0d03 fix: resolve pending universe metavars 2020-07-14 10:23:20 -07:00
Leonardo de Moura
455361d7d7 chore: update comment 2020-07-13 16:22:49 -07:00
Leonardo de Moura
d4ae4da222 feat: check given constructor resulting type 2020-07-13 16:22:49 -07:00
Leonardo de Moura
920343d36b fix: unspecified constructor resulting type is not allowed inductive families 2020-07-13 16:22:49 -07:00
Leonardo de Moura
9960ca01f0 feat: reject protected constructors in a private inductive datatype
In a private inductive datatype, all constructors are private.
2020-07-13 16:22:49 -07:00
Leonardo de Moura
2744ae96bb feat: check unsafe annotations in mutually inductive datatype declarations 2020-07-13 16:22:49 -07:00
Leonardo de Moura
2bf10b3d2c feat: add inferMod field to CtorView 2020-07-13 16:22:49 -07:00
Leonardo de Moura
2cc2e71a53 feat: elaborate constructors 2020-07-13 16:22:49 -07:00