type comparison = Lt | Eq | Gt | Incomparable
-type rule = SuperpositionRight | SuperpositionLeft | Demodulation
+type rule = Superposition | Demodulation
type direction = Left2Right | Right2Left | Nodir
type position = int list
module M : Map.S with type key = int
= Map.Make(OT)
-type 'a bag = 'a unit_clause M.t
+type 'a bag = ('a unit_clause * bool) M.t
module type Blob =
sig
type t
val eq : t -> t -> bool
val compare : t -> t -> int
- val is_eq_predicate : t -> bool
+ val eqP : t
val pp : t -> string
- val embed : t -> t foterm
- val saturate : t -> t -> t foterm * t foterm
+ type input
+ val embed : input -> t foterm
+ val saturate : input -> input -> t foterm * t foterm
end