diff options
author | 2014-05-06 09:51:21 -0400 | |
---|---|---|
committer | 2014-05-06 16:11:43 -0400 | |
commit | d1a39e06c44dc451d8a56a286017885d400ac435 (patch) | |
tree | f83237ecf03b9d809d888ea31a842e6fb6d716d0 /test-suite/bugs/closed/HoTT_coq_050.v | |
parent | d40091c015b68cc1a8403ca5dcc74323bf939f37 (diff) |
Add regression tests for univ. poly. and prim proj
These regression tests are aggregated from the various bugs I (and
others) have reported on https://github.com/HoTT/coq/issues relating to
universe polymorphism, primitive projections, and eta for records.
These are the tests that trunk currently passes.
I'm not sure about the naming scheme (HoTT_coq_###.v, where ### is the
number of the issue in GitHub), but I couldn't think of a better one.
Diffstat (limited to 'test-suite/bugs/closed/HoTT_coq_050.v')
-rw-r--r-- | test-suite/bugs/closed/HoTT_coq_050.v | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/HoTT_coq_050.v b/test-suite/bugs/closed/HoTT_coq_050.v new file mode 100644 index 000000000..ce9b6b297 --- /dev/null +++ b/test-suite/bugs/closed/HoTT_coq_050.v @@ -0,0 +1,33 @@ +Set Implicit Arguments. +Generalizable All Variables. +Set Asymmetric Patterns. +Set Universe Polymorphism. +Set Printing Universes. + +Set Printing All. + +Record PreCategory := + { + Object :> Type; + Morphism : Object -> Object -> Type + }. + +Inductive paths A (x : A) : A -> Type := idpath : @paths A x x. +Inductive Unit : Prop := tt. (* Changing this to [Set] fixes things *) +Inductive Bool : Set := true | false. + +Definition DiscreteCategory X : PreCategory + := @Build_PreCategory X + (@paths X). + +Definition IndiscreteCategory X : PreCategory + := @Build_PreCategory X + (fun _ _ => Unit). + +Check (IndiscreteCategory Unit). +Check (DiscreteCategory Bool). +Definition NatCategory (n : nat) := + match n with + | 0 => IndiscreteCategory Unit + | _ => DiscreteCategory Bool + end. (* Error: Universe inconsistency (cannot enforce Set <= Prop). *) |