AltErgoLib.IheapInteger heaps
This modules define priority heaps over integers.
val init : int -> tCreate a heap with the given initial size.
val in_heap : t -> int -> boolHeap membership function.
val decrease : (int -> int -> bool) -> t -> int -> unitDecrease activity of the given integer. TODO: document the comparison function !
val increase : (int -> int -> bool) -> t -> int -> unitIncrease activity of the given integer. TODO: document the comparison function !
val size : t -> intReturns the current size of the heap.
val is_empty : t -> boolIs the heap empty ?
val insert : (int -> int -> bool) -> t -> int -> unitInset a new element in the heap. TODO: document comparison function.
val grow_to_by_double : t -> int -> unitGrow the size of the heap by multiplying it by 2 until it is at least the size specified.
val remove_min : (int -> int -> bool) -> t -> intRemove the minimum element from the heap and return it.
val filter : t -> (int -> bool) -> (int -> int -> bool) -> unitFilter elements in the heap. TODO: document comparison function !