X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fng_kernel%2FnCicUntrusted.mli;h=7ff7f9335b6c2b5561171907fae35e12811ed73a;hb=f9f75ab7c53e17d10c8a8fad42a0fe82a7e28b71;hp=1df92163d845c4d55f689978c05cfed6d1e00748;hpb=e78cf74f8976cf0ca554f64baa9979d0423ee927;p=helm.git diff --git a/helm/software/components/ng_kernel/nCicUntrusted.mli b/helm/software/components/ng_kernel/nCicUntrusted.mli index 1df92163d..7ff7f9335 100644 --- a/helm/software/components/ng_kernel/nCicUntrusted.mli +++ b/helm/software/components/ng_kernel/nCicUntrusted.mli @@ -19,6 +19,17 @@ 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 @@ -26,4 +37,11 @@ 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