Theorem: isLocallyClosed_tfae
File: Mathlib/Topology/LocallyClosed.lean

Proof steps:
state_before: X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
⊢ [IsLocallyClosed s, IsOpen (coborder s), ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s),
      ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s, IsOpen (closure s ↓∩ s)].TFAE
state_after: case tfae_1_to_2
X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
⊢ IsLocallyClosed s → IsOpen (coborder s)

X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
⊢ [IsLocallyClosed s, IsOpen (coborder s), ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s),
      ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s, IsOpen (closure s ↓∩ s)].TFAE
tactic: tfae_have 1 → 2
state_before: X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
⊢ [IsLocallyClosed s, IsOpen (coborder s), ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s),
      ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s, IsOpen (closure s ↓∩ s)].TFAE
state_after: case tfae_2_to_3
X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
⊢ IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)

X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
tfae_2_to_3 : IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)
⊢ [IsLocallyClosed s, IsOpen (coborder s), ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s),
      ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s, IsOpen (closure s ↓∩ s)].TFAE
tactic: tfae_have 2 → 3
state_before: X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
tfae_2_to_3 : IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)
⊢ [IsLocallyClosed s, IsOpen (coborder s), ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s),
      ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s, IsOpen (closure s ↓∩ s)].TFAE
state_after: case tfae_3_to_4
X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
tfae_2_to_3 : IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)
⊢ (∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)) → ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s

X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
tfae_2_to_3 : IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)
tfae_3_to_4 : (∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)) → ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s
⊢ [IsLocallyClosed s, IsOpen (coborder s), ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s),
      ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s, IsOpen (closure s ↓∩ s)].TFAE
tactic: tfae_have 3 → 4
state_before: X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
tfae_2_to_3 : IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)
tfae_3_to_4 : (∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)) → ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s
⊢ [IsLocallyClosed s, IsOpen (coborder s), ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s),
      ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s, IsOpen (closure s ↓∩ s)].TFAE
state_after: case tfae_4_to_5
X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
tfae_2_to_3 : IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)
tfae_3_to_4 : (∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)) → ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s
⊢ (∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s) → IsOpen (closure s ↓∩ s)

X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
tfae_2_to_3 : IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)
tfae_3_to_4 : (∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)) → ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s
tfae_4_to_5 : (∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s) → IsOpen (closure s ↓∩ s)
⊢ [IsLocallyClosed s, IsOpen (coborder s), ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s),
      ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s, IsOpen (closure s ↓∩ s)].TFAE
tactic: tfae_have 4 → 5
state_before: X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
tfae_2_to_3 : IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)
tfae_3_to_4 : (∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)) → ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s
tfae_4_to_5 : (∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s) → IsOpen (closure s ↓∩ s)
⊢ [IsLocallyClosed s, IsOpen (coborder s), ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s),
      ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s, IsOpen (closure s ↓∩ s)].TFAE
state_after: case tfae_5_to_1
X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
tfae_2_to_3 : IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)
tfae_3_to_4 : (∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)) → ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s
tfae_4_to_5 : (∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s) → IsOpen (closure s ↓∩ s)
⊢ IsOpen (closure s ↓∩ s) → IsLocallyClosed s

X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
tfae_2_to_3 : IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)
tfae_3_to_4 : (∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)) → ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s
tfae_4_to_5 : (∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s) → IsOpen (closure s ↓∩ s)
tfae_5_to_1 : IsOpen (closure s ↓∩ s) → IsLocallyClosed s
⊢ [IsLocallyClosed s, IsOpen (coborder s), ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s),
      ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s, IsOpen (closure s ↓∩ s)].TFAE
tactic: tfae_have 5 → 1
state_before: X : Type u_1
Y : Type u_2
inst✝¹ : TopologicalSpace X
inst✝ : TopologicalSpace Y
s✝ t : Set X
f : X → Y
s : Set X
tfae_1_to_2 : IsLocallyClosed s → IsOpen (coborder s)
tfae_2_to_3 : IsOpen (coborder s) → ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)
tfae_3_to_4 : (∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s)) → ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s
tfae_4_to_5 : (∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s) → IsOpen (closure s ↓∩ s)
tfae_5_to_1 : IsOpen (closure s ↓∩ s) → IsLocallyClosed s
⊢ [IsLocallyClosed s, IsOpen (coborder s), ∀ x ∈ s, ∃ U ∈ 𝓝 x, IsClosed (U ↓∩ s),
      ∀ x ∈ s, ∃ U, x ∈ U ∧ IsOpen U ∧ U ∩ closure s ⊆ s, IsOpen (closure s ↓∩ s)].TFAE
state_after: no goals
tactic: tfae_finish