Theorem: MeasureTheory.IsFundamentalDomain.aEStronglyMeasurable_on_iff
File: Mathlib/MeasureTheory/Group/FundamentalDomain.lean

tactic: simp only [← ht.restrict_restrict,
  ht.sum_restrict_of_ac restrict_le_self.absolutelyContinuous]
state_before: G : Type u_2
H : Type ?u.308154
α : Type u_3
β✝ : Type ?u.308160
E : Type ?u.308163
inst✝¹² : Group G
inst✝¹¹ : Group H
inst✝¹⁰ : MulAction G α
inst✝⁹ : MeasurableSpace α
inst✝⁸ : MulAction H β✝
inst✝⁷ : MeasurableSpace β✝
inst✝⁶ : NormedAddCommGroup E
s t : Set α
μ : Measure α
inst✝⁵ : MeasurableSpace G
inst✝⁴ : MeasurableSMul G α
inst✝³ : SMulInvariantMeasure G α μ
inst✝² : Countable G
ν : Measure α
β : Type u_1
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
hs : IsFundamentalDomain G s
ht : IsFundamentalDomain G t
f : α → β
hf : ∀ (g : G) (x : α), f (g • x) = f x
⊢ AEStronglyMeasurable f (Measure.restrict μ s) ↔ AEStronglyMeasurable f (sum fun g => Measure.restrict μ (g • t ∩ s))

tactic: simp only [smul_set_inter, inter_comm, smul_inv_smul, aestronglyMeasurable_sum_measure_iff]
state_before: G : Type u_2
H : Type ?u.308154
α : Type u_3
β✝ : Type ?u.308160
E : Type ?u.308163
inst✝¹² : Group G
inst✝¹¹ : Group H
inst✝¹⁰ : MulAction G α
inst✝⁹ : MeasurableSpace α
inst✝⁸ : MulAction H β✝
inst✝⁷ : MeasurableSpace β✝
inst✝⁶ : NormedAddCommGroup E
s t : Set α
μ : Measure α
inst✝⁵ : MeasurableSpace G
inst✝⁴ : MeasurableSMul G α
inst✝³ : SMulInvariantMeasure G α μ
inst✝² : Countable G
ν : Measure α
β : Type u_1
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
hs : IsFundamentalDomain G s
ht : IsFundamentalDomain G t
f : α → β
hf : ∀ (g : G) (x : α), f (g • x) = f x
⊢ AEStronglyMeasurable f (sum fun g => Measure.restrict μ (g • t ∩ s)) ↔
    ∀ (g : G), AEStronglyMeasurable f (Measure.restrict μ (g • (g⁻¹ • s ∩ t)))

tactic: simp only [inv_inv]
state_before: G : Type u_2
H : Type ?u.308154
α : Type u_3
β✝ : Type ?u.308160
E : Type ?u.308163
inst✝¹² : Group G
inst✝¹¹ : Group H
inst✝¹⁰ : MulAction G α
inst✝⁹ : MeasurableSpace α
inst✝⁸ : MulAction H β✝
inst✝⁷ : MeasurableSpace β✝
inst✝⁶ : NormedAddCommGroup E
s t : Set α
μ : Measure α
inst✝⁵ : MeasurableSpace G
inst✝⁴ : MeasurableSMul G α
inst✝³ : SMulInvariantMeasure G α μ
inst✝² : Countable G
ν : Measure α
β : Type u_1
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
hs : IsFundamentalDomain G s
ht : IsFundamentalDomain G t
f : α → β
hf : ∀ (g : G) (x : α), f (g • x) = f x
⊢ (∀ (g : G), AEStronglyMeasurable f (Measure.restrict μ (g⁻¹ • (g⁻¹⁻¹ • s ∩ t)))) ↔
    ∀ (g : G), AEStronglyMeasurable f (Measure.restrict μ (g⁻¹ • (g • s ∩ t)))

