aboutsummaryrefslogtreecommitdiffhomepage
path: root/kernel/reduction.ml
diff options
context:
space:
mode:
authorGravatar Matthieu Sozeau <mattam@mattam.org>2018-01-04 05:40:08 -0800
committerGravatar Matthieu Sozeau <mattam@mattam.org>2018-03-08 07:40:27 -0300
commitfd2e9fd5f859f729765706f1f56df0fa080c0513 (patch)
tree33f0090f7d0e47c544621120ab52e2e5646be9ee /kernel/reduction.ml
parent563199757c5756fb5858da1b684162566a73fa3e (diff)
Relax conversion of constructors according to the pCuIC model
- Nothing to check in conversion as they have a common supertype by typing. - In inference, enforce that one is lower than the other.
Diffstat (limited to 'kernel/reduction.ml')
-rw-r--r--kernel/reduction.ml5
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/reduction.ml b/kernel/reduction.ml
index e9be1b35d..b3e689414 100644
--- a/kernel/reduction.ml
+++ b/kernel/reduction.ml
@@ -269,8 +269,9 @@ let convert_constructors_gen cmp_instances cmp_cumul (mind, ind, cns) nargs u1 u
if not (Int.equal num_cnstr_args nargs) then
cmp_instances u1 u2 s
else
- let csts = get_cumulativity_constraints CONV cumi u1 u2 in
- cmp_cumul csts s
+ (** By invariant, both constructors have a common supertype,
+ so they are convertible _at that type_. *)
+ s
let convert_constructors ctor nargs u1 u2 (s, check) =
convert_constructors_gen (check.compare_instances ~flex:false) check.compare_cumul_instances