-- File: FoML/FoML/Rademacher.lean
Theorem statement:
theorem extracted_formal_statement_117.{u_1, w, u} {Ω : Type u} [inst : MeasurableSpace Ω] {Z : Type w} {n : ℕ}
  {ι : Type u_1} {f : ι → Z → ℝ} [inst_1 : Countable ι] {X : Ω → Z} (hf : ∀ (i : ι), Measurable (f i ∘ X))
  (h_original_goal :
    Measurable fun ω =>
      (↑(Fintype.card (Signs n)))⁻¹ * ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * (f i (X (ω k).1) - f i (X (ω k).2))|) :
  Measurable fun a => ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * (f i (X (a k).1) - f i (X (a k).2))| := sorry

Tactic state before:
Ω : Type u
inst✝¹ : MeasurableSpace Ω
Z : Type w
n : ℕ
ι : Type u_1
f : ι → Z → ℝ
inst✝ : Countable ι
X : Ω → Z
hf : ∀ (i : ι), Measurable (f i ∘ X)
⊢ Measurable fun ω => (↑(Fintype.card (Signs n)))⁻¹ * ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * (f i (X (ω k).1) - f i (X (ω k).2))|

Tactic: apply Measurable.mul measurable_const

Tactic state after:
[Ω : Type u
 inst✝¹ : MeasurableSpace Ω
 Z : Type w
 n : ℕ
 ι : Type u_1
 f : ι → Z → ℝ
 inst✝ : Countable ι
 X : Ω → Z
 hf : ∀ (i : ι), Measurable (f i ∘ X)
 ⊢ Measurable fun a => ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * (f i (X (a k).1) - f i (X (a k).2))|]

Premises used:
measurable_const : ∀ {α : Type u_1} {β : Type u_2} {x : MeasurableSpace α} {x_1 : MeasurableSpace β} {a : α},
  Measurable fun x => a
Measurable.mul : ∀ {M : Type u_2} {α : Type u_3} [inst : MeasurableSpace M] [inst_2 : Mul M] {m : MeasurableSpace α}
  {f g : α → M} [inst_3 : MeasurableMul₂ M], Measurable f → Measurable g → Measurable fun a => f a * g a