Theorem: ProbabilityTheory.kernel.Indep.indepSet_of_measurableSet
File: Mathlib/Probability/Independence/Kernel.lean

tactic: refine fun s' t' hs' ht' => h_indep s' t' ?_ ?_
state_before: α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
⊢ IndepSet s t κ μ
state_after: case refine_1
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ s' ∈ {s | MeasurableSet s}

case refine_2
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ t' ∈ {s | MeasurableSet s}

tactic: refine @generateFrom_induction _ (fun u => MeasurableSet[m₁] u) {s} ?_ ?_ ?_ ?_ _ hs'
state_before: case refine_1
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ s' ∈ {s | MeasurableSet s}
state_after: case refine_1.refine_1
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ t ∈ {s}, (fun u => MeasurableSet u) t

case refine_1.refine_2
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ (fun u => MeasurableSet u) ∅

case refine_1.refine_3
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ (t : Set Ω), (fun u => MeasurableSet u) t → (fun u => MeasurableSet u) tᶜ

case refine_1.refine_4
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ (f : ℕ → Set Ω), (∀ (n : ℕ), (fun u => MeasurableSet u) (f n)) → (fun u => MeasurableSet u) (⋃ i, f i)

tactic: simp only [Set.mem_singleton_iff, forall_eq, hs]
state_before: case refine_1.refine_1
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ t ∈ {s}, (fun u => MeasurableSet u) t
state_after: no goals

tactic: exact @MeasurableSet.empty _ m₁
state_before: case refine_1.refine_2
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ (fun u => MeasurableSet u) ∅
state_after: no goals

tactic: exact fun u hu => hu.compl
state_before: case refine_1.refine_3
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ (t : Set Ω), (fun u => MeasurableSet u) t → (fun u => MeasurableSet u) tᶜ
state_after: no goals

tactic: exact fun f hf => MeasurableSet.iUnion hf
state_before: case refine_1.refine_4
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ (f : ℕ → Set Ω), (∀ (n : ℕ), (fun u => MeasurableSet u) (f n)) → (fun u => MeasurableSet u) (⋃ i, f i)
state_after: no goals

tactic: refine @generateFrom_induction _ (fun u => MeasurableSet[m₂] u) {t} ?_ ?_ ?_ ?_ _ ht'
state_before: case refine_2
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ t' ∈ {s | MeasurableSet s}
state_after: case refine_2.refine_1
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ t_1 ∈ {t}, (fun u => MeasurableSet u) t_1

case refine_2.refine_2
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ (fun u => MeasurableSet u) ∅

case refine_2.refine_3
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ (t : Set Ω), (fun u => MeasurableSet u) t → (fun u => MeasurableSet u) tᶜ

case refine_2.refine_4
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ (f : ℕ → Set Ω), (∀ (n : ℕ), (fun u => MeasurableSet u) (f n)) → (fun u => MeasurableSet u) (⋃ i, f i)

tactic: simp only [Set.mem_singleton_iff, forall_eq, ht]
state_before: case refine_2.refine_1
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ t_1 ∈ {t}, (fun u => MeasurableSet u) t_1
state_after: no goals

tactic: exact @MeasurableSet.empty _ m₂
state_before: case refine_2.refine_2
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ (fun u => MeasurableSet u) ∅
state_after: no goals

tactic: exact fun u hu => hu.compl
state_before: case refine_2.refine_3
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ (t : Set Ω), (fun u => MeasurableSet u) t → (fun u => MeasurableSet u) tᶜ
state_after: no goals

tactic: exact fun f hf => MeasurableSet.iUnion hf
state_before: case refine_2.refine_4
α : Type u_1
Ω : Type u_2
ι : Type u_3
_mα : MeasurableSpace α
s✝ t✝ : Set Ω
S T : Set (Set Ω)
m₁ m₂ m0 : MeasurableSpace Ω
κ : ↥(kernel α Ω)
μ : Measure α
h_indep : Indep m₁ m₂ κ μ
s t : Set Ω
hs : MeasurableSet s
ht : MeasurableSet t
s' t' : Set Ω
hs' : s' ∈ {s_1 | MeasurableSet s_1}
ht' : t' ∈ {s | MeasurableSet s}
⊢ ∀ (f : ℕ → Set Ω), (∀ (n : ℕ), (fun u => MeasurableSet u) (f n)) → (fun u => MeasurableSet u) (⋃ i, f i)
state_after: no goals