signature MONO_SET = sigtype set
type elem
valempty : set
valsingleton : elem -> set
valsize : set -> int
valisEmpty : set -> bool
valmember : elem * set -> bool
valeq : set * set -> bool
vallist : set -> elem list
valfromList : elem list -> set
valinsert : elem * set -> set
valremove : elem * set -> set
valdifference : set * set -> set
valintersect : set * set -> set
valunion : set * set -> set
valpartition : (elem -> bool) -> set -> set * set
valfold : (elem * 'b -> 'b) -> 'b -> set -> 'b
valapp : (elem -> unit) -> set -> unit
end
returns a pair of sets (s1, s2) where f returns true
for each element in s1 and false for each element in s2 and where s is
the union of s1 and s2. The order in which f is applied to the
elements of s is implementation dependent.