blob: 1d5e3c71b8f7e918d9ca687699881b2a3f5fcd4f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
Require Import Hurkens.
Module NonPoly.
Module Type Foo.
Definition U := Type.
Parameter eq : Type = U.
End Foo.
Module M : Foo with Definition U := Type.
Definition U := Type.
Definition eq : Type = U := eq_refl.
End M.
Print Universes.
Fail Definition bad : False := TypeNeqSmallType.paradox M.U M.eq.
End NonPoly.
Set Universe Polymorphism.
Module Type Foo.
Definition U := Type.
Monomorphic Parameter eq : Type = U.
End Foo.
Module M : Foo with Definition U := Type.
Definition U := Type.
Monomorphic Definition eq : Type = U := eq_refl.
End M.
Fail Definition bad : False := TypeNeqSmallType.paradox Type M.eq.
(* Print Assumptions bad. *)
|