induction xs
α : Type u_1
xs : List α
⊢ ∀ (ix bound : ℕ) (H : ix + List.length xs = bound), List.length xs = List.length (zipFlatIndexGo xs ix bound H)
case nil
α : Type u_1
⊢ ∀ (ix bound : ℕ) (H : ix + List.length [] = bound), List.length [] = List.length (zipFlatIndexGo [] ix bound H)

case cons
α : Type u_1
head✝ : α
tail✝ : List α
tail_ih✝ :
  ∀ (ix bound : ℕ) (H : ix + List.length tail✝ = bound),
    List.length tail✝ = List.length (zipFlatIndexGo tail✝ ix bound H)
⊢ ∀ (ix bound : ℕ) (H : ix + List.length (head✝ :: tail✝) = bound),
    List.length (head✝ :: tail✝) = List.length (zipFlatIndexGo (head✝ :: tail✝) ix bound H)