File: Mathlib/Data/Analysis/Topology.lean

full_name: Ctop.inter
code: /-- A `Ctop α σ` is a realization of a topology (basis) on `α`,
  represented by a type `σ` together with operations for the top element and
  the intersection operation. -/
structure Ctop (α σ : Type*) where
  f : σ → Set α
  top : α → σ
  top_mem : ∀ x : α, x ∈ f (top x)
  inter : ∀ (a b) (x : α), x ∈ f a ∩ f b → σ
  inter_mem : ∀ a b x h, x ∈ f (inter a b x h)
  inter_sub : ∀ a b x h, f (inter a b x h) ⊆ f a ∩ f b
goal: x ∈ self.f a ∩ self.f b → σ

full_name: Ctop
code: /-- A `Ctop α σ` is a realization of a topology (basis) on `α`,
  represented by a type `σ` together with operations for the top element and
  the intersection operation. -/
structure Ctop (α σ : Type*) where
  f : σ → Set α
  top : α → σ
  top_mem : ∀ x : α, x ∈ f (top x)
  inter : ∀ (a b) (x : α), x ∈ f a ∩ f b → σ
  inter_mem : ∀ a b x h, x ∈ f (inter a b x h)
  inter_sub : ∀ a b x h, f (inter a b x h) ⊆ f a ∩ f b
goal: Type (max u_1 u_2)

full_name: Ctop.top_mem
code: /-- A `Ctop α σ` is a realization of a topology (basis) on `α`,
  represented by a type `σ` together with operations for the top element and
  the intersection operation. -/
structure Ctop (α σ : Type*) where
  f : σ → Set α
  top : α → σ
  top_mem : ∀ x : α, x ∈ f (top x)
  inter : ∀ (a b) (x : α), x ∈ f a ∩ f b → σ
  inter_mem : ∀ a b x h, x ∈ f (inter a b x h)
  inter_sub : ∀ a b x h, f (inter a b x h) ⊆ f a ∩ f b
goal: x ∈ self.f (self.top x)

full_name: Ctop.f
code: /-- A `Ctop α σ` is a realization of a topology (basis) on `α`,
  represented by a type `σ` together with operations for the top element and
  the intersection operation. -/
structure Ctop (α σ : Type*) where
  f : σ → Set α
  top : α → σ
  top_mem : ∀ x : α, x ∈ f (top x)
  inter : ∀ (a b) (x : α), x ∈ f a ∩ f b → σ
  inter_mem : ∀ a b x h, x ∈ f (inter a b x h)
  inter_sub : ∀ a b x h, f (inter a b x h) ⊆ f a ∩ f b
goal: σ → Set α

full_name: Ctop.inter_mem
code: /-- A `Ctop α σ` is a realization of a topology (basis) on `α`,
  represented by a type `σ` together with operations for the top element and
  the intersection operation. -/
structure Ctop (α σ : Type*) where
  f : σ → Set α
  top : α → σ
  top_mem : ∀ x : α, x ∈ f (top x)
  inter : ∀ (a b) (x : α), x ∈ f a ∩ f b → σ
  inter_mem : ∀ a b x h, x ∈ f (inter a b x h)
  inter_sub : ∀ a b x h, f (inter a b x h) ⊆ f a ∩ f b
goal: x ∈ self.f (self.inter a b x h)

full_name: Ctop.inter_sub
code: /-- A `Ctop α σ` is a realization of a topology (basis) on `α`,
  represented by a type `σ` together with operations for the top element and
  the intersection operation. -/
structure Ctop (α σ : Type*) where
  f : σ → Set α
  top : α → σ
  top_mem : ∀ x : α, x ∈ f (top x)
  inter : ∀ (a b) (x : α), x ∈ f a ∩ f b → σ
  inter_mem : ∀ a b x h, x ∈ f (inter a b x h)
  inter_sub : ∀ a b x h, f (inter a b x h) ⊆ f a ∩ f b
goal: self.f (self.inter a b x h) ⊆ self.f a ∩ self.f b

full_name: Ctop.top
code: /-- A `Ctop α σ` is a realization of a topology (basis) on `α`,
  represented by a type `σ` together with operations for the top element and
  the intersection operation. -/
