sig
  type 'a t
  val pp : Format.formatter -> 'a Iteration.PreDomain.t -> unit
  val show : 'a Iteration.PreDomain.t -> string
  val closure : 'a Iteration.PreDomain.t -> 'a Syntax.formula
  val join :
    'a Iteration.PreDomain.t ->
    'a Iteration.PreDomain.t -> 'a Iteration.PreDomain.t
  val widen :
    'a Iteration.PreDomain.t ->
    'a Iteration.PreDomain.t -> 'a Iteration.PreDomain.t
  val equal : 'a Iteration.PreDomain.t -> 'a Iteration.PreDomain.t -> bool
  val tr_symbols :
    'a Iteration.PreDomain.t -> (Syntax.symbol * Syntax.symbol) list
end