-- File: FoML/FoML/McDiarmid.lean
Theorem statement:
theorem extracted_formal_statement_349.{u_2, u_1} {Ω : Type u_1} [inst : MeasurableSpace Ω] {μ : Measure Ω}
  [inst_1 : IsProbabilityMeasure μ] {𝓧 : Type u_2} {m𝓧 : MeasurableSpace 𝓧} [hnonempty𝓧 : Nonempty 𝓧] {m : ℕ}
  {X' : Ω → 𝓧} (hX'' : Measurable X') {f' : (Fin m → 𝓧) → ℝ} {c' : Fin m → ℝ}
  (hfι : ∀ (i : Fin m) (x : Fin m → 𝓧) (x' : 𝓧), |f' x - f' (Function.update x i x')| ≤ c' i)
  (hf'' : StronglyMeasurable f') {t : ℝ} (ht : t ≥ 0) (ht' : t * ∑ i, c' i ^ 2 ≤ 1)
  (hX''' : ∀ (i : Fin m), Measurable fun ω => X' (ω i)) :
  let Y := fun k Xk =>
    ∫ (x : Fin m → Ω), (fun ω => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else X' (ω i)) x ∂Measure.pi fun x => μ;
  let A := fun k Xk =>
    ⨅ x,
      ∫ (x_1 : Fin m → Ω),
        (fun ω => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else if ↑i = ↑k then x else X' (ω i))
          x_1 ∂Measure.pi fun x => μ;
  let B := fun k Xk =>
    ⨆ x,
      ∫ (x_1 : Fin m → Ω),
        (fun ω => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else if ↑i = ↑k then x else X' (ω i))
          x_1 ∂Measure.pi fun x => μ;
  (∀ (k : Fin m) (Xk : Fin ↑k → 𝓧) (x : 𝓧),
      Y k.succ (Fin.snoc Xk x) =
        ∫ (x_1 : Fin m → Ω),
          (fun ω => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else if ↑i = ↑k then x else X' (ω i))
            x_1 ∂Measure.pi fun x => μ) →
    ∀ (x₀ : 𝓧),
      let bdf := |f' fun x => x₀| + ∑ i, c' i;
      (∀ (xi : Fin m → 𝓧), |f' xi| ≤ bdf) →
        (∀ (k : Fin m) (Xk : Fin ↑k → 𝓧) (x : 𝓧),
            Integrable (fun a => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else if ↑i = ↑k then x else X' (a i))
              (Measure.pi fun x => μ)) →
          (∀ (k : Fin m) (Xk : Fin ↑k → 𝓧) (x : 𝓧), A k Xk ≤ Y k.succ (Fin.snoc Xk x)) →
            (∀ (k : Fin m) (Xk : Fin ↑k → 𝓧),
                𝓧 →
                  BddAbove
                    (Set.range fun x =>
                      ∫ (a : Fin m → Ω),
                        (fun ω => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else if ↑i = ↑k then x else X' (ω i))
                          a ∂Measure.pi fun x => μ)) →
              (∀ (k : Fin m) (Xk : Fin ↑k → 𝓧) (x : 𝓧), B k Xk ≥ Y k.succ (Fin.snoc Xk x)) →
                (∀ (k : Fin m) (Xk : Fin ↑k → 𝓧), B k Xk ≤ A k Xk + c' k) →
                  ∀ (k : Fin m),
                    let S := {i | ↑i > ↑k};
                    let T := {k};
                    Disjoint T S →
                      IndepFun (fun ω t => X' (ω ↑t)) (fun ω s => X' (ω ↑s)) (Measure.pi fun x => μ) →
                        ∀ (i : Fin m), ¬↑i = ↑k → k ≤ i → k < i := sorry

Tactic state before:
case property
Ω : Type u_1
inst✝¹ : MeasurableSpace Ω
μ : Measure Ω
inst✝ : IsProbabilityMeasure μ
𝓧 : Type u_2
m𝓧 : MeasurableSpace 𝓧
hnonempty𝓧 : Nonempty 𝓧
m : ℕ
X' : Ω → 𝓧
hX'' : Measurable X'
f' : (Fin m → 𝓧) → ℝ
c' : Fin m → ℝ
hfι : ∀ (i : Fin m) (x : Fin m → 𝓧) (x' : 𝓧), |f' x - f' (Function.update x i x')| ≤ c' i
hf'' : StronglyMeasurable f'
ε : ℝ
hε : ε ≥ 0
t : ℝ
ht : t ≥ 0
ht' : t * ∑ i, c' i ^ 2 ≤ 1
hX''' : ∀ (i : Fin m), Measurable fun ω => X' (ω i)
Y : (k : Fin m.succ) → (Fin ↑k → 𝓧) → ℝ :=
  fun k Xk =>
    ∫ (x : Fin m → Ω), (fun ω => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else X' (ω i)) x ∂Measure.pi fun x => μ
A : (k : Fin m) → (Fin ↑k → 𝓧) → ℝ :=
  fun k Xk =>
    ⨅ x,
      ∫ (x_1 : Fin m → Ω),
        (fun ω => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else if ↑i = ↑k then x else X' (ω i))
          x_1 ∂Measure.pi fun x => μ
B : (k : Fin m) → (Fin ↑k → 𝓧) → ℝ :=
  fun k Xk =>
    ⨆ x,
      ∫ (x_1 : Fin m → Ω),
        (fun ω => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else if ↑i = ↑k then x else X' (ω i))
          x_1 ∂Measure.pi fun x => μ
AB_rw :
  ∀ (k : Fin m) (Xk : Fin ↑k → 𝓧) (x : 𝓧),
    Y k.succ (Fin.snoc Xk x) =
      ∫ (x_1 : Fin m → Ω),
        (fun ω => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else if ↑i = ↑k then x else X' (ω i))
          x_1 ∂Measure.pi fun x => μ
x₀ : 𝓧
bdf : ℝ := |f' fun x => x₀| + ∑ i, c' i
hfbdd : ∀ (xi : Fin m → 𝓧), |f' xi| ≤ bdf
hintegrableAB :
  ∀ (k : Fin m) (Xk : Fin ↑k → 𝓧) (x : 𝓧),
    Integrable (fun a => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else if ↑i = ↑k then x else X' (a i))
      (Measure.pi fun x => μ)
hAY : ∀ (k : Fin m) (Xk : Fin ↑k → 𝓧) (x : 𝓧), A k Xk ≤ Y k.succ (Fin.snoc Xk x)
hBddAbove :
  ∀ (k : Fin m) (Xk : Fin ↑k → 𝓧),
    𝓧 →
      BddAbove
        (Set.range fun x =>
          ∫ (a : Fin m → Ω),
            (fun ω => f' fun i => if h : ↑i < ↑k then Xk ⟨↑i, h⟩ else if ↑i = ↑k then x else X' (ω i))
              a ∂Measure.pi fun x => μ)
hYB : ∀ (k : Fin m) (Xk : Fin ↑k → 𝓧) (x : 𝓧), B k Xk ≥ Y k.succ (Fin.snoc Xk x)
hAB : ∀ (k : Fin m) (Xk : Fin ↑k → 𝓧), B k Xk ≤ A k Xk + c' k
k : Fin m
Xk : Fin ↑k → 𝓧
S : Finset (Fin m) := {i | ↑i > ↑k}
T : Finset (Fin m) := {k}
hST : Disjoint T S
hindep : IndepFun (fun ω t => X' (ω ↑t)) (fun ω s => X' (ω ↑s)) (Measure.pi fun x => μ)
i : Fin m
h' : ¬↑i = ↑k
h : k ≤ i
⊢ k < i

Tactic: exact lt_of_le_of_ne h fun a ↦ h' (congrArg Fin.val (id (Eq.symm a)))

Tactic state after:

Premises used:
Eq.symm : ∀ {α : Sort u} {a b : α}, a = b → b = a
lt_of_le_of_ne : ∀ {α : Type u_1} [inst : PartialOrder α] {a b : α}, a ≤ b → a ≠ b → a < b
congrArg : ∀ {α : Sort u} {β : Sort v} {a₁ a₂ : α} (f : α → β), a₁ = a₂ → f a₁ = f a₂