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.
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_______________________________________________________________ *)
12 (* $Id: index.mli 9822 2009-06-03 15:37:06Z tassi $ *)
14 module Superposition (B : Orderings.Blob) :
17 (* bag, maxvar, meeting point *)
18 exception Success of B.t Terms.bag * int * B.t Terms.unit_clause
20 (* The returned active set is the input one + the selected clause *)
24 B.t Terms.unit_clause -> (* selected passive *)
25 Index.Index(B).active_set ->
26 B.t Terms.bag * int * Index.Index(B).active_set * B.t Terms.unit_clause list
31 B.t Terms.unit_clause -> (* selected goal *)
32 Index.Index(B).active_set ->
33 B.t Terms.bag * int * B.t Terms.unit_clause list
37 B.t Terms.unit_clause ->
38 Index.Index(B).DT.t -> B.t Terms.bag * B.t Terms.unit_clause
41 Index.Index(B).DT.t ->
44 B.t Terms.unit_clause ->
45 B.t Terms.bag * (B.t Terms.unit_clause option)
47 (* may raise success *)
51 Index.Index(B).DT.t ->
53 B.t Terms.unit_clause list ->
54 B.t Terms.unit_clause ->
55 (B.t Terms.bag * B.t Terms.unit_clause) option
57 val one_pass_simplification:
58 B.t Terms.unit_clause ->
59 Index.Index(B).active_set ->
62 B.t Terms.bag * (B.t Terms.unit_clause * Index.Index(B).active_set) option
66 B.t Terms.unit_clause ->
67 Index.Index(B).active_set ->
70 B.t Terms.bag * (B.t Terms.unit_clause * Index.Index(B).active_set) option
74 B.t Terms.unit_clause list ->
75 B.t Terms.unit_clause ->