Theorem: ProbabilityTheory.kernel.tendsto_densityProcess_atTop_empty_of_antitone
File: Mathlib/Probability/Kernel/Disintegration/Density.lean

tactic: simp_rw [densityProcess]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
⊢ Tendsto (fun m => densityProcess κ ν n a x (seq m)) atTop (𝓝 (densityProcess κ ν n a x ∅))
state_after: α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
⊢ Tendsto (fun m => ((κ a) (countablePartitionSet n x ×ˢ seq m) / (ν a) (countablePartitionSet n x)).toReal) atTop
    (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅) / (ν a) (countablePartitionSet n x)).toReal)

tactic: by_cases h0 : ν a (countablePartitionSet n x) = 0
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
⊢ Tendsto (fun m => ((κ a) (countablePartitionSet n x ×ˢ seq m) / (ν a) (countablePartitionSet n x)).toReal) atTop
    (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅) / (ν a) (countablePartitionSet n x)).toReal)
state_after: case pos
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : (ν a) (countablePartitionSet n x) = 0
⊢ Tendsto (fun m => ((κ a) (countablePartitionSet n x ×ˢ seq m) / (ν a) (countablePartitionSet n x)).toReal) atTop
    (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅) / (ν a) (countablePartitionSet n x)).toReal)

case neg
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ Tendsto (fun m => ((κ a) (countablePartitionSet n x ×ˢ seq m) / (ν a) (countablePartitionSet n x)).toReal) atTop
    (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅) / (ν a) (countablePartitionSet n x)).toReal)

tactic: refine (ENNReal.tendsto_toReal ?_).comp ?_
state_before: case neg
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ Tendsto (fun m => ((κ a) (countablePartitionSet n x ×ˢ seq m) / (ν a) (countablePartitionSet n x)).toReal) atTop
    (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅) / (ν a) (countablePartitionSet n x)).toReal)
state_after: case neg.refine_1
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ (κ a) (countablePartitionSet n x ×ˢ ∅) / (ν a) (countablePartitionSet n x) ≠ ⊤

case neg.refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ Tendsto (fun m => (κ a) (countablePartitionSet n x ×ˢ seq m) / (ν a) (countablePartitionSet n x)) atTop
    (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅) / (ν a) (countablePartitionSet n x)))

tactic: refine ENNReal.Tendsto.div_const ?_ ?_
state_before: case neg.refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ Tendsto (fun m => (κ a) (countablePartitionSet n x ×ˢ seq m) / (ν a) (countablePartitionSet n x)) atTop
    (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅) / (ν a) (countablePartitionSet n x)))
state_after: case neg.refine_2.refine_1
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ Tendsto (fun m => (κ a) (countablePartitionSet n x ×ˢ seq m)) atTop (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅)))

case neg.refine_2.refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ (κ a) (countablePartitionSet n x ×ˢ ∅) ≠ 0 ∨ (ν a) (countablePartitionSet n x) ≠ 0

tactic: simp_rw [h0, ENNReal.toReal_div]
state_before: case pos
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : (ν a) (countablePartitionSet n x) = 0
⊢ Tendsto (fun m => ((κ a) (countablePartitionSet n x ×ˢ seq m) / (ν a) (countablePartitionSet n x)).toReal) atTop
    (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅) / (ν a) (countablePartitionSet n x)).toReal)
state_after: case pos
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : (ν a) (countablePartitionSet n x) = 0
⊢ Tendsto (fun m => ((κ a) (countablePartitionSet n x ×ˢ seq m)).toReal / ENNReal.toReal 0) atTop
    (𝓝 (((κ a) (countablePartitionSet n x ×ˢ ∅)).toReal / ENNReal.toReal 0))

tactic: simp
state_before: case pos
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : (ν a) (countablePartitionSet n x) = 0
⊢ Tendsto (fun m => ((κ a) (countablePartitionSet n x ×ˢ seq m)).toReal / ENNReal.toReal 0) atTop
    (𝓝 (((κ a) (countablePartitionSet n x ×ˢ ∅)).toReal / ENNReal.toReal 0))
state_after: no goals

tactic: rw [ne_eq, ENNReal.div_eq_top]
state_before: case neg.refine_1
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ (κ a) (countablePartitionSet n x ×ˢ ∅) / (ν a) (countablePartitionSet n x) ≠ ⊤
state_after: case neg.refine_1
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ ¬((κ a) (countablePartitionSet n x ×ˢ ∅) ≠ 0 ∧ (ν a) (countablePartitionSet n x) = 0 ∨
      (κ a) (countablePartitionSet n x ×ˢ ∅) = ⊤ ∧ (ν a) (countablePartitionSet n x) ≠ ⊤)

tactic: push_neg
state_before: case neg.refine_1
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ ¬((κ a) (countablePartitionSet n x ×ˢ ∅) ≠ 0 ∧ (ν a) (countablePartitionSet n x) = 0 ∨
      (κ a) (countablePartitionSet n x ×ˢ ∅) = ⊤ ∧ (ν a) (countablePartitionSet n x) ≠ ⊤)
state_after: case neg.refine_1
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ ((κ a) (countablePartitionSet n x ×ˢ ∅) ≠ 0 → (ν a) (countablePartitionSet n x) ≠ 0) ∧
    ((κ a) (countablePartitionSet n x ×ˢ ∅) = ⊤ → (ν a) (countablePartitionSet n x) = ⊤)

tactic: simp
state_before: case neg.refine_1
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ ((κ a) (countablePartitionSet n x ×ˢ ∅) ≠ 0 → (ν a) (countablePartitionSet n x) ≠ 0) ∧
    ((κ a) (countablePartitionSet n x ×ˢ ∅) = ⊤ → (ν a) (countablePartitionSet n x) = ⊤)
