| x::tl -> x :: replace_in_metasenv i f tl
;;
+let rec replace_in_subst i f = function
+ | [] -> assert false
+ | (j,e)::tl when j=i -> (i,f e) :: tl
+ | x::tl -> x :: replace_in_subst i f tl
+;;
+
let set_kind newkind attrs =
newkind :: List.filter (fun x -> not (is_kind x)) attrs
;;
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