-- File: FoML/FoML/Rademacher.lean
Theorem statement:
theorem extracted_formal_statement_353.{u_1, w, u} {Ω : Type u} [inst : MeasurableSpace Ω] {Z : Type w} {n : ℕ}
  {ι : Type u_1} {f : ι → Z → ℝ} {μ : Measure Ω} [inst_1 : IsProbabilityMeasure μ] {X : Ω → Z} [inst_2 : Nonempty ι]
  [inst_3 : Countable ι] (hf : ∀ (i : ι), Measurable (f i ∘ X)) {b : ℝ} (hf' : ∀ (i : ι) (z : Z), |f i z| ≤ b)
  (h_original_goal :
    AEMeasurable (fun x => ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * f i (X (x.2 k))|)
      ((Measure.pi fun x => μ).prod (Measure.pi fun x => μ))) :
  Measurable fun x => ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * f i (X (x.2 k))| := sorry

Tactic state before:
case left.hf.hf
Ω : Type u
inst✝³ : MeasurableSpace Ω
Z : Type w
n : ℕ
ι : Type u_1
f : ι → Z → ℝ
μ : Measure Ω
inst✝² : IsProbabilityMeasure μ
X : Ω → Z
inst✝¹ : Nonempty ι
inst✝ : Countable ι
hf : ∀ (i : ι), Measurable (f i ∘ X)
b : ℝ
hf' : ∀ (i : ι) (z : Z), |f i z| ≤ b
⊢ AEMeasurable (fun x => ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * f i (X (x.2 k))|)
    ((Measure.pi fun x => μ).prod (Measure.pi fun x => μ))

Tactic: apply Measurable.aemeasurable

Tactic state after:
[case left.hf.hf.h
 Ω : Type u
 inst✝³ : MeasurableSpace Ω
 Z : Type w
 n : ℕ
 ι : Type u_1
 f : ι → Z → ℝ
 μ : Measure Ω
 inst✝² : IsProbabilityMeasure μ
 X : Ω → Z
 inst✝¹ : Nonempty ι
 inst✝ : Countable ι
 hf : ∀ (i : ι), Measurable (f i ∘ X)
 b : ℝ
 hf' : ∀ (i : ι) (z : Z), |f i z| ≤ b
 ⊢ Measurable fun x => ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * f i (X (x.2 k))|]

Premises used:
Measurable.aemeasurable : ∀ {α : Type u_1} {β : Type u_2} {m : MeasurableSpace α} [inst : MeasurableSpace β] {f : α → β}
  {μ : Measure α}, Measurable f → AEMeasurable f μ