(* This example (found by coqchk) checks that an inductive cannot be polymorphicifitsconstructorsinduceupperuniverseconstraints. Here:Icannotbepolymorphicbecauseitstypeislessthanthe
type of the argument of impl. *)
Definition Type1 := Type. Definition Type3 : Type1 := Type. (* Type3 < Type1 *) Definition Type4 := Type. Definition impl (A B:Type3) : Type4 := A->B. (* Type3 <= Type4 *) Inductive I (B:Type(*6*)) := C : B -> impl Prop (I B). (* Type(6) <= Type(7) because I contains, via C, elements in B Type(7)<=Type3because(IB)isargumentofimpl Type(4)<=Type(7)becausetypeofClessthanI(seeremarkbelow)
(* We cannot enforce Type1 < Type(6) while we already have
Type(6) <= Type(7) < Type3 < Type1 *)
Fail Definition J := I Type1.
(* Open question: should the type of an inductive be the max of the typesofthe_arguments_ofitsconstructors(hereBandProp, afterunfoldingofimpl),orofthemaxoftypesofthe
constructors itself (here B -> impl Prop (I B)), as done above. *)
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-09-29)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.