Theorem: MeasureTheory.vadd_ae_eq_self_of_mem_zmultiples
File: Mathlib/MeasureTheory/Group/Action.lean

tactic: letI : MeasurableSpace (Multiplicative G) := inferInstanceAs (MeasurableSpace G)
state_before: G✝ : Type u
M : Type v
α✝ : Type w
s✝ : Set α✝
m✝ : MeasurableSpace α✝
inst✝⁹ : Group G✝
inst✝⁸ : MulAction G✝ α✝
inst✝⁷ : MeasurableSpace G✝
inst✝⁶ : MeasurableSMul G✝ α✝
c : G✝
μ✝ : Measure α✝
inst✝⁵ : SMulInvariantMeasure G✝ α✝ μ✝
G : Type u
α : Type w
s : Set α
m : MeasurableSpace α
inst✝⁴ : AddGroup G
inst✝³ : AddAction G α
inst✝² : MeasurableSpace G
inst✝¹ : MeasurableVAdd G α
μ : Measure α
inst✝ : VAddInvariantMeasure G α μ
x y : G
hs : x +ᵥ s =ᶠ[ae μ] s
hy : y ∈ AddSubgroup.zmultiples x
⊢ y +ᵥ s =ᶠ[ae μ] s
state_after: G✝ : Type u
M : Type v
α✝ : Type w
s✝ : Set α✝
m✝ : MeasurableSpace α✝
inst✝⁹ : Group G✝
inst✝⁸ : MulAction G✝ α✝
inst✝⁷ : MeasurableSpace G✝
inst✝⁶ : MeasurableSMul G✝ α✝
c : G✝
μ✝ : Measure α✝
inst✝⁵ : SMulInvariantMeasure G✝ α✝ μ✝
G : Type u
α : Type w
s : Set α
m : MeasurableSpace α
inst✝⁴ : AddGroup G
inst✝³ : AddAction G α
inst✝² : MeasurableSpace G
inst✝¹ : MeasurableVAdd G α
μ : Measure α
inst✝ : VAddInvariantMeasure G α μ
x y : G
hs : x +ᵥ s =ᶠ[ae μ] s
hy : y ∈ AddSubgroup.zmultiples x
this : MeasurableSpace (Multiplicative G) := inferInstanceAs (MeasurableSpace G)
⊢ y +ᵥ s =ᶠ[ae μ] s

tactic: letI : SMulInvariantMeasure (Multiplicative G) α μ :=
  ⟨fun g => VAddInvariantMeasure.measure_preimage_vadd (Multiplicative.toAdd g)⟩
state_before: G✝ : Type u
M : Type v
α✝ : Type w
s✝ : Set α✝
m✝ : MeasurableSpace α✝
inst✝⁹ : Group G✝
inst✝⁸ : MulAction G✝ α✝
inst✝⁷ : MeasurableSpace G✝
inst✝⁶ : MeasurableSMul G✝ α✝
c : G✝
μ✝ : Measure α✝
inst✝⁵ : SMulInvariantMeasure G✝ α✝ μ✝
G : Type u
α : Type w
s : Set α
m : MeasurableSpace α
inst✝⁴ : AddGroup G
inst✝³ : AddAction G α
inst✝² : MeasurableSpace G
inst✝¹ : MeasurableVAdd G α
μ : Measure α
inst✝ : VAddInvariantMeasure G α μ
x y : G
hs : x +ᵥ s =ᶠ[ae μ] s
hy : y ∈ AddSubgroup.zmultiples x
this : MeasurableSpace (Multiplicative G) := inferInstanceAs (MeasurableSpace G)
⊢ y +ᵥ s =ᶠ[ae μ] s
state_after: G✝ : Type u
M : Type v
α✝ : Type w
s✝ : Set α✝
m✝ : MeasurableSpace α✝
inst✝⁹ : Group G✝
inst✝⁸ : MulAction G✝ α✝
inst✝⁷ : MeasurableSpace G✝
inst✝⁶ : MeasurableSMul G✝ α✝
c : G✝
μ✝ : Measure α✝
inst✝⁵ : SMulInvariantMeasure G✝ α✝ μ✝
G : Type u
α : Type w
s : Set α
m : MeasurableSpace α
inst✝⁴ : AddGroup G
inst✝³ : AddAction G α
inst✝² : MeasurableSpace G
inst✝¹ : MeasurableVAdd G α
μ : Measure α
inst✝ : VAddInvariantMeasure G α μ
x y : G
hs : x +ᵥ s =ᶠ[ae μ] s
hy : y ∈ AddSubgroup.zmultiples x
this✝ : MeasurableSpace (Multiplicative G) := inferInstanceAs (MeasurableSpace G)
this : SMulInvariantMeasure (Multiplicative G) α μ :=
  { measure_preimage_smul := fun g => VAddInvariantMeasure.measure_preimage_vadd (Multiplicative.toAdd g) }
⊢ y +ᵥ s =ᶠ[ae μ] s

