aboutsummaryrefslogtreecommitdiffhomepage
path: root/theories/Classes
diff options
context:
space:
mode:
authorGravatar Matthieu Sozeau <mattam@mattam.org>2015-10-07 13:11:52 +0200
committerGravatar Matthieu Sozeau <mattam@mattam.org>2015-10-07 13:17:11 +0200
commitd37aab528dca587127b9f9944e1521e4fc3d9cc7 (patch)
tree3d8db828b3e6644c924a75592dded2a168fbeb59 /theories/Classes
parent840155eafd9607c7656c80770de1e2819fe56a13 (diff)
Univs: add Strict Universe Declaration option (on by default)
This option disallows "declare at first use" semantics for universe variables (in @{}), forcing the declaration of _all_ universes appearing in a definition when introducing it with syntax Definition/Inductive foo@{i j k} .. The bound universes at the end of a definition/inductive must be exactly those ones, no extras allowed currently. Test-suite files using the old semantics just disable the option.
Diffstat (limited to 'theories/Classes')
-rw-r--r--theories/Classes/CMorphisms.v5
1 files changed, 3 insertions, 2 deletions
diff --git a/theories/Classes/CMorphisms.v b/theories/Classes/CMorphisms.v
index 9d3952e64..fdedbf672 100644
--- a/theories/Classes/CMorphisms.v
+++ b/theories/Classes/CMorphisms.v
@@ -266,8 +266,10 @@ Section GenericInstances.
transitivity (y x0)...
Qed.
+ Unset Strict Universe Declaration.
+
(** The complement of a crelation conserves its proper elements. *)
- Program Definition complement_proper
+ Program Definition complement_proper (A : Type@{k}) (RA : crelation A)
`(mR : Proper (A -> A -> Prop) (RA ==> RA ==> iff) R) :
Proper (RA ==> RA ==> iff) (complement@{i j Prop} R) := _.
@@ -279,7 +281,6 @@ Section GenericInstances.
Qed.
(** The [flip] too, actually the [flip] instance is a bit more general. *)
-
Program Definition flip_proper
`(mor : Proper (A -> B -> C) (RA ==> RB ==> RC) f) :
Proper (RB ==> RA ==> RC) (flip f) := _.