X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fng_paramodulation%2Forderings.mli;h=a6d1a87432f71acc0c47cdfa44492b78e092ec64;hb=5780119aea0a20e74f7c153add432f5d491ee2a5;hp=59cfde124c3468adbbbc7d567fb02d53d4b88880;hpb=4aaab68e38ccafb352cc2b656e3ec3cf1ef33cab;p=helm.git diff --git a/helm/software/components/ng_paramodulation/orderings.mli b/helm/software/components/ng_paramodulation/orderings.mli index 59cfde124..a6d1a8743 100644 --- a/helm/software/components/ng_paramodulation/orderings.mli +++ b/helm/software/components/ng_paramodulation/orderings.mli @@ -11,4 +11,32 @@ (* $Id: nCic.ml 9058 2008-10-13 17:42:30Z tassi $ *) -val compare_terms : 'a Terms.foterm -> 'a Terms.foterm -> Terms.comparison +module type Blob = + sig + include Terms.Blob + + (* This order relation should be: + * - stable for instantiation + * - total on ground terms + * + *) + val compare_terms : + t Terms.foterm -> t Terms.foterm -> Terms.comparison + + (* these could be outside the module, but to ease experimentation + * we allow them to be tied with the ordering *) + val compute_unit_clause_weight : 't Terms.unit_clause -> int + val compute_goal_weight : 't Terms.unit_clause -> int + + val name : string + + end + +module NRKBO (B : Terms.Blob) : Blob +with type t = B.t and type input = B.input + +module KBO (B : Terms.Blob) : Blob +with type t = B.t and type input = B.input + +module LPO (B : Terms.Blob) : Blob +with type t = B.t and type input = B.input