X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fcic_proof_checking%2FcicSubstitution.mli;h=1f0705881994baf0262fffc861e5580b714160a8;hb=567bddeb2cb49029607b7517fbcaa9a973cb0d23;hp=2032869911d35fa6154298b7c1bb10d1fa77dff0;hpb=9ea87248101d774e1b4c4b706d8d99444b2e5907;p=helm.git diff --git a/helm/ocaml/cic_proof_checking/cicSubstitution.mli b/helm/ocaml/cic_proof_checking/cicSubstitution.mli index 203286991..1f0705881 100644 --- a/helm/ocaml/cic_proof_checking/cicSubstitution.mli +++ b/helm/ocaml/cic_proof_checking/cicSubstitution.mli @@ -33,6 +33,16 @@ exception ReferenceToInductiveDefinition;; (* lifts [t] of [n] *) val lift : int -> Cic.term -> Cic.term +(** delifts t of n + * @raise Failure s + *) +val delift : int -> Cic.term -> Cic.term + + +(* lift from n t *) +(* as lift but lifts only indexes >= from *) +val lift_from: int -> int -> Cic.term -> Cic.term + (* subst t1 t2 *) (* substitutes [t1] for [Rel 1] in [t2] *) val subst : Cic.term -> Cic.term -> Cic.term @@ -42,7 +52,10 @@ val subst : Cic.term -> Cic.term -> Cic.term val subst_vars : Cic.term Cic.explicit_named_substitution -> Cic.term -> Cic.term +(* TODO CSC rename to subst_meta *) + (* lift_meta [t_1 ; ... ; t_n] t *) (* returns the term [t] where [Rel i] is substituted with [t_i] *) (* [t_i] is lifted as usual when it crosses an abstraction *) val lift_meta : (Cic.term option) list -> Cic.term -> Cic.term +