simp only [List.length_map, List.enum_length, Function.uncurry_apply_pair, List.length_dropLast]
α β : Type
f : ℕ → α → β
l : List α
h2 : l ≠ []
⊢ Function.uncurry f
      (↑⟨↑⟨(List.map (Function.uncurry f) l.enum).length - 1, ⋯⟩, ⋯⟩,
        l.get (Fin.cast ⋯ ⟨↑⟨(List.map (Function.uncurry f) l.enum).length - 1, ⋯⟩, ⋯⟩)) =
    f l.dropLast.length (l.getLast h2)
α β : Type
f : ℕ → α → β
l : List α
h2 : l ≠ []
⊢ f (l.length - 1) (l.get (Fin.cast ⋯ ⟨l.length - 1, ⋯⟩)) = f (l.length - 1) (l.getLast h2)