tactic: letI : MeasurableSMul (Multiplicative G) α :=
  { measurable_const_smul := fun g => measurable_const_vadd (Multiplicative.toAdd g)
    measurable_smul_const := fun a =>
      @measurable_vadd_const (Multiplicative G) α (inferInstanceAs (VAdd G α)) _ _
        (inferInstanceAs (MeasurableVAdd G α)) a }
state_before: G✝ : Type u
M : Type v
α✝ : Type w
s✝ : Set α✝
m✝ : MeasurableSpace α✝
inst✝⁹ : Group G✝
inst✝⁸ : MulAction G✝ α✝
inst✝⁷ : MeasurableSpace G✝
inst✝⁶ : MeasurableSMul G✝ α✝
c : G✝
μ✝ : Measure α✝
inst✝⁵ : SMulInvariantMeasure G✝ α✝ μ✝
G : Type u
α : Type w
s : Set α
m : MeasurableSpace α
inst✝⁴ : AddGroup G
inst✝³ : AddAction G α
inst✝² : MeasurableSpace G
inst✝¹ : MeasurableVAdd G α
μ : Measure α
inst✝ : VAddInvariantMeasure G α μ
x y : G
hs : x +ᵥ s =ᶠ[ae μ] s
hy : y ∈ AddSubgroup.zmultiples x
this✝ : MeasurableSpace (Multiplicative G) := inferInstanceAs (MeasurableSpace G)
this : SMulInvariantMeasure (Multiplicative G) α μ :=
  { measure_preimage_smul := fun g => VAddInvariantMeasure.measure_preimage_vadd (Multiplicative.toAdd g) }
⊢ y +ᵥ s =ᶠ[ae μ] s
state_after: G✝ : Type u
M : Type v
α✝ : Type w
s✝ : Set α✝
m✝ : MeasurableSpace α✝
inst✝⁹ : Group G✝
inst✝⁸ : MulAction G✝ α✝
inst✝⁷ : MeasurableSpace G✝
inst✝⁶ : MeasurableSMul G✝ α✝
c : G✝
μ✝ : Measure α✝
inst✝⁵ : SMulInvariantMeasure G✝ α✝ μ✝
G : Type u
α : Type w
s : Set α
m : MeasurableSpace α
inst✝⁴ : AddGroup G
inst✝³ : AddAction G α
inst✝² : MeasurableSpace G
inst✝¹ : MeasurableVAdd G α
μ : Measure α
inst✝ : VAddInvariantMeasure G α μ
x y : G
hs : x +ᵥ s =ᶠ[ae μ] s
hy : y ∈ AddSubgroup.zmultiples x
this✝¹ : MeasurableSpace (Multiplicative G) := inferInstanceAs (MeasurableSpace G)
this✝ : SMulInvariantMeasure (Multiplicative G) α μ :=
  { measure_preimage_smul := fun g => VAddInvariantMeasure.measure_preimage_vadd (Multiplicative.toAdd g) }
this : MeasurableSMul (Multiplicative G) α :=
  { measurable_const_smul := fun g => measurable_const_vadd (Multiplicative.toAdd g),
    measurable_smul_const := fun a => measurable_vadd_const a }
⊢ y +ᵥ s =ᶠ[ae μ] s

tactic: exact smul_ae_eq_self_of_mem_zpowers (G := Multiplicative G) hs hy
state_before: G✝ : Type u
M : Type v
α✝ : Type w
s✝ : Set α✝
m✝ : MeasurableSpace α✝
inst✝⁹ : Group G✝
inst✝⁸ : MulAction G✝ α✝
inst✝⁷ : MeasurableSpace G✝
inst✝⁶ : MeasurableSMul G✝ α✝
c : G✝
μ✝ : Measure α✝
inst✝⁵ : SMulInvariantMeasure G✝ α✝ μ✝
G : Type u
α : Type w
s : Set α
m : MeasurableSpace α
inst✝⁴ : AddGroup G
inst✝³ : AddAction G α
inst✝² : MeasurableSpace G
inst✝¹ : MeasurableVAdd G α
μ : Measure α
inst✝ : VAddInvariantMeasure G α μ
x y : G
hs : x +ᵥ s =ᶠ[ae μ] s
hy : y ∈ AddSubgroup.zmultiples x
this✝¹ : MeasurableSpace (Multiplicative G) := inferInstanceAs (MeasurableSpace G)
this✝ : SMulInvariantMeasure (Multiplicative G) α μ :=
  { measure_preimage_smul := fun g => VAddInvariantMeasure.measure_preimage_vadd (Multiplicative.toAdd g) }
this : MeasurableSMul (Multiplicative G) α :=
  { measurable_const_smul := fun g => measurable_const_vadd (Multiplicative.toAdd g),
    measurable_smul_const := fun a => measurable_vadd_const a }
⊢ y +ᵥ s =ᶠ[ae μ] s
state_after: no goals