]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/cic_unification/cicMetaSubst.mli
- occur check test anticipated to the delift phase
[helm.git] / helm / ocaml / cic_unification / cicMetaSubst.mli
index 5f29b9bdfc86cd060a2da19b919c3b8dacb3a515..986a595ce78fdb2ebec9e5dc89ee401ae275e874 100644 (file)
 exception AssertFailure of string
 exception MetaSubstFailure of string
 
-val delift : 
- Cic.context -> Cic.metasenv -> (Cic.term option) list -> Cic.term ->
-   Cic.term * Cic.metasenv
-
 (* The entry (i,t) in a substitution means that *)
 (* (META i) have been instantiated with t.      *)
 type substitution = (int * Cic.term) list
 
+val delift : 
+  int -> substitution -> Cic.context -> Cic.metasenv -> (Cic.term option) list -> Cic.term ->
+   Cic.term * Cic.metasenv
+
 (* unwind_subst metasenv subst                         *)
 (* unwinds [subst] w.r.t. itself.                      *)
 (* It can restrict some metavariable in the [metasenv] *)
@@ -69,10 +69,10 @@ val ppsubst: substitution -> string
  * From now on we recreate a kernel abstraction where substitutions are part of
  * the calculus *)
 
-val whd: substitution -> Cic.context -> Cic.term -> Cic.term
+val whd: Cic.metasenv -> substitution -> Cic.context -> Cic.term -> Cic.term
 
 val are_convertible:
-  substitution -> Cic.context -> Cic.term -> Cic.term ->
+  Cic.metasenv -> substitution -> Cic.context -> Cic.term -> Cic.term ->
     bool
 
 val type_of_aux':