sig
  type e
  val current : unit -> Infsys.EQ.e
  val initialize : Infsys.EQ.e -> unit
  val finalize : unit -> Infsys.EQ.e
  val abstract : Term.t -> unit
  val merge : Fact.Equal.t -> unit
  val propagate : Fact.Equal.t -> unit
  val dismerge : Fact.Diseq.t -> unit
  val propagate_diseq : Fact.Diseq.t -> unit
  val branch : unit -> unit
  val normalize : unit -> unit
end