simp [Fin.pair] at hp
case mk
α : Type u_1
β : Type u_2
L2 : List β
j : Fin L2.length
hd : α
tl : List α
ih :
  ∀ {i : Fin tl.length} (LL : List (α × β)),
    tl ×ˢ L2 = LL → ∀ {p : Fin LL.length}, ↑p = ↑(i.pair j) → LL.get p = (tl.get i, L2.get j)
LL : List (α × β)
hLL : (hd :: tl) ×ˢ L2 = LL
p : ℕ
isLt✝ : p < LL.length
hp : ↑⟨p, isLt✝⟩ = ↑(Fin.pair 0 j)
⊢ LL.get ⟨p, isLt✝⟩ = ((hd :: tl).get 0, L2.get j)
case mk
α : Type u_1
β : Type u_2
L2 : List β
j : Fin L2.length
hd : α
tl : List α
ih :
  ∀ {i : Fin tl.length} (LL : List (α × β)),
    tl ×ˢ L2 = LL → ∀ {p : Fin LL.length}, ↑p = ↑(i.pair j) → LL.get p = (tl.get i, L2.get j)
LL : List (α × β)
hLL : (hd :: tl) ×ˢ L2 = LL
p : ℕ
isLt✝ : p < LL.length
hp : p = ↑j
⊢ LL.get ⟨p, isLt✝⟩ = ((hd :: tl).get 0, L2.get j)