state_after: no goals

tactic: have h := tendsto_measure_iInter (μ := κ a) (s := fun m ↦ countablePartitionSet n x ×ˢ seq m)
  ?_ ?_ ?_
state_before: case neg.refine_2.refine_1
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ Tendsto (fun m => (κ a) (countablePartitionSet n x ×ˢ seq m)) atTop (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅)))
state_after: case neg.refine_2.refine_1.refine_4
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
h :
  Tendsto (⇑(κ a) ∘ fun m => countablePartitionSet n x ×ˢ seq m) atTop
    (𝓝 ((κ a) (⋂ n_1, countablePartitionSet n x ×ˢ seq n_1)))
⊢ Tendsto (fun m => (κ a) (countablePartitionSet n x ×ˢ seq m)) atTop (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅)))

case neg.refine_2.refine_1.refine_1
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ ∀ (n_1 : ℕ), MeasurableSet ((fun m => countablePartitionSet n x ×ˢ seq m) n_1)

case neg.refine_2.refine_1.refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ Antitone fun m => countablePartitionSet n x ×ˢ seq m

case neg.refine_2.refine_1.refine_3
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ ∃ i, (κ a) ((fun m => countablePartitionSet n x ×ˢ seq m) i) ≠ ⊤

tactic: convert h
state_before: case neg.refine_2.refine_1.refine_4
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
h :
  Tendsto (⇑(κ a) ∘ fun m => countablePartitionSet n x ×ˢ seq m) atTop
    (𝓝 ((κ a) (⋂ n_1, countablePartitionSet n x ×ˢ seq n_1)))
⊢ Tendsto (fun m => (κ a) (countablePartitionSet n x ×ˢ seq m)) atTop (𝓝 ((κ a) (countablePartitionSet n x ×ˢ ∅)))
state_after: case h.e'_5.h.e'_3.h.e'_6
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
h :
  Tendsto (⇑(κ a) ∘ fun m => countablePartitionSet n x ×ˢ seq m) atTop
    (𝓝 ((κ a) (⋂ n_1, countablePartitionSet n x ×ˢ seq n_1)))
⊢ countablePartitionSet n x ×ˢ ∅ = ⋂ n_1, countablePartitionSet n x ×ˢ seq n_1

tactic: rw [← prod_iInter, hseq_iInter]
state_before: case h.e'_5.h.e'_3.h.e'_6
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
h :
  Tendsto (⇑(κ a) ∘ fun m => countablePartitionSet n x ×ˢ seq m) atTop
    (𝓝 ((κ a) (⋂ n_1, countablePartitionSet n x ×ˢ seq n_1)))
⊢ countablePartitionSet n x ×ˢ ∅ = ⋂ n_1, countablePartitionSet n x ×ˢ seq n_1
state_after: no goals

tactic: exact fun m ↦ MeasurableSet.prod (measurableSet_countablePartitionSet _ _) (hseq_meas m)
state_before: case neg.refine_2.refine_1.refine_1
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ ∀ (n_1 : ℕ), MeasurableSet ((fun m => countablePartitionSet n x ×ˢ seq m) n_1)
state_after: no goals

tactic: intro m m' hmm'
state_before: case neg.refine_2.refine_1.refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ Antitone fun m => countablePartitionSet n x ×ˢ seq m
state_after: case neg.refine_2.refine_1.refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
m m' : ℕ
hmm' : m ≤ m'
⊢ (fun m => countablePartitionSet n x ×ˢ seq m) m' ≤ (fun m => countablePartitionSet n x ×ˢ seq m) m

tactic: simp only [le_eq_subset, prod_subset_prod_iff, subset_rfl, true_and]
state_before: case neg.refine_2.refine_1.refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
m m' : ℕ
hmm' : m ≤ m'
⊢ (fun m => countablePartitionSet n x ×ˢ seq m) m' ≤ (fun m => countablePartitionSet n x ×ˢ seq m) m
state_after: case neg.refine_2.refine_1.refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
m m' : ℕ
hmm' : m ≤ m'
⊢ seq m' ⊆ seq m ∨ countablePartitionSet n x = ∅ ∨ seq m' = ∅

tactic: exact Or.inl <| hseq hmm'
state_before: case neg.refine_2.refine_1.refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
m m' : ℕ
hmm' : m ≤ m'
⊢ seq m' ⊆ seq m ∨ countablePartitionSet n x = ∅ ∨ seq m' = ∅
state_after: no goals

tactic: exact ⟨0, measure_ne_top _ _⟩
state_before: case neg.refine_2.refine_1.refine_3
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ ∃ i, (κ a) ((fun m => countablePartitionSet n x ×ˢ seq m) i) ≠ ⊤
state_after: no goals

tactic: exact .inr h0
state_before: case neg.refine_2.refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
mα : MeasurableSpace α
mβ : MeasurableSpace β
mγ : MeasurableSpace γ
inst✝¹ : CountablyGenerated γ
κ✝ : ↥(kernel α (γ × β))
ν✝ : ↥(kernel α γ)
κ : ↥(kernel α (γ × β))
ν : ↥(kernel α γ)
inst✝ : IsFiniteKernel κ
n : ℕ
a : α
x : γ
seq : ℕ → Set β
hseq : Antitone seq
hseq_iInter : ⋂ i, seq i = ∅
hseq_meas : ∀ (m : ℕ), MeasurableSet (seq m)
h0 : ¬(ν a) (countablePartitionSet n x) = 0
⊢ (κ a) (countablePartitionSet n x ×ˢ ∅) ≠ 0 ∨ (ν a) (countablePartitionSet n x) ≠ 0
state_after: no goals