tactic: refine' forall_congr' fun g => _
state_before: G : Type u_2
H : Type ?u.308154
α : Type u_3
β✝ : Type ?u.308160
E : Type ?u.308163
inst✝¹² : Group G
inst✝¹¹ : Group H
inst✝¹⁰ : MulAction G α
inst✝⁹ : MeasurableSpace α
inst✝⁸ : MulAction H β✝
inst✝⁷ : MeasurableSpace β✝
inst✝⁶ : NormedAddCommGroup E
s t : Set α
μ : Measure α
inst✝⁵ : MeasurableSpace G
inst✝⁴ : MeasurableSMul G α
inst✝³ : SMulInvariantMeasure G α μ
inst✝² : Countable G
ν : Measure α
β : Type u_1
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
hs : IsFundamentalDomain G s
ht : IsFundamentalDomain G t
f : α → β
hf : ∀ (g : G) (x : α), f (g • x) = f x
⊢ (∀ (g : G), AEStronglyMeasurable f (Measure.restrict μ (g⁻¹ • (g • s ∩ t)))) ↔
    ∀ (g : G), AEStronglyMeasurable f (Measure.restrict μ (g • s ∩ t))

tactic: rw [← image_smul, ← ((measurePreserving_smul g⁻¹ μ).restrict_image_emb he
  _).aestronglyMeasurable_comp_iff he]
state_before: G : Type u_2
H : Type ?u.308154
α : Type u_3
β✝ : Type ?u.308160
E : Type ?u.308163
inst✝¹² : Group G
inst✝¹¹ : Group H
inst✝¹⁰ : MulAction G α
inst✝⁹ : MeasurableSpace α
inst✝⁸ : MulAction H β✝
inst✝⁷ : MeasurableSpace β✝
inst✝⁶ : NormedAddCommGroup E
s t : Set α
μ : Measure α
inst✝⁵ : MeasurableSpace G
inst✝⁴ : MeasurableSMul G α
inst✝³ : SMulInvariantMeasure G α μ
inst✝² : Countable G
ν : Measure α
β : Type u_1
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
hs : IsFundamentalDomain G s
ht : IsFundamentalDomain G t
f : α → β
hf : ∀ (g : G) (x : α), f (g • x) = f x
g : G
he : MeasurableEmbedding ((fun x x_1 => x • x_1) g⁻¹)
⊢ AEStronglyMeasurable f (Measure.restrict μ (g⁻¹ • (g • s ∩ t))) ↔
    AEStronglyMeasurable f (Measure.restrict μ (g • s ∩ t))

tactic: simp only [← aestronglyMeasurable_sum_measure_iff, ← hs.restrict_restrict,
  hs.sum_restrict_of_ac restrict_le_self.absolutelyContinuous]
state_before: G : Type u_2
H : Type ?u.308154
α : Type u_3
β✝ : Type ?u.308160
E : Type ?u.308163
inst✝¹² : Group G
inst✝¹¹ : Group H
inst✝¹⁰ : MulAction G α
inst✝⁹ : MeasurableSpace α
inst✝⁸ : MulAction H β✝
inst✝⁷ : MeasurableSpace β✝
inst✝⁶ : NormedAddCommGroup E
s t : Set α
μ : Measure α
inst✝⁵ : MeasurableSpace G
inst✝⁴ : MeasurableSMul G α
inst✝³ : SMulInvariantMeasure G α μ
inst✝² : Countable G
ν : Measure α
β : Type u_1
inst✝¹ : TopologicalSpace β
inst✝ : PseudoMetrizableSpace β
hs : IsFundamentalDomain G s
ht : IsFundamentalDomain G t
f : α → β
hf : ∀ (g : G) (x : α), f (g • x) = f x
⊢ (∀ (g : G), AEStronglyMeasurable f (Measure.restrict μ (g • s ∩ t))) ↔ AEStronglyMeasurable f (Measure.restrict μ t)