structure Ctop (α σ : Type*) where
  f : σ → Set α
  top : α → σ
  top_mem : ∀ x : α, x ∈ f (top x)
  inter : ∀ (a b) (x : α), x ∈ f a ∩ f b → σ
  inter_mem : ∀ a b x h, x ∈ f (inter a b x h)
  inter_sub : ∀ a b x h, f (inter a b x h) ⊆ f a ∩ f b
goal: α → σ

full_name: instInhabitedCtopSet
code: instance : Inhabited (Ctop α (Set α)) 
goal: Inhabited (Ctop α (Set α))

full_name: Ctop.instCoeFunForallSet
code: instance : CoeFun (Ctop α σ) fun _ ↦ σ → Set α 
goal: CoeFun (Ctop α σ) fun x => σ → Set α

full_name: Ctop.coe_mk
code: theorem coe_mk (f T h₁ I h₂ h₃ a) : (@Ctop.mk α σ f T h₁ I h₂ h₃) a = f a 
goal: { f := f, top := T, top_mem := h₁, inter := I, inter_mem := h₂, inter_sub := h₃ }.f a = f a

full_name: Ctop.ofEquiv
code: /-- Map a Ctop to an equivalent representation type. -/
def ofEquiv (E : σ ≃ τ) : Ctop α σ → Ctop α τ
  
goal: Ctop α σ → Ctop α τ

full_name: Ctop.ofEquiv_val
code: @[simp]
theorem ofEquiv_val (E : σ ≃ τ) (F : Ctop α σ) (a : τ) : F.ofEquiv E a = F (E.symm a) 
goal: (Ctop.ofEquiv E F).f a = F.f (E.symm a)

full_name: Ctop.toTopsp
code: /-- Every `Ctop` is a topological space. -/
def toTopsp (F : Ctop α σ) : TopologicalSpace α 
goal: TopologicalSpace α

full_name: Ctop.toTopsp_isTopologicalBasis
code: theorem toTopsp_isTopologicalBasis (F : Ctop α σ) :
    @TopologicalSpace.IsTopologicalBasis _ F.toTopsp (Set.range F.f) 
goal: TopologicalSpace.IsTopologicalBasis (Set.range F.f)

full_name: Ctop.mem_nhds_toTopsp
code: @[simp]
theorem mem_nhds_toTopsp (F : Ctop α σ) {s : Set α} {a : α} :
    s ∈ @nhds _ F.toTopsp a ↔ ∃ b, a ∈ F b ∧ F b ⊆ s 
goal: s ∈ 𝓝 a ↔ ∃ b, a ∈ F.f b ∧ F.f b ⊆ s

full_name: Ctop.Realizer.F
code: /-- A `Ctop` realizer for the topological space `T` is a `Ctop`
  which generates `T`. -/
structure Ctop.Realizer (α) [T : TopologicalSpace α] where
  σ : Type*
  F : Ctop α σ
  eq : F.toTopsp = T
goal: Ctop α self.σ

full_name: Ctop.Realizer.σ
code: /-- A `Ctop` realizer for the topological space `T` is a `Ctop`
  which generates `T`. -/
structure Ctop.Realizer (α) [T : TopologicalSpace α] where
  σ : Type*
  F : Ctop α σ
  eq : F.toTopsp = T
goal: Type u_5

full_name: Ctop.Realizer
code: /-- A `Ctop` realizer for the topological space `T` is a `Ctop`
  which generates `T`. -/
structure Ctop.Realizer (α) [T : TopologicalSpace α] where
  σ : Type*
  F : Ctop α σ
  eq : F.toTopsp = T
goal: Type (max (u_5 + 1) u_6)

full_name: Ctop.Realizer.eq
code: /-- A `Ctop` realizer for the topological space `T` is a `Ctop`
  which generates `T`. -/
structure Ctop.Realizer (α) [T : TopologicalSpace α] where
  σ : Type*
  F : Ctop α σ
  eq : F.toTopsp = T
goal: self.F.toTopsp = T

full_name: Ctop.toRealizer
code: /-- A `Ctop` realizes the topological space it generates. -/
protected def Ctop.toRealizer (F : Ctop α σ) : @Ctop.Realizer _ F.toTopsp 
goal: Ctop.Realizer α

full_name: instInhabitedRealizer
code: instance (F : Ctop α σ) : Inhabited (@Ctop.Realizer _ F.toTopsp) 
goal: Inhabited (Ctop.Realizer α)

