sig
  type purable
  val purity_add :
    Purity.Purable.purable ->
    ?range:Purity.range option -> pur:Purity.t -> Purity.t
  val purify :
    Purity.Purable.purable ->
    cstr:Constraint.t -> pur:Purity.t -> Modified.t * Purity.Purable.purable
end