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 *)
21 * B.t Terms.unit_clause
22 * B.t Terms.substitution
24 (* The returned active set is the input one + the selected clause *)
28 B.t Terms.unit_clause -> (* selected passive *)
29 Index.Index(B).active_set ->
30 B.t Terms.bag * int * Index.Index(B).active_set * B.t Terms.unit_clause list
35 B.t Terms.unit_clause -> (* selected goal *)
36 Index.Index(B).active_set ->
37 B.t Terms.bag * int * B.t Terms.unit_clause list
41 B.t Terms.unit_clause ->
42 Index.Index(B).DT.t -> B.t Terms.bag * B.t Terms.unit_clause
45 Index.Index(B).DT.t ->
48 B.t Terms.unit_clause ->
49 B.t Terms.bag * (B.t Terms.unit_clause option)
51 (* may raise success *)
55 Index.Index(B).DT.t ->
57 B.t Terms.unit_clause list ->
58 B.t Terms.unit_clause ->
59 (B.t Terms.bag * B.t Terms.unit_clause) option
61 val one_pass_simplification:
62 B.t Terms.unit_clause ->
63 Index.Index(B).active_set ->
66 B.t Terms.bag * (B.t Terms.unit_clause * Index.Index(B).active_set) option
68 B.t Terms.unit_clause ->
69 Index.Index(B).active_set ->
72 B.t Terms.bag * (B.t Terms.unit_clause * Index.Index(B).active_set) option
76 B.t Terms.unit_clause list ->
77 B.t Terms.unit_clause ->
81 B.t Terms.unit_clause ->
82 B.t Terms.unit_clause ->