diff options
| author | Arnaud Spiwack | 2015-06-22 13:42:13 +0200 |
|---|---|---|
| committer | Arnaud Spiwack | 2015-06-24 17:55:47 +0200 |
| commit | 8589b9b487c1e9b996975bd5dc58f548d0d9280c (patch) | |
| tree | f3a8ed36341e62d02f2c526df53e214ef6e23fee /kernel | |
| parent | 9420069e4d0bf3bf377c950bbc41ea762fbcfce8 (diff) | |
Add a field in `mutual_inductive_body` to represent mutual inductive whose positivity is assumed.
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/declarations.mli | 1 | ||||
| -rw-r--r-- | kernel/declareops.ml | 4 | ||||
| -rw-r--r-- | kernel/indtypes.ml | 1 |
3 files changed, 5 insertions, 1 deletions
diff --git a/kernel/declarations.mli b/kernel/declarations.mli index 27c1c3f3f0..ef3e1bb6ae 100644 --- a/kernel/declarations.mli +++ b/kernel/declarations.mli @@ -184,6 +184,7 @@ type mutual_inductive_body = { mind_private : bool option; (** allow pattern-matching: Some true ok, Some false blocked *) + mind_checked_positive : bool; (** [false] when the mutual-inductive was assumed to be well-founded, bypassing the positivity checker. *) } (** {6 Module declarations } *) diff --git a/kernel/declareops.ml b/kernel/declareops.ml index a7051d5c13..870aef1d28 100644 --- a/kernel/declareops.ml +++ b/kernel/declareops.ml @@ -258,7 +258,9 @@ let subst_mind_body sub mib = mind_packets = Array.smartmap (subst_mind_packet sub) mib.mind_packets ; mind_polymorphic = mib.mind_polymorphic; mind_universes = mib.mind_universes; - mind_private = mib.mind_private } + mind_private = mib.mind_private; + mind_checked_positive = mib.mind_checked_positive; + } let inductive_instance mib = if mib.mind_polymorphic then diff --git a/kernel/indtypes.ml b/kernel/indtypes.ml index 92e121402a..72b615cc89 100644 --- a/kernel/indtypes.ml +++ b/kernel/indtypes.ml @@ -857,6 +857,7 @@ let build_inductive env p prv ctx env_ar params kn isrecord isfinite inds nmr re mind_polymorphic = p; mind_universes = ctx; mind_private = prv; + mind_checked_positive = true; } (************************************************************************) |
