diff options
author | Amin Timany <amintimany@gmail.com> | 2017-06-01 16:18:19 +0200 |
---|---|---|
committer | Emilio Jesus Gallego Arias <e+git@x80.org> | 2017-06-16 04:51:19 +0200 |
commit | ff918e4bb0ae23566e038f4b55d84dd2c343f95e (patch) | |
tree | ebab76cc4dedaf307f96088a3756d8292a341433 /kernel/inductive.ml | |
parent | 3380f47d2bb38d549fcdac8fb073f9aa1f259a23 (diff) |
Clean up universes of constants and inductives
Diffstat (limited to 'kernel/inductive.ml')
-rw-r--r-- | kernel/inductive.ml | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/kernel/inductive.ml b/kernel/inductive.ml index 0f0dc0d60..e81a1cb58 100644 --- a/kernel/inductive.ml +++ b/kernel/inductive.ml @@ -54,9 +54,13 @@ let inductive_paramdecls (mib,u) = Vars.subst_instance_context u mib.mind_params_ctxt let instantiate_inductive_constraints mib u = - if mib.mind_polymorphic then - Univ.subst_instance_constraints u (Univ.UContext.constraints (Univ.UInfoInd.univ_context mib.mind_universes)) - else Univ.Constraint.empty + let process auctx = + Univ.UContext.constraints (Univ.subst_instance_context u auctx) + in + match mib.mind_universes with + | Monomorphic_ind _ -> Univ.Constraint.empty + | Polymorphic_ind auctx -> process auctx + | Cumulative_ind cumi -> process (Univ.ACumulativityInfo.univ_context cumi) (************************************************************************) |