sig
type t
val empty : G.t
val is_empty : G.t -> bool
val copy : G.t -> G.t
val eq : G.t -> G.t -> bool
val pp : G.t Pretty.printer
val replace : Fact.Equal.t -> G.t -> unit
val get : G.t -> Fact.t
val put : Fact.t -> G.t -> unit
val get_clause : G.t -> Clause.t
val put_clause : Clause.t -> G.t -> unit
end