sig
  type t = Sl_heap_rho.t list
  val compare : t -> t -> int
  val equal : t -> t -> bool
  val hash : t -> int
  val to_string : t -> string
  val pp : Format.formatter -> t -> unit
  val empty : t
  exception Not_symheap
  val is_symheap : t -> bool
  val dest : t -> Sl_heap_rho.t
  val equal_upto_tags : t -> t -> bool
  val to_melt : t -> Latex.t
  val terms : t -> Sl_term.Set.t
  val vars : t -> Sl_term.Set.t
  val tags : t -> Tags.t
  val tag_pairs : t -> Tagpairs.t
  val inconsistent : t -> bool
  val subsumed : ?total:bool -> t -> t -> bool
  val subsumed_upto_tags : ?total:bool -> t -> t -> bool
  val parse : (t, 'a) MParser.t
  val of_string : string -> t
  val star : t -> t -> t
  val disj : t -> t -> t
  val subst : Sl_subst.t -> t -> t
  val subst_existentials : t -> t
  val subst_tags : Tagpairs.t -> t -> t
  val norm : t -> t
end