X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fcic%2FcicUtil.mli;h=54a0a9bea639a2d72a16a03840b0166382c4625e;hb=5061952d0632ba8bc77be5cab11fab2f36e1e26f;hp=4391efc821ec6d0e2fe318e38c0faeb1aa9af48d;hpb=551b90466538e44c85b2f739e47b89140c0bce67;p=helm.git diff --git a/helm/software/components/cic/cicUtil.mli b/helm/software/components/cic/cicUtil.mli index 4391efc82..54a0a9bea 100644 --- a/helm/software/components/cic/cicUtil.mli +++ b/helm/software/components/cic/cicUtil.mli @@ -36,6 +36,8 @@ val clean_up_local_context : val is_closed : Cic.term -> bool val is_meta_closed : Cic.term -> bool val metas_of_term : Cic.term -> (int * Cic.term option list) list +(* as before but with no duplicates. may avoind some stack overflows *) +val metas_of_term_set : Cic.term -> (int * Cic.term option list) list (** @raise Failure "not enough prods" *) val strip_prods: int -> Cic.term -> Cic.term @@ -51,6 +53,9 @@ val id_of_annterm: Cic.annterm -> Cic.id val params_of_obj: Cic.obj -> UriManager.uri list val attributes_of_obj: Cic.obj -> Cic.attribute list +val projections_of_record: Cic.obj -> UriManager.uri -> UriManager.uri list +val arity_of_composed_coercion: Cic.obj -> int +val is_generated: Cic.obj -> bool (** mk_rels [howmany] [from] * creates a list of [howmany] rels starting from [from] in decreasing order *) @@ -60,3 +65,9 @@ val mk_rels : int -> int -> Cic.term list val rehash_term: Cic.term -> Cic.term val rehash_obj: Cic.obj -> Cic.obj +val alpha_equivalence: Cic.term -> Cic.term -> bool + +(* FG: Consistency Check + * detects applications without arguments + *) +val is_sober: Cic.context -> Cic.term -> bool