sp;&nbsp;val&nbsp;partition&nbsp;:&nbsp;(Set.S.elt&nbsp;-&gt;&nbsp;bool)&nbsp;-&gt;&nbsp;Set.S.t&nbsp;-&gt;&nbsp;Set.S.t&nbsp;*&nbsp;Set.S.t
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val&nbsp;cardinal&nbsp;:&nbsp;Set.S.t&nbsp;-&gt;&nbsp;int
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val&nbsp;elements&nbsp;:&nbsp;Set.S.t&nbsp;-&gt;&nbsp;Set.S.elt&nbsp;list
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val&nbsp;min_elt&nbsp;:&nbsp;Set.S.t&nbsp;-&gt;&nbsp;Set.S.elt
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val&nbsp;min_elt_opt&nbsp;:&nbsp