]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/ng_kernel/nCicTypeChecker.ml
Huge commit with several changes:
[helm.git] / helm / software / components / ng_kernel / nCicTypeChecker.ml
index 8beca4cf0504285f32355529739aabfa73700e1a..0d3fc07d12458267ef78b7addf98d4a393502047 100644 (file)
@@ -744,13 +744,11 @@ and check_mutual_inductive_defs uri ~metasenv ~subst leftno tyl =
               (fun context item1 item2 ->
                 let convertible =
                  match item1,item2 with
-                   (n1,C.Decl ty1),(n2,C.Decl ty2) ->
-                     n1 = n2 && 
+                   (_,C.Decl ty1),(_,C.Decl ty2) ->
                      R.are_convertible ~metasenv ~subst context ty1 ty2
-                 | (n1,C.Def (bo1,ty1)),(n2,C.Def (bo2,ty2)) ->
-                     n1 = n2
-                     && R.are_convertible ~metasenv ~subst context ty1 ty2
-                     && R.are_convertible ~metasenv ~subst context bo1 bo2
+                 | (_,C.Def (bo1,ty1)),(_,C.Def (bo2,ty2)) ->
+                     R.are_convertible ~metasenv ~subst context ty1 ty2 &&
+                      R.are_convertible ~metasenv ~subst context bo1 bo2
                  | _,_ -> false
                 in
                  if not convertible then
@@ -1079,8 +1077,8 @@ and type_of_constant ((Ref.Ref (uri,_)) as ref) =
       let _,_,recno1,arity,_ = List.nth fl i in
       if h1 <> h2 || recno1 <> recno2 then error ();
       arity
-  | (_,_,_,_,C.Constant (_,_,_,ty,_)), Ref.Ref (_,Ref.Decl) -> ty
-  | (_,h1,_,_,C.Constant (_,_,_,ty,_)), Ref.Ref (_,Ref.Def h2) ->
+  | (_,_,_,_,C.Constant (_,_,None,ty,_)), Ref.Ref (_,Ref.Decl) -> ty
+  | (_,h1,_,_,C.Constant (_,_,Some _,ty,_)), Ref.Ref (_,Ref.Def h2) ->
      if h1 <> h2 then error ();
      ty
   | _ ->