module type Heap_ =sig..end
type 'a elt_
type 'a heap
val empty : 'a heapval is_empty : 'a heap -> boolval singleton : 'a elt_ -> 'a heapval insert : 'a elt_ ->
'a heap -> 'a heapval merge : 'a heap ->
'a heap -> 'a heapval find_min : 'a heap -> 'a elt_val delete_min : 'a heap -> 'a heap