theorem extracted_formal_statement_1.{u} {Ω : Type u} [inst : MeasurableSpace Ω] {μ : Measure Ω}
  [inst_1 : IsProbabilityMeasure μ] {n : ℕ} (s : Fin (n + 1) → Set Ω) (hs : ∀ (i : Fin (n + 1)), MeasurableSet (s i))
  (ω : Ω × (Fin n → Ω)) (h₁ : ω.1 ∈ s (Fin.last n)) (h₂ : ∀ (i : Fin n), ω.2 i ∈ s i.castSucc) (i : Fin (n + 1))
  (h : ¬↑i < n) (h_original_goal : (if h : ↑i < n then ω.2 (i.castLT h) else ω.1) ∈ s i) : ω.1 ∈ s (Fin.last n) := sorry

State before:
Ω : Type u
inst✝¹ : MeasurableSpace Ω
μ : Measure Ω
inst✝ : IsProbabilityMeasure μ
n : ℕ
s : Fin (n + 1) → Set Ω
hs : ∀ (i : Fin (n + 1)), MeasurableSet (s i)
ω : Ω × (Fin n → Ω)
h₁ : ω.1 ∈ s (Fin.last n)
h₂ : ∀ (i : Fin n), ω.2 i ∈ s i.castSucc
i : Fin (n + 1)
h : ¬↑i < n
⊢ (if h : ↑i < n then ω.2 (i.castLT h) else ω.1) ∈ s i

Tactic: rw [dif_neg h]
    have : i = Fin.last n := Fin.eq_last_of_not_lt h
    rw [this]

State after:
[Ω : Type u
 inst✝¹ : MeasurableSpace Ω
 μ : Measure Ω
 inst✝ : IsProbabilityMeasure μ
 n : ℕ
 s : Fin (n + 1) → Set Ω
 hs : ∀ (i : Fin (n + 1)), MeasurableSet (s i)
 ω : Ω × (Fin n → Ω)
 h₁ : ω.1 ∈ s (Fin.last n)
 h₂ : ∀ (i : Fin n), ω.2 i ∈ s i.castSucc
 i : Fin (n + 1)
 h : ¬↑i < n
 this : i = Fin.last n
 ⊢ ω.1 ∈ s (Fin.last n)]

Relevant lemmas:
Fin.eq_last_of_not_lt : ∀ {n : ℕ} {i : Fin (n + 1)}, ¬↑i < n → i = Fin.last n
dif_neg : ∀ {c : Prop} {h : Decidable c} (hnc : ¬c) {α : Sort u} {t : c → α} {e : ¬c → α}, dite c t e = e hnc