α : Type u_1
m : MeasurableSpace α
f : α → α
s✝ : Set α
μ : Measure α
β : Type u_2
m' : MeasurableSpace β
μ' : Measure β
s' : Set β
g : α → β
hg : MeasurePreserving g
hf : PreErgodic f
f' : β → β
h_comm : g ∘ f = f' ∘ g
s : Set β
hs₀ : MeasurableSet s
hs₁ : f' ⁻¹' s = s
⊢ s =ᶠ[ae μ'] ∅ ∨ s =ᶠ[ae μ'] univ
α : Type u_1
m : MeasurableSpace α
f : α → α
s : Set α
μ : Measure α
β : Type u_2
m' : MeasurableSpace β
μ' : Measure β
s' : Set β
g : α → β
hg : MeasurePreserving g
hf : PreErgodic f
f' : β → β
h_comm : g ∘ f = f' ∘ g
⊢ ∀ ⦃s : Set β⦄, MeasurableSet s → f' ⁻¹' s = s → s =ᶠ[ae μ'] ∅ ∨ s =ᶠ[ae μ'] univ
intro s hs₀ hs₁
case hs₁
α : Type u_1
m : MeasurableSpace α
f : α → α
s✝ : Set α
μ : Measure α
β : Type u_2
m' : MeasurableSpace β
μ' : Measure β
s' : Set β
g : α → β
hg : MeasurePreserving g
hf : PreErgodic f
f' : β → β
h_comm : g ∘ f = f' ∘ g
s : Set β
hs₀ : MeasurableSet s
hs₁ : f' ⁻¹' s = s
⊢ f ⁻¹' (g ⁻¹' s) = g ⁻¹' s

α : Type u_1
m : MeasurableSpace α
f : α → α
s✝ : Set α
μ : Measure α
β : Type u_2
m' : MeasurableSpace β
μ' : Measure β
s' : Set β
g : α → β
hg : MeasurePreserving g
hf : PreErgodic f
f' : β → β
h_comm : g ∘ f = f' ∘ g
s : Set β
hs₀ : MeasurableSet s
hs₁ : f ⁻¹' (g ⁻¹' s) = g ⁻¹' s
⊢ s =ᶠ[ae μ'] ∅ ∨ s =ᶠ[ae μ'] univ
α : Type u_1
m : MeasurableSpace α
f : α → α
s✝ : Set α
μ : Measure α
β : Type u_2
m' : MeasurableSpace β
μ' : Measure β
s' : Set β
g : α → β
hg : MeasurePreserving g
hf : PreErgodic f
f' : β → β
h_comm : g ∘ f = f' ∘ g
s : Set β
hs₀ : MeasurableSet s
hs₁ : f' ⁻¹' s = s
⊢ s =ᶠ[ae μ'] ∅ ∨ s =ᶠ[ae μ'] univ
replace hs₁ : f ⁻¹' (g ⁻¹' s) = g ⁻¹' s
case inl.h
α : Type u_1
m : MeasurableSpace α
f : α → α
s✝ : Set α
μ : Measure α
β : Type u_2
m' : MeasurableSpace β
μ' : Measure β
s' : Set β
g : α → β
hg : MeasurePreserving g
hf : PreErgodic f
f' : β → β
h_comm : g ∘ f = f' ∘ g
s : Set β
hs₀ : MeasurableSet s
hs₁ : f ⁻¹' (g ⁻¹' s) = g ⁻¹' s
hs₂ : g ⁻¹' s =ᶠ[ae μ] ∅
⊢ s =ᶠ[ae μ'] ∅

case inr.h
α : Type u_1
m : MeasurableSpace α
f : α → α
s✝ : Set α
μ : Measure α
β : Type u_2
m' : MeasurableSpace β
μ' : Measure β
s' : Set β
g : α → β
hg : MeasurePreserving g
hf : PreErgodic f
f' : β → β
h_comm : g ∘ f = f' ∘ g
s : Set β
hs₀ : MeasurableSet s
hs₁ : f ⁻¹' (g ⁻¹' s) = g ⁻¹' s
hs₂ : g ⁻¹' s =ᶠ[ae μ] univ
⊢ s =ᶠ[ae μ'] univ
α : Type u_1
m : MeasurableSpace α
f : α → α
s✝ : Set α
μ : Measure α
β : Type u_2
m' : MeasurableSpace β
μ' : Measure β
s' : Set β
g : α → β
hg : MeasurePreserving g
hf : PreErgodic f
f' : β → β
h_comm : g ∘ f = f' ∘ g
s : Set β
hs₀ : MeasurableSet s
hs₁ : f ⁻¹' (g ⁻¹' s) = g ⁻¹' s
⊢ s =ᶠ[ae μ'] ∅ ∨ s =ᶠ[ae μ'] univ
cases' hf.ae_empty_or_univ (hg.measurable hs₀) hs₁ with hs₂ hs₂ <;> [left; right]
no goals
case hs₁
α : Type u_1
m : MeasurableSpace α
f : α → α
s✝ : Set α
μ : Measure α
β : Type u_2
m' : MeasurableSpace β
μ' : Measure β
s' : Set β
g : α → β
hg : MeasurePreserving g
hf : PreErgodic f
f' : β → β
h_comm : g ∘ f = f' ∘ g
s : Set β
hs₀ : MeasurableSet s
hs₁ : f' ⁻¹' s = s
⊢ f ⁻¹' (g ⁻¹' s) = g ⁻¹' s
rw [← preimage_comp, h_comm, preimage_comp, hs₁]
no goals
case inl.h
α : Type u_1
m : MeasurableSpace α
f : α → α
s✝ : Set α
μ : Measure α
β : Type u_2
m' : MeasurableSpace β
μ' : Measure β
s' : Set β
g : α → β
hg : MeasurePreserving g
hf : PreErgodic f
f' : β → β
h_comm : g ∘ f = f' ∘ g
s : Set β
hs₀ : MeasurableSet s
hs₁ : f ⁻¹' (g ⁻¹' s) = g ⁻¹' s
hs₂ : g ⁻¹' s =ᶠ[ae μ] ∅
⊢ s =ᶠ[ae μ'] ∅
simpa only [ae_eq_empty, hg.measure_preimage hs₀] using hs₂
no goals
case inr.h
α : Type u_1
m : MeasurableSpace α
f : α → α
s✝ : Set α
μ : Measure α
β : Type u_2
m' : MeasurableSpace β
μ' : Measure β
s' : Set β
g : α → β
hg : MeasurePreserving g
hf : PreErgodic f
f' : β → β
h_comm : g ∘ f = f' ∘ g
s : Set β
hs₀ : MeasurableSet s
hs₁ : f ⁻¹' (g ⁻¹' s) = g ⁻¹' s
hs₂ : g ⁻¹' s =ᶠ[ae μ] univ
⊢ s =ᶠ[ae μ'] univ
simpa only [ae_eq_univ, ← preimage_compl, hg.measure_preimage hs₀.compl] using hs₂