Top.205 <= Top.179 predicate <= sa.A Set < Top.208 Set < abc Set < Top.205 Set < predicate
*)
Definition foo : predicate T (Build_sa T) :=
{| pred_fun:= fun w => True |}. (* *) (* Top.208 < Top.205 <--- added by foo *) (* *)
Check predicate nat (Build_sa nat). (*
The issue is that the template polymorphic universe of [predicate], Top.205, does not get replaced with the universe of [nat] in the above line. -Jason Gross
(* This works in 8.4pl4 and SHOULD work in 8.5 *) Definition bar : ABC :=
{| abc:= predicate nat (Build_sa nat) |}. (* The term "predicate nat (Build_sa nat)" has type "Type@{max(Set+1, Top.205)}" while it is expected to have type "Type@{Top.208}" (universe inconsistency: Cannot enforce Top.205 <= Top.208 because Top.208 < Top.205).
*)
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 ist noch experimentell.