Theorem: MeasureTheory.IsStoppingTime.measurableSpace_const
File: Mathlib/Probability/Process/Stopping.lean

tactic: ext1 s
state_before: Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
⊢ ⋯.measurableSpace = ↑f i
state_after: case h
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
⊢ MeasurableSet s ↔ MeasurableSet s

tactic: rw [IsStoppingTime.measurableSet]
state_before: case h
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
⊢ MeasurableSet s ↔ MeasurableSet s
state_after: case h
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
⊢ (∀ (i_1 : ι), MeasurableSet (s ∩ {ω | i ≤ i_1})) ↔ MeasurableSet s

tactic: constructor <;> intro h
state_before: case h
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
⊢ (∀ (i_1 : ι), MeasurableSet (s ∩ {ω | i ≤ i_1})) ↔ MeasurableSet s
state_after: case h.mp
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : ∀ (i_1 : ι), MeasurableSet (s ∩ {ω | i ≤ i_1})
⊢ MeasurableSet s

case h.mpr
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet s
⊢ ∀ (i_1 : ι), MeasurableSet (s ∩ {ω | i ≤ i_1})

tactic: specialize h i
state_before: case h.mp
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : ∀ (i_1 : ι), MeasurableSet (s ∩ {ω | i ≤ i_1})
⊢ MeasurableSet s
state_after: case h.mp
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet (s ∩ {ω | i ≤ i})
⊢ MeasurableSet s

tactic: simpa only [le_refl, Set.setOf_true, Set.inter_univ] using h
state_before: case h.mp
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet (s ∩ {ω | i ≤ i})
⊢ MeasurableSet s
state_after: no goals

tactic: intro j
state_before: case h.mpr
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet s
⊢ ∀ (i_1 : ι), MeasurableSet (s ∩ {ω | i ≤ i_1})
state_after: case h.mpr
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet s
j : ι
⊢ MeasurableSet (s ∩ {ω | i ≤ j})

tactic: by_cases hij : i ≤ j
state_before: case h.mpr
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet s
j : ι
⊢ MeasurableSet (s ∩ {ω | i ≤ j})
state_after: case pos
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet s
j : ι
hij : i ≤ j
⊢ MeasurableSet (s ∩ {ω | i ≤ j})

case neg
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet s
j : ι
hij : ¬i ≤ j
⊢ MeasurableSet (s ∩ {ω | i ≤ j})

tactic: simp only [hij, Set.setOf_true, Set.inter_univ]
state_before: case pos
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet s
j : ι
hij : i ≤ j
⊢ MeasurableSet (s ∩ {ω | i ≤ j})
state_after: case pos
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet s
j : ι
hij : i ≤ j
⊢ MeasurableSet s

tactic: exact f.mono hij _ h
state_before: case pos
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet s
j : ι
hij : i ≤ j
⊢ MeasurableSet s
state_after: no goals

tactic: simp only [hij, Set.setOf_false, Set.inter_empty, @MeasurableSet.empty _ (f.1 j)]
state_before: case neg
Ω : Type u_1
β : Type u_2
ι : Type u_3
m : MeasurableSpace Ω
inst✝ : Preorder ι
f✝ : Filtration ι m
τ π : Ω → ι
f : Filtration ι m
i : ι
s : Set Ω
h : MeasurableSet s
j : ι
hij : ¬i ≤ j
⊢ MeasurableSet (s ∩ {ω | i ≤ j})
state_after: no goals