. simp [Nat.sub_add_cancel this]
case h₁
α : Type u_1
a : Array α
hemp : ¬a.isEmpty = true
this : 0 < a.size
⊢ (a.pop.push (a.back' hemp)).size = a.size

case h₂
α : Type u_1
a : Array α
hemp : ¬a.isEmpty = true
this : 0 < a.size
⊢ ∀ (i : Nat) (hi₁ : i < (a.pop.push (a.back' hemp)).size) (hi₂ : i < a.size), (a.pop.push (a.back' hemp))[i] = a[i]
case h₂
α : Type u_1
a : Array α
hemp : ¬a.isEmpty = true
this : 0 < a.size
⊢ ∀ (i : Nat) (hi₁ : i < (a.pop.push (a.back' hemp)).size) (hi₂ : i < a.size), (a.pop.push (a.back' hemp))[i] = a[i]