Documentation

Mathlib.Topology.Algebra.Module.ClosedSubmodule

Closed submodules of a topological module #

This file builds the frame of closed R-submodules of a topological module M.

One can turn s : Submodule R E + hs : IsClosed s into s : ClosedSubmodule R E in a tactic block by doing lift s to ClosedSubmodule R E using hs.

TODO #

Actually provide the Order.Frame (ClosedSubmodule R M) instance.

structure ClosedSubmodule (R : Type u_2) (M : Type u_3) [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] extends Submodule R M, TopologicalSpace.Closeds M :
Type u_3

The type of closed submodules of a topological module.

Instances For
    theorem ClosedSubmodule.ext {R : Type u_2} {M : Type u_3} {inst✝ : Semiring R} {inst✝¹ : AddCommMonoid M} {inst✝² : TopologicalSpace M} {inst✝³ : Module R M} {x y : ClosedSubmodule R M} (carrier : (↑x).carrier = (↑y).carrier) :
    x = y
    theorem ClosedSubmodule.ext_iff {R : Type u_2} {M : Type u_3} {inst✝ : Semiring R} {inst✝¹ : AddCommMonoid M} {inst✝² : TopologicalSpace M} {inst✝³ : Module R M} {x y : ClosedSubmodule R M} :
    x = y ↔ (↑x).carrier = (↑y).carrier
    @[simp]
    theorem ClosedSubmodule.carrier_eq_coe {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] (s : ClosedSubmodule R M) :
    (↑s).carrier = ↑s
    @[simp]
    theorem ClosedSubmodule.mem_mk {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] {x : M} {s : Submodule R M} {hs : IsClosed s.carrier} :
    x ∈ { toSubmodule := s, isClosed' := hs } ↔ x ∈ s
    @[simp]
    theorem ClosedSubmodule.coe_toSubmodule {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] (s : ClosedSubmodule R M) :
    ↑↑s = ↑s
    @[simp]
    theorem ClosedSubmodule.mem_toSubmodule_iff {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] (x : M) (s : ClosedSubmodule R M) :
    x ∈ ↑s ↔ x ∈ s
    @[simp]
    theorem ClosedSubmodule.coe_toCloseds {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] (s : ClosedSubmodule R M) :
    ↑↑s = ↑s
    def ClosedSubmodule.comap {R : Type u_2} {M : Type u_3} {N : Type u_4} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] [AddCommMonoid N] [TopologicalSpace N] [Module R N] (f : M β†’L[R] N) (s : ClosedSubmodule R N) :

    The preimage of a closed submodule under a continuous linear map as a closed submodule.

    Equations
      Instances For
        @[simp]
        theorem ClosedSubmodule.coe_comap {R : Type u_2} {M : Type u_3} {N : Type u_4} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] [AddCommMonoid N] [TopologicalSpace N] [Module R N] (f : M β†’L[R] N) (s : ClosedSubmodule R N) :
        ↑(comap f s) = ⇑f ⁻¹' ↑s
        @[simp]
        theorem ClosedSubmodule.mem_comap {R : Type u_2} {M : Type u_3} {N : Type u_4} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] [AddCommMonoid N] [TopologicalSpace N] [Module R N] {f : M β†’L[R] N} {s : ClosedSubmodule R N} {x : M} :
        @[simp]
        theorem ClosedSubmodule.toSubmodule_comap {R : Type u_2} {M : Type u_3} {N : Type u_4} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] [AddCommMonoid N] [TopologicalSpace N] [Module R N] (f : M β†’L[R] N) (s : ClosedSubmodule R N) :
        ↑(comap f s) = Submodule.comap ↑f ↑s
        theorem ClosedSubmodule.comap_comap {R : Type u_2} {M : Type u_3} {N : Type u_4} {O : Type u_5} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] [AddCommMonoid N] [TopologicalSpace N] [Module R N] [AddCommMonoid O] [TopologicalSpace O] [Module R O] (g : N β†’L[R] O) (f : M β†’L[R] N) (s : ClosedSubmodule R O) :
        comap f (comap g s) = comap (g.comp f) s
        @[simp]
        theorem ClosedSubmodule.toSubmodule_sInf {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] (S : Set (ClosedSubmodule R M)) :
        ↑(sInf S) = β¨… s ∈ S, ↑s
        @[simp]
        theorem ClosedSubmodule.toSubmodule_iInf {ΞΉ : Sort u_1} {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] (f : ΞΉ β†’ ClosedSubmodule R M) :
        ↑(β¨… (i : ΞΉ), f i) = β¨… (i : ΞΉ), ↑(f i)
        @[simp]
        theorem ClosedSubmodule.coe_sInf {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] (S : Set (ClosedSubmodule R M)) :
        ↑(sInf S) = β¨… s ∈ S, ↑s
        @[simp]
        theorem ClosedSubmodule.coe_iInf {ΞΉ : Sort u_1} {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] (f : ΞΉ β†’ ClosedSubmodule R M) :
        ↑(β¨… (i : ΞΉ), f i) = β¨… (i : ΞΉ), ↑(f i)
        @[simp]
        theorem ClosedSubmodule.mem_sInf {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] {x : M} {S : Set (ClosedSubmodule R M)} :
        x ∈ sInf S ↔ βˆ€ s ∈ S, x ∈ s
        @[simp]
        theorem ClosedSubmodule.mem_iInf {ΞΉ : Sort u_1} {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] {x : M} {f : ΞΉ β†’ ClosedSubmodule R M} :
        x ∈ β¨… (i : ΞΉ), f i ↔ βˆ€ (i : ΞΉ), x ∈ f i
        @[simp]
        theorem ClosedSubmodule.toSubmodule_inf {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] (s t : ClosedSubmodule R M) :
        ↑(s βŠ“ t) = ↑s βŠ“ ↑t
        @[simp]
        theorem ClosedSubmodule.coe_inf {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] (s t : ClosedSubmodule R M) :
        ↑(s βŠ“ t) = ↑s βŠ“ ↑t
        @[simp]
        theorem ClosedSubmodule.mem_inf {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] {s t : ClosedSubmodule R M} {x : M} :
        x ∈ s βŠ“ t ↔ x ∈ s ∧ x ∈ t
        @[simp]
        theorem ClosedSubmodule.mem_top {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] {x : M} :
        @[simp]
        theorem ClosedSubmodule.coe_bot {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] [T1Space M] :
        ↑βŠ₯ = {0}
        @[simp]
        theorem ClosedSubmodule.mem_bot {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] {x : M} [T1Space M] :

        The closure of a submodule as a closed submodule.

        Equations
          Instances For
            @[simp]
            theorem Submodule.coe_closure {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] [ContinuousAdd M] [ContinuousConstSMul R M] (s : Submodule R M) :
            ↑s.closure = closure ↑s
            @[simp]
            theorem Submodule.closure_eq {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] [ContinuousAdd M] [ContinuousConstSMul R M] {s : ClosedSubmodule R M} :
            (↑s).closure = s
            theorem Submodule.closure_eq' {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [TopologicalSpace M] [Module R M] [ContinuousAdd M] [ContinuousConstSMul R M] {s : Submodule R M} (hs : IsClosed s.carrier) :
            s.closure = { toSubmodule := s, isClosed' := hs }

            The closure of the image of a closed submodule under a continuous linear map is a closed submodule.

            ClosedSubmodule.map f is left-adjoint to ClosedSubmodule.comap f. See ClosedSubmodule.gc_map_comap.

            Equations
              Instances For
                @[simp]
                theorem ClosedSubmodule.toSubmodule_sup {R : Type u_2} {N : Type u_4} [Semiring R] [AddCommMonoid N] [TopologicalSpace N] [Module R N] [ContinuousAdd N] [ContinuousConstSMul R N] {s t : ClosedSubmodule R N} :
                ↑(s βŠ” t) = ↑(↑s βŠ” ↑t).closure
                @[simp]
                theorem ClosedSubmodule.coe_sup {R : Type u_2} {N : Type u_4} [Semiring R] [AddCommMonoid N] [TopologicalSpace N] [Module R N] [ContinuousAdd N] [ContinuousConstSMul R N] {s t : ClosedSubmodule R N} :
                ↑(s βŠ” t) = closure (↑s βŠ” ↑t).carrier
                @[simp]
                theorem ClosedSubmodule.mem_sup {R : Type u_2} {N : Type u_4} [Semiring R] [AddCommMonoid N] [TopologicalSpace N] [Module R N] [ContinuousAdd N] [ContinuousConstSMul R N] {s t : ClosedSubmodule R N} {x : N} :
                x ∈ s βŠ” t ↔ x ∈ closure (↑s βŠ” ↑t).carrier
                @[simp]
                theorem ClosedSubmodule.toSubmodule_sSup {R : Type u_2} {N : Type u_4} [Semiring R] [AddCommMonoid N] [TopologicalSpace N] [Module R N] [ContinuousAdd N] [ContinuousConstSMul R N] (S : Set (ClosedSubmodule R N)) :
                ↑(sSup S) = ↑(⨆ s ∈ S, ↑s).closure
                @[simp]
                theorem ClosedSubmodule.toSubmodule_iSup {ΞΉ : Sort u_1} {R : Type u_2} {N : Type u_4} [Semiring R] [AddCommMonoid N] [TopologicalSpace N] [Module R N] [ContinuousAdd N] [ContinuousConstSMul R N] (f : ΞΉ β†’ ClosedSubmodule R N) :
                ↑(⨆ (i : ΞΉ), f i) = ↑(⨆ (i : ΞΉ), ↑(f i)).closure
                @[simp]
                theorem ClosedSubmodule.coe_sSup {R : Type u_2} {N : Type u_4} [Semiring R] [AddCommMonoid N] [TopologicalSpace N] [Module R N] [ContinuousAdd N] [ContinuousConstSMul R N] (S : Set (ClosedSubmodule R N)) :
                ↑(sSup S) = closure (⨆ s ∈ S, ↑s).carrier
                @[simp]
                theorem ClosedSubmodule.coe_iSup {ΞΉ : Sort u_1} {R : Type u_2} {N : Type u_4} [Semiring R] [AddCommMonoid N] [TopologicalSpace N] [Module R N] [ContinuousAdd N] [ContinuousConstSMul R N] (f : ΞΉ β†’ ClosedSubmodule R N) :
                ↑(⨆ (i : ΞΉ), f i) = closure (⨆ (i : ΞΉ), ↑(f i)).carrier
                @[simp]
                theorem ClosedSubmodule.mem_sSup {R : Type u_2} {N : Type u_4} [Semiring R] [AddCommMonoid N] [TopologicalSpace N] [Module R N] [ContinuousAdd N] [ContinuousConstSMul R N] {x : N} {S : Set (ClosedSubmodule R N)} :
                x ∈ sSup S ↔ x ∈ closure (⨆ s ∈ S, ↑s).carrier
                @[simp]
                theorem ClosedSubmodule.mem_iSup {ΞΉ : Sort u_1} {R : Type u_2} {N : Type u_4} [Semiring R] [AddCommMonoid N] [TopologicalSpace N] [Module R N] [ContinuousAdd N] [ContinuousConstSMul R N] {x : N} {f : ΞΉ β†’ ClosedSubmodule R N} :
                x ∈ ⨆ (i : ΞΉ), f i ↔ x ∈ closure (⨆ (i : ΞΉ), ↑(f i)).carrier
                instance instCompleteSpaceSubtypeMemClosedSubmodule {π•œ : Type u_6} {H : Type u_7} [Semiring π•œ] [AddCommMonoid H] [UniformSpace H] [Module π•œ H] [CompleteSpace H] (K : ClosedSubmodule π•œ H) :
                CompleteSpace β†₯K