theorem extracted_formal_statement_29 {n : ℕ} (f : ℤ → Signs n → ℝ) :
  ∑ σ, f (↑σ.1) σ.2 =
    ∑ σ,
      f (↑((Fin.snocEquiv fun x => { x // x ∈ {-1, 1} }).symm σ).1)
        ((Fin.snocEquiv fun x => { x // x ∈ {-1, 1} }).symm σ).2 := sorry

State before:
n : ℕ
f : ℤ → Signs n → ℝ
⊢ ∑ σ, f (↑σ.1) σ.2 =
    ∑ σ,
      f (↑((Fin.snocEquiv fun x => { x // x ∈ {-1, 1} }).symm σ).1)
        ((Fin.snocEquiv fun x => { x // x ∈ {-1, 1} }).symm σ).2

Tactic: exact
  Eq.symm
    (Fintype.sum_equiv (Fin.snocEquiv fun x ↦ { x // x ∈ {-1, 1} }).symm
      (fun x ↦ (fun σ' ↦ f (↑σ'.1) σ'.2) ((Fin.snocEquiv fun x ↦ { x // x ∈ {-1, 1} }).symm x)) (fun x ↦ f (↑x.1) x.2)
      (congrFun rfl))

State after:

Relevant lemmas:
congrFun : ∀ {α : Sort u} {β : α → Sort v} {f g : (x : α) → β x}, f = g → ∀ (a : α), f a = g a
symm : ∀ {α : Sort u_1} {r : α → α → Prop} {a b : α} [inst : IsSymm α r], r a b → r b a
Fintype.sum_equiv : ∀ {ι : Type u_6} {κ : Type u_7} {α : Type u_8} [inst : Fintype ι] [inst_1 : Fintype κ]
  [inst_2 : AddCommMonoid α] (e : ι ≃ κ) (f : ι → α) (g : κ → α), (∀ (x : ι), f x = g (e x)) → ∑ x, f x = ∑ x, g x
Eq.symm : ∀ {α : Sort u} {a b : α}, a = b → b = a