sig
  type set = Vset.vset list
  and vset =
      Set of Lang.F.tau * Lang.F.term
    | Singleton of Lang.F.term
    | Range of Lang.F.term option * Lang.F.term option
    | Descr of Lang.F.var list * Lang.F.term * Lang.F.pred
  val tau_of_set : Lang.F.tau -> Lang.F.tau
  val vars : Vset.set -> Lang.F.Vars.t
  val occurs : Lang.F.var -> Vset.set -> bool
  val empty : Vset.set
  val singleton : Lang.F.term -> Vset.set
  val range : Lang.F.term option -> Lang.F.term option -> Vset.set
  val union : Vset.set -> Vset.set -> Vset.set
  val inter : Lang.F.term -> Lang.F.term -> Lang.F.term
  val member : Lang.F.term -> Vset.set -> Lang.F.pred
  val in_size : Lang.F.term -> int -> Lang.F.pred
  val in_range :
    Lang.F.term -> Lang.F.term option -> Lang.F.term option -> Lang.F.pred
  val sub_range :
    Lang.F.term ->
    Lang.F.term -> Lang.F.term option -> Lang.F.term option -> Lang.F.pred
  val ordered :
    limit:bool ->
    strict:bool -> Lang.F.term option -> Lang.F.term option -> Lang.F.pred
  val is_empty : Vset.set -> Lang.F.pred
  val equal : Vset.set -> Vset.set -> Lang.F.pred
  val subset : Vset.set -> Vset.set -> Lang.F.pred
  val disjoint : Vset.set -> Vset.set -> Lang.F.pred
  val concretize : Vset.set -> Lang.F.term
  val bound_shift : Lang.F.term option -> Lang.F.term -> Lang.F.term option
  val bound_add :
    Lang.F.term option -> Lang.F.term option -> Lang.F.term option
  val bound_sub :
    Lang.F.term option -> Lang.F.term option -> Lang.F.term option
  val pp_bound : Stdlib.Format.formatter -> Lang.F.term option -> unit
  val pp_vset : Stdlib.Format.formatter -> Vset.vset -> unit
  val pretty : Stdlib.Format.formatter -> Vset.set -> unit
  val map : (Lang.F.term -> Lang.F.term) -> Vset.set -> Vset.set
  val map_opp : Vset.set -> Vset.set
  val lift :
    (Lang.F.term -> Lang.F.term -> Lang.F.term) ->
    Vset.set -> Vset.set -> Vset.set
  val lift_add : Vset.set -> Vset.set -> Vset.set
  val lift_sub : Vset.set -> Vset.set -> Vset.set
  val descr : Vset.vset -> Lang.F.var list * Lang.F.term * Lang.F.pred
end