exact exists_get_heapifyDown lt x n l' (size_heapifyDown lt x n ▸ hl')
case succ
α : Type u
lt : α → α → Bool
k n : Nat
IH✝ : ∀ (x : Subarray α) (hk : k < Subarray.size x), ∃ l hl, (mkHeap.loop lt x n)[k] = x[l]
x : Subarray α
hk : k < Subarray.size x
l' : Nat
hl' : l' < Subarray.size (heapifyDown lt x n)
IH : (mkHeap.loop lt (heapifyDown lt x n) n)[k] = (heapifyDown lt x n)[l']
⊢ ∃ l hl, (heapifyDown lt x n)[l'] = x[l]
no goals