1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
Unset Strict Universe Declaration.
Module WithoutPoly.
Unset Universe Polymorphism.
Definition foo (A : Type@{i}) (B : Type@{i}) := A -> B.
Set Printing Universes.
Definition bla := ((@foo : Set -> _ -> _) : _ -> Type -> _).
(* ((fun A : Set => foo A):Set -> Type@{Top.55} -> Type@{Top.55})
:Set -> Type@{Top.55} -> Type@{Top.55}
: Set -> Type@{Top.55} -> Type@{Top.55}
(* |= Set <= Top.55
*) *)
End WithoutPoly.
Module WithPoly.
Set Universe Polymorphism.
Definition foo (A : Type@{i}) (B : Type@{i}) := A -> B.
Set Printing Universes.
Fail Check ((@foo : Set -> _ -> _) : _ -> Type -> _).
End WithPoly.
|