]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/cic_proof_checking/freshNamesGenerator.ml
added oblivion_universe and used it in paxck_coercions
[helm.git] / helm / software / components / cic_proof_checking / freshNamesGenerator.ml
index 5f3bfdbbd01a284190f10d6e618ed002981f8de5..4838623c257bed1ad15eec199c5c66a2524c64fb 100755 (executable)
@@ -60,7 +60,9 @@ let rec guess_a_name context ty =
   | Cic.Implicit _ -> assert false
   | Cic.Cast (t1,t2) -> guess_a_name context t1
   | Cic.Prod (na_,_,t) -> higher_name 1 t
-  | Cic.Lambda _ -> assert false                   
+(* warning: on appl we should beta reduce before the recursive call
+  | Cic.Lambda _ -> assert false   
+*)
   | Cic.LetIn (_,s,t) -> guess_a_name context (CicSubstitution.subst ~avoid_beta_redexes:true s t)
   | Cic.Appl [] -> assert false
   | Cic.Appl (he::_) -> guess_a_name context he 
@@ -81,7 +83,8 @@ let mk_fresh_name ~subst metasenv context name ~typ =
        (try
         let ty,_ = 
           CicTypeChecker.type_of_aux' ~subst metasenv context typ 
-            CicUniv.empty_ugraph in 
+            CicUniv.oblivion_ugraph 
+        in 
          (match ty with
              C.Sort C.Prop
            | C.Sort C.CProp -> "H"