*)
aux test_equality_only context t1 term' ugraph
with CicUtil.Subst_not_found _ -> false,ugraph)
- | (C.Sort (C.Type t1), C.Sort (C.Type t2))
- | (C.Sort (C.CProp t1), C.Sort (C.CProp t2)) when test_equality_only ->
- (try
- true,(CicUniv.add_eq t2 t1 ugraph)
- with CicUniv.UniverseInconsistency _ -> false,ugraph)
- | (C.Sort (C.Type t1), C.Sort (C.Type t2))
- | (C.Sort (C.CProp t1), C.Sort (C.CProp t2)) ->
- (try
- true,(CicUniv.add_ge t2 t1 ugraph)
- with CicUniv.UniverseInconsistency _ -> false,ugraph)
- | (C.Sort (C.CProp t1), C.Sort (C.Type t2)) when not test_equality_only ->
- (try
- true,(CicUniv.add_gt t2 t1 ugraph)
- with CicUniv.UniverseInconsistency _ -> false,ugraph)
- | (C.Sort (C.Type t1), C.Sort (C.CProp t2)) when not test_equality_only ->
- (try
- true,(CicUniv.add_ge t2 t1 ugraph)
- with CicUniv.UniverseInconsistency _ -> false,ugraph)
+ | (C.Sort (C.CProp t1|C.Type t1), C.Sort (C.CProp t2|C.Type t2))
+ when test_equality_only ->
+ (try true,(CicUniv.add_eq t2 t1 ugraph)
+ with CicUniv.UniverseInconsistency _ -> false,ugraph)
+ | (C.Sort (C.CProp t1|C.Type t1), C.Sort (C.CProp t2|C.Type t2))
+ when not test_equality_only ->
+ (try true,(CicUniv.add_ge t2 t1 ugraph)
+ with CicUniv.UniverseInconsistency _ -> false,ugraph)
| (C.Sort s1, C.Sort (C.Type _))
| (C.Sort s1, C.Sort (C.CProp _)) -> (not test_equality_only),ugraph
| (C.Sort s1, C.Sort s2) -> (s1 = s2),ugraph