Partitionval create :
?partition:('a Finite.element -> 'a Finite.element -> int) ->
'a Finite.set ->
'a tval mark : 'a t -> 'a Finite.element -> unitval split : 'a t -> unitval discard_unmarked : 'a t -> unitval discard : 'a t -> ('a Finite.element -> bool) -> unitval set_count : 'a t -> intval set_of : 'a t -> 'a Finite.element -> setval choose : 'a t -> set -> 'a Finite.elementval iter_elements : 'a t -> set -> ('a Finite.element -> unit) -> unitval iter_marked_elements : 'a t -> set -> ('a Finite.element -> unit) -> unitval clear_marks : 'a t -> unit