simp only [push_cons_eq_cons_push, mapM_cons, bind_assoc, IH, pure_bind]
α : Type u
β : Type v
γ : Type w
n : Nat
m : Type v → Type w
inst✝¹ : Monad m
inst✝ : LawfulMonad m
f : α → m β
x✝ : SizedArray α n
a✝ : α
n✝ : Nat
a : α
x : SizedArray α n✝
IH :
  mapM f (push x a✝) = do
    let y ← mapM f x
    let b ← f a✝
    pure (push y b)
⊢ mapM f (push (cons a x) a✝) = do
    let y ← mapM f (cons a x)
    let b ← f a✝
    pure (push y b)
no goals