full_name: Ctop.Realizer.is_basis
code: protected theorem is_basis [T : TopologicalSpace α] (F : Realizer α) :
    TopologicalSpace.IsTopologicalBasis (Set.range F.F.f) 
goal: TopologicalSpace.IsTopologicalBasis (Set.range F.F.f)

full_name: Ctop.Realizer.mem_nhds
code: protected theorem mem_nhds [T : TopologicalSpace α] (F : Realizer α) {s : Set α} {a : α} :
    s ∈ 𝓝 a ↔ ∃ b, a ∈ F.F b ∧ F.F b ⊆ s 
goal: s ∈ 𝓝 a ↔ ∃ b, a ∈ F.F.f b ∧ F.F.f b ⊆ s

full_name: Ctop.Realizer.isOpen_iff
code: theorem isOpen_iff [TopologicalSpace α] (F : Realizer α) {s : Set α} :
    IsOpen s ↔ ∀ a ∈ s, ∃ b, a ∈ F.F b ∧ F.F b ⊆ s 
goal: IsOpen s ↔ ∀ a ∈ s, ∃ b, a ∈ F.F.f b ∧ F.F.f b ⊆ s

full_name: Ctop.Realizer.isClosed_iff
code: theorem isClosed_iff [TopologicalSpace α] (F : Realizer α) {s : Set α} :
    IsClosed s ↔ ∀ a, (∀ b, a ∈ F.F b → ∃ z, z ∈ F.F b ∩ s) → a ∈ s 
goal: IsClosed s ↔ ∀ (a : α), (∀ (b : F.σ), a ∈ F.F.f b → ∃ z, z ∈ F.F.f b ∩ s) → a ∈ s

full_name: Ctop.Realizer.mem_interior_iff
code: theorem mem_interior_iff [TopologicalSpace α] (F : Realizer α) {s : Set α} {a : α} :
    a ∈ interior s ↔ ∃ b, a ∈ F.F b ∧ F.F b ⊆ s 
goal: a ∈ interior s ↔ ∃ b, a ∈ F.F.f b ∧ F.F.f b ⊆ s

full_name: Ctop.Realizer.isOpen
code: protected theorem isOpen [TopologicalSpace α] (F : Realizer α) (s : F.σ) : IsOpen (F.F s) 
goal: IsOpen (F.F.f s)

full_name: Ctop.Realizer.ext'
code: theorem ext' [T : TopologicalSpace α] {σ : Type*} {F : Ctop α σ}
    (H : ∀ a s, s ∈ 𝓝 a ↔ ∃ b, a ∈ F b ∧ F b ⊆ s) : F.toTopsp = T 
goal: F.toTopsp = T

full_name: Ctop.Realizer.ext
code: theorem ext [T : TopologicalSpace α] {σ : Type*} {F : Ctop α σ} (H₁ : ∀ a, IsOpen (F a))
    (H₂ : ∀ a s, s ∈ 𝓝 a → ∃ b, a ∈ F b ∧ F b ⊆ s) : F.toTopsp = T 
goal: F.toTopsp = T

full_name: Ctop.Realizer.id
code: /-- The topological space realizer made of the open sets. -/
protected def id : Realizer α 
goal: Ctop.Realizer α

full_name: Ctop.Realizer.ofEquiv
code: /-- Replace the representation type of a `Ctop` realizer. -/
def ofEquiv (F : Realizer α) (E : F.σ ≃ τ) : Realizer α 
goal: Ctop.Realizer α

full_name: Ctop.Realizer.ofEquiv_σ
code: @[simp]
theorem ofEquiv_σ (F : Realizer α) (E : F.σ ≃ τ) : (F.ofEquiv E).σ = τ 
goal: (F.ofEquiv E).σ = τ

full_name: Ctop.Realizer.ofEquiv_F
code: @[simp]
theorem ofEquiv_F (F : Realizer α) (E : F.σ ≃ τ) (s : τ) : (F.ofEquiv E).F s = F.F (E.symm s) 
goal: (F.ofEquiv E).F.f s = F.F.f (E.symm s)

full_name: Ctop.Realizer.nhds
code: /-- A realizer of the neighborhood of a point. -/
protected def nhds (F : Realizer α) (a : α) : (𝓝 a).Realizer 
goal: (𝓝 a).Realizer

