X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fng_kernel%2FnCicUntrusted.mli;h=7ff7f9335b6c2b5561171907fae35e12811ed73a;hb=53b957fd45c47b20d698503c9bb67e2ef3ab98e1;hp=72e512784cdee4ea5129ac92671ea4ac51003b9c;hpb=0bd584a839bae570f44c4a5f8a06cdbc55fe0726;p=helm.git diff --git a/helm/software/components/ng_kernel/nCicUntrusted.mli b/helm/software/components/ng_kernel/nCicUntrusted.mli index 72e512784..7ff7f9335 100644 --- a/helm/software/components/ng_kernel/nCicUntrusted.mli +++ b/helm/software/components/ng_kernel/nCicUntrusted.mli @@ -15,5 +15,33 @@ val map_term_fold_a: (NCic.hypothesis -> 'k -> 'k) -> 'k -> ('k -> 'a -> NCic.term -> 'a * NCic.term) -> 'a -> NCic.term -> 'a * NCic.term +val map_obj_kind: + ?skip_body:bool -> (NCic.term -> NCic.term) -> NCic.obj_kind -> NCic.obj_kind + val metas_of_term : NCic.substitution -> NCic.context -> NCic.term -> int list +val sort_metasenv: NCic.substitution -> NCic.metasenv -> NCic.metasenv + +type meta_kind = [ `IsSort | `IsType | `IsTerm ] +val kind_of_meta: NCic.meta_attrs -> meta_kind +val set_kind: meta_kind -> NCic.meta_attrs -> NCic.meta_attrs +val replace_in_metasenv: + int -> (NCic.conjecture -> NCic.conjecture) -> NCic.metasenv -> NCic.metasenv +val replace_in_subst: + int -> (NCic.subst_entry -> NCic.subst_entry) -> NCic.substitution -> + NCic.substitution +val max_kind: meta_kind -> meta_kind -> meta_kind + +module NCicHash : Hashtbl.S with type key = NCic.term + +val mk_appl : NCic.term -> NCic.term list -> NCic.term + +(* the context is needed only to honour Barendregt's naming convention *) +val apply_subst : NCic.substitution -> NCic.context -> NCic.term -> NCic.term +val apply_subst_context : fix_projections:bool -> + NCic.substitution -> NCic.context -> NCic.context +val apply_subst_metasenv : NCic.substitution -> NCic.metasenv -> NCic.metasenv +val count_occurrences : + subst:NCic.substitution -> int -> NCic.term -> int +(* quick, but with false negatives (since no ~subst), check for closed terms *) +val looks_closed : NCic.term -> bool