X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fng_paramodulation%2Forderings.mli;h=a6d1a87432f71acc0c47cdfa44492b78e092ec64;hb=946065280df015323ce624769fd0c4261f8b4209;hp=9d0f47d22d5f8de288735614e70607f5dd84638b;hpb=ddd751449e73a22af523ce78ce1d8f0bb211e941;p=helm.git diff --git a/helm/software/components/ng_paramodulation/orderings.mli b/helm/software/components/ng_paramodulation/orderings.mli index 9d0f47d22..a6d1a8743 100644 --- a/helm/software/components/ng_paramodulation/orderings.mli +++ b/helm/software/components/ng_paramodulation/orderings.mli @@ -11,3 +11,32 @@ (* $Id: nCic.ml 9058 2008-10-13 17:42:30Z tassi $ *) +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