full_name: Ctop.Realizer.nhds_σ
code: @[simp]
theorem nhds_σ (F : Realizer α) (a : α) : (F.nhds a).σ = { s : F.σ // a ∈ F.F s } 
goal: (F.nhds a).σ = { s // a ∈ F.F.f s }

full_name: Ctop.Realizer.nhds_F
code: @[simp]
theorem nhds_F (F : Realizer α) (a : α) (s) : (F.nhds a).F s = F.F s.1 
goal: (F.nhds a).F.f s = F.F.f ↑s

full_name: Ctop.Realizer.tendsto_nhds_iff
code: theorem tendsto_nhds_iff {m : β → α} {f : Filter β} (F : f.Realizer) (R : Realizer α) {a : α} :
    Tendsto m f (𝓝 a) ↔ ∀ t, a ∈ R.F t → ∃ s, ∀ x ∈ F.F s, m x ∈ R.F t 
goal: Filter.Tendsto m f (𝓝 a) ↔ ∀ (t : R.σ), a ∈ R.F.f t → ∃ s, ∀ x ∈ F.F.f s, m x ∈ R.F.f t

full_name: LocallyFinite.Realizer.sets
code: /-- A `LocallyFinite.Realizer F f` is a realization that `f` is locally finite, namely it is a
choice of open sets from the basis of `F` such that they intersect only finitely many of the values
of `f`.  -/
structure LocallyFinite.Realizer [TopologicalSpace α] (F : Ctop.Realizer α) (f : β → Set α) where
  bas : ∀ a, { s // a ∈ F.F s }
  sets : ∀ x : α, Fintype { i | (f i ∩ F.F (bas x)).Nonempty }
goal: Fintype ↑{i | (f i ∩ F.F.f ↑(self.bas x)).Nonempty}

full_name: LocallyFinite.Realizer.bas
code: /-- A `LocallyFinite.Realizer F f` is a realization that `f` is locally finite, namely it is a
choice of open sets from the basis of `F` such that they intersect only finitely many of the values
of `f`.  -/
structure LocallyFinite.Realizer [TopologicalSpace α] (F : Ctop.Realizer α) (f : β → Set α) where
  bas : ∀ a, { s // a ∈ F.F s }
  sets : ∀ x : α, Fintype { i | (f i ∩ F.F (bas x)).Nonempty }
goal: { s // a ∈ F.F.f s }

full_name: LocallyFinite.Realizer
code: /-- A `LocallyFinite.Realizer F f` is a realization that `f` is locally finite, namely it is a
choice of open sets from the basis of `F` such that they intersect only finitely many of the values
of `f`.  -/
structure LocallyFinite.Realizer [TopologicalSpace α] (F : Ctop.Realizer α) (f : β → Set α) where
  bas : ∀ a, { s // a ∈ F.F s }
  sets : ∀ x : α, Fintype { i | (f i ∩ F.F (bas x)).Nonempty }
goal: Type (max (max u_1 u_2) u_5)

full_name: LocallyFinite.Realizer.to_locallyFinite
code: theorem LocallyFinite.Realizer.to_locallyFinite [TopologicalSpace α] {F : Ctop.Realizer α}
    {f : β → Set α} (R : LocallyFinite.Realizer F f) : LocallyFinite f 
goal: LocallyFinite f

full_name: locallyFinite_iff_exists_realizer
code: theorem locallyFinite_iff_exists_realizer [TopologicalSpace α] (F : Ctop.Realizer α)
    {f : β → Set α} : LocallyFinite f ↔ Nonempty (LocallyFinite.Realizer F f) 
goal: LocallyFinite f ↔ Nonempty (LocallyFinite.Realizer F f)

full_name: instNonemptyRealizerOfFinite
code: instance [TopologicalSpace α] [Finite β] (F : Ctop.Realizer α) (f : β → Set α) :
    Nonempty (LocallyFinite.Realizer F f) 
goal: Nonempty (LocallyFinite.Realizer F f)

full_name: Compact.Realizer
code: /-- A `Compact.Realizer s` is a realization that `s` is compact, namely it is a
choice of finite open covers for each set family covering `s`.  -/
def Compact.Realizer [TopologicalSpace α] (s : Set α) 
goal: Type (max (max (max u_1 (u_5 + 1)) u_5) u_1)

full_name: instInhabitedRealizerEmptyCollectionSet
code: instance [TopologicalSpace α] : Inhabited (Compact.Realizer (∅ : Set α)) 
goal: Inhabited (Compact.Realizer ∅)