X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=components%2Ftactics%2Fparamodulation%2Findexing.mli;h=e180511a64cbbd9f6d84d779249e83833b6ef615;hb=e3f6d410ebe780d1b26a0bcf982ef900a94e95a7;hp=8fd6187024cbc9bc51ee579215de33480509aaff;hpb=1b75bf92c6232210cb5fcce8683a7d6c0e7a3235;p=helm.git diff --git a/components/tactics/paramodulation/indexing.mli b/components/tactics/paramodulation/indexing.mli index 8fd618702..e180511a6 100644 --- a/components/tactics/paramodulation/indexing.mli +++ b/components/tactics/paramodulation/indexing.mli @@ -25,15 +25,12 @@ (* $Id$ *) -type goal = Equality.goal_proof * Cic.metasenv * Cic.term - module Index : sig module PosEqSet : Set.S with type elt = Utils.pos * Equality.equality and type t = Equality_indexing.DT.PosEqSet.t type t = Discrimination_tree.DiscriminationTreeIndexing(PosEqSet).t - type key = Cic.term end val index : Index.t -> Equality.equality -> Index.t @@ -45,20 +42,23 @@ val unification : Cic.metasenv * Cic.context * CicUniv.universe_graph -> Index.t -> Equality.equality -> - (Subst.substitution * Equality.equality * Utils.pos) option + (Subst.substitution * Equality.equality * bool) option val subsumption : Cic.metasenv * Cic.context * CicUniv.universe_graph -> Index.t -> Equality.equality -> - (Subst.substitution * Equality.equality * Utils.pos) option + (Subst.substitution * Equality.equality * bool) option + val superposition_left : + Equality.equality_bag -> Cic.conjecture list * Cic.context * CicUniv.universe_graph -> - Index.t -> - goal -> - goal list + Index.t -> Equality.goal -> int -> + int * Equality.goal list val superposition_right : + Equality.equality_bag -> ?subterms_only:bool -> + UriManager.uri -> int -> 'a * Cic.context * CicUniv.universe_graph -> Index.t -> @@ -66,23 +66,28 @@ val superposition_right : int * Equality.equality list val demodulation_equality : + Equality.equality_bag -> ?from:string -> + UriManager.uri -> int -> Cic.metasenv * Cic.context * CicUniv.universe_graph -> Index.t -> - Utils.equality_sign -> Equality.equality -> int * Equality.equality + Equality.equality -> int * Equality.equality val demodulation_goal : + Equality.equality_bag -> Cic.metasenv * Cic.context * CicUniv.universe_graph -> Index.t -> - goal -> - bool * goal + Equality.goal -> + bool * Equality.goal val demodulation_theorem : + Equality.equality_bag -> 'a -> Cic.metasenv * Cic.context * CicUniv.universe_graph -> Index.t -> - Cic.term * Index.key * Cic.metasenv -> - 'a * (Cic.term * Index.key * Cic.metasenv) + Cic.term * Cic.term * Cic.metasenv -> + 'a * (Cic.term * Cic.term * Cic.metasenv) val check_target: + Equality.equality_bag -> Cic.context -> Equality.equality -> string -> unit