Theorem: MeasureTheory.ae_measure_preimage_add_right_lt_top_of_ne_zero
File: Mathlib/MeasureTheory/Group/Prod.lean

Proof steps:
state_before: G : Type u_1
inst✝¹⁰ : MeasurableSpace G
inst✝⁹ : Group G
inst✝⁸ : MeasurableMul₂ G
μ ν : Measure G
inst✝⁷ : SFinite ν
inst✝⁶ : SFinite μ
s : Set G
inst✝⁵ : MeasurableInv G
inst✝⁴ : μ.IsMulLeftInvariant
μ' ν' : Measure G
inst✝³ : SigmaFinite μ'
inst✝² : SigmaFinite ν'
inst✝¹ : μ'.IsMulLeftInvariant
inst✝ : ν'.IsMulLeftInvariant
h2s : ν' s ≠ 0
h3s : ν' s ≠ ⊤
⊢ ∀ᵐ (x : G) ∂μ', ν' ((fun y => y * x) ⁻¹' s) < ⊤
state_after: G : Type u_1
inst✝¹⁰ : MeasurableSpace G
inst✝⁹ : Group G
inst✝⁸ : MeasurableMul₂ G
μ ν : Measure G
inst✝⁷ : SFinite ν
inst✝⁶ : SFinite μ
s : Set G
inst✝⁵ : MeasurableInv G
inst✝⁴ : μ.IsMulLeftInvariant
μ' ν' : Measure G
inst✝³ : SigmaFinite μ'
inst✝² : SigmaFinite ν'
inst✝¹ : μ'.IsMulLeftInvariant
inst✝ : ν'.IsMulLeftInvariant
h2s : ν' s ≠ 0
h3s : ν' s ≠ ⊤
⊢ ae μ' ≤ ae ν'
tactic: refine (ae_measure_preimage_mul_right_lt_top ν' ν' h3s).filter_mono ?_
state_before: G : Type u_1
inst✝¹⁰ : MeasurableSpace G
inst✝⁹ : Group G
inst✝⁸ : MeasurableMul₂ G
μ ν : Measure G
inst✝⁷ : SFinite ν
inst✝⁶ : SFinite μ
s : Set G
inst✝⁵ : MeasurableInv G
inst✝⁴ : μ.IsMulLeftInvariant
μ' ν' : Measure G
inst✝³ : SigmaFinite μ'
inst✝² : SigmaFinite ν'
inst✝¹ : μ'.IsMulLeftInvariant
inst✝ : ν'.IsMulLeftInvariant
h2s : ν' s ≠ 0
h3s : ν' s ≠ ⊤
⊢ ae μ' ≤ ae ν'
state_after: G : Type u_1
inst✝¹⁰ : MeasurableSpace G
inst✝⁹ : Group G
inst✝⁸ : MeasurableMul₂ G
μ ν : Measure G
inst✝⁷ : SFinite ν
inst✝⁶ : SFinite μ
s : Set G
inst✝⁵ : MeasurableInv G
inst✝⁴ : μ.IsMulLeftInvariant
μ' ν' : Measure G
inst✝³ : SigmaFinite μ'
inst✝² : SigmaFinite ν'
inst✝¹ : μ'.IsMulLeftInvariant
inst✝ : ν'.IsMulLeftInvariant
h2s : ν' s ≠ 0
h3s : ν' s ≠ ⊤
⊢ ν' ≠ 0
tactic: refine (absolutelyContinuous_of_isMulLeftInvariant μ' ν' ?_).ae_le
state_before: G : Type u_1
inst✝¹⁰ : MeasurableSpace G
inst✝⁹ : Group G
inst✝⁸ : MeasurableMul₂ G
μ ν : Measure G
inst✝⁷ : SFinite ν
inst✝⁶ : SFinite μ
s : Set G
inst✝⁵ : MeasurableInv G
inst✝⁴ : μ.IsMulLeftInvariant
μ' ν' : Measure G
inst✝³ : SigmaFinite μ'
inst✝² : SigmaFinite ν'
inst✝¹ : μ'.IsMulLeftInvariant
inst✝ : ν'.IsMulLeftInvariant
h2s : ν' s ≠ 0
h3s : ν' s ≠ ⊤
⊢ ν' ≠ 0
state_after: G : Type u_1
inst✝¹⁰ : MeasurableSpace G
inst✝⁹ : Group G
inst✝⁸ : MeasurableMul₂ G
μ ν : Measure G
inst✝⁷ : SFinite ν
inst✝⁶ : SFinite μ
s : Set G
inst✝⁵ : MeasurableInv G
inst✝⁴ : μ.IsMulLeftInvariant
μ' ν' : Measure G
inst✝³ : SigmaFinite μ'
inst✝² : SigmaFinite ν'
inst✝¹ : μ'.IsMulLeftInvariant
inst✝ : ν'.IsMulLeftInvariant
h2s : ν' s ≠ 0
h3s : ν' s ≠ ⊤
⊢ ν' = 0 → ν' s = 0
tactic: refine mt ?_ h2s
state_before: G : Type u_1
inst✝¹⁰ : MeasurableSpace G
inst✝⁹ : Group G
inst✝⁸ : MeasurableMul₂ G
μ ν : Measure G
inst✝⁷ : SFinite ν
inst✝⁶ : SFinite μ
s : Set G
inst✝⁵ : MeasurableInv G
inst✝⁴ : μ.IsMulLeftInvariant
μ' ν' : Measure G
inst✝³ : SigmaFinite μ'
inst✝² : SigmaFinite ν'
inst✝¹ : μ'.IsMulLeftInvariant
inst✝ : ν'.IsMulLeftInvariant
h2s : ν' s ≠ 0
h3s : ν' s ≠ ⊤
⊢ ν' = 0 → ν' s = 0
state_after: G : Type u_1
inst✝¹⁰ : MeasurableSpace G
inst✝⁹ : Group G
inst✝⁸ : MeasurableMul₂ G
μ ν : Measure G
inst✝⁷ : SFinite ν
inst✝⁶ : SFinite μ
s : Set G
inst✝⁵ : MeasurableInv G
inst✝⁴ : μ.IsMulLeftInvariant
μ' ν' : Measure G
inst✝³ : SigmaFinite μ'
inst✝² : SigmaFinite ν'
inst✝¹ : μ'.IsMulLeftInvariant
inst✝ : ν'.IsMulLeftInvariant
h2s : ν' s ≠ 0
h3s : ν' s ≠ ⊤
hν : ν' = 0
⊢ ν' s = 0
tactic: intro hν
state_before: G : Type u_1
inst✝¹⁰ : MeasurableSpace G
inst✝⁹ : Group G
inst✝⁸ : MeasurableMul₂ G
μ ν : Measure G
inst✝⁷ : SFinite ν
inst✝⁶ : SFinite μ
s : Set G
inst✝⁵ : MeasurableInv G
inst✝⁴ : μ.IsMulLeftInvariant
μ' ν' : Measure G
inst✝³ : SigmaFinite μ'
inst✝² : SigmaFinite ν'
inst✝¹ : μ'.IsMulLeftInvariant
inst✝ : ν'.IsMulLeftInvariant
h2s : ν' s ≠ 0
h3s : ν' s ≠ ⊤
hν : ν' = 0
⊢ ν' s = 0
state_after: no goals
tactic: rw [hν, Measure.coe_zero, Pi.zero_apply]