X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fng_paramodulation%2FnCicBlob.ml;h=3383e01f2b383e3ff1e7032892f55a057641fcce;hb=38c54dd8e2234836d5f3e8011c478daf7d59fa25;hp=2ed7eef23b005efff510e2daa6a9619f9ea67d84;hpb=8a3045a162622e8a76ffdb267309faff496ee7ec;p=helm.git diff --git a/helm/software/components/ng_paramodulation/nCicBlob.ml b/helm/software/components/ng_paramodulation/nCicBlob.ml index 2ed7eef23..3383e01f2 100644 --- a/helm/software/components/ng_paramodulation/nCicBlob.ml +++ b/helm/software/components/ng_paramodulation/nCicBlob.ml @@ -19,7 +19,7 @@ module type NCicContext = end module NCicBlob(C : NCicContext) : Terms.Blob -with type t = NCic.term and type input = NCic.term = struct +with type t = NCic.term = struct type t = NCic.term @@ -48,36 +48,6 @@ with type t = NCic.term and type input = NCic.term = struct let pp t = NCicPp.ppterm ~context:C.context ~metasenv:C.metasenv ~subst:C.subst t;; - type input = NCic.term - - let rec embed = function - | NCic.Meta (i,_) -> Terms.Var i, [i] - | NCic.Appl l -> - let rec aux acc l = function - |[] -> acc@l - |hd::tl -> if List.mem hd l then aux acc l tl else aux (hd::acc) l tl - in - let res,vars = List.fold_left - (fun (r,v) t -> let r1,v1 = embed t in (r1::r),aux [] v v1) ([],[]) l - in (Terms.Node (List.rev res)), vars - | t -> Terms.Leaf t, [] - ;; - - let embed t = fst (embed t) ;; - - let saturate t ty = - let sty, _, args = - NCicMetaSubst.saturate ~delta:max_int C.metasenv C.subst C.context - ty 0 - in - let proof = - if args = [] then Terms.Leaf t - else Terms.Node (Terms.Leaf t :: List.map embed args) - in - let sty = embed sty in - proof, sty - ;; - let eqP = let r = OCic2NCic.reference_of_oxuri