`type 'a t`
`val empty : 'a t`
`val is_empty : 'a t -> bool`
`val add : 'a Name.t -> 'a t -> 'a t`
`val remove : 'a Name.t -> 'a t -> 'a t`
`val from_list : 'a Name.t list -> 'a t`
`val mem : 'a Name.t -> 'a t -> bool`
`val exists : ('a Name.t -> bool) -> 'a t -> bool`
`val iter : ('a Name.t -> unit) -> 'a t -> unit`
`val cardinal : 'a t -> int`
`val elements : 'a t -> 'a Name.t list`
`val fold : ('a Name.t -> 'b -> 'b) -> 'a t -> 'b -> 'b`
`val filter : ('a Name.t -> bool) -> 'a t -> 'a t`
`val for_all : ('a Name.t -> bool) -> 'a t -> bool`