let add (heap: heap) (data: data) : unit = increase_heap_size heap data; sift_up heap data heap.hp_length; heap.hp_length <- heap.hp_length + 1; check heap