X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Facic_procedural%2FproceduralHelpers.mli;h=03faf269bf136490099d05936b3ac24963b9d05d;hb=11b2157bacf59cfc561c2ef6f92ee41ee2c1a006;hp=84844942ae36807410ec7cf594da05e960cd570b;hpb=c465c17581bf606e0330cbd89b238279c184ad35;p=helm.git diff --git a/helm/software/components/acic_procedural/proceduralHelpers.mli b/helm/software/components/acic_procedural/proceduralHelpers.mli index 84844942a..03faf269b 100644 --- a/helm/software/components/acic_procedural/proceduralHelpers.mli +++ b/helm/software/components/acic_procedural/proceduralHelpers.mli @@ -24,28 +24,80 @@ *) val mk_fresh_name: - Cic.context -> Cic.name -> Cic.name + bool -> Cic.context -> Cic.name -> Cic.name + +val list_fold_right_cps: + ('b -> 'c) -> (('b -> 'c) -> 'a -> 'b -> 'c) -> 'a list -> 'b -> 'c + +val list_fold_left_cps: + ('b -> 'c) -> (('b -> 'c) -> 'b -> 'a -> 'c) -> 'b -> 'a list -> 'c + val list_map_cps: - ('a list -> 'b) -> (('a -> 'b) -> 'c -> 'b) -> 'c list -> 'b + ('b list -> 'c) -> (('b -> 'c) -> 'a -> 'c) -> 'a list -> 'c + val identity: - 'a -> 'a + 'a -> 'a + val compose: ('a -> 'b) -> ('c -> 'a) -> 'c -> 'b + val fst3: 'a * 'b * 'c -> 'a + val refine: Cic.context -> Cic.term -> Cic.term + val get_type: - Cic.context -> Cic.term -> Cic.term + string -> Cic.context -> Cic.term -> Cic.term + +val is_prop: + Cic.context -> Cic.term -> bool + val is_proof: Cic.context -> Cic.term -> bool + +val is_sort: + Cic.term -> bool + val is_unsafe: int -> Cic.context * Cic.term -> bool + val is_not_atomic: Cic.term -> bool + +val is_atomic: + Cic.term -> bool + val get_ind_type: UriManager.uri -> int -> int * Cic.inductiveType + +val get_ind_names: + UriManager.uri -> int -> string list + val get_default_eliminator: Cic.context -> UriManager.uri -> int -> Cic.term -> Cic.term + val get_ind_parameters: Cic.context -> Cic.term -> Cic.term list * int + +val cic: + Cic.annterm -> Cic.term + +val occurs: + Cic.context -> what:Cic.term -> where:Cic.term -> bool + +val name_of_uri: + UriManager.uri -> int option -> int option -> string + +val cic_bc: + Cic.context -> Cic.term -> Cic.term + +val acic_bc: + Cic.context -> Cic.annterm -> Cic.annterm + +val is_acic_proof: + (Cic.id, Cic2acic.sort_kind) Hashtbl.t -> Cic.context -> Cic.annterm -> + bool + +val alpha_equivalence: + ?flatten:bool -> Cic.context -> Cic.term -> Cic.term -> bool