Documentation

Mathlib.Analysis.Normed.Module.ContinuousInverse

Continuous linear maps with a continuous left/right inverse #

This file defines continuous linear maps which admit a continuous left/right inverse.

We prove that both of these classes of maps are closed under products, composition and contain linear equivalences, and a sufficient criterion in finite dimension: a surjective linear map on a finite-dimensional space always admits a continuous right inverse; an injective linear map on a finite-dimensional space always admits a continuous left inverse.

We also prove an equivalent characterisation of admitting a continuous left inverse: f admits a continuous left inverse if and only if it is injective, has closed range and its range admits a closed complement. This characterisation is used to extract a complement from immersions, for use in the regular value theorem. (For submersions, there is a natural choice of complement, and an analogous statement is not necessary.)

This concept is used to give an equivalent definition of immersions and submersions of manifolds.

Main definitions and results #

TODO #

def ContinuousLinearMap.HasLeftInverse {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] (f : E →L[R] F) :

A continuous linear map admits a left inverse which is a continuous linear map itself.

Instances For
    def ContinuousLinearMap.HasRightInverse {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] (f : E →L[R] F) :

    A continuous linear map admits a right inverse which is a continuous linear map itself.

    Instances For
      noncomputable def ContinuousLinearMap.HasLeftInverse.leftInverse {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] {f : E →L[R] F} (h : f.HasLeftInverse) :
      F →L[R] E

      Choice of continuous left inverse for f : F →L[R] E, given that such an inverse exists.

      Instances For
        theorem ContinuousLinearMap.HasLeftInverse.leftInverse_leftInverse {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] {f : E →L[R] F} (h : f.HasLeftInverse) :
        Function.LeftInverse h.leftInverse f
        theorem ContinuousLinearMap.HasLeftInverse.injective {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] {f : E →L[R] F} (h : f.HasLeftInverse) :
        Function.Injective f
        theorem ContinuousLinearMap.HasLeftInverse.congr {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] {f g : E →L[R] F} (hf : f.HasLeftInverse) (hfg : g = f) :
        theorem ContinuousLinearEquiv.hasLeftInverse {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] (f : E ≃L[R] F) :

        A continuous linear equivalence has a continuous left inverse.

        An invertible continuous linear map has a continuous left inverse.

        theorem ContinuousLinearMap.HasLeftInverse.prodMap {R : Type u_1} [Semiring R] {E : Type u_2} {E' : Type u_3} {F : Type u_4} {F' : Type u_5} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace E'] [AddCommMonoid E'] [Module R E'] [TopologicalSpace F] [AddCommMonoid F] [Module R F] [TopologicalSpace F'] [AddCommMonoid F'] [Module R F'] {f : E →L[R] F} {g : E' →L[R] F'} (hf : f.HasLeftInverse) (hg : g.HasLeftInverse) :

        If f and g admit continuous left inverses, so does f × g.

        If f : E → F is injective and E is finite-dimensional, f has a continuous left inverse.

        An equivalent characterisation of maps with a continuous left inverse

        If f has a continuous left inverse, its range admits a closed complement.

        noncomputable def ContinuousLinearMap.HasLeftInverse.complement {R : Type u_7} {E : Type u_8} {F : Type u_10} [Ring R] [TopologicalSpace E] [AddCommGroup E] [Module R E] [TopologicalSpace F] [AddCommGroup F] [Module R F] {f : E →L[R] F} [T1Space F] (h : f.HasLeftInverse) :

        Choice of a closed complement of range f

        Instances For

          A continuous linear map between Banach spaces has a continuous left inverse if it is injective, has closed range and its range has a closed complement.

          noncomputable def ContinuousLinearMap.HasRightInverse.rightInverse {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] {f : E →L[R] F} (h : f.HasRightInverse) :
          F →L[R] E

          Choice of continuous right inverse for f : F →L[R] E, given that such an inverse exists.

          Instances For
            theorem ContinuousLinearMap.HasRightInverse.rightInverse_rightInverse {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] {f : E →L[R] F} (h : f.HasRightInverse) :
            Function.RightInverse h.rightInverse f
            theorem ContinuousLinearMap.HasRightInverse.surjective {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] {f : E →L[R] F} (h : f.HasRightInverse) :
            Function.Surjective f
            theorem ContinuousLinearMap.HasRightInverse.congr {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] {f g : E →L[R] F} (hf : f.HasRightInverse) (hfg : g = f) :
            theorem ContinuousLinearEquiv.hasRightInverse {R : Type u_1} [Semiring R] {E : Type u_2} {F : Type u_4} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace F] [AddCommMonoid F] [Module R F] (f : E ≃L[R] F) :

            A continuous linear equivalence has a continuous right inverse.

            An invertible continuous linear map has a continuous right inverse.

            theorem ContinuousLinearMap.HasRightInverse.prodMap {R : Type u_1} [Semiring R] {E : Type u_2} {E' : Type u_3} {F : Type u_4} {F' : Type u_5} [TopologicalSpace E] [AddCommMonoid E] [Module R E] [TopologicalSpace E'] [AddCommMonoid E'] [Module R E'] [TopologicalSpace F] [AddCommMonoid F] [Module R F] [TopologicalSpace F'] [AddCommMonoid F'] [Module R F'] {f : E →L[R] F} {g : E' →L[R] F'} (hf : f.HasRightInverse) (hg : g.HasRightInverse) :

            If f and g split, then so does f × g.

            If f : E → F is surjective and F is finite-dimensional, f has a continuous right inverse.