Theorem: UniformSpace.ext
File: Mathlib/Topology/UniformSpace/Basic.lean

tactic: have : u₁.toTopologicalSpace = u₂.toTopologicalSpace := TopologicalSpace.ext_nhds fun x ↦ by
  rw [u₁.nhds_eq_comap_uniformity, u₂.nhds_eq_comap_uniformity]
  exact congr_arg (comap _) h
state_before: α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι : Sort u_1
u₁ u₂ : UniformSpace α
h : 𝓤 α = 𝓤 α
⊢ u₁ = u₂
state_after: α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι : Sort u_1
u₁ u₂ : UniformSpace α
h : 𝓤 α = 𝓤 α
this : toTopologicalSpace = toTopologicalSpace
⊢ u₁ = u₂

tactic: cases u₁
state_before: α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι : Sort u_1
u₁ u₂ : UniformSpace α
h : 𝓤 α = 𝓤 α
this : toTopologicalSpace = toTopologicalSpace
⊢ u₁ = u₂
state_after: case mk
α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι : Sort u_1
u₂ : UniformSpace α
toTopologicalSpace✝ : TopologicalSpace α
uniformity✝ : Filter (α × α)
symm✝ : Tendsto Prod.swap uniformity✝ uniformity✝
comp✝ : (uniformity✝.lift' fun s => s ○ s) ≤ uniformity✝
nhds_eq_comap_uniformity✝ : ∀ (x : α), 𝓝 x = comap (Prod.mk x) uniformity✝
h : 𝓤 α = 𝓤 α
this : toTopologicalSpace = toTopologicalSpace
⊢ mk uniformity✝ symm✝ comp✝ nhds_eq_comap_uniformity✝ = u₂

tactic: cases u₂
state_before: case mk
α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι : Sort u_1
u₂ : UniformSpace α
toTopologicalSpace✝ : TopologicalSpace α
uniformity✝ : Filter (α × α)
symm✝ : Tendsto Prod.swap uniformity✝ uniformity✝
comp✝ : (uniformity✝.lift' fun s => s ○ s) ≤ uniformity✝
nhds_eq_comap_uniformity✝ : ∀ (x : α), 𝓝 x = comap (Prod.mk x) uniformity✝
h : 𝓤 α = 𝓤 α
this : toTopologicalSpace = toTopologicalSpace
⊢ mk uniformity✝ symm✝ comp✝ nhds_eq_comap_uniformity✝ = u₂
state_after: case mk.mk
α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι : Sort u_1
toTopologicalSpace✝¹ : TopologicalSpace α
uniformity✝¹ : Filter (α × α)
symm✝¹ : Tendsto Prod.swap uniformity✝¹ uniformity✝¹
comp✝¹ : (uniformity✝¹.lift' fun s => s ○ s) ≤ uniformity✝¹
nhds_eq_comap_uniformity✝¹ : ∀ (x : α), 𝓝 x = comap (Prod.mk x) uniformity✝¹
toTopologicalSpace✝ : TopologicalSpace α
uniformity✝ : Filter (α × α)
symm✝ : Tendsto Prod.swap uniformity✝ uniformity✝
comp✝ : (uniformity✝.lift' fun s => s ○ s) ≤ uniformity✝
nhds_eq_comap_uniformity✝ : ∀ (x : α), 𝓝 x = comap (Prod.mk x) uniformity✝
h : 𝓤 α = 𝓤 α
this : toTopologicalSpace = toTopologicalSpace
⊢ mk uniformity✝¹ symm✝¹ comp✝¹ nhds_eq_comap_uniformity✝¹ = mk uniformity✝ symm✝ comp✝ nhds_eq_comap_uniformity✝

tactic: congr
state_before: case mk.mk
α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι : Sort u_1
toTopologicalSpace✝¹ : TopologicalSpace α
uniformity✝¹ : Filter (α × α)
symm✝¹ : Tendsto Prod.swap uniformity✝¹ uniformity✝¹
comp✝¹ : (uniformity✝¹.lift' fun s => s ○ s) ≤ uniformity✝¹
nhds_eq_comap_uniformity✝¹ : ∀ (x : α), 𝓝 x = comap (Prod.mk x) uniformity✝¹
toTopologicalSpace✝ : TopologicalSpace α
uniformity✝ : Filter (α × α)
symm✝ : Tendsto Prod.swap uniformity✝ uniformity✝
comp✝ : (uniformity✝.lift' fun s => s ○ s) ≤ uniformity✝
nhds_eq_comap_uniformity✝ : ∀ (x : α), 𝓝 x = comap (Prod.mk x) uniformity✝
h : 𝓤 α = 𝓤 α
this : toTopologicalSpace = toTopologicalSpace
⊢ mk uniformity✝¹ symm✝¹ comp✝¹ nhds_eq_comap_uniformity✝¹ = mk uniformity✝ symm✝ comp✝ nhds_eq_comap_uniformity✝
state_after: no goals

tactic: rw [u₁.nhds_eq_comap_uniformity, u₂.nhds_eq_comap_uniformity]
state_before: α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι : Sort u_1
u₁ u₂ : UniformSpace α
h : 𝓤 α = 𝓤 α
x : α
⊢ 𝓝 x = 𝓝 x
state_after: α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι : Sort u_1
u₁ u₂ : UniformSpace α
h : 𝓤 α = 𝓤 α
x : α
⊢ comap (Prod.mk x) UniformSpace.uniformity = comap (Prod.mk x) UniformSpace.uniformity

tactic: exact congr_arg (comap _) h
state_before: α : Type ua
β : Type ub
γ : Type uc
δ : Type ud
ι : Sort u_1
u₁ u₂ : UniformSpace α
h : 𝓤 α = 𝓤 α
x : α
⊢ comap (Prod.mk x) UniformSpace.uniformity = comap (Prod.mk x) UniformSpace.uniformity
state_after: no goals