aboutsummaryrefslogtreecommitdiffhomepage
path: root/pretyping/typeclasses_errors.mli
diff options
context:
space:
mode:
authorGravatar msozeau <msozeau@85f007b7-540e-0410-9357-904b9bb8a0f7>2008-03-28 20:40:35 +0000
committerGravatar msozeau <msozeau@85f007b7-540e-0410-9357-904b9bb8a0f7>2008-03-28 20:40:35 +0000
commit22cc653ceff98ea69d0975ee0ccdcecc4ba96058 (patch)
treefb2b12a19945d2153d7db8aa715833015cc25ec2 /pretyping/typeclasses_errors.mli
parent6bd55e5c17463d3868becba4064dba46c95c4028 (diff)
Improve error handling and messages for typeclasses.
Add definitions of relational algebra in Classes/RelationClasses including equivalence, inclusion, conjunction and disjunction. Add PartialOrder class and show that we have a partial order on relations. Change SubRelation to subrelation for consistency with the standard library. The caracterization of PartialOrder is a bit original: we require an equivalence and a preorder so that the equivalence relation is equivalent to the conjunction of the order relation and its inverse. We can derive antisymmetry and appropriate morphism instances from this. Also add a fully general heterogeneous definition of respectful from which we can build the non-dependent respectful combinator. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@10728 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'pretyping/typeclasses_errors.mli')
-rw-r--r--pretyping/typeclasses_errors.mli4
1 files changed, 2 insertions, 2 deletions
diff --git a/pretyping/typeclasses_errors.mli b/pretyping/typeclasses_errors.mli
index a697087d2..f97aed96a 100644
--- a/pretyping/typeclasses_errors.mli
+++ b/pretyping/typeclasses_errors.mli
@@ -28,7 +28,7 @@ type typeclass_error =
| NotAClass of constr
| UnboundMethod of global_reference * identifier located (* Class name, method *)
| NoInstance of identifier located * constr list
- | UnsatisfiableConstraints of evar_map
+ | UnsatisfiableConstraints of evar_defs
| MismatchedContextInstance of contexts * constr_expr list * named_context (* found, expected *)
exception TypeClassError of env * typeclass_error
@@ -39,6 +39,6 @@ val unbound_method : env -> global_reference -> identifier located -> 'a
val no_instance : env -> identifier located -> constr list -> 'a
-val unsatisfiable_constraints : env -> evar_map -> 'a
+val unsatisfiable_constraints : env -> evar_defs -> 'a
val mismatched_ctx_inst : env -> contexts -> constr_expr list -> named_context -> 'a