simp at eq
α : Type u_1
le : α → α → Bool
not_le_le : ∀ (x y : α), ¬le x y = true → le y x = true
le_trans : ∀ (x y z : α), le x y = true → le y z = true → le x z = true
le_rfl : ∀ (z : α), le z z = true
xs : Heap α
y : α
ys : Heap α
h : HeapNodeAux α (Heap α)
h₁ : IsHeap (Heap.heap [h])
h₂ : IsMinHeap le (Heap.heap [h])
eq : (h.val, h.children).fst = (y, ys).fst ∧ (h.val, h.children).snd = (y, ys).snd
⊢ IsHeap ys ∧ IsMinHeap le ys
α : Type u_1
le : α → α → Bool
not_le_le : ∀ (x y : α), ¬le x y = true → le y x = true
le_trans : ∀ (x y z : α), le x y = true → le y z = true → le x z = true
le_rfl : ∀ (z : α), le z z = true
xs : Heap α
y : α
ys : Heap α
h : HeapNodeAux α (Heap α)
h₁ : IsHeap (Heap.heap [h])
h₂ : IsMinHeap le (Heap.heap [h])
eq : h.val = y ∧ h.children = ys
⊢ IsHeap ys ∧ IsMinHeap le ys