X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fng_kernel%2FnCicSubstitution.mli;h=ad8074dc7fef40a4e0118cc290c3186227bb0f10;hb=2da35c1dc1aff5f852886ac64d641774f2f187cf;hp=7e3301fa8ec037135215662c955bfe58f68978d8;hpb=e48acbc0d00717ce8f12412673ece4e4ee0e9642;p=helm.git diff --git a/helm/software/components/ng_kernel/nCicSubstitution.mli b/helm/software/components/ng_kernel/nCicSubstitution.mli index 7e3301fa8..ad8074dc7 100644 --- a/helm/software/components/ng_kernel/nCicSubstitution.mli +++ b/helm/software/components/ng_kernel/nCicSubstitution.mli @@ -11,31 +11,37 @@ (* $Id$ *) +val set_ppterm : (context:NCic.context -> + subst:NCic.substitution -> + metasenv:NCic.metasenv -> + ?inside_fix:bool -> + NCic.term -> string) -> unit + (* lift n t *) (* lifts [t] of [n] *) (* [from] default 1, lifts only indexes >= [from] *) (* NOTE: the opposite function (delift_rels) is defined in CicMetaSubst *) (* since it needs to restrict the metavariables in case of failure *) -val lift : ?from:int -> int -> NCic.term -> NCic.term +val lift : ?from:int -> ?no_implicit:bool -> int -> NCic.term -> NCic.term (* subst t1 t2 *) (* substitutes [t1] for [Rel 1] in [t2] *) (* if avoid_beta_redexes is true (default: false) no new beta redexes *) (* are generated. WARNING: the substitution can diverge when t2 is not *) (* well typed and avoid_beta_redexes is true. *) -val subst : ?avoid_beta_redexes:bool -> NCic.term -> NCic.term -> NCic.term +val subst : + ?avoid_beta_redexes:bool -> ?no_implicit:bool -> + NCic.term -> NCic.term -> NCic.term -(* psubst [avoid] [delift] [lift_args] [t] [map_arg] [args] +(* psubst [avoid] [map_arg] [args] [t] * [avoid] : do not leave newly created beta-redexes, default false - * [delift] : perform delifting * [t] : term to fill in - * [lift_args] : lift argument after map_arg is applied * [args] : stuff to substitute * [map_arg] : map the argument to obtain a term * the function is ReductionStrategy.from_env_for_unwind when psubst is * used to implement nCicReduction.unwind' *) val psubst : - ?avoid_beta_redexes:bool -> bool -> int -> + ?avoid_beta_redexes:bool -> ?no_implicit:bool -> ('a -> NCic.term) -> 'a list -> NCic.term -> NCic.term