sig
  type t = Term.trm * Term.trm
  val lhs : Term.Equal.t -> Term.trm
  val rhs : Term.Equal.t -> Term.trm
  val make : Term.trm * Term.trm -> Term.Equal.t
  val destruct : Term.Equal.t -> Term.trm * Term.trm
  val pp : Term.Equal.t Pretty.printer
  val compare : Term.Equal.t -> Term.Equal.t -> int
  val is_var : Term.Equal.t -> bool
  val is_pure : Th.t -> Term.Equal.t -> bool
end