-- File: FoML/FoML/Rademacher.lean
Theorem statement:
theorem extracted_formal_statement_102.{u_1, w, u} {Ω : Type u} [inst : MeasurableSpace Ω] {Z : Type w} {n : ℕ}
  {ι : Type u_1} {f : ι → Z → ℝ} {μ : Measure Ω} [inst_1 : IsProbabilityMeasure μ] [inst_2 : Countable ι] {X : Ω → Z}
  (hf : ∀ (i : ι), Measurable (f i ∘ X)) {b : ℝ} (hb : 0 ≤ b) (hf' : ∀ (i : ι) (z : Z), |f i z| ≤ b)
  (h_original_goal :
    MemLp (fun ω => (↑(Fintype.card (Signs n)))⁻¹ * ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * f i (X (ω.1 k))|) 1
      ((Measure.pi fun x => μ).prod (Measure.pi fun x => μ))) :
  ∀ᵐ (x : (Fin n → Ω) × (Fin n → Ω)) ∂(Measure.pi fun x => μ).prod (Measure.pi fun x => μ),
    ‖(↑(Fintype.card (Signs n)))⁻¹ * ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * f i (X (x.1 k))|‖ ≤ ↑n * b := sorry

Tactic state before:
Ω : Type u
inst✝² : MeasurableSpace Ω
Z : Type w
n : ℕ
ι : Type u_1
f : ι → Z → ℝ
μ : Measure Ω
inst✝¹ : IsProbabilityMeasure μ
inst✝ : Countable ι
X : Ω → Z
hf : ∀ (i : ι), Measurable (f i ∘ X)
b : ℝ
hb : 0 ≤ b
hf' : ∀ (i : ι) (z : Z), |f i z| ≤ b
⊢ MemLp (fun ω => (↑(Fintype.card (Signs n)))⁻¹ * ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * f i (X (ω.1 k))|) 1
    ((Measure.pi fun x => μ).prod (Measure.pi fun x => μ))

Tactic: apply MemLp.of_bound (measurable_aux2 hf).aestronglyMeasurable (n * b)

Tactic state after:
[Ω : Type u
 inst✝² : MeasurableSpace Ω
 Z : Type w
 n : ℕ
 ι : Type u_1
 f : ι → Z → ℝ
 μ : Measure Ω
 inst✝¹ : IsProbabilityMeasure μ
 inst✝ : Countable ι
 X : Ω → Z
 hf : ∀ (i : ι), Measurable (f i ∘ X)
 b : ℝ
 hb : 0 ≤ b
 hf' : ∀ (i : ι) (z : Z), |f i z| ≤ b
 ⊢ ∀ᵐ (x : (Fin n → Ω) × (Fin n → Ω)) ∂(Measure.pi fun x => μ).prod (Measure.pi fun x => μ),
     ‖(↑(Fintype.card (Signs n)))⁻¹ * ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * f i (X (x.1 k))|‖ ≤ ↑n * b]

Premises used:
measurable_aux2 : ∀ {Ω : Type u} [inst : MeasurableSpace Ω] {Z : Type w} {n : ℕ} {ι : Type u_1} {f : ι → Z → ℝ}
  [inst_3 : Countable ι] {X : Ω → Z},
  (∀ (i : ι), Measurable (f i ∘ X)) →
    Measurable fun ω => (↑(Fintype.card (Signs n)))⁻¹ * ∑ σ, ⨆ i, |∑ k, ↑↑(σ k) * f i (X (ω.1 k))|
MeasureTheory.MemLp.of_bound : ∀ {α : Type u_1} {E : Type u_4} {m0 : MeasurableSpace α} {p : ℝ≥0∞} {μ : Measure α}
  [inst : NormedAddCommGroup E] [inst_3 : IsFiniteMeasure μ] {f : α → E},
  AEStronglyMeasurable f μ → ∀ (C : ℝ), (∀ᵐ (x : α) ∂μ, ‖f x‖ ≤ C) → MemLp f p μ