]> matita.cs.unibo.it Git - helm.git/blob - helm/software/components/ng_paramodulation/clauses.mli
Ported demodulation on clauses
[helm.git] / helm / software / components / ng_paramodulation / clauses.mli
1 (*
2     ||M||  This file is part of HELM, an Hypertextual, Electronic        
3     ||A||  Library of Mathematics, developed at the Computer Science     
4     ||T||  Department, University of Bologna, Italy.                     
5     ||I||                                                                
6     ||T||  HELM is free software; you can redistribute it and/or         
7     ||A||  modify it under the terms of the GNU General Public License   
8     \   /  version 2 or (at your option) any later version.      
9      \ /   This software is distributed as is, NO WARRANTY.     
10       V_______________________________________________________________ *)
11
12 (* $Id: terms.ml 9836 2009-06-05 15:33:35Z denes $ *)
13
14 module type Blob =
15   sig
16     include Orderings.Blob
17
18   end
19
20 module Clauses (B : Orderings.Blob) :
21   sig
22
23     val eq_clause : B.t Terms.clause -> B.t Terms.clause -> bool
24     val compare_clause : B.t Terms.clause -> B.t Terms.clause -> int      
25     val fresh_clause : int -> B.t Terms.clause -> B.t Terms.clause * int
26
27     val mk_clause : int -> B.t Terms.foterm list -> B.t Terms.foterm list
28                            -> B.t Terms.foterm -> B.t Terms.clause * int
29
30     val mk_passive_clause : B.t Terms.clause -> int * B.t Terms.clause
31  
32     val mk_passive_goal : B.t Terms.clause -> int * B.t Terms.clause
33  
34     val compare_passive_clauses_weight :
35            int * B.t Terms.clause -> int * B.t Terms.clause -> int
36  
37     val compare_passive_clauses_age :
38            int * B.t Terms.clause -> int * B.t Terms.clause -> int
39
40     val are_alpha_eq_cl :
41            B.t Terms.clause -> B.t Terms.clause -> bool
42
43 end