aboutsummaryrefslogtreecommitdiffhomepage
path: root/test-suite/bugs/closed/HoTT_coq_098.v
diff options
context:
space:
mode:
authorGravatar Jason Gross <jgross@mit.edu>2014-05-12 11:04:50 -0400
committerGravatar Jason Gross <jgross@mit.edu>2014-05-12 11:04:50 -0400
commit9c7e0a2e6a8e46dc439603cde501037a3e18050a (patch)
tree30466045fb87ba5e8d29adb1e658f1020bb70de3 /test-suite/bugs/closed/HoTT_coq_098.v
parent4a0e4ee76663a12e3cb3d22ce77b0d37a5830af5 (diff)
Update various polyproj bugs w.r.t. latest trunk
Diffstat (limited to 'test-suite/bugs/closed/HoTT_coq_098.v')
-rw-r--r--test-suite/bugs/closed/HoTT_coq_098.v88
1 files changed, 88 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/HoTT_coq_098.v b/test-suite/bugs/closed/HoTT_coq_098.v
new file mode 100644
index 000000000..fc15a88f7
--- /dev/null
+++ b/test-suite/bugs/closed/HoTT_coq_098.v
@@ -0,0 +1,88 @@
+Set Implicit Arguments.
+Generalizable All Variables.
+
+Polymorphic Record SpecializedCategory (obj : Type) := Build_SpecializedCategory' {
+ Object :> _ := obj;
+ Morphism' : obj -> obj -> Type;
+
+ Identity' : forall o, Morphism' o o;
+ Compose' : forall s d d', Morphism' d d' -> Morphism' s d -> Morphism' s d'
+}.
+
+Polymorphic Definition TypeCat : @SpecializedCategory Type
+ := (@Build_SpecializedCategory' Type
+ (fun s d => s -> d)
+ (fun _ => (fun x => x))
+ (fun _ _ _ f g => (fun x => f (g x)))).
+
+Inductive GraphIndex := GraphIndexSource | GraphIndexTarget.
+Polymorphic Definition GraphIndexingCategory : @SpecializedCategory GraphIndex.
+Admitted.
+
+Module success.
+ Section SpecializedFunctor.
+ Set Universe Polymorphism.
+ Context `(C : @SpecializedCategory objC).
+ Context `(D : @SpecializedCategory objD).
+ Unset Universe Polymorphism.
+
+ Polymorphic Record SpecializedFunctor
+ := {
+ ObjectOf' : objC -> objD;
+ MorphismOf' : forall s d, C.(Morphism') s d -> D.(Morphism') (ObjectOf' s) (ObjectOf' d)
+ }.
+ End SpecializedFunctor.
+
+ Polymorphic Definition UnderlyingGraph : SpecializedFunctor GraphIndexingCategory TypeCat.
+ Admitted.
+End success.
+
+Module failure.
+ Section SpecializedFunctor.
+ Context `(C : @SpecializedCategory objC).
+ Context `(D : @SpecializedCategory objD).
+
+ Polymorphic Record SpecializedFunctor
+ := {
+ ObjectOf' : objC -> objD;
+ MorphismOf' : forall s d, C.(Morphism') s d -> D.(Morphism') (ObjectOf' s) (ObjectOf' d)
+ }.
+ End SpecializedFunctor.
+
+ Set Printing Universes.
+ Polymorphic Definition UnderlyingGraph : SpecializedFunctor GraphIndexingCategory TypeCat.
+ (* Toplevel input, characters 73-94:
+Error:
+The term "GraphIndexingCategory (* Top.563 *)" has type
+ "SpecializedCategory (* Top.563 Set *) GraphIndex"
+while it is expected to have type
+ "SpecializedCategory (* Top.550 Top.551 *) ?7"
+(Universe inconsistency: Cannot enforce Set = Top.551)). *)
+ admit.
+ Defined.
+End failure.
+
+Module polycontext.
+ Section SpecializedFunctor.
+ Context `(C : @SpecializedCategory objC).
+ Context `(D : @SpecializedCategory objD).
+
+ Polymorphic Record SpecializedFunctor
+ := {
+ ObjectOf' : objC -> objD;
+ MorphismOf' : forall s d, C.(Morphism') s d -> D.(Morphism') (ObjectOf' s) (ObjectOf' d)
+ }.
+ End SpecializedFunctor.
+
+ Set Printing Universes.
+ Polymorphic Definition UnderlyingGraph : SpecializedFunctor GraphIndexingCategory TypeCat.
+ (* Toplevel input, characters 73-94:
+Error:
+The term "GraphIndexingCategory (* Top.563 *)" has type
+ "SpecializedCategory (* Top.563 Set *) GraphIndex"
+while it is expected to have type
+ "SpecializedCategory (* Top.550 Top.551 *) ?7"
+(Universe inconsistency: Cannot enforce Set = Top.551)). *)
+ admit.
+ Defined.
+End polycontext.