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

tactic: refine' le_antisymm (essSup_mono_measure' Measure.restrict_le_self) _
state_before: G : Type u_1
H : Type ?u.448297
α : Type u_2
β : Type ?u.448303
E : Type ?u.448306
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 α
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
hs : IsFundamentalDomain G s
f : α → ℝ≥0∞
hf : ∀ (γ : G) (x : α), f (γ • x) = f x
⊢ essSup f (Measure.restrict μ s) = essSup f μ

tactic: rw [essSup_eq_sInf (μ.restrict s) f, essSup_eq_sInf μ f]
state_before: G : Type u_1
H : Type ?u.448297
α : Type u_2
β : Type ?u.448303
E : Type ?u.448306
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 α
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
hs : IsFundamentalDomain G s
f : α → ℝ≥0∞
hf : ∀ (γ : G) (x : α), f (γ • x) = f x
⊢ essSup f μ ≤ essSup f (Measure.restrict μ s)

tactic: refine' sInf_le_sInf _
state_before: G : Type u_1
H : Type ?u.448297
α : Type u_2
β : Type ?u.448303
E : Type ?u.448306
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 α
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
hs : IsFundamentalDomain G s
f : α → ℝ≥0∞
hf : ∀ (γ : G) (x : α), f (γ • x) = f x
⊢ sInf {a | ↑↑μ {x | a < f x} = 0} ≤ sInf {a | ↑↑(Measure.restrict μ s) {x | a < f x} = 0}

tactic: rintro a (ha : (μ.restrict s) {x : α | a < f x} = 0)
state_before: G : Type u_1
H : Type ?u.448297
α : Type u_2
β : Type ?u.448303
E : Type ?u.448306
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 α
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
hs : IsFundamentalDomain G s
f : α → ℝ≥0∞
hf : ∀ (γ : G) (x : α), f (γ • x) = f x
⊢ {a | ↑↑(Measure.restrict μ s) {x | a < f x} = 0} ⊆ {a | ↑↑μ {x | a < f x} = 0}

tactic: rw [Measure.restrict_apply₀' hs.nullMeasurableSet] at ha
state_before: G : Type u_1
H : Type ?u.448297
α : Type u_2
β : Type ?u.448303
E : Type ?u.448306
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 α
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
hs : IsFundamentalDomain G s
f : α → ℝ≥0∞
hf : ∀ (γ : G) (x : α), f (γ • x) = f x
a : ℝ≥0∞
ha : ↑↑(Measure.restrict μ s) {x | a < f x} = 0
⊢ a ∈ {a | ↑↑μ {x | a < f x} = 0}

tactic: refine' measure_zero_of_invariant hs _ _ ha
state_before: G : Type u_1
H : Type ?u.448297
α : Type u_2
β : Type ?u.448303
E : Type ?u.448306
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 α
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
hs : IsFundamentalDomain G s
f : α → ℝ≥0∞
hf : ∀ (γ : G) (x : α), f (γ • x) = f x
a : ℝ≥0∞
ha : ↑↑μ ({x | a < f x} ∩ s) = 0
⊢ a ∈ {a | ↑↑μ {x | a < f x} = 0}

tactic: intro γ
state_before: G : Type u_1
H : Type ?u.448297
α : Type u_2
β : Type ?u.448303
E : Type ?u.448306
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 α
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
hs : IsFundamentalDomain G s
f : α → ℝ≥0∞
hf : ∀ (γ : G) (x : α), f (γ • x) = f x
a : ℝ≥0∞
ha : ↑↑μ ({x | a < f x} ∩ s) = 0
⊢ ∀ (g : G), g • {x | a < f x} = {x | a < f x}

tactic: ext x
state_before: G : Type u_1
H : Type ?u.448297
α : Type u_2
β : Type ?u.448303
E : Type ?u.448306
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 α
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
hs : IsFundamentalDomain G s
f : α → ℝ≥0∞
hf : ∀ (γ : G) (x : α), f (γ • x) = f x
a : ℝ≥0∞
ha : ↑↑μ ({x | a < f x} ∩ s) = 0
γ : G
⊢ γ • {x | a < f x} = {x | a < f x}

tactic: rw [mem_smul_set_iff_inv_smul_mem]
state_before: case h
G : Type u_1
H : Type ?u.448297
α : Type u_2
β : Type ?u.448303
E : Type ?u.448306
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 α
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
hs : IsFundamentalDomain G s
f : α → ℝ≥0∞
hf : ∀ (γ : G) (x : α), f (γ • x) = f x
a : ℝ≥0∞
ha : ↑↑μ ({x | a < f x} ∩ s) = 0
γ : G
x : α
⊢ x ∈ γ • {x | a < f x} ↔ x ∈ {x | a < f x}

tactic: simp only [mem_setOf_eq, hf γ⁻¹ x]
state_before: case h
G : Type u_1
H : Type ?u.448297
α : Type u_2
β : Type ?u.448303
E : Type ?u.448306
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 α
inst✝¹ : NormedSpace ℝ E
inst✝ : CompleteSpace E
hs : IsFundamentalDomain G s
f : α → ℝ≥0∞
hf : ∀ (γ : G) (x : α), f (γ • x) = f x
a : ℝ≥0∞
ha : ↑↑μ ({x | a < f x} ∩ s) = 0
γ : G
x : α
⊢ γ⁻¹ • x ∈ {x | a < f x} ↔ x ∈ {x | a < f x}