doc-next-gen

Mathlib.Topology.Algebra.Module.Equiv

Module docstring

{"# Continuous linear equivalences

Continuous semilinear / linear / star-linear equivalences between topological modules are denoted by M ≃SL[σ] M₂, M ≃L[R] M₂ and M ≃L⋆[R] M₂. ","The next theorems cover the identification between M ≃L[R] Mand the group of units of the ring M →L[R] M. "}

ContinuousLinearEquiv structure
{R : Type*} {S : Type*} [Semiring R] [Semiring S] (σ : R →+* S) {σ' : S →+* R} [RingHomInvPair σ σ'] [RingHomInvPair σ' σ] (M : Type*) [TopologicalSpace M] [AddCommMonoid M] (M₂ : Type*) [TopologicalSpace M₂] [AddCommMonoid M₂] [Module R M] [Module S M₂] extends M ≃ₛₗ[σ] M₂
Full source
/-- Continuous linear equivalences between modules. We only put the type classes that are necessary
for the definition, although in applications `M` and `M₂` will be topological modules over the
topological semiring `R`. -/
structure ContinuousLinearEquiv {R : Type*} {S : Type*} [Semiring R] [Semiring S] (σ : R →+* S)
    {σ' : S →+* R} [RingHomInvPair σ σ'] [RingHomInvPair σ' σ] (M : Type*) [TopologicalSpace M]
    [AddCommMonoid M] (M₂ : Type*) [TopologicalSpace M₂] [AddCommMonoid M₂] [Module R M]
    [Module S M₂] extends M ≃ₛₗ[σ] M₂ where
  continuous_toFun : Continuous toFun := by continuity
  continuous_invFun : Continuous invFun := by continuity
Continuous Linear Equivalence
Informal description
A continuous linear equivalence between topological modules \( M \) and \( M_2 \) over semirings \( R \) and \( S \) respectively, where \( \sigma: R \to S \) is a semiring homomorphism. This structure extends a semilinear equivalence \( M \simeq_{\sigma} M_2 \) and ensures that both the equivalence and its inverse are continuous linear maps.
term_≃SL[_]_ definition
: Lean.TrailingParserDescr✝
Full source
@[inherit_doc]
notation:50 M " ≃SL[" σ "] " M₂ => ContinuousLinearEquiv σ M M₂
Continuous semilinear equivalence notation
Informal description
The notation \( M \simeqSL[\sigma] M_2 \) denotes the type of continuous semilinear equivalences between topological modules \( M \) and \( M_2 \), where \( \sigma \) is a semiring homomorphism that relates the scalar rings of \( M \) and \( M_2 \).
ContinuousSemilinearEquivClass structure
(F : Type*) {R : outParam Type*} {S : outParam Type*} [Semiring R] [Semiring S] (σ : outParam <| R →+* S) {σ' : outParam <| S →+* R} [RingHomInvPair σ σ'] [RingHomInvPair σ' σ] (M : outParam Type*) [TopologicalSpace M] [AddCommMonoid M] (M₂ : outParam Type*) [TopologicalSpace M₂] [AddCommMonoid M₂] [Module R M] [Module S M₂] [EquivLike F M M₂] : Prop extends SemilinearEquivClass F σ M M₂
Full source
/-- `ContinuousSemilinearEquivClass F σ M M₂` asserts `F` is a type of bundled continuous
`σ`-semilinear equivs `M → M₂`.  See also `ContinuousLinearEquivClass F R M M₂` for the case
where `σ` is the identity map on `R`.  A map `f` between an `R`-module and an `S`-module over a ring
homomorphism `σ : R →+* S` is semilinear if it satisfies the two properties `f (x + y) = f x + f y`
and `f (c • x) = (σ c) • f x`. -/
class ContinuousSemilinearEquivClass (F : Type*) {R : outParam Type*} {S : outParam Type*}
    [Semiring R] [Semiring S] (σ : outParam <| R →+* S) {σ' : outParam <| S →+* R}
    [RingHomInvPair σ σ'] [RingHomInvPair σ' σ] (M : outParam Type*) [TopologicalSpace M]
    [AddCommMonoid M] (M₂ : outParam Type*) [TopologicalSpace M₂] [AddCommMonoid M₂] [Module R M]
    [Module S M₂] [EquivLike F M M₂] : Prop extends SemilinearEquivClass F σ M M₂ where
  map_continuous : ∀ f : F, Continuous f := by continuity
  inv_continuous : ∀ f : F, Continuous (EquivLike.inv f) := by continuity
Class of continuous $\sigma$-semilinear equivalences
Informal description
The class `ContinuousSemilinearEquivClass F σ M M₂` asserts that `F` is a type of bundled continuous $\sigma$-semilinear equivalences between topological modules `M` and `M₂`. Here, $\sigma : R \to S$ is a ring homomorphism, and a map $f : M \to M₂$ is $\sigma$-semilinear if it satisfies: 1. Additivity: $f(x + y) = f(x) + f(y)$ for all $x, y \in M$. 2. $\sigma$-linearity: $f(c \cdot x) = \sigma(c) \cdot f(x)$ for all $c \in R$ and $x \in M$. Additionally, the class requires that $\sigma$ and its inverse $\sigma' : S \to R$ form a pair of mutually inverse ring homomorphisms, and that the maps in `F` are continuous and bijective.
ContinuousLinearEquivClass abbrev
(F : Type*) (R : outParam Type*) [Semiring R] (M : outParam Type*) [TopologicalSpace M] [AddCommMonoid M] (M₂ : outParam Type*) [TopologicalSpace M₂] [AddCommMonoid M₂] [Module R M] [Module R M₂] [EquivLike F M M₂]
Full source
/-- `ContinuousLinearEquivClass F σ M M₂` asserts `F` is a type of bundled continuous
`R`-linear equivs `M → M₂`. This is an abbreviation for
`ContinuousSemilinearEquivClass F (RingHom.id R) M M₂`. -/
abbrev ContinuousLinearEquivClass (F : Type*) (R : outParam Type*) [Semiring R]
    (M : outParam Type*) [TopologicalSpace M] [AddCommMonoid M] (M₂ : outParam Type*)
    [TopologicalSpace M₂] [AddCommMonoid M₂] [Module R M] [Module R M₂] [EquivLike F M M₂] :=
  ContinuousSemilinearEquivClass F (RingHom.id R) M M₂
Class of Continuous $R$-Linear Equivalences Between Topological Modules
Informal description
The class `ContinuousLinearEquivClass F R M M₂` asserts that `F` is a type of bundled continuous $R$-linear equivalences between topological $R$-modules `M` and `M₂`. A map $f \in F$ is a continuous bijective linear map satisfying: 1. Additivity: $f(x + y) = f(x) + f(y)$ for all $x, y \in M$. 2. $R$-linearity: $f(c \cdot x) = c \cdot f(x)$ for all $c \in R$ and $x \in M$. 3. Continuity: $f$ is continuous with respect to the topologies on `M` and `M₂`. 4. Bijectivity: $f$ is both injective and surjective.
ContinuousSemilinearEquivClass.continuousSemilinearMapClass instance
[EquivLike F M M₂] [s : ContinuousSemilinearEquivClass F σ M M₂] : ContinuousSemilinearMapClass F σ M M₂
Full source
instance (priority := 100) continuousSemilinearMapClass [EquivLike F M M₂]
    [s : ContinuousSemilinearEquivClass F σ M M₂] : ContinuousSemilinearMapClass F σ M M₂ :=
  { s with }
Continuous Semilinear Equivalences as Continuous Semilinear Maps
Informal description
For any type `F` representing continuous $\sigma$-semilinear equivalences between topological modules `M` and `M₂`, where $\sigma : R \to S$ is a ring homomorphism with an inverse $\sigma' : S \to R$, and `F` is equipped with an `EquivLike` instance, the type `F` also forms a `ContinuousSemilinearMapClass`. This means every element of `F` is a continuous $\sigma$-semilinear map from `M` to `M₂`.
ContinuousSemilinearEquivClass.instHomeomorphClass instance
[EquivLike F M M₂] [s : ContinuousSemilinearEquivClass F σ M M₂] : HomeomorphClass F M M₂
Full source
instance (priority := 100) [EquivLike F M M₂]
    [s : ContinuousSemilinearEquivClass F σ M M₂] : HomeomorphClass F M M₂ :=
  { s with }
Continuous Semilinear Equivalences as Homeomorphisms
Informal description
For any type `F` representing continuous $\sigma$-semilinear equivalences between topological modules `M` and `M₂`, where $\sigma$ is a ring homomorphism with an inverse $\sigma'$, and `F` is equipped with an `EquivLike` instance, the type `F` also forms a `HomeomorphClass`. This means every element of `F` is a homeomorphism between `M` and `M₂`, i.e., a continuous bijection with a continuous inverse.
ContinuousLinearMap.iInfKerProjEquiv definition
{I J : Set ι} [DecidablePred fun i => i ∈ I] (hd : Disjoint I J) (hu : Set.univ ⊆ I ∪ J) : (⨅ i ∈ J, ker (proj i : (∀ i, φ i) →L[R] φ i) : Submodule R (∀ i, φ i)) ≃L[R] ∀ i : I, φ i
Full source
/-- If `I` and `J` are complementary index sets, the product of the kernels of the `J`th projections
of `φ` is linearly equivalent to the product over `I`. -/
def iInfKerProjEquiv {I J : Set ι} [DecidablePred fun i => i ∈ I] (hd : Disjoint I J)
    (hu : Set.univSet.univ ⊆ I ∪ J) :
    (⨅ i ∈ J, ker (proj i : (∀ i, φ i) →L[R] φ i) :
    Submodule R (∀ i, φ i)) ≃L[R] ∀ i : I, φ i where
  toLinearEquiv := LinearMap.iInfKerProjEquiv R φ hd hu
  continuous_toFun :=
    continuous_pi fun i =>
      Continuous.comp (continuous_apply (π := φ) i) <|
        @continuous_subtype_val _ _ fun x =>
          x ∈ (⨅ i ∈ J, ker (proj i : (∀ i, φ i) →L[R] φ i) : Submodule R (∀ i, φ i))
  continuous_invFun :=
    Continuous.subtype_mk
      (continuous_pi fun i => by
        dsimp
        split_ifs <;> [apply continuous_apply; exact continuous_zero])
      _
Continuous linear equivalence between intersection of kernels and product over disjoint index set
Informal description
Given two disjoint index sets $I$ and $J$ whose union covers the entire index set $\iota$, the submodule $\bigcap_{i \in J} \ker(\text{proj}_i)$ (where $\text{proj}_i$ is the continuous linear projection map from the product space $\prod_{i \in \iota} \phi_i$ to $\phi_i$) is continuously linearly equivalent to the product space $\prod_{i \in I} \phi_i$. More precisely, the equivalence is constructed by restricting the projection maps $\text{proj}_i$ for $i \in I$ to the submodule $\bigcap_{i \in J} \ker(\text{proj}_i)$, and then assembling these restricted projections into a continuous linear map to $\prod_{i \in I} \phi_i$. The inverse map is given by extending a family of elements in $\prod_{i \in I} \phi_i$ to the full product space by setting the components indexed by $J$ to zero.
ContinuousLinearEquiv.toContinuousLinearMap definition
(e : M₁ ≃SL[σ₁₂] M₂) : M₁ →SL[σ₁₂] M₂
Full source
/-- A continuous linear equivalence induces a continuous linear map. -/
@[coe]
def toContinuousLinearMap (e : M₁ ≃SL[σ₁₂] M₂) : M₁ →SL[σ₁₂] M₂ :=
  { e.toLinearEquiv.toLinearMap with cont := e.continuous_toFun }
Underlying continuous linear map of a continuous linear equivalence
Informal description
Given a continuous linear equivalence \( e : M_1 \simeq_{SL[\sigma_{12}]} M_2 \) between topological modules \( M_1 \) and \( M_2 \) over semirings with a ring homomorphism \( \sigma_{12} \), the function maps \( e \) to its underlying continuous linear map \( M_1 \to_{SL[\sigma_{12}]} M_2 \), which consists of the linear map component of \( e \) equipped with the continuity property of \( e \).
ContinuousLinearEquiv.ContinuousLinearMap.coe instance
: Coe (M₁ ≃SL[σ₁₂] M₂) (M₁ →SL[σ₁₂] M₂)
Full source
/-- Coerce continuous linear equivs to continuous linear maps. -/
instance ContinuousLinearMap.coe : Coe (M₁ ≃SL[σ₁₂] M₂) (M₁ →SL[σ₁₂] M₂) :=
  ⟨toContinuousLinearMap⟩
Continuous Linear Equivalence as Continuous Linear Map
Informal description
Every continuous linear equivalence $e : M_1 \simeq_{SL[\sigma_{12}]} M_2$ between topological modules $M_1$ and $M_2$ can be viewed as a continuous linear map $M_1 \to_{SL[\sigma_{12}]} M_2$.
ContinuousLinearEquiv.equivLike instance
: EquivLike (M₁ ≃SL[σ₁₂] M₂) M₁ M₂
Full source
instance equivLike :
    EquivLike (M₁ ≃SL[σ₁₂] M₂) M₁ M₂ where
  coe f := f.toFun
  inv f := f.invFun
  coe_injective' f g h₁ h₂ := by
    obtain ⟨f', _⟩ := f
    obtain ⟨g', _⟩ := g
    rcases f' with ⟨⟨⟨_, _⟩, _⟩, _⟩
    rcases g' with ⟨⟨⟨_, _⟩, _⟩, _⟩
    congr
  left_inv f := f.left_inv
  right_inv f := f.right_inv
Equivalence-like Structure on Continuous Linear Equivalences
Informal description
The type of continuous linear equivalences \( M_1 \simeq_{SL[\sigma_{12}]} M_2 \) between topological modules \( M_1 \) and \( M_2 \) over semirings with a ring homomorphism \( \sigma_{12} \) is equipped with an equivalence-like structure, meaning its terms can be injectively coerced to bijections between \( M_1 \) and \( M_2 \).
ContinuousLinearEquiv.continuousSemilinearEquivClass instance
: ContinuousSemilinearEquivClass (M₁ ≃SL[σ₁₂] M₂) σ₁₂ M₁ M₂
Full source
instance continuousSemilinearEquivClass :
    ContinuousSemilinearEquivClass (M₁ ≃SL[σ₁₂] M₂) σ₁₂ M₁ M₂ where
  map_add f := f.map_add'
  map_smulₛₗ f := f.map_smul'
  map_continuous := continuous_toFun
  inv_continuous := continuous_invFun
Continuous Semilinear Equivalence Class for Topological Modules
Informal description
The type of continuous $\sigma$-semilinear equivalences $M_1 \simeq_{SL[\sigma_{12}]} M_2$ between topological modules $M_1$ and $M_2$ forms a class of continuous semilinear equivalences, where $\sigma_{12}: R \to S$ is a ring homomorphism. This means that every such equivalence is a bijective, continuous, and $\sigma$-semilinear map with a continuous inverse.
ContinuousLinearEquiv.coe_apply theorem
(e : M₁ ≃SL[σ₁₂] M₂) (b : M₁) : (e : M₁ →SL[σ₁₂] M₂) b = e b
Full source
theorem coe_apply (e : M₁ ≃SL[σ₁₂] M₂) (b : M₁) : (e : M₁ →SL[σ₁₂] M₂) b = e b :=
  rfl
Evaluation of Underlying Continuous Linear Map Equals Evaluation of Continuous Linear Equivalence
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ and any element $b \in M_1$, the evaluation of the underlying continuous linear map $e \colon M_1 \toSL[\sigma_{12}] M_2$ at $b$ equals the evaluation of $e$ at $b$, i.e., $(e \colon M_1 \toSL[\sigma_{12}] M_2)(b) = e(b)$.
ContinuousLinearEquiv.coe_toLinearEquiv theorem
(f : M₁ ≃SL[σ₁₂] M₂) : ⇑f.toLinearEquiv = f
Full source
@[simp]
theorem coe_toLinearEquiv (f : M₁ ≃SL[σ₁₂] M₂) : ⇑f.toLinearEquiv = f :=
  rfl
Equality of Underlying Function in Continuous Linear Equivalence
Informal description
For any continuous linear equivalence $f \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the underlying function of the associated linear equivalence $f.toLinearEquiv$ is equal to $f$ itself. That is, $\uparrow(f.toLinearEquiv) = f$.
ContinuousLinearEquiv.coe_coe theorem
(e : M₁ ≃SL[σ₁₂] M₂) : ⇑(e : M₁ →SL[σ₁₂] M₂) = e
Full source
@[simp, norm_cast]
theorem coe_coe (e : M₁ ≃SL[σ₁₂] M₂) : ⇑(e : M₁ →SL[σ₁₂] M₂) = e :=
  rfl
Underlying Function of Continuous Linear Map Equals Equivalence
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the underlying function of the continuous linear map associated to $e$ is equal to $e$ itself. That is, the map $\uparrow(e \colon M_1 \toSL[\sigma_{12}] M_2) = e$.
ContinuousLinearEquiv.toLinearEquiv_injective theorem
: Function.Injective (toLinearEquiv : (M₁ ≃SL[σ₁₂] M₂) → M₁ ≃ₛₗ[σ₁₂] M₂)
Full source
theorem toLinearEquiv_injective :
    Function.Injective (toLinearEquiv : (M₁ ≃SL[σ₁₂] M₂) → M₁ ≃ₛₗ[σ₁₂] M₂) := by
  rintro ⟨e, _, _⟩ ⟨e', _, _⟩ rfl
  rfl
Injectivity of the Continuous-to-Semilinear Equivalence Map
Informal description
The map `toLinearEquiv` from continuous linear equivalences $M_1 \simeqSL[\sigma_{12}] M_2$ to semilinear equivalences $M_1 \simeq_{\sigma_{12}} M_2$ is injective. That is, if two continuous linear equivalences have the same underlying semilinear equivalence, then they are equal.
ContinuousLinearEquiv.ext theorem
{f g : M₁ ≃SL[σ₁₂] M₂} (h : (f : M₁ → M₂) = g) : f = g
Full source
@[ext]
theorem ext {f g : M₁ ≃SL[σ₁₂] M₂} (h : (f : M₁ → M₂) = g) : f = g :=
  toLinearEquiv_injective <| LinearEquiv.ext <| congr_fun h
Extensionality of Continuous Linear Equivalences
Informal description
Let $f$ and $g$ be continuous linear equivalences between topological modules $M_1$ and $M_2$ over semirings with ring homomorphism $\sigma_{12}$. If the underlying functions of $f$ and $g$ are equal (i.e., $f(x) = g(x)$ for all $x \in M_1$), then $f = g$.
ContinuousLinearEquiv.coe_injective theorem
: Function.Injective ((↑) : (M₁ ≃SL[σ₁₂] M₂) → M₁ →SL[σ₁₂] M₂)
Full source
theorem coe_injective : Function.Injective ((↑) : (M₁ ≃SL[σ₁₂] M₂) → M₁ →SL[σ₁₂] M₂) :=
  fun _e _e' h => ext <| funext <| ContinuousLinearMap.ext_iff.1 h
Injectivity of the Continuous Linear Equivalence to Continuous Linear Map Canonical Map
Informal description
The canonical map from the set of continuous linear equivalences $M_1 \simeqSL[\sigma_{12}] M_2$ to the set of continuous linear maps $M_1 \toSL[\sigma_{12}] M_2$ is injective. That is, if two continuous linear equivalences have the same underlying continuous linear map, then they are equal.
ContinuousLinearEquiv.coe_inj theorem
{e e' : M₁ ≃SL[σ₁₂] M₂} : (e : M₁ →SL[σ₁₂] M₂) = e' ↔ e = e'
Full source
@[simp, norm_cast]
theorem coe_inj {e e' : M₁ ≃SL[σ₁₂] M₂} : (e : M₁ →SL[σ₁₂] M₂) = e' ↔ e = e' :=
  coe_injective.eq_iff
Equality of Continuous Linear Equivalences via Underlying Maps
Informal description
For any continuous linear equivalences $e, e' \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the underlying continuous linear maps of $e$ and $e'$ are equal if and only if $e = e'$.
ContinuousLinearEquiv.toHomeomorph definition
(e : M₁ ≃SL[σ₁₂] M₂) : M₁ ≃ₜ M₂
Full source
/-- A continuous linear equivalence induces a homeomorphism. -/
def toHomeomorph (e : M₁ ≃SL[σ₁₂] M₂) : M₁ ≃ₜ M₂ :=
  { e with toEquiv := e.toLinearEquiv.toEquiv }
Homeomorphism induced by a continuous linear equivalence
Informal description
Given a continuous linear equivalence \( e : M_1 \simeqSL[\sigma_{12}] M_2 \) between topological modules \( M_1 \) and \( M_2 \), the function constructs a homeomorphism \( M_1 \simeq_{\text{top}} M_2 \) by equipping the underlying linear equivalence with the continuity properties of \( e \) and its inverse.
ContinuousLinearEquiv.coe_toHomeomorph theorem
(e : M₁ ≃SL[σ₁₂] M₂) : ⇑e.toHomeomorph = e
Full source
@[simp]
theorem coe_toHomeomorph (e : M₁ ≃SL[σ₁₂] M₂) : ⇑e.toHomeomorph = e :=
  rfl
Underlying Function of Induced Homeomorphism Equals Original Continuous Linear Equivalence
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the underlying function of the induced homeomorphism $e.toHomeomorph$ is equal to $e$ itself.
ContinuousLinearEquiv.isOpenMap theorem
(e : M₁ ≃SL[σ₁₂] M₂) : IsOpenMap e
Full source
theorem isOpenMap (e : M₁ ≃SL[σ₁₂] M₂) : IsOpenMap e :=
  (ContinuousLinearEquiv.toHomeomorph e).isOpenMap
Continuous Linear Equivalences are Open Maps
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the map $e$ is an open map. That is, for every open subset $U \subseteq M_1$, the image $e(U)$ is open in $M_2$.
ContinuousLinearEquiv.image_closure theorem
(e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₁) : e '' closure s = closure (e '' s)
Full source
theorem image_closure (e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₁) : e '' closure s = closure (e '' s) :=
  e.toHomeomorph.image_closure s
Continuous Linear Equivalence Preserves Closure Image
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings with a ring homomorphism $\sigma_{12}$, and let $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ be a continuous linear equivalence. For any subset $s \subseteq M_1$, the image of the closure of $s$ under $e$ equals the closure of the image of $s$, i.e., \[ e(\overline{s}) = \overline{e(s)}. \]
ContinuousLinearEquiv.preimage_closure theorem
(e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₂) : e ⁻¹' closure s = closure (e ⁻¹' s)
Full source
theorem preimage_closure (e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₂) : e ⁻¹' closure s = closure (e ⁻¹' s) :=
  e.toHomeomorph.preimage_closure s
Continuous Linear Equivalence Preserves Closure Preimage
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings with a ring homomorphism $\sigma_{12}$, and let $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ be a continuous linear equivalence. For any subset $s \subseteq M_2$, the preimage of the closure of $s$ under $e$ equals the closure of the preimage of $s$, i.e., \[ e^{-1}(\overline{s}) = \overline{e^{-1}(s)}. \]
ContinuousLinearEquiv.isClosed_image theorem
(e : M₁ ≃SL[σ₁₂] M₂) {s : Set M₁} : IsClosed (e '' s) ↔ IsClosed s
Full source
@[simp]
theorem isClosed_image (e : M₁ ≃SL[σ₁₂] M₂) {s : Set M₁} : IsClosedIsClosed (e '' s) ↔ IsClosed s :=
  e.toHomeomorph.isClosed_image
Continuous Linear Equivalence Preserves Closed Sets via Image
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings with a ring homomorphism $\sigma_{12}$, and let $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ be a continuous linear equivalence. For any subset $s \subseteq M_1$, the image $e(s)$ is closed in $M_2$ if and only if $s$ is closed in $M_1$.
ContinuousLinearEquiv.map_nhds_eq theorem
(e : M₁ ≃SL[σ₁₂] M₂) (x : M₁) : map e (𝓝 x) = 𝓝 (e x)
Full source
theorem map_nhds_eq (e : M₁ ≃SL[σ₁₂] M₂) (x : M₁) : map e (𝓝 x) = 𝓝 (e x) :=
  e.toHomeomorph.map_nhds_eq x
Continuous Linear Equivalence Preserves Neighborhood Filters
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings with a ring homomorphism $\sigma_{12}$, and let $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ be a continuous linear equivalence. For any point $x \in M_1$, the pushforward of the neighborhood filter $\mathcal{N}_x$ under $e$ equals the neighborhood filter $\mathcal{N}_{e(x)}$ at $e(x)$ in $M_2$. That is, $e_*(\mathcal{N}_x) = \mathcal{N}_{e(x)}$.
ContinuousLinearEquiv.map_zero theorem
(e : M₁ ≃SL[σ₁₂] M₂) : e (0 : M₁) = 0
Full source
theorem map_zero (e : M₁ ≃SL[σ₁₂] M₂) : e (0 : M₁) = 0 :=
  (e : M₁ →SL[σ₁₂] M₂).map_zero
Continuous Linear Equivalence Preserves Zero Vector
Informal description
For any continuous linear equivalence $e \colon M_1 \simeq_{SL[\sigma_{12}]} M_2$ between topological modules $M_1$ and $M_2$, the image of the zero vector in $M_1$ under $e$ is the zero vector in $M_2$, i.e., $e(0) = 0$.
ContinuousLinearEquiv.map_add theorem
(e : M₁ ≃SL[σ₁₂] M₂) (x y : M₁) : e (x + y) = e x + e y
Full source
theorem map_add (e : M₁ ≃SL[σ₁₂] M₂) (x y : M₁) : e (x + y) = e x + e y :=
  (e : M₁ →SL[σ₁₂] M₂).map_add x y
Continuous Linear Equivalence Preserves Addition
Informal description
For any continuous linear equivalence $e \colon M_1 \simeq_{SL[\sigma_{12}]} M_2$ between topological modules $M_1$ and $M_2$, and for any elements $x, y \in M_1$, the equivalence $e$ preserves addition, i.e., $e(x + y) = e(x) + e(y)$.
ContinuousLinearEquiv.map_smulₛₗ theorem
(e : M₁ ≃SL[σ₁₂] M₂) (c : R₁) (x : M₁) : e (c • x) = σ₁₂ c • e x
Full source
@[simp]
theorem map_smulₛₗ (e : M₁ ≃SL[σ₁₂] M₂) (c : R₁) (x : M₁) : e (c • x) = σ₁₂ c • e x :=
  (e : M₁ →SL[σ₁₂] M₂).map_smulₛₗ c x
Semilinear Property of Continuous Linear Equivalences
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings $R_1$ and $R_2$ respectively, with a ring homomorphism $\sigma_{12} \colon R_1 \to R_2$. For any continuous linear equivalence $e \colon M_1 \simeq_{SL[\sigma_{12}]} M_2$, any scalar $c \in R_1$, and any vector $x \in M_1$, the equivalence $e$ satisfies the semilinear property: \[ e(c \cdot x) = \sigma_{12}(c) \cdot e(x). \]
ContinuousLinearEquiv.map_smul theorem
[Module R₁ M₂] (e : M₁ ≃L[R₁] M₂) (c : R₁) (x : M₁) : e (c • x) = c • e x
Full source
theorem map_smul [Module R₁ M₂] (e : M₁ ≃L[R₁] M₂) (c : R₁) (x : M₁) : e (c • x) = c • e x :=
  (e : M₁ →L[R₁] M₂).map_smul c x
Continuous Linear Equivalence Preserves Scalar Multiplication
Informal description
Let $M_1$ and $M_2$ be topological modules over a semiring $R_1$, and let $e: M_1 \simeqL[R_1] M_2$ be a continuous linear equivalence. Then for any scalar $c \in R_1$ and any vector $x \in M_1$, the equivalence $e$ preserves scalar multiplication, i.e., $e(c \cdot x) = c \cdot e(x)$.
ContinuousLinearEquiv.map_eq_zero_iff theorem
(e : M₁ ≃SL[σ₁₂] M₂) {x : M₁} : e x = 0 ↔ x = 0
Full source
theorem map_eq_zero_iff (e : M₁ ≃SL[σ₁₂] M₂) {x : M₁} : e x = 0 ↔ x = 0 :=
  e.toLinearEquiv.map_eq_zero_iff
Continuous Linear Equivalence Preserves Zero
Informal description
For any continuous linear equivalence $e \colon M_1 \simeq_{SL[\sigma_{12}]} M_2$ and any element $x \in M_1$, we have $e(x) = 0$ if and only if $x = 0$.
ContinuousLinearEquiv.continuous theorem
(e : M₁ ≃SL[σ₁₂] M₂) : Continuous (e : M₁ → M₂)
Full source
@[continuity]
protected theorem continuous (e : M₁ ≃SL[σ₁₂] M₂) : Continuous (e : M₁ → M₂) :=
  e.continuous_toFun
Continuity of Continuous Linear Equivalences
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the underlying function $e \colon M_1 \to M_2$ is continuous.
ContinuousLinearEquiv.continuousOn theorem
(e : M₁ ≃SL[σ₁₂] M₂) {s : Set M₁} : ContinuousOn (e : M₁ → M₂) s
Full source
protected theorem continuousOn (e : M₁ ≃SL[σ₁₂] M₂) {s : Set M₁} : ContinuousOn (e : M₁ → M₂) s :=
  e.continuous.continuousOn
Continuity of Continuous Linear Equivalences on Subsets
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, and any subset $s \subseteq M_1$, the underlying function $e \colon M_1 \to M_2$ is continuous on $s$.
ContinuousLinearEquiv.continuousAt theorem
(e : M₁ ≃SL[σ₁₂] M₂) {x : M₁} : ContinuousAt (e : M₁ → M₂) x
Full source
protected theorem continuousAt (e : M₁ ≃SL[σ₁₂] M₂) {x : M₁} : ContinuousAt (e : M₁ → M₂) x :=
  e.continuous.continuousAt
Pointwise Continuity of Continuous Linear Equivalences
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the underlying function $e \colon M_1 \to M_2$ is continuous at every point $x \in M_1$.
ContinuousLinearEquiv.continuousWithinAt theorem
(e : M₁ ≃SL[σ₁₂] M₂) {s : Set M₁} {x : M₁} : ContinuousWithinAt (e : M₁ → M₂) s x
Full source
protected theorem continuousWithinAt (e : M₁ ≃SL[σ₁₂] M₂) {s : Set M₁} {x : M₁} :
    ContinuousWithinAt (e : M₁ → M₂) s x :=
  e.continuous.continuousWithinAt
Continuity Within Subset for Continuous Linear Equivalences
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, any subset $s \subseteq M_1$, and any point $x \in M_1$, the underlying function $e \colon M_1 \to M_2$ is continuous within $s$ at $x$.
ContinuousLinearEquiv.comp_continuousOn_iff theorem
{α : Type*} [TopologicalSpace α] (e : M₁ ≃SL[σ₁₂] M₂) {f : α → M₁} {s : Set α} : ContinuousOn (e ∘ f) s ↔ ContinuousOn f s
Full source
theorem comp_continuousOn_iff {α : Type*} [TopologicalSpace α] (e : M₁ ≃SL[σ₁₂] M₂) {f : α → M₁}
    {s : Set α} : ContinuousOnContinuousOn (e ∘ f) s ↔ ContinuousOn f s :=
  e.toHomeomorph.comp_continuousOn_iff _ _
Continuity of Composition with Continuous Linear Equivalence on Subsets
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings with a ring homomorphism $\sigma_{12}$, and let $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ be a continuous linear equivalence between them. For any topological space $\alpha$, function $f \colon \alpha \to M_1$, and subset $s \subseteq \alpha$, the composition $e \circ f$ is continuous on $s$ if and only if $f$ is continuous on $s$.
ContinuousLinearEquiv.comp_continuous_iff theorem
{α : Type*} [TopologicalSpace α] (e : M₁ ≃SL[σ₁₂] M₂) {f : α → M₁} : Continuous (e ∘ f) ↔ Continuous f
Full source
theorem comp_continuous_iff {α : Type*} [TopologicalSpace α] (e : M₁ ≃SL[σ₁₂] M₂) {f : α → M₁} :
    ContinuousContinuous (e ∘ f) ↔ Continuous f :=
  e.toHomeomorph.comp_continuous_iff
Continuity of Composition with Continuous Linear Equivalence
Informal description
Let $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ be a continuous linear equivalence between topological modules $M_1$ and $M_2$ over semirings with a ring homomorphism $\sigma_{12}$. For any function $f \colon \alpha \to M_1$ from a topological space $\alpha$, the composition $e \circ f$ is continuous if and only if $f$ is continuous.
ContinuousLinearEquiv.ext₁ theorem
[TopologicalSpace R₁] {f g : R₁ ≃L[R₁] M₁} (h : f 1 = g 1) : f = g
Full source
/-- An extensionality lemma for `R ≃L[R] M`. -/
theorem ext₁ [TopologicalSpace R₁] {f g : R₁ ≃L[R₁] M₁} (h : f 1 = g 1) : f = g :=
  ext <| funext fun x => mul_one x ▸ by rw [← smul_eq_mul, map_smul, h, map_smul]
Extensionality of Continuous Linear Equivalences via Unit Element
Informal description
Let $R_1$ be a topological space and let $f, g: R_1 \simeqL[R_1] M_1$ be continuous linear equivalences from $R_1$ to itself. If $f(1) = g(1)$, then $f = g$.
ContinuousLinearEquiv.refl definition
: M₁ ≃L[R₁] M₁
Full source
/-- The identity map as a continuous linear equivalence. -/
@[refl]
protected def refl : M₁ ≃L[R₁] M₁ :=
  { LinearEquiv.refl R₁ M₁ with
    continuous_toFun := continuous_id
    continuous_invFun := continuous_id }
Identity continuous linear equivalence
Informal description
The identity continuous linear equivalence on a topological module \( M_1 \) over a semiring \( R_1 \), which is a continuous linear map that is its own inverse and maps every element to itself.
ContinuousLinearEquiv.refl_apply theorem
(x : M₁) : ContinuousLinearEquiv.refl R₁ M₁ x = x
Full source
@[simp]
theorem refl_apply (x : M₁) :
    ContinuousLinearEquiv.refl R₁ M₁ x = x := rfl
Identity Continuous Linear Equivalence Acts as Identity on Elements
Informal description
For any element $x$ in a topological module $M_1$ over a semiring $R_1$, the identity continuous linear equivalence $\text{refl}_{R_1} M_1$ maps $x$ to itself, i.e., $\text{refl}_{R_1} M_1 (x) = x$.
ContinuousLinearEquiv.coe_refl theorem
: ↑(ContinuousLinearEquiv.refl R₁ M₁) = ContinuousLinearMap.id R₁ M₁
Full source
@[simp, norm_cast]
theorem coe_refl : ↑(ContinuousLinearEquiv.refl R₁ M₁) = ContinuousLinearMap.id R₁ M₁ :=
  rfl
Identity Continuous Linear Equivalence Maps to Identity Continuous Linear Map
Informal description
The underlying continuous linear map of the identity continuous linear equivalence on a topological module $M_1$ over a semiring $R_1$ is equal to the identity continuous linear map on $M_1$.
ContinuousLinearEquiv.coe_refl' theorem
: ⇑(ContinuousLinearEquiv.refl R₁ M₁) = id
Full source
@[simp, norm_cast]
theorem coe_refl' : ⇑(ContinuousLinearEquiv.refl R₁ M₁) = id :=
  rfl
Identity Continuous Linear Equivalence as Identity Function
Informal description
The underlying function of the identity continuous linear equivalence on a topological module $M_1$ over a semiring $R_1$ is equal to the identity function $\mathrm{id}$.
ContinuousLinearEquiv.symm definition
(e : M₁ ≃SL[σ₁₂] M₂) : M₂ ≃SL[σ₂₁] M₁
Full source
/-- The inverse of a continuous linear equivalence as a continuous linear equivalence -/
@[symm]
protected def symm (e : M₁ ≃SL[σ₁₂] M₂) : M₂ ≃SL[σ₂₁] M₁ :=
  { e.toLinearEquiv.symm with
    continuous_toFun := e.continuous_invFun
    continuous_invFun := e.continuous_toFun }
Inverse of a continuous linear equivalence
Informal description
Given a continuous linear equivalence \( e : M_1 \simeq_{SL[\sigma_{12}]} M_2 \) between topological modules \( M_1 \) and \( M_2 \) over semirings \( R \) and \( S \) respectively, where \( \sigma_{12} : R \to S \) is a semiring homomorphism, the inverse \( e^{-1} : M_2 \simeq_{SL[\sigma_{21}]} M_1 \) is also a continuous linear equivalence. Here, \( \sigma_{21} : S \to R \) is the inverse homomorphism of \( \sigma_{12} \), and the continuity of both \( e \) and its inverse is preserved.
ContinuousLinearEquiv.symm_toLinearEquiv theorem
(e : M₁ ≃SL[σ₁₂] M₂) : e.symm.toLinearEquiv = e.toLinearEquiv.symm
Full source
@[simp]
theorem symm_toLinearEquiv (e : M₁ ≃SL[σ₁₂] M₂) : e.symm.toLinearEquiv = e.toLinearEquiv.symm := by
  ext
  rfl
Inverse of Continuous Linear Equivalence Preserves Underlying Linear Equivalence
Informal description
For any continuous linear equivalence $e : M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the underlying linear equivalence of the inverse $e^{-1}$ is equal to the inverse of the underlying linear equivalence of $e$. That is, $e^{-1}.toLinearEquiv = e.toLinearEquiv^{-1}$.
ContinuousLinearEquiv.symm_toHomeomorph theorem
(e : M₁ ≃SL[σ₁₂] M₂) : e.toHomeomorph.symm = e.symm.toHomeomorph
Full source
@[simp]
theorem symm_toHomeomorph (e : M₁ ≃SL[σ₁₂] M₂) : e.toHomeomorph.symm = e.symm.toHomeomorph :=
  rfl
Inverse of Homeomorphism Induced by Continuous Linear Equivalence
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the inverse of the homeomorphism induced by $e$ is equal to the homeomorphism induced by the inverse of $e$. That is, $(e.toHomeomorph).symm = e.symm.toHomeomorph$.
ContinuousLinearEquiv.Simps.apply definition
(h : M₁ ≃SL[σ₁₂] M₂) : M₁ → M₂
Full source
/-- See Note [custom simps projection]. We need to specify this projection explicitly in this case,
  because it is a composition of multiple projections. -/
def Simps.apply (h : M₁ ≃SL[σ₁₂] M₂) : M₁ → M₂ :=
  h
Application of a continuous linear equivalence
Informal description
The function that applies a continuous linear equivalence \( h : M_1 \simeqSL[\sigma_{12}] M_2 \) to an element of \( M_1 \) to obtain an element of \( M_2 \).
ContinuousLinearEquiv.Simps.symm_apply definition
(h : M₁ ≃SL[σ₁₂] M₂) : M₂ → M₁
Full source
/-- See Note [custom simps projection] -/
def Simps.symm_apply (h : M₁ ≃SL[σ₁₂] M₂) : M₂ → M₁ :=
  h.symm
Inverse application of a continuous linear equivalence
Informal description
The function that applies the inverse of a continuous linear equivalence \( h : M_1 \simeqSL[\sigma_{12}] M_2 \) to an element of \( M_2 \) to obtain an element of \( M_1 \).
ContinuousLinearEquiv.symm_map_nhds_eq theorem
(e : M₁ ≃SL[σ₁₂] M₂) (x : M₁) : map e.symm (𝓝 (e x)) = 𝓝 x
Full source
theorem symm_map_nhds_eq (e : M₁ ≃SL[σ₁₂] M₂) (x : M₁) : map e.symm (𝓝 (e x)) = 𝓝 x :=
  e.toHomeomorph.symm_map_nhds_eq x
Inverse Continuous Linear Equivalence Preserves Neighborhood Filters: $e^{-1}_*(\mathcal{N}_{e(x)}) = \mathcal{N}_x$
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, and for any point $x \in M_1$, the pushforward of the neighborhood filter $\mathcal{N}_{e(x)}$ under the inverse equivalence $e^{-1}$ equals the neighborhood filter $\mathcal{N}_x$ at $x$ in $M_1$. That is, $e^{-1}_*(\mathcal{N}_{e(x)}) = \mathcal{N}_x$.
ContinuousLinearEquiv.trans definition
(e₁ : M₁ ≃SL[σ₁₂] M₂) (e₂ : M₂ ≃SL[σ₂₃] M₃) : M₁ ≃SL[σ₁₃] M₃
Full source
/-- The composition of two continuous linear equivalences as a continuous linear equivalence. -/
@[trans]
protected def trans (e₁ : M₁ ≃SL[σ₁₂] M₂) (e₂ : M₂ ≃SL[σ₂₃] M₃) : M₁ ≃SL[σ₁₃] M₃ :=
  { e₁.toLinearEquiv.trans e₂.toLinearEquiv with
    continuous_toFun := e₂.continuous_toFun.comp e₁.continuous_toFun
    continuous_invFun := e₁.continuous_invFun.comp e₂.continuous_invFun }
Composition of Continuous Linear Equivalences
Informal description
Given continuous linear equivalences \( e_1: M_1 \simeqSL[\sigma_{12}] M_2 \) and \( e_2: M_2 \simeqSL[\sigma_{23}] M_3 \), their composition \( e_1 \circ e_2 \) is a continuous linear equivalence \( M_1 \simeqSL[\sigma_{13}] M_3 \), where \( \sigma_{13} = \sigma_{23} \circ \sigma_{12} \). The composition is defined by composing the underlying linear equivalences and ensuring continuity of both the forward and inverse maps.
ContinuousLinearEquiv.trans_toLinearEquiv theorem
(e₁ : M₁ ≃SL[σ₁₂] M₂) (e₂ : M₂ ≃SL[σ₂₃] M₃) : (e₁.trans e₂).toLinearEquiv = e₁.toLinearEquiv.trans e₂.toLinearEquiv
Full source
@[simp]
theorem trans_toLinearEquiv (e₁ : M₁ ≃SL[σ₁₂] M₂) (e₂ : M₂ ≃SL[σ₂₃] M₃) :
    (e₁.trans e₂).toLinearEquiv = e₁.toLinearEquiv.trans e₂.toLinearEquiv := by
  ext
  rfl
Composition of Continuous Linear Equivalences Preserves Underlying Linear Equivalence
Informal description
For any continuous linear equivalences \( e_1: M_1 \simeqSL[\sigma_{12}] M_2 \) and \( e_2: M_2 \simeqSL[\sigma_{23}] M_3 \), the underlying linear equivalence of their composition \( e_1 \circ e_2 \) is equal to the composition of their underlying linear equivalences. That is, \((e_1 \circ e_2).toLinearEquiv = e_1.toLinearEquiv \circ e_2.toLinearEquiv\).
ContinuousLinearEquiv.prod definition
[Module R₁ M₂] [Module R₁ M₃] [Module R₁ M₄] (e : M₁ ≃L[R₁] M₂) (e' : M₃ ≃L[R₁] M₄) : (M₁ × M₃) ≃L[R₁] M₂ × M₄
Full source
/-- Product of two continuous linear equivalences. The map comes from `Equiv.prodCongr`. -/
def prod [Module R₁ M₂] [Module R₁ M₃] [Module R₁ M₄] (e : M₁ ≃L[R₁] M₂) (e' : M₃ ≃L[R₁] M₄) :
    (M₁ × M₃) ≃L[R₁] M₂ × M₄ :=
  { e.toLinearEquiv.prodCongr e'.toLinearEquiv with
    continuous_toFun := e.continuous_toFun.prodMap e'.continuous_toFun
    continuous_invFun := e.continuous_invFun.prodMap e'.continuous_invFun }
Product of continuous linear equivalences
Informal description
Given continuous linear equivalences \( e: M_1 \simeqL[R_1] M_2 \) and \( e': M_3 \simeqL[R_1] M_4 \) between topological modules over the same semiring \( R_1 \), their product \( e \times e' \) is a continuous linear equivalence \( (M_1 \times M_3) \simeqL[R_1] (M_2 \times M_4) \). The map is defined by applying \( e \) to the first component and \( e' \) to the second component of any pair \( (x, y) \in M_1 \times M_3 \), and both the forward and inverse maps are continuous.
ContinuousLinearEquiv.prod_apply theorem
[Module R₁ M₂] [Module R₁ M₃] [Module R₁ M₄] (e : M₁ ≃L[R₁] M₂) (e' : M₃ ≃L[R₁] M₄) (x) : e.prod e' x = (e x.1, e' x.2)
Full source
@[simp, norm_cast]
theorem prod_apply [Module R₁ M₂] [Module R₁ M₃] [Module R₁ M₄] (e : M₁ ≃L[R₁] M₂)
    (e' : M₃ ≃L[R₁] M₄) (x) : e.prod e' x = (e x.1, e' x.2) :=
  rfl
Action of Product Continuous Linear Equivalence on Pairs
Informal description
Let $R_1$ be a semiring, and let $M_1, M_2, M_3, M_4$ be topological modules over $R_1$ with continuous linear equivalences $e: M_1 \simeqL[R_1] M_2$ and $e': M_3 \simeqL[R_1] M_4$. For any $x = (x_1, x_2) \in M_1 \times M_3$, the product equivalence $e \times e'$ satisfies $(e \times e')(x) = (e(x_1), e'(x_2))$.
ContinuousLinearEquiv.coe_prod theorem
[Module R₁ M₂] [Module R₁ M₃] [Module R₁ M₄] (e : M₁ ≃L[R₁] M₂) (e' : M₃ ≃L[R₁] M₄) : (e.prod e' : M₁ × M₃ →L[R₁] M₂ × M₄) = (e : M₁ →L[R₁] M₂).prodMap (e' : M₃ →L[R₁] M₄)
Full source
@[simp, norm_cast]
theorem coe_prod [Module R₁ M₂] [Module R₁ M₃] [Module R₁ M₄] (e : M₁ ≃L[R₁] M₂)
    (e' : M₃ ≃L[R₁] M₄) :
    (e.prod e' : M₁ × M₃M₁ × M₃ →L[R₁] M₂ × M₄) = (e : M₁ →L[R₁] M₂).prodMap (e' : M₃ →L[R₁] M₄) :=
  rfl
Product of Continuous Linear Equivalences as Product Map
Informal description
Let $R_1$ be a semiring, and let $M_1, M_2, M_3, M_4$ be topological modules over $R_1$. Given continuous linear equivalences $e: M_1 \simeqL[R_1] M_2$ and $e': M_3 \simeqL[R_1] M_4$, the underlying continuous linear map of their product equivalence $e \times e'$ is equal to the product map of the underlying continuous linear maps of $e$ and $e'$. That is, $$(e \times e') = e.\text{prodMap}(e').$$
ContinuousLinearEquiv.prod_symm theorem
[Module R₁ M₂] [Module R₁ M₃] [Module R₁ M₄] (e : M₁ ≃L[R₁] M₂) (e' : M₃ ≃L[R₁] M₄) : (e.prod e').symm = e.symm.prod e'.symm
Full source
theorem prod_symm [Module R₁ M₂] [Module R₁ M₃] [Module R₁ M₄] (e : M₁ ≃L[R₁] M₂)
    (e' : M₃ ≃L[R₁] M₄) : (e.prod e').symm = e.symm.prod e'.symm :=
  rfl
Inverse of Product of Continuous Linear Equivalences
Informal description
Let $R_1$ be a semiring, and let $M_1, M_2, M_3, M_4$ be topological modules over $R_1$. Given continuous linear equivalences $e: M_1 \simeqL[R_1] M_2$ and $e': M_3 \simeqL[R_1] M_4$, the inverse of the product equivalence $e \times e'$ is equal to the product of the inverses, i.e., $(e \times e')^{-1} = e^{-1} \times e'^{-1}$.
ContinuousLinearEquiv.prodComm definition
[Module R₁ M₂] : (M₁ × M₂) ≃L[R₁] M₂ × M₁
Full source
/-- Product of modules is commutative up to continuous linear isomorphism. -/
@[simps! apply toLinearEquiv]
def prodComm [Module R₁ M₂] : (M₁ × M₂) ≃L[R₁] M₂ × M₁ :=
  { LinearEquiv.prodComm R₁ M₁ M₂ with
    continuous_toFun := continuous_swap
    continuous_invFun := continuous_swap }
Commutativity of module product via continuous linear isomorphism
Informal description
The continuous linear equivalence that swaps the components of the product module \( M_1 \times M_2 \) to give \( M_2 \times M_1 \), preserving the module structure and continuity. Specifically, for any semiring \( R_1 \) and topological \( R_1 \)-modules \( M_1 \) and \( M_2 \), there exists a continuous linear isomorphism between \( M_1 \times M_2 \) and \( M_2 \times M_1 \) that maps \( (m_1, m_2) \) to \( (m_2, m_1) \), with both the map and its inverse being continuous.
ContinuousLinearEquiv.prodComm_symm theorem
[Module R₁ M₂] : (prodComm R₁ M₁ M₂).symm = prodComm R₁ M₂ M₁
Full source
@[simp] lemma prodComm_symm [Module R₁ M₂] : (prodComm R₁ M₁ M₂).symm = prodComm R₁ M₂ M₁ := rfl
Inverse of Component-Swapping Continuous Linear Equivalence
Informal description
Let $R_1$ be a semiring, and let $M_1$ and $M_2$ be topological modules over $R_1$. The inverse of the continuous linear equivalence swapping the components of $M_1 \times M_2$ is equal to the continuous linear equivalence swapping the components of $M_2 \times M_1$. In other words, $(e_{M_1,M_2})^{-1} = e_{M_2,M_1}$, where $e_{A,B} : A \times B \simeqL[R_1] B \times A$ denotes the component-swapping equivalence.
ContinuousLinearEquiv.bijective theorem
(e : M₁ ≃SL[σ₁₂] M₂) : Function.Bijective e
Full source
protected theorem bijective (e : M₁ ≃SL[σ₁₂] M₂) : Function.Bijective e :=
  e.toLinearEquiv.toEquiv.bijective
Bijectivity of Continuous Linear Equivalences
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$ over semirings with a ring homomorphism $\sigma_{12}$, the underlying function $e \colon M_1 \to M_2$ is bijective.
ContinuousLinearEquiv.injective theorem
(e : M₁ ≃SL[σ₁₂] M₂) : Function.Injective e
Full source
protected theorem injective (e : M₁ ≃SL[σ₁₂] M₂) : Function.Injective e :=
  e.toLinearEquiv.toEquiv.injective
Injectivity of Continuous Linear Equivalences
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the underlying function $e \colon M_1 \to M_2$ is injective.
ContinuousLinearEquiv.surjective theorem
(e : M₁ ≃SL[σ₁₂] M₂) : Function.Surjective e
Full source
protected theorem surjective (e : M₁ ≃SL[σ₁₂] M₂) : Function.Surjective e :=
  e.toLinearEquiv.toEquiv.surjective
Surjectivity of Continuous Linear Equivalences
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the underlying function $e \colon M_1 \to M_2$ is surjective.
ContinuousLinearEquiv.trans_apply theorem
(e₁ : M₁ ≃SL[σ₁₂] M₂) (e₂ : M₂ ≃SL[σ₂₃] M₃) (c : M₁) : (e₁.trans e₂) c = e₂ (e₁ c)
Full source
@[simp]
theorem trans_apply (e₁ : M₁ ≃SL[σ₁₂] M₂) (e₂ : M₂ ≃SL[σ₂₃] M₃) (c : M₁) :
    (e₁.trans e₂) c = e₂ (e₁ c) :=
  rfl
Composition Rule for Continuous Linear Equivalences: $(e_1 \circ e_2)(c) = e_2(e_1(c))$
Informal description
For any continuous linear equivalences $e_1 \colon M_1 \simeqSL[\sigma_{12}] M_2$ and $e_2 \colon M_2 \simeqSL[\sigma_{23}] M_3$, and for any element $c \in M_1$, the composition $e_1 \circ e_2$ evaluated at $c$ satisfies $(e_1 \circ e_2)(c) = e_2(e_1(c))$.
ContinuousLinearEquiv.apply_symm_apply theorem
(e : M₁ ≃SL[σ₁₂] M₂) (c : M₂) : e (e.symm c) = c
Full source
@[simp]
theorem apply_symm_apply (e : M₁ ≃SL[σ₁₂] M₂) (c : M₂) : e (e.symm c) = c :=
  e.1.right_inv c
Inverse Image Property of Continuous Linear Equivalences: $e(e^{-1}(c)) = c$
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, and for any element $c \in M_2$, the application of $e$ to the inverse image of $c$ under $e$ yields $c$ again, i.e., $e(e^{-1}(c)) = c$.
ContinuousLinearEquiv.symm_apply_apply theorem
(e : M₁ ≃SL[σ₁₂] M₂) (b : M₁) : e.symm (e b) = b
Full source
@[simp]
theorem symm_apply_apply (e : M₁ ≃SL[σ₁₂] M₂) (b : M₁) : e.symm (e b) = b :=
  e.1.left_inv b
Inverse Application of Continuous Linear Equivalence
Informal description
For any continuous linear equivalence $e \colon M_1 \simeq_{SL[\sigma_{12}]} M_2$ between topological modules $M_1$ and $M_2$, and any element $b \in M_1$, the inverse map $e^{-1}$ satisfies $e^{-1}(e(b)) = b$.
ContinuousLinearEquiv.symm_trans_apply theorem
(e₁ : M₂ ≃SL[σ₂₁] M₁) (e₂ : M₃ ≃SL[σ₃₂] M₂) (c : M₁) : (e₂.trans e₁).symm c = e₂.symm (e₁.symm c)
Full source
@[simp]
theorem symm_trans_apply (e₁ : M₂ ≃SL[σ₂₁] M₁) (e₂ : M₃ ≃SL[σ₃₂] M₂) (c : M₁) :
    (e₂.trans e₁).symm c = e₂.symm (e₁.symm c) :=
  rfl
Inverse of Composition of Continuous Linear Equivalences
Informal description
Let $M_1$, $M_2$, and $M_3$ be topological modules over semirings with ring homomorphisms $\sigma_{21}: R_2 \to R_1$ and $\sigma_{32}: R_3 \to R_2$. Given continuous linear equivalences $e_1: M_2 \simeqSL[\sigma_{21}] M_1$ and $e_2: M_3 \simeqSL[\sigma_{32}] M_2$, for any $c \in M_1$, the inverse of the composition $e_2 \circ e_1$ evaluated at $c$ satisfies: \[ (e_2 \circ e_1)^{-1}(c) = e_2^{-1}(e_1^{-1}(c)) \]
ContinuousLinearEquiv.symm_image_image theorem
(e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₁) : e.symm '' (e '' s) = s
Full source
@[simp]
theorem symm_image_image (e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₁) : e.symm '' (e '' s) = s :=
  e.toLinearEquiv.toEquiv.symm_image_image s
Preimage of Image under Continuous Linear Equivalence is Original Set
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings with a ring homomorphism $\sigma_{12} \colon R \to S$, and let $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ be a continuous linear equivalence. For any subset $s \subseteq M_1$, the preimage under $e^{-1}$ of the image of $s$ under $e$ equals $s$, i.e., $e^{-1}(e(s)) = s$.
ContinuousLinearEquiv.image_symm_image theorem
(e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₂) : e '' (e.symm '' s) = s
Full source
@[simp]
theorem image_symm_image (e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₂) : e '' (e.symm '' s) = s :=
  e.symm.symm_image_image s
Image of Preimage under Continuous Linear Equivalence is Original Set
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings with a ring homomorphism $\sigma_{12} \colon R \to S$, and let $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ be a continuous linear equivalence. For any subset $s \subseteq M_2$, the image under $e$ of the preimage of $s$ under $e^{-1}$ equals $s$, i.e., $e(e^{-1}(s)) = s$.
ContinuousLinearEquiv.comp_coe theorem
(f : M₁ ≃SL[σ₁₂] M₂) (f' : M₂ ≃SL[σ₂₃] M₃) : (f' : M₂ →SL[σ₂₃] M₃).comp (f : M₁ →SL[σ₁₂] M₂) = (f.trans f' : M₁ →SL[σ₁₃] M₃)
Full source
@[simp, norm_cast]
theorem comp_coe (f : M₁ ≃SL[σ₁₂] M₂) (f' : M₂ ≃SL[σ₂₃] M₃) :
    (f' : M₂ →SL[σ₂₃] M₃).comp (f : M₁ →SL[σ₁₂] M₂) = (f.trans f' : M₁ →SL[σ₁₃] M₃) :=
  rfl
Composition of Underlying Continuous Linear Maps Equals Underlying Map of Composition
Informal description
Let $M_1$, $M_2$, and $M_3$ be topological modules over semirings with ring homomorphisms $\sigma_{12}: R_1 \to R_2$ and $\sigma_{23}: R_2 \to R_3$. Given continuous linear equivalences $f: M_1 \simeqSL[\sigma_{12}] M_2$ and $f': M_2 \simeqSL[\sigma_{23}] M_3$, the composition of their underlying continuous linear maps $(f': M_2 \toSL[\sigma_{23}] M_3) \circ (f: M_1 \toSL[\sigma_{12}] M_2)$ is equal to the underlying continuous linear map of their composition equivalence $f \circ f': M_1 \toSL[\sigma_{13}] M_3$, where $\sigma_{13} = \sigma_{23} \circ \sigma_{12}$.
ContinuousLinearEquiv.coe_comp_coe_symm theorem
(e : M₁ ≃SL[σ₁₂] M₂) : (e : M₁ →SL[σ₁₂] M₂).comp (e.symm : M₂ →SL[σ₂₁] M₁) = ContinuousLinearMap.id R₂ M₂
Full source
@[simp high]
theorem coe_comp_coe_symm (e : M₁ ≃SL[σ₁₂] M₂) :
    (e : M₁ →SL[σ₁₂] M₂).comp (e.symm : M₂ →SL[σ₂₁] M₁) = ContinuousLinearMap.id R₂ M₂ :=
  ContinuousLinearMap.ext e.apply_symm_apply
Composition of Continuous Linear Equivalence with its Inverse Yields Identity: $e \circ e^{-1} = \text{id}_{M_2}$
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings $R$ and $S$ respectively, with a ring homomorphism $\sigma_{12} \colon R \to S$. For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$, the composition of the underlying continuous linear map $e \colon M_1 \toSL[\sigma_{12}] M_2$ with its inverse $e^{-1} \colon M_2 \toSL[\sigma_{21}] M_1$ is equal to the identity map on $M_2$.
ContinuousLinearEquiv.coe_symm_comp_coe theorem
(e : M₁ ≃SL[σ₁₂] M₂) : (e.symm : M₂ →SL[σ₂₁] M₁).comp (e : M₁ →SL[σ₁₂] M₂) = ContinuousLinearMap.id R₁ M₁
Full source
@[simp high]
theorem coe_symm_comp_coe (e : M₁ ≃SL[σ₁₂] M₂) :
    (e.symm : M₂ →SL[σ₂₁] M₁).comp (e : M₁ →SL[σ₁₂] M₂) = ContinuousLinearMap.id R₁ M₁ :=
  ContinuousLinearMap.ext e.symm_apply_apply
Composition of Inverse and Original Continuous Linear Equivalence Yields Identity
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$ over semirings with ring homomorphisms $\sigma_{12} \colon R_1 \to R_2$ and $\sigma_{21} \colon R_2 \to R_1$, the composition of the underlying continuous linear maps $e^{-1} \colon M_2 \toSL[\sigma_{21}] M_1$ and $e \colon M_1 \toSL[\sigma_{12}] M_2$ equals the identity map on $M_1$.
ContinuousLinearEquiv.symm_comp_self theorem
(e : M₁ ≃SL[σ₁₂] M₂) : (e.symm : M₂ → M₁) ∘ (e : M₁ → M₂) = id
Full source
@[simp]
theorem symm_comp_self (e : M₁ ≃SL[σ₁₂] M₂) : (e.symm : M₂ → M₁) ∘ (e : M₁ → M₂) = id := by
  ext x
  exact symm_apply_apply e x
Inverse Composition of Continuous Linear Equivalence Yields Identity
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the composition of the inverse map $e^{-1} \colon M_2 \to M_1$ with $e \colon M_1 \to M_2$ yields the identity map on $M_1$. That is, $e^{-1} \circ e = \text{id}_{M_1}$.
ContinuousLinearEquiv.self_comp_symm theorem
(e : M₁ ≃SL[σ₁₂] M₂) : (e : M₁ → M₂) ∘ (e.symm : M₂ → M₁) = id
Full source
@[simp]
theorem self_comp_symm (e : M₁ ≃SL[σ₁₂] M₂) : (e : M₁ → M₂) ∘ (e.symm : M₂ → M₁) = id := by
  ext x
  exact apply_symm_apply e x
Composition of Continuous Linear Equivalence with its Inverse Yields Identity
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the composition of $e$ with its inverse $e^{-1}$ is equal to the identity function on $M_2$. That is, $e \circ e^{-1} = \text{id}_{M_2}$.
ContinuousLinearEquiv.symm_symm theorem
(e : M₁ ≃SL[σ₁₂] M₂) : e.symm.symm = e
Full source
@[simp]
theorem symm_symm (e : M₁ ≃SL[σ₁₂] M₂) : e.symm.symm = e := rfl
Double Inverse of Continuous Linear Equivalence is Identity
Informal description
For any continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ between topological modules $M_1$ and $M_2$, the inverse of the inverse of $e$ is equal to $e$ itself. That is, $(e^{-1})^{-1} = e$.
ContinuousLinearEquiv.symm_bijective theorem
: Function.Bijective (ContinuousLinearEquiv.symm : (M₁ ≃SL[σ₁₂] M₂) → _)
Full source
theorem symm_bijective : Function.Bijective (ContinuousLinearEquiv.symm : (M₁ ≃SL[σ₁₂] M₂) → _) :=
  Function.bijective_iff_has_inverse.mpr ⟨_, symm_symm, symm_symm⟩
Bijectivity of the Inverse Operation on Continuous Linear Equivalences
Informal description
The inverse operation on continuous linear equivalences between topological modules $M_1$ and $M_2$ over semirings $R$ and $S$ (with respect to a semiring homomorphism $\sigma_{12} \colon R \to S$) is bijective. That is, the map sending a continuous linear equivalence $e \colon M_1 \simeqSL[\sigma_{12}] M_2$ to its inverse $e^{-1} \colon M_2 \simeqSL[\sigma_{21}] M_1$ is both injective and surjective.
ContinuousLinearEquiv.refl_symm theorem
: (ContinuousLinearEquiv.refl R₁ M₁).symm = ContinuousLinearEquiv.refl R₁ M₁
Full source
@[simp]
theorem refl_symm : (ContinuousLinearEquiv.refl R₁ M₁).symm = ContinuousLinearEquiv.refl R₁ M₁ :=
  rfl
Inverse of Identity Continuous Linear Equivalence is Identity
Informal description
The inverse of the identity continuous linear equivalence on a topological module $M_1$ over a semiring $R_1$ is equal to itself, i.e., $(\text{id}_{M_1})^{-1} = \text{id}_{M_1}$.
ContinuousLinearEquiv.symm_symm_apply theorem
(e : M₁ ≃SL[σ₁₂] M₂) (x : M₁) : e.symm.symm x = e x
Full source
theorem symm_symm_apply (e : M₁ ≃SL[σ₁₂] M₂) (x : M₁) : e.symm.symm x = e x :=
  rfl
Double Inverse of Continuous Linear Equivalence Preserves Action
Informal description
For any continuous linear equivalence $e \colon M_1 \simeq_{SL[\sigma_{12}]} M_2$ between topological modules $M_1$ and $M_2$, and for any element $x \in M_1$, applying the inverse of the inverse of $e$ to $x$ yields the same result as applying $e$ to $x$, i.e., $(e^{-1})^{-1}(x) = e(x)$.
ContinuousLinearEquiv.symm_apply_eq theorem
(e : M₁ ≃SL[σ₁₂] M₂) {x y} : e.symm x = y ↔ x = e y
Full source
theorem symm_apply_eq (e : M₁ ≃SL[σ₁₂] M₂) {x y} : e.symm x = y ↔ x = e y :=
  e.toLinearEquiv.symm_apply_eq
Inverse Application Characterization for Continuous Linear Equivalences
Informal description
Let $e : M_1 \simeq_{SL[\sigma_{12}]} M_2$ be a continuous linear equivalence between topological modules $M_1$ and $M_2$. For any elements $x \in M_2$ and $y \in M_1$, we have $e^{-1}(x) = y$ if and only if $x = e(y)$.
ContinuousLinearEquiv.image_eq_preimage theorem
(e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₁) : e '' s = e.symm ⁻¹' s
Full source
protected theorem image_eq_preimage (e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₁) : e '' s = e.symm ⁻¹' s :=
  e.toLinearEquiv.toEquiv.image_eq_preimage s
Image-Preimage Correspondence for Continuous Linear Equivalences
Informal description
For any continuous linear equivalence $e \colon M_1 \simeq_{SL[\sigma_{12}]} M_2$ between topological modules $M_1$ and $M_2$ and any subset $s \subseteq M_1$, the image of $s$ under $e$ equals the preimage of $s$ under the inverse equivalence $e^{-1}$, i.e., \[ e(s) = e^{-1}^{-1}(s). \]
ContinuousLinearEquiv.image_symm_eq_preimage theorem
(e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₂) : e.symm '' s = e ⁻¹' s
Full source
protected theorem image_symm_eq_preimage (e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₂) :
    e.symm '' s = e ⁻¹' s := by rw [e.symm.image_eq_preimage, e.symm_symm]
Image-Preimage Correspondence for Inverse Continuous Linear Equivalence
Informal description
For any continuous linear equivalence $e \colon M_1 \simeq_{SL[\sigma_{12}]} M_2$ between topological modules $M_1$ and $M_2$ and any subset $s \subseteq M_2$, the image of $s$ under the inverse equivalence $e^{-1}$ equals the preimage of $s$ under $e$, i.e., \[ e^{-1}(s) = e^{-1}(s). \]
ContinuousLinearEquiv.symm_preimage_preimage theorem
(e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₂) : e.symm ⁻¹' (e ⁻¹' s) = s
Full source
@[simp]
protected theorem symm_preimage_preimage (e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₂) :
    e.symm ⁻¹' (e ⁻¹' s) = s :=
  e.toLinearEquiv.toEquiv.symm_preimage_preimage s
Double Preimage Identity for Continuous Linear Equivalences
Informal description
For any continuous linear equivalence $e \colon M_1 \simeq_{SL[\sigma_{12}]} M_2$ between topological modules $M_1$ and $M_2$ and any subset $s \subseteq M_2$, the preimage of $s$ under $e$ followed by the preimage under $e^{-1}$ equals $s$. That is, \[ e^{-1}(e^{-1}(s)) = s. \]
ContinuousLinearEquiv.preimage_symm_preimage theorem
(e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₁) : e ⁻¹' (e.symm ⁻¹' s) = s
Full source
@[simp]
protected theorem preimage_symm_preimage (e : M₁ ≃SL[σ₁₂] M₂) (s : Set M₁) :
    e ⁻¹' (e.symm ⁻¹' s) = s :=
  e.symm.symm_preimage_preimage s
Double Preimage Identity for Continuous Linear Equivalences (Inverse Form)
Informal description
For any continuous linear equivalence $e \colon M_1 \simeq_{SL[\sigma_{12}]} M_2$ between topological modules $M_1$ and $M_2$ and any subset $s \subseteq M_1$, the preimage of $s$ under $e^{-1}$ followed by the preimage under $e$ equals $s$. That is, \[ e^{-1}(e^{-1}(s)) = s. \]
ContinuousLinearEquiv.isUniformEmbedding theorem
{E₁ E₂ : Type*} [UniformSpace E₁] [UniformSpace E₂] [AddCommGroup E₁] [AddCommGroup E₂] [Module R₁ E₁] [Module R₂ E₂] [IsUniformAddGroup E₁] [IsUniformAddGroup E₂] (e : E₁ ≃SL[σ₁₂] E₂) : IsUniformEmbedding e
Full source
lemma isUniformEmbedding {E₁ E₂ : Type*} [UniformSpace E₁] [UniformSpace E₂]
    [AddCommGroup E₁] [AddCommGroup E₂] [Module R₁ E₁] [Module R₂ E₂] [IsUniformAddGroup E₁]
    [IsUniformAddGroup E₂] (e : E₁ ≃SL[σ₁₂] E₂) : IsUniformEmbedding e :=
  e.toLinearEquiv.toEquiv.isUniformEmbedding e.toContinuousLinearMap.uniformContinuous
    e.symm.toContinuousLinearMap.uniformContinuous
Continuous Linear Equivalences are Uniform Embeddings
Informal description
Let $E_1$ and $E_2$ be uniform spaces equipped with additive commutative group structures and module structures over semirings $R_1$ and $R_2$ respectively, where the addition operations are uniformly continuous. For any continuous linear equivalence $e \colon E_1 \simeq_{SL[\sigma_{12}]} E_2$ (where $\sigma_{12} \colon R_1 \to R_2$ is a semiring homomorphism), the map $e$ is a uniform embedding.
LinearEquiv.isUniformEmbedding theorem
{E₁ E₂ : Type*} [UniformSpace E₁] [UniformSpace E₂] [AddCommGroup E₁] [AddCommGroup E₂] [Module R₁ E₁] [Module R₂ E₂] [IsUniformAddGroup E₁] [IsUniformAddGroup E₂] (e : E₁ ≃ₛₗ[σ₁₂] E₂) (h₁ : Continuous e) (h₂ : Continuous e.symm) : IsUniformEmbedding e
Full source
protected theorem _root_.LinearEquiv.isUniformEmbedding {E₁ E₂ : Type*} [UniformSpace E₁]
    [UniformSpace E₂] [AddCommGroup E₁] [AddCommGroup E₂] [Module R₁ E₁] [Module R₂ E₂]
    [IsUniformAddGroup E₁] [IsUniformAddGroup E₂] (e : E₁ ≃ₛₗ[σ₁₂] E₂)
    (h₁ : Continuous e) (h₂ : Continuous e.symm) : IsUniformEmbedding e :=
  ContinuousLinearEquiv.isUniformEmbedding
    ({ e with
        continuous_toFun := h₁
        continuous_invFun := h₂ } :
      E₁ ≃SL[σ₁₂] E₂)
Linear Equivalences with Continuous Inverse are Uniform Embeddings
Informal description
Let $E_1$ and $E_2$ be uniform spaces equipped with additive commutative group structures and module structures over semirings $R_1$ and $R_2$ respectively, where the addition operations are uniformly continuous. For any linear equivalence $e \colon E_1 \simeq_{SL[\sigma_{12}]} E_2$ (where $\sigma_{12} \colon R_1 \to R_2$ is a semiring homomorphism) that is continuous with continuous inverse, the map $e$ is a uniform embedding.
ContinuousLinearEquiv.equivOfInverse definition
(f₁ : M₁ →SL[σ₁₂] M₂) (f₂ : M₂ →SL[σ₂₁] M₁) (h₁ : Function.LeftInverse f₂ f₁) (h₂ : Function.RightInverse f₂ f₁) : M₁ ≃SL[σ₁₂] M₂
Full source
/-- Create a `ContinuousLinearEquiv` from two `ContinuousLinearMap`s that are
inverse of each other. See also `equivOfInverse'`. -/
def equivOfInverse (f₁ : M₁ →SL[σ₁₂] M₂) (f₂ : M₂ →SL[σ₂₁] M₁) (h₁ : Function.LeftInverse f₂ f₁)
    (h₂ : Function.RightInverse f₂ f₁) : M₁ ≃SL[σ₁₂] M₂ :=
  { f₁ with
    continuous_toFun := f₁.continuous
    invFun := f₂
    continuous_invFun := f₂.continuous
    left_inv := h₁
    right_inv := h₂ }
Construction of Continuous Linear Equivalence from Inverse Maps
Informal description
Given two continuous semilinear maps \( f_1: M_1 \to_{SL[\sigma_{12}]} M_2 \) and \( f_2: M_2 \to_{SL[\sigma_{21}]} M_1 \) such that \( f_2 \) is a left inverse of \( f_1 \) and \( f_2 \) is a right inverse of \( f_1 \), this constructs a continuous linear equivalence \( M_1 \simeq_{SL[\sigma_{12}]} M_2 \) where the forward map is \( f_1 \) and the inverse map is \( f_2 \). Both maps are required to be continuous.
ContinuousLinearEquiv.equivOfInverse_apply theorem
(f₁ : M₁ →SL[σ₁₂] M₂) (f₂ h₁ h₂ x) : equivOfInverse f₁ f₂ h₁ h₂ x = f₁ x
Full source
@[simp]
theorem equivOfInverse_apply (f₁ : M₁ →SL[σ₁₂] M₂) (f₂ h₁ h₂ x) :
    equivOfInverse f₁ f₂ h₁ h₂ x = f₁ x :=
  rfl
Application of Continuous Linear Equivalence Constructed from Inverse Maps
Informal description
Given continuous semilinear maps $f_1 \colon M_1 \to_{SL[\sigma_{12}]} M_2$ and $f_2 \colon M_2 \to_{SL[\sigma_{21}]} M_1$ such that $f_2$ is both a left and right inverse of $f_1$, the continuous linear equivalence $\text{equivOfInverse}\, f_1\, f_2\, h_1\, h_2$ satisfies $(\text{equivOfInverse}\, f_1\, f_2\, h_1\, h_2)(x) = f_1(x)$ for all $x \in M_1$.
ContinuousLinearEquiv.symm_equivOfInverse theorem
(f₁ : M₁ →SL[σ₁₂] M₂) (f₂ h₁ h₂) : (equivOfInverse f₁ f₂ h₁ h₂).symm = equivOfInverse f₂ f₁ h₂ h₁
Full source
@[simp]
theorem symm_equivOfInverse (f₁ : M₁ →SL[σ₁₂] M₂) (f₂ h₁ h₂) :
    (equivOfInverse f₁ f₂ h₁ h₂).symm = equivOfInverse f₂ f₁ h₂ h₁ :=
  rfl
Inverse of Continuous Linear Equivalence Constructed from Inverse Maps
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings $R$ and $S$ respectively, with $\sigma_{12}: R \to S$ and $\sigma_{21}: S \to R$ being semiring homomorphisms. Given continuous semilinear maps $f_1: M_1 \to_{SL[\sigma_{12}]} M_2$ and $f_2: M_2 \to_{SL[\sigma_{21}]} M_1$ such that $f_2$ is both a left and right inverse of $f_1$, the inverse of the continuous linear equivalence $\text{equivOfInverse}(f_1, f_2, h_1, h_2)$ is equal to $\text{equivOfInverse}(f_2, f_1, h_2, h_1)$.
ContinuousLinearEquiv.equivOfInverse' definition
(f₁ : M₁ →SL[σ₁₂] M₂) (f₂ : M₂ →SL[σ₂₁] M₁) (h₁ : f₁.comp f₂ = .id R₂ M₂) (h₂ : f₂.comp f₁ = .id R₁ M₁) : M₁ ≃SL[σ₁₂] M₂
Full source
/-- Create a `ContinuousLinearEquiv` from two `ContinuousLinearMap`s that are
inverse of each other, in the `ContinuousLinearMap.comp` sense. See also `equivOfInverse`. -/
def equivOfInverse' (f₁ : M₁ →SL[σ₁₂] M₂) (f₂ : M₂ →SL[σ₂₁] M₁)
    (h₁ : f₁.comp f₂ = .id R₂ M₂) (h₂ : f₂.comp f₁ = .id R₁ M₁) : M₁ ≃SL[σ₁₂] M₂ :=
  equivOfInverse f₁ f₂
    (fun x ↦ by simpa using congr($(h₂) x)) (fun x ↦ by simpa using congr($(h₁) x))
Construction of Continuous Linear Equivalence from Composition-Inverse Maps
Informal description
Given two continuous semilinear maps \( f_1: M_1 \to_{SL[\sigma_{12}]} M_2 \) and \( f_2: M_2 \to_{SL[\sigma_{21}]} M_1 \) such that their compositions satisfy \( f_1 \circ f_2 = \text{id}_{R_2, M_2} \) and \( f_2 \circ f_1 = \text{id}_{R_1, M_1} \), this constructs a continuous linear equivalence \( M_1 \simeq_{SL[\sigma_{12}]} M_2 \), where the forward map is \( f_1 \) and the inverse map is \( f_2 \).
ContinuousLinearEquiv.equivOfInverse'_apply theorem
(f₁ : M₁ →SL[σ₁₂] M₂) (f₂ h₁ h₂ x) : equivOfInverse' f₁ f₂ h₁ h₂ x = f₁ x
Full source
@[simp]
theorem equivOfInverse'_apply (f₁ : M₁ →SL[σ₁₂] M₂) (f₂ h₁ h₂ x) :
    equivOfInverse' f₁ f₂ h₁ h₂ x = f₁ x :=
  rfl
Application of Continuous Linear Equivalence Constructed from Inverse Maps
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings $R$ and $S$ respectively, with $\sigma_{12}: R \to S$ and $\sigma_{21}: S \to R$ being semiring homomorphisms. Given continuous semilinear maps $f_1: M_1 \to_{SL[\sigma_{12}]} M_2$ and $f_2: M_2 \to_{SL[\sigma_{21}]} M_1$ such that $f_1 \circ f_2 = \text{id}_{M_2}$ and $f_2 \circ f_1 = \text{id}_{M_1}$, then for any $x \in M_1$, the continuous linear equivalence $\text{equivOfInverse'}(f_1, f_2, h_1, h_2)$ satisfies $\text{equivOfInverse'}(f_1, f_2, h_1, h_2)(x) = f_1(x)$.
ContinuousLinearEquiv.symm_equivOfInverse' theorem
(f₁ : M₁ →SL[σ₁₂] M₂) (f₂ h₁ h₂) : (equivOfInverse' f₁ f₂ h₁ h₂).symm = equivOfInverse' f₂ f₁ h₂ h₁
Full source
/-- The inverse of `equivOfInverse'` is obtained by swapping the order of its parameters. -/
@[simp]
theorem symm_equivOfInverse' (f₁ : M₁ →SL[σ₁₂] M₂) (f₂ h₁ h₂) :
    (equivOfInverse' f₁ f₂ h₁ h₂).symm = equivOfInverse' f₂ f₁ h₂ h₁ :=
  rfl
Inverse of Continuous Linear Equivalence Constructed from Inverse Maps
Informal description
Let $M_1$ and $M_2$ be topological modules over semirings $R_1$ and $R_2$ respectively, with $\sigma_{12}: R_1 \to R_2$ and $\sigma_{21}: R_2 \to R_1$ being ring homomorphisms that are inverses of each other. Given continuous semilinear maps $f_1: M_1 \to_{SL[\sigma_{12}]} M_2$ and $f_2: M_2 \to_{SL[\sigma_{21}]} M_1$ such that $f_1 \circ f_2 = \text{id}_{M_2}$ and $f_2 \circ f_1 = \text{id}_{M_1}$, the inverse of the continuous linear equivalence $\text{equivOfInverse'}(f_1, f_2, h_1, h_2)$ is equal to $\text{equivOfInverse'}(f_2, f_1, h_2, h_1)$.
ContinuousLinearEquiv.automorphismGroup instance
: Group (M₁ ≃L[R₁] M₁)
Full source
/-- The continuous linear equivalences from `M` to itself form a group under composition. -/
instance automorphismGroup : Group (M₁ ≃L[R₁] M₁) where
  mul f g := g.trans f
  one := ContinuousLinearEquiv.refl R₁ M₁
  inv f := f.symm
  mul_assoc f g h := by
    ext
    rfl
  mul_one f := by
    ext
    rfl
  one_mul f := by
    ext
    rfl
  inv_mul_cancel f := by
    ext x
    exact f.left_inv x
Group Structure of Continuous Linear Automorphisms
Informal description
The set of continuous linear equivalences from a topological module $M_1$ to itself over a semiring $R_1$ forms a group under composition of maps, where: - The identity element is the identity map on $M_1$, - The inverse of an equivalence is its continuous linear inverse, - The group operation is given by composition of continuous linear maps.
ContinuousLinearEquiv.ulift definition
: ULift M₁ ≃L[R₁] M₁
Full source
/-- The continuous linear equivalence between `ULift M₁` and `M₁`.

This is a continuous version of `ULift.moduleEquiv`. -/
def ulift : ULiftULift M₁ ≃L[R₁] M₁ :=
  { ULift.moduleEquiv with
    continuous_toFun := continuous_uliftDown
    continuous_invFun := continuous_uliftUp }
Continuous linear equivalence between lifted module and original module
Informal description
The continuous linear equivalence between the lifted type $\mathrm{ULift}\, M_1$ and $M_1$ itself, where both the equivalence and its inverse are continuous. This is the continuous version of the module equivalence $\mathrm{ULift.moduleEquiv}$.
ContinuousLinearEquiv.arrowCongrEquiv definition
(e₁₂ : M₁ ≃SL[σ₁₂] M₂) (e₄₃ : M₄ ≃SL[σ₄₃] M₃) : (M₁ →SL[σ₁₄] M₄) ≃ (M₂ →SL[σ₂₃] M₃)
Full source
/-- A pair of continuous (semi)linear equivalences generates an equivalence between the spaces of
continuous linear maps. See also `ContinuousLinearEquiv.arrowCongr`. -/
@[simps]
def arrowCongrEquiv (e₁₂ : M₁ ≃SL[σ₁₂] M₂) (e₄₃ : M₄ ≃SL[σ₄₃] M₃) :
    (M₁ →SL[σ₁₄] M₄) ≃ (M₂ →SL[σ₂₃] M₃) where
  toFun f := (e₄₃ : M₄ →SL[σ₄₃] M₃).comp (f.comp (e₁₂.symm : M₂ →SL[σ₂₁] M₁))
  invFun f := (e₄₃.symm : M₃ →SL[σ₃₄] M₄).comp (f.comp (e₁₂ : M₁ →SL[σ₁₂] M₂))
  left_inv f :=
    ContinuousLinearMap.ext fun x => by
      simp only [ContinuousLinearMap.comp_apply, symm_apply_apply, coe_coe]
  right_inv f :=
    ContinuousLinearMap.ext fun x => by
      simp only [ContinuousLinearMap.comp_apply, apply_symm_apply, coe_coe]
Equivalence of continuous linear map spaces induced by continuous linear equivalences
Informal description
Given continuous linear equivalences \( e_{12} : M_1 \simeq_{SL[\sigma_{12}]} M_2 \) and \( e_{43} : M_4 \simeq_{SL[\sigma_{43}]} M_3 \), the function constructs an equivalence between the spaces of continuous linear maps \( M_1 \to_{SL[\sigma_{14}]} M_4 \) and \( M_2 \to_{SL[\sigma_{23}]} M_3 \). The forward map sends \( f \) to \( e_{43} \circ f \circ e_{12}^{-1} \), and the inverse map sends \( g \) to \( e_{43}^{-1} \circ g \circ e_{12} \).
ContinuousLinearEquiv.piCongrLeft definition
(R : Type*) [Semiring R] {ι ι' : Type*} (φ : ι → Type*) [∀ i, AddCommMonoid (φ i)] [∀ i, Module R (φ i)] [∀ i, TopologicalSpace (φ i)] (e : ι' ≃ ι) : ((i' : ι') → φ (e i')) ≃L[R] (i : ι) → φ i
Full source
/-- Combine a family of linear equivalences into a linear equivalence of `pi`-types.
This is `Equiv.piCongrLeft` as a `ContinuousLinearEquiv`.
-/
def piCongrLeft (R : Type*) [Semiring R] {ι ι' : Type*}
    (φ : ι → Type*) [∀ i, AddCommMonoid (φ i)] [∀ i, Module R (φ i)]
    [∀ i, TopologicalSpace (φ i)]
    (e : ι' ≃ ι) : ((i' : ι') → φ (e i')) ≃L[R] (i : ι) → φ i where
  __ := Homeomorph.piCongrLeft e
  __ := LinearEquiv.piCongrLeft R φ e
Continuous linear equivalence of product spaces under index bijection
Informal description
Given a semiring $R$, index types $\iota$ and $\iota'$, a family of topological $R$-modules $\{\varphi_i\}_{i \in \iota}$ (each with an additive commutative monoid structure and a topological space structure), and an equivalence $e : \iota' \simeq \iota$ between the index types, the continuous linear equivalence $\text{ContinuousLinearEquiv.piCongrLeft}$ maps between the product space $\prod_{i' \in \iota'} \varphi_{e(i')}$ and $\prod_{i \in \iota} \varphi_i$. This equivalence preserves both the linear and topological structures.
ContinuousLinearEquiv.sumPiEquivProdPi definition
(R : Type*) [Semiring R] (S T : Type*) (A : S ⊕ T → Type*) [∀ st, AddCommMonoid (A st)] [∀ st, Module R (A st)] [∀ st, TopologicalSpace (A st)] : ((st : S ⊕ T) → A st) ≃L[R] ((s : S) → A (Sum.inl s)) × ((t : T) → A (Sum.inr t))
Full source
/-- The product over `S ⊕ T` of a family of topological modules
is isomorphic (topologically and alegbraically) to the product of
(the product over `S`) and (the product over `T`).

This is `Equiv.sumPiEquivProdPi` as a `ContinuousLinearEquiv`.
-/
def sumPiEquivProdPi (R : Type*) [Semiring R] (S T : Type*)
    (A : S ⊕ T → Type*) [∀ st, AddCommMonoid (A st)] [∀ st, Module R (A st)]
    [∀ st, TopologicalSpace (A st)] :
    ((st : S ⊕ T) → A st) ≃L[R] ((s : S) → A (Sum.inl s)) × ((t : T) → A (Sum.inr t)) where
  __ := LinearEquiv.sumPiEquivProdPi R S T A
  __ := Homeomorph.sumPiEquivProdPi S T A
Continuous linear equivalence between product over a sum type and product of products
Informal description
Given a semiring $R$, types $S$ and $T$, and a family of topological $R$-modules $A : S \oplus T \to \text{Type*}$ (each equipped with an additive commutative monoid structure and a topological space structure), there exists a continuous linear equivalence between the product space $\prod_{st \in S \oplus T} A(st)$ and the product space $\left(\prod_{s \in S} A(\text{inl}(s))\right) \times \left(\prod_{t \in T} A(\text{inr}(t))\right)$. This equivalence is both a linear isomorphism and a homeomorphism, preserving both the algebraic and topological structures.
ContinuousLinearEquiv.piUnique definition
{α : Type*} [Unique α] (R : Type*) [Semiring R] (f : α → Type*) [∀ x, AddCommMonoid (f x)] [∀ x, Module R (f x)] [∀ x, TopologicalSpace (f x)] : (Π t, f t) ≃L[R] f default
Full source
/-- The product `Π t : α, f t` of a family of topological modules is isomorphic
(both topologically and algebraically) to the space `f ⬝` when `α` only contains `⬝`.

This is `Equiv.piUnique` as a `ContinuousLinearEquiv`.
-/
@[simps! -fullyApplied]
def piUnique {α : Type*} [Unique α] (R : Type*) [Semiring R] (f : α → Type*)
    [∀ x, AddCommMonoid (f x)] [∀ x, Module R (f x)] [∀ x, TopologicalSpace (f x)] :
    (Π t, f t) ≃L[R] f default where
  __ := LinearEquiv.piUnique R f
  __ := Homeomorph.piUnique f
Continuous linear equivalence between product over a unique type and its value at the default element
Informal description
Given a type $\alpha$ with a unique element and a family of topological modules $f : \alpha \to \text{Type*}$ over a semiring $R$, the product space $\prod_{t : \alpha} f\ t$ is continuously linearly equivalent to the module $f\ \text{default}$, where $\text{default}$ is the unique element of $\alpha$. This equivalence is both a linear isomorphism and a homeomorphism.
ContinuousLinearEquiv.piCongrRight definition
: ((i : ι) → M i) ≃L[R₁] (i : ι) → N i
Full source
/-- Combine a family of continuous linear equivalences into a continuous linear equivalence of
pi-types. -/
def piCongrRight : ((i : ι) → M i) ≃L[R₁] (i : ι) → N i :=
  { LinearEquiv.piCongrRight fun i ↦ f i with
    continuous_toFun := by
      exact continuous_pi fun i ↦ (f i).continuous_toFun.comp (continuous_apply i)
    continuous_invFun := by
      exact continuous_pi fun i => (f i).continuous_invFun.comp (continuous_apply i) }
Continuous linear equivalence of product spaces via component-wise continuous linear equivalences
Informal description
Given an index set $\iota$ and for each $i \in \iota$, a continuous linear equivalence $f_i : M_i \simeq_{L[R_1]} N_i$ between topological modules $M_i$ and $N_i$ over a semiring $R_1$, the function constructs a continuous linear equivalence between the product spaces $\prod_{i \in \iota} M_i$ and $\prod_{i \in \iota} N_i$. The equivalence maps a function $m$ in the product space to the function $\lambda i, f_i (m i)$, and its inverse maps $n$ to $\lambda i, f_i^{-1} (n i)$. Both the equivalence and its inverse are continuous with respect to the product topology.
ContinuousLinearEquiv.piCongrRight_apply theorem
(m : (i : ι) → M i) (i : ι) : piCongrRight f m i = (f i) (m i)
Full source
@[simp]
theorem piCongrRight_apply (m : (i : ι) → M i) (i : ι) :
    piCongrRight f m i = (f i) (m i) := rfl
Component-wise Application of Continuous Linear Equivalence on Product Spaces
Informal description
For a family of continuous linear equivalences $f_i : M_i \simeq_{L[R_1]} N_i$ indexed by $i \in \iota$, the application of the continuous linear equivalence $\prod_{i \in \iota} M_i \simeq_{L[R_1]} \prod_{i \in \iota} N_i$ to a function $m \in \prod_{i \in \iota} M_i$ at index $i$ is given by $(f_i)(m_i)$.
ContinuousLinearEquiv.piCongrRight_symm_apply theorem
(n : (i : ι) → N i) (i : ι) : (piCongrRight f).symm n i = (f i).symm (n i)
Full source
@[simp]
theorem piCongrRight_symm_apply (n : (i : ι) → N i) (i : ι) :
    (piCongrRight f).symm n i = (f i).symm (n i) := rfl
Component-wise Inverse of Product Continuous Linear Equivalence
Informal description
For any family of continuous linear equivalences $f_i : M_i \simeq_{L[R_1]} N_i$ indexed by $i \in \iota$, and for any element $n$ in the product space $\prod_{i \in \iota} N_i$, the $i$-th component of the inverse of the product equivalence $\operatorname{piCongrRight}(f)$ applied to $n$ is equal to the inverse of $f_i$ applied to the $i$-th component of $n$. That is, $(\operatorname{piCongrRight}(f))^{-1}(n)_i = f_i^{-1}(n_i)$ for all $i \in \iota$.
ContinuousLinearEquiv.skewProd definition
(e : M ≃L[R] M₂) (e' : M₃ ≃L[R] M₄) (f : M →L[R] M₄) : (M × M₃) ≃L[R] M₂ × M₄
Full source
/-- Equivalence given by a block lower diagonal matrix. `e` and `e'` are diagonal square blocks,
  and `f` is a rectangular block below the diagonal. -/
def skewProd (e : M ≃L[R] M₂) (e' : M₃ ≃L[R] M₄) (f : M →L[R] M₄) : (M × M₃) ≃L[R] M₂ × M₄ :=
  {
    e.toLinearEquiv.skewProd e'.toLinearEquiv
      ↑f with
    continuous_toFun :=
      (e.continuous_toFun.comp continuous_fst).prodMk
        ((e'.continuous_toFun.comp continuous_snd).add <| f.continuous.comp continuous_fst)
    continuous_invFun :=
      (e.continuous_invFun.comp continuous_fst).prodMk
        (e'.continuous_invFun.comp <|
          continuous_snd.sub <| f.continuous.comp <| e.continuous_invFun.comp continuous_fst) }
Skew product continuous linear equivalence
Informal description
Given continuous linear equivalences \( e : M \simeq_{L[R]} M_2 \) and \( e' : M_3 \simeq_{L[R]} M_4 \), and a continuous linear map \( f : M \to_{L[R]} M_4 \), the skew product continuous linear equivalence \( e.\text{skewProd}\ e'\ f : M \times M_3 \simeq_{L[R]} M_2 \times M_4 \) is defined by: \[ (x, y) \mapsto (e(x), e'(y) + f(x)) \] with inverse: \[ (a, b) \mapsto (e^{-1}(a), e'^{-1}(b - f(e^{-1}(a)))) \] This equivalence can be viewed as a block lower triangular matrix where \( e \) and \( e' \) form the diagonal blocks and \( f \) contributes to the off-diagonal block.
ContinuousLinearEquiv.skewProd_apply theorem
(e : M ≃L[R] M₂) (e' : M₃ ≃L[R] M₄) (f : M →L[R] M₄) (x) : e.skewProd e' f x = (e x.1, e' x.2 + f x.1)
Full source
@[simp]
theorem skewProd_apply (e : M ≃L[R] M₂) (e' : M₃ ≃L[R] M₄) (f : M →L[R] M₄) (x) :
    e.skewProd e' f x = (e x.1, e' x.2 + f x.1) :=
  rfl
Action of Skew Product Continuous Linear Equivalence on Elements
Informal description
Given continuous linear equivalences $e : M \simeq_{L[R]} M_2$ and $e' : M_3 \simeq_{L[R]} M_4$, and a continuous linear map $f : M \to_{L[R]} M_4$, the skew product continuous linear equivalence $e.\text{skewProd}\ e'\ f : M \times M_3 \simeq_{L[R]} M_2 \times M_4$ acts on an element $x = (x_1, x_2) \in M \times M_3$ as: \[ (e.\text{skewProd}\ e'\ f)(x) = (e(x_1), e'(x_2) + f(x_1)) \]
ContinuousLinearEquiv.skewProd_symm_apply theorem
(e : M ≃L[R] M₂) (e' : M₃ ≃L[R] M₄) (f : M →L[R] M₄) (x) : (e.skewProd e' f).symm x = (e.symm x.1, e'.symm (x.2 - f (e.symm x.1)))
Full source
@[simp]
theorem skewProd_symm_apply (e : M ≃L[R] M₂) (e' : M₃ ≃L[R] M₄) (f : M →L[R] M₄) (x) :
    (e.skewProd e' f).symm x = (e.symm x.1, e'.symm (x.2 - f (e.symm x.1))) :=
  rfl
Inverse Formula for Skew Product Continuous Linear Equivalence
Informal description
Given continuous linear equivalences $e \colon M \simeq_{L[R]} M_2$ and $e' \colon M_3 \simeq_{L[R]} M_4$, and a continuous linear map $f \colon M \to_{L[R]} M_4$, the inverse of the skew product continuous linear equivalence $e.\text{skewProd}\ e'\ f \colon M \times M_3 \simeq_{L[R]} M_2 \times M_4$ satisfies \[ (e.\text{skewProd}\ e'\ f)^{-1}(a, b) = \big(e^{-1}(a), e'^{-1}(b - f(e^{-1}(a)))\big) \] for all $(a, b) \in M_2 \times M_4$.
ContinuousLinearEquiv.neg definition
[ContinuousNeg M] : M ≃L[R] M
Full source
/-- The negation map as a continuous linear equivalence. -/
def neg [ContinuousNeg M] :
    M ≃L[R] M :=
  { LinearEquiv.neg R with
    continuous_toFun := continuous_neg
    continuous_invFun := continuous_neg }
Negation as a continuous linear equivalence
Informal description
The negation map \( x \mapsto -x \) is a continuous linear equivalence from a topological module \( M \) to itself, where \( M \) is equipped with a continuous negation operation.
ContinuousLinearEquiv.coe_neg theorem
[ContinuousNeg M] : (neg R : M → M) = -id
Full source
@[simp]
theorem coe_neg [ContinuousNeg M] :
    (neg R : M → M) = -id := rfl
Negation as Continuous Linear Equivalence is Negative Identity
Informal description
Let $M$ be a topological module over a ring $R$ with a continuous negation operation. The underlying function of the continuous linear equivalence $\mathrm{neg}_R : M \simeq_L[R] M$ is equal to the negation of the identity function, i.e., $(\mathrm{neg}_R : M \to M) = -\mathrm{id}$.
ContinuousLinearEquiv.neg_apply theorem
[ContinuousNeg M] (x : M) : neg R x = -x
Full source
@[simp]
theorem neg_apply [ContinuousNeg M] (x : M) :
    neg R x = -x := by simp
Negation in Continuous Linear Equivalence: $\text{neg}_R(x) = -x$
Informal description
For a topological module $M$ over a ring $R$ with continuous negation, the continuous linear equivalence `neg R` applied to an element $x \in M$ equals the negation of $x$, i.e., $\text{neg}_R(x) = -x$.
ContinuousLinearEquiv.symm_neg theorem
[ContinuousNeg M] : (neg R : M ≃L[R] M).symm = neg R
Full source
@[simp]
theorem symm_neg [ContinuousNeg M] :
    (neg R : M ≃L[R] M).symm = neg R := rfl
Inverse of Negation Equivalence is Itself: $(\mathrm{neg}_R)^{-1} = \mathrm{neg}_R$
Informal description
Let $M$ be a topological module over a ring $R$ with a continuous negation operation. The inverse of the continuous linear equivalence $\mathrm{neg}_R : M \simeq_L[R] M$ is equal to itself, i.e., $(\mathrm{neg}_R)^{-1} = \mathrm{neg}_R$.
ContinuousLinearEquiv.map_sub theorem
(e : M ≃SL[σ₁₂] M₂) (x y : M) : e (x - y) = e x - e y
Full source
theorem map_sub (e : M ≃SL[σ₁₂] M₂) (x y : M) : e (x - y) = e x - e y :=
  (e : M →SL[σ₁₂] M₂).map_sub x y
Continuous linear equivalence preserves subtraction: $e(x - y) = e(x) - e(y)$
Informal description
Let $e : M \simeq_{SL[\sigma_{12}]} M_2$ be a continuous linear equivalence between topological modules $M$ and $M_2$ over semirings with a ring homomorphism $\sigma_{12}$. Then for any $x, y \in M$, we have $e(x - y) = e(x) - e(y)$.
ContinuousLinearEquiv.map_neg theorem
(e : M ≃SL[σ₁₂] M₂) (x : M) : e (-x) = -e x
Full source
theorem map_neg (e : M ≃SL[σ₁₂] M₂) (x : M) : e (-x) = -e x :=
  (e : M →SL[σ₁₂] M₂).map_neg x
Continuous linear equivalences preserve negation
Informal description
Let $M$ and $M_2$ be topological modules over semirings with a ring homomorphism $\sigma_{12}$, and let $e : M \simeq_{SL[\sigma_{12}]} M_2$ be a continuous linear equivalence. Then for any $x \in M$, we have $e(-x) = -e(x)$.
ContinuousLinearEquiv.ofUnit definition
(f : (M →L[R] M)ˣ) : M ≃L[R] M
Full source
/-- An invertible continuous linear map `f` determines a continuous equivalence from `M` to itself.
-/
def ofUnit (f : (M →L[R] M)ˣ) : M ≃L[R] M where
  toLinearEquiv :=
    { toFun := f.val
      map_add' := by simp
      map_smul' := by simp
      invFun := f.inv
      left_inv := fun x =>
        show (f.inv * f.val) x = x by
          rw [f.inv_val]
          simp
      right_inv := fun x =>
        show (f.val * f.inv) x = x by
          rw [f.val_inv]
          simp }
  continuous_toFun := f.val.continuous
  continuous_invFun := f.inv.continuous
Continuous linear equivalence from invertible continuous linear map
Informal description
Given an invertible continuous linear map \( f \) from a topological module \( M \) to itself, the function `ContinuousLinearEquiv.ofUnit` constructs a continuous linear equivalence \( M \simeqL[R] M \). This equivalence consists of: - The linear map \( f \) itself, which is continuous and preserves addition and scalar multiplication - The inverse map \( f^{-1} \), which is also continuous - Proofs that these maps are indeed inverses of each other The construction shows that the group of units of the ring of continuous linear endomorphisms of \( M \) corresponds to the group of continuous linear automorphisms of \( M \).
ContinuousLinearEquiv.toUnit definition
(f : M ≃L[R] M) : (M →L[R] M)ˣ
Full source
/-- A continuous equivalence from `M` to itself determines an invertible continuous linear map. -/
def toUnit (f : M ≃L[R] M) : (M →L[R] M)ˣ where
  val := f
  inv := f.symm
  val_inv := by
    ext
    simp
  inv_val := by
    ext
    simp
Invertible continuous linear map from continuous linear equivalence
Informal description
Given a continuous linear equivalence \( f : M \simeq_{L[R]} M \) from a topological module \( M \) to itself over a semiring \( R \), the function maps \( f \) to an invertible continuous linear map in the group of units of the ring of continuous linear endomorphisms of \( M \). The inverse of this unit is given by the inverse continuous linear equivalence \( f^{-1} \), and both \( f \) and \( f^{-1} \) satisfy the unit conditions \( f \circ f^{-1} = \text{id} \) and \( f^{-1} \circ f = \text{id} \).
ContinuousLinearEquiv.unitsEquiv definition
: (M →L[R] M)ˣ ≃* M ≃L[R] M
Full source
/-- The units of the algebra of continuous `R`-linear endomorphisms of `M` is multiplicatively
equivalent to the type of continuous linear equivalences between `M` and itself. -/
def unitsEquiv : (M →L[R] M)ˣ(M →L[R] M)ˣ ≃* M ≃L[R] M where
  toFun := ofUnit
  invFun := toUnit
  left_inv f := by
    ext
    rfl
  right_inv f := by
    ext
    rfl
  map_mul' x y := by
    ext
    rfl
Multiplicative equivalence between units of continuous linear endomorphisms and continuous linear automorphisms
Informal description
The multiplicative equivalence between the group of units of the ring of continuous linear endomorphisms of a topological module \( M \) over a semiring \( R \) and the group of continuous linear automorphisms of \( M \). Specifically: 1. The function maps an invertible continuous linear endomorphism \( f \) to the continuous linear automorphism \( M \simeqL[R] M \) defined by \( f \). 2. The inverse function maps a continuous linear automorphism \( g \) to the invertible continuous linear endomorphism \( g \) in the group of units. 3. The equivalence preserves the multiplicative structure, meaning that composition of automorphisms corresponds to multiplication of units.
ContinuousLinearEquiv.unitsEquiv_apply theorem
(f : (M →L[R] M)ˣ) (x : M) : unitsEquiv R M f x = (f : M →L[R] M) x
Full source
@[simp]
theorem unitsEquiv_apply (f : (M →L[R] M)ˣ) (x : M) : unitsEquiv R M f x = (f : M →L[R] M) x :=
  rfl
Action of Units Equivalence on Elements: $\text{unitsEquiv}_{R,M}(f)(x) = f(x)$
Informal description
For any invertible continuous linear endomorphism $f$ in the group of units $(M \to_{L[R]} M)^\times$ and any element $x \in M$, the application of the multiplicative equivalence $\text{unitsEquiv}_{R,M}(f)$ to $x$ is equal to the application of $f$ (as a continuous linear map) to $x$, i.e., $\text{unitsEquiv}_{R,M}(f)(x) = f(x)$.
ContinuousLinearEquiv.unitsEquivAut definition
: Rˣ ≃ R ≃L[R] R
Full source
/-- Continuous linear equivalences `R ≃L[R] R` are enumerated by `Rˣ`. -/
def unitsEquivAut : Rˣ ≃ R ≃L[R] R where
  toFun u :=
    equivOfInverse (ContinuousLinearMap.smulRight (1 : R →L[R] R) ↑u)
      (ContinuousLinearMap.smulRight (1 : R →L[R] R) ↑u⁻¹) (fun x => by simp) fun x => by simp
  invFun e :=
    ⟨e 1, e.symm 1, by rw [← smul_eq_mul, ← map_smul, smul_eq_mul, mul_one, symm_apply_apply], by
      rw [← smul_eq_mul, ← map_smul, smul_eq_mul, mul_one, apply_symm_apply]⟩
  left_inv u := Units.ext <| by simp
  right_inv e := ext₁ <| by simp
Bijection between units and continuous linear self-equivalences via multiplication
Informal description
The function establishes a bijection between the group of units \( R^\times \) of a semiring \( R \) and the set of continuous linear self-equivalences \( R \simeq_{L[R]} R \) of \( R \) as a topological module over itself. Specifically: 1. For each unit \( u \in R^\times \), the corresponding equivalence is given by multiplication by \( u \), i.e., \( x \mapsto x \cdot u \). 2. The inverse equivalence is given by multiplication by \( u^{-1} \), i.e., \( x \mapsto x \cdot u^{-1} \).
ContinuousLinearEquiv.unitsEquivAut_apply theorem
(u : Rˣ) (x : R) : unitsEquivAut R u x = x * u
Full source
@[simp]
theorem unitsEquivAut_apply (u : ) (x : R) : unitsEquivAut R u x = x * u :=
  rfl
Action of Units as Continuous Linear Self-Equivalences via Multiplication
Informal description
For any unit $u$ in the group of units $R^\times$ of a semiring $R$ and any element $x \in R$, the continuous linear self-equivalence $\text{unitsEquivAut}_R(u)$ acts on $x$ by multiplication with $u$, i.e., $\text{unitsEquivAut}_R(u)(x) = x \cdot u$.
ContinuousLinearEquiv.unitsEquivAut_apply_symm theorem
(u : Rˣ) (x : R) : (unitsEquivAut R u).symm x = x * ↑u⁻¹
Full source
@[simp]
theorem unitsEquivAut_apply_symm (u : ) (x : R) : (unitsEquivAut R u).symm x = x * ↑u⁻¹ :=
  rfl
Inverse of Continuous Linear Self-Equivalence via Unit Multiplication
Informal description
For any unit $u$ in the group of units $R^\times$ of a semiring $R$ and any element $x \in R$, the inverse of the continuous linear self-equivalence associated to $u$ maps $x$ to $x \cdot u^{-1}$.
ContinuousLinearEquiv.unitsEquivAut_symm_apply theorem
(e : R ≃L[R] R) : ↑((unitsEquivAut R).symm e) = e 1
Full source
@[simp]
theorem unitsEquivAut_symm_apply (e : R ≃L[R] R) : ↑((unitsEquivAut R).symm e) = e 1 :=
  rfl
Unit Correspondence via Evaluation at Identity in Continuous Linear Self-Equivalences
Informal description
For any continuous linear self-equivalence $e : R \simeq_{L[R]} R$ of a topological module $R$ over itself, the unit element corresponding to $e$ under the inverse of the bijection between units and self-equivalences is equal to the evaluation of $e$ at the multiplicative identity $1 \in R$, i.e., $u = e(1)$ where $u$ is the unit associated with $e$.
ContinuousLinearEquiv.equivOfRightInverse definition
(f₁ : M →L[R] M₂) (f₂ : M₂ →L[R] M) (h : Function.RightInverse f₂ f₁) : M ≃L[R] M₂ × ker f₁
Full source
/-- A pair of continuous linear maps such that `f₁ ∘ f₂ = id` generates a continuous
linear equivalence `e` between `M` and `M₂ × f₁.ker` such that `(e x).2 = x` for `x ∈ f₁.ker`,
`(e x).1 = f₁ x`, and `(e (f₂ y)).2 = 0`. The map is given by `e x = (f₁ x, x - f₂ (f₁ x))`. -/
def equivOfRightInverse (f₁ : M →L[R] M₂) (f₂ : M₂ →L[R] M) (h : Function.RightInverse f₂ f₁) :
    M ≃L[R] M₂ × ker f₁ :=
  equivOfInverse (f₁.prod (f₁.projKerOfRightInverse f₂ h)) (f₂.coprod (ker f₁).subtypeL)
    (fun x => by simp) fun ⟨x, y⟩ => by simp [h x]
Continuous linear equivalence from a right inverse
Informal description
Given continuous linear maps \( f_1: M \to_{L[R]} M_2 \) and \( f_2: M_2 \to_{L[R]} M \) such that \( f_2 \) is a right inverse of \( f_1 \), this constructs a continuous linear equivalence \( M \simeq_{L[R]} M_2 \times \ker f_1 \). The equivalence is given by \( x \mapsto (f_1 x, x - f_2 (f_1 x)) \), where the second component lies in the kernel of \( f_1 \).
ContinuousLinearEquiv.fst_equivOfRightInverse theorem
(f₁ : M →L[R] M₂) (f₂ : M₂ →L[R] M) (h : Function.RightInverse f₂ f₁) (x : M) : (equivOfRightInverse f₁ f₂ h x).1 = f₁ x
Full source
@[simp]
theorem fst_equivOfRightInverse (f₁ : M →L[R] M₂) (f₂ : M₂ →L[R] M)
    (h : Function.RightInverse f₂ f₁) (x : M) : (equivOfRightInverse f₁ f₂ h x).1 = f₁ x :=
  rfl
First Component of Continuous Linear Equivalence from Right Inverse Equals $f_1(x)$
Informal description
Let $M$ and $M_2$ be topological modules over a topological ring $R$, and let $f_1: M \to M_2$ and $f_2: M_2 \to M$ be continuous linear maps such that $f_2$ is a right inverse of $f_1$. For any $x \in M$, the first component of the continuous linear equivalence $\text{equivOfRightInverse}\, f_1\, f_2\, h\, x$ is equal to $f_1(x)$.
ContinuousLinearEquiv.snd_equivOfRightInverse theorem
(f₁ : M →L[R] M₂) (f₂ : M₂ →L[R] M) (h : Function.RightInverse f₂ f₁) (x : M) : ((equivOfRightInverse f₁ f₂ h x).2 : M) = x - f₂ (f₁ x)
Full source
@[simp]
theorem snd_equivOfRightInverse (f₁ : M →L[R] M₂) (f₂ : M₂ →L[R] M)
    (h : Function.RightInverse f₂ f₁) (x : M) :
    ((equivOfRightInverse f₁ f₂ h x).2 : M) = x - f₂ (f₁ x) :=
  rfl
Second Component of Continuous Linear Equivalence from Right Inverse
Informal description
For continuous linear maps \( f_1: M \to_{L[R]} M_2 \) and \( f_2: M_2 \to_{L[R]} M \) such that \( f_2 \) is a right inverse of \( f_1 \), and for any \( x \in M \), the second component of the equivalence \( \text{equivOfRightInverse}\, f_1\, f_2\, h\, x \) in \( M \) is equal to \( x - f_2(f_1 x) \).
ContinuousLinearEquiv.equivOfRightInverse_symm_apply theorem
(f₁ : M →L[R] M₂) (f₂ : M₂ →L[R] M) (h : Function.RightInverse f₂ f₁) (y : M₂ × ker f₁) : (equivOfRightInverse f₁ f₂ h).symm y = f₂ y.1 + y.2
Full source
@[simp]
theorem equivOfRightInverse_symm_apply (f₁ : M →L[R] M₂) (f₂ : M₂ →L[R] M)
    (h : Function.RightInverse f₂ f₁) (y : M₂ × ker f₁) :
    (equivOfRightInverse f₁ f₂ h).symm y = f₂ y.1 + y.2 :=
  rfl
Inverse Formula for Continuous Linear Equivalence from Right Inverse
Informal description
Let $R$ be a semiring, and let $M$ and $M_2$ be topological $R$-modules. Given continuous linear maps $f_1 \colon M \to M_2$ and $f_2 \colon M_2 \to M$ such that $f_2$ is a right inverse of $f_1$, the inverse of the continuous linear equivalence $\text{equivOfRightInverse}\, f_1\, f_2\, h$ satisfies \[ (\text{equivOfRightInverse}\, f_1\, f_2\, h)^{-1}(y) = f_2(y_1) + y_2 \] for any $y = (y_1, y_2) \in M_2 \times \ker f_1$.
ContinuousLinearEquiv.funUnique definition
: (ι → M) ≃L[R] M
Full source
/-- If `ι` has a unique element, then `ι → M` is continuously linear equivalent to `M`. -/
def funUnique : (ι → M) ≃L[R] M :=
  { Homeomorph.funUnique ι M with toLinearEquiv := LinearEquiv.funUnique ι R M }
Continuous linear equivalence between function space and module for unique domain
Informal description
Given a type $\iota$ with a unique element, a semiring $R$, and a topological $R$-module $M$, the space of continuous functions $\iota \to M$ is continuously linearly equivalent to $M$ itself. The equivalence is given by evaluating at the unique element of $\iota$, and its inverse maps an element $x \in M$ to the constant function with value $x$.
ContinuousLinearEquiv.coe_funUnique theorem
: ⇑(funUnique ι R M) = Function.eval default
Full source
@[simp]
theorem coe_funUnique : ⇑(funUnique ι R M) = Function.eval default :=
  rfl
Evaluation at Default for Continuous Linear Equivalence on Function Space with Unique Domain
Informal description
For a type $\iota$ with a unique element, a semiring $R$, and a topological $R$-module $M$, the continuous linear equivalence $\text{funUnique}$ from the function space $\iota \to M$ to $M$ is given by evaluation at the unique element of $\iota$. That is, the map $\text{funUnique}$ satisfies $\text{funUnique}(f) = f(\text{default})$ for any continuous function $f \colon \iota \to M$.
ContinuousLinearEquiv.coe_funUnique_symm theorem
: ⇑(funUnique ι R M).symm = Function.const ι
Full source
@[simp]
theorem coe_funUnique_symm : ⇑(funUnique ι R M).symm = Function.const ι :=
  rfl
Inverse of Continuous Linear Equivalence for Unique Domain is Constant Function
Informal description
The inverse of the continuous linear equivalence `funUnique ι R M` is given by the constant function mapping each element of $\iota$ to a fixed value in $M$. That is, for any $x \in M$, the inverse map sends $x$ to the constant function $\iota \to M$ with value $x$.
ContinuousLinearEquiv.piFinTwo definition
(M : Fin 2 → Type*) [∀ i, AddCommMonoid (M i)] [∀ i, Module R (M i)] [∀ i, TopologicalSpace (M i)] : ((i : _) → M i) ≃L[R] M 0 × M 1
Full source
/-- Continuous linear equivalence between dependent functions `(i : Fin 2) → M i` and `M 0 × M 1`.
-/
@[simps! -fullyApplied apply symm_apply]
def piFinTwo (M : Fin 2 → Type*) [∀ i, AddCommMonoid (M i)] [∀ i, Module R (M i)]
    [∀ i, TopologicalSpace (M i)] : ((i : _) → M i) ≃L[R] M 0 × M 1 :=
  { Homeomorph.piFinTwo M with toLinearEquiv := LinearEquiv.piFinTwo R M }
Continuous linear equivalence between dependent functions on `Fin 2` and their product
Informal description
The continuous linear equivalence between the space of dependent functions `(i : Fin 2) → M i` and the product space `M 0 × M 1`, where each `M i` is a topological `R`-module. This equivalence maps a function `f` to the pair `(f 0, f 1)` and preserves both the linear structure and continuity.
ContinuousLinearEquiv.finTwoArrow definition
: (Fin 2 → M) ≃L[R] M × M
Full source
/-- Continuous linear equivalence between vectors in `M² = Fin 2 → M` and `M × M`. -/
@[simps! -fullyApplied apply symm_apply]
def finTwoArrow : (Fin 2 → M) ≃L[R] M × M :=
  { piFinTwo R fun _ => M with toLinearEquiv := LinearEquiv.finTwoArrow R M }
Continuous linear equivalence between `Fin 2 → M` and `M × M`
Informal description
The continuous linear equivalence between the space of functions from the two-element type `Fin 2` to a topological module `M` over a semiring `R` and the product module `M × M`. This equivalence maps a function `f` to the pair `(f 0, f 1)` and preserves both the linear structure and continuity in both directions.
Fin.consEquivL definition
: (M 0 × Π i, M (Fin.succ i)) ≃L[R] (Π i, M i)
Full source
/-- `Fin.consEquiv` as a continuous linear equivalence. -/
@[simps!]
def _root_.Fin.consEquivL : (M 0 × Π i, M (Fin.succ i)) ≃L[R] (Π i, M i) where
  __ := Fin.consLinearEquiv R M
  continuous_toFun := continuous_id.fst.finCons continuous_id.snd
  continuous_invFun := .prodMk (continuous_apply 0) (by continuity)
Continuous linear equivalence via cons construction
Informal description
The continuous linear equivalence `Fin.consEquivL` establishes an isomorphism between the product space $M_0 \times \prod_{i} M_{i+1}$ and the function space $\prod_{i} M_i$ for a family of topological modules $M_i$ indexed by $i \in \{0, \dots, n\}$ over a semiring $R$. This equivalence is continuous in both directions, with the forward map constructed using the `Fin.cons` operation and the inverse map given by projection to the first component and the tail of the sequence.
ContinuousLinearMap.finCons abbrev
[AddCommMonoid N] [Module R N] [TopologicalSpace N] (f : N →L[R] M 0) (fs : N →L[R] Π i, M (Fin.succ i)) : N →L[R] Π i, M i
Full source
/-- `Fin.cons` in the codomain of continuous linear maps. -/
abbrev _root_.ContinuousLinearMap.finCons
    [AddCommMonoid N] [Module R N] [TopologicalSpace N]
    (f : N →L[R] M 0) (fs : N →L[R] Π i, M (Fin.succ i)) :
    N →L[R] Π i, M i :=
  Fin.consEquivLFin.consEquivL R M ∘L f.prod fs
Continuous Linear Map Construction via `Fin.cons`
Informal description
Given an additive commutative monoid $N$ with a module structure over a semiring $R$ and a topological space structure, and given continuous linear maps $f : N \to_{L[R]} M_0$ and $f_s : N \to_{L[R]} \prod_{i} M_{i+1}$, there exists a continuous linear map $N \to_{L[R]} \prod_{i} M_i$ constructed using the `Fin.cons` operation.
ContinuousLinearMap.IsInvertible definition
(f : M →L[R] M₂) : Prop
Full source
/-- A continuous linear map is invertible if it is the forward direction of a continuous linear
equivalence. -/
def IsInvertible (f : M →L[R] M₂) : Prop :=
  ∃ (A : M ≃L[R] M₂), A = f
Invertibility of a continuous linear map
Informal description
A continuous linear map \( f : M \to_{L[R]} M_2 \) between topological modules \( M \) and \( M_2 \) over a semiring \( R \) is invertible if there exists a continuous linear equivalence \( A : M \simeq_{L[R]} M_2 \) such that \( A \) coincides with \( f \).
ContinuousLinearMap.inverse definition
: (M →L[R] M₂) → M₂ →L[R] M
Full source
/-- Introduce a function `inverse` from `M →L[R] M₂` to `M₂ →L[R] M`, which sends `f` to `f.symm` if
`f` is a continuous linear equivalence and to `0` otherwise.  This definition is somewhat ad hoc,
but one needs a fully (rather than partially) defined inverse function for some purposes, including
for calculus. -/
noncomputable def inverse : (M →L[R] M₂) → M₂ →L[R] M := fun f =>
  if h : f.IsInvertible then ((Classical.choose h).symm : M₂ →L[R] M) else 0
Inverse of a continuous linear map (or zero if non-invertible)
Informal description
The function `inverse` maps a continuous linear map $f : M \to_{L[R]} M_2$ between topological modules $M$ and $M_2$ over a semiring $R$ to its inverse $f^{-1} : M_2 \to_{L[R]} M$ if $f$ is invertible (i.e., if there exists a continuous linear equivalence $A : M \simeq_{L[R]} M_2$ such that $A$ coincides with $f$). Otherwise, it maps $f$ to the zero map $0 : M_2 \to_{L[R]} M$.
ContinuousLinearMap.isInvertible_equiv theorem
{f : M ≃L[R] M₂} : IsInvertible (f : M →L[R] M₂)
Full source
@[simp] lemma isInvertible_equiv {f : M ≃L[R] M₂} : IsInvertible (f : M →L[R] M₂) := ⟨f, rfl⟩
Invertibility of Continuous Linear Equivalences
Informal description
For any continuous linear equivalence $f : M \simeq_{L[R]} M_2$ between topological modules $M$ and $M_2$ over a semiring $R$, the underlying continuous linear map $f : M \to_{L[R]} M_2$ is invertible.
ContinuousLinearMap.inverse_equiv theorem
(e : M ≃L[R] M₂) : inverse (e : M →L[R] M₂) = e.symm
Full source
/-- By definition, if `f` is invertible then `inverse f = f.symm`. -/
@[simp]
theorem inverse_equiv (e : M ≃L[R] M₂) : inverse (e : M →L[R] M₂) = e.symm := by
  simp [inverse]
Inverse of Continuous Linear Equivalence Equals Symmetric Map
Informal description
For any continuous linear equivalence $e : M \simeq_{L[R]} M_2$ between topological modules $M$ and $M_2$ over a semiring $R$, the inverse of the underlying continuous linear map $e : M \to_{L[R]} M_2$ is equal to the inverse equivalence $e^{-1} : M_2 \simeq_{L[R]} M$.
ContinuousLinearMap.inverse_of_not_isInvertible theorem
{f : M →L[R] M₂} (hf : ¬f.IsInvertible) : f.inverse = 0
Full source
/-- By definition, if `f` is not invertible then `inverse f = 0`. -/
@[simp] lemma inverse_of_not_isInvertible
    {f : M →L[R] M₂} (hf : ¬ f.IsInvertible) : f.inverse = 0 :=
  dif_neg hf
Inverse of Non-Invertible Continuous Linear Map is Zero
Informal description
For any continuous linear map $f : M \to_{L[R]} M_2$ between topological modules $M$ and $M_2$ over a semiring $R$, if $f$ is not invertible, then its inverse map is the zero map, i.e., $f^{-1} = 0$.
ContinuousLinearMap.isInvertible_zero_iff theorem
: IsInvertible (0 : M →L[R] M₂) ↔ Subsingleton M ∧ Subsingleton M₂
Full source
@[simp]
theorem isInvertible_zero_iff :
    IsInvertibleIsInvertible (0 : M →L[R] M₂) ↔ Subsingleton M ∧ Subsingleton M₂ := by
  refine ⟨fun ⟨e, he⟩ ↦ ?_, ?_⟩
  · have A : Subsingleton M := by
      refine ⟨fun x y ↦ e.injective ?_⟩
      simp [he, ← ContinuousLinearEquiv.coe_coe]
    exact ⟨A, e.toEquiv.symm.subsingleton⟩
  · rintro ⟨hM, hM₂⟩
    let e : M ≃L[R] M₂ :=
    { toFun := 0
      invFun := 0
      left_inv x := Subsingleton.elim _ _
      right_inv x := Subsingleton.elim _ _
      map_add' x y := Subsingleton.elim _ _
      map_smul' c x := Subsingleton.elim _ _ }
    refine ⟨e, ?_⟩
    ext x
    exact Subsingleton.elim _ _
Invertibility of Zero Map: $0$ is invertible $\iff$ $M$ and $M_2$ are subsingletons
Informal description
The zero continuous linear map between topological modules $M$ and $M_2$ over a semiring $R$ is invertible if and only if both $M$ and $M_2$ are subsingletons (i.e., have at most one element).
ContinuousLinearMap.inverse_zero theorem
: inverse (0 : M →L[R] M₂) = 0
Full source
@[simp] theorem inverse_zero : inverse (0 : M →L[R] M₂) = 0 := by
  by_cases h : IsInvertible (0 : M →L[R] M₂)
  · rcases isInvertible_zero_iff.1 h with ⟨hM, hM₂⟩
    ext x
    exact Subsingleton.elim _ _
  · exact inverse_of_not_isInvertible h
Inverse of Zero Continuous Linear Map is Zero
Informal description
The inverse of the zero continuous linear map between topological modules $M$ and $M_2$ over a semiring $R$ is the zero map, i.e., $(0 : M \to_{L[R]} M_2)^{-1} = 0$.
ContinuousLinearMap.IsInvertible.comp theorem
{g : M₂ →L[R] M₃} {f : M →L[R] M₂} (hg : g.IsInvertible) (hf : f.IsInvertible) : (g ∘L f).IsInvertible
Full source
lemma IsInvertible.comp {g : M₂ →L[R] M₃} {f : M →L[R] M₂}
    (hg : g.IsInvertible) (hf : f.IsInvertible) : (g ∘L f).IsInvertible := by
  rcases hg with ⟨N, rfl⟩
  rcases hf with ⟨M, rfl⟩
  exact ⟨M.trans N, rfl⟩
Invertibility of Composition of Continuous Linear Maps
Informal description
Let $f \colon M \to_{L[R]} M_2$ and $g \colon M_2 \to_{L[R]} M_3$ be continuous linear maps between topological modules over a semiring $R$. If $f$ and $g$ are invertible, then their composition $g \circ f$ is also invertible.
ContinuousLinearMap.IsInvertible.of_inverse theorem
{f : M →L[R] M₂} {g : M₂ →L[R] M} (hf : f ∘L g = id R M₂) (hg : g ∘L f = id R M) : f.IsInvertible
Full source
lemma IsInvertible.of_inverse {f : M →L[R] M₂} {g : M₂ →L[R] M}
    (hf : f ∘L g = id R M₂) (hg : g ∘L f = id R M) :
    f.IsInvertible :=
  ⟨ContinuousLinearEquiv.equivOfInverse' _ _ hf hg, rfl⟩
Invertibility of Continuous Linear Map via Two-Sided Inverse
Informal description
Let $f: M \to_{L[R]} M_2$ and $g: M_2 \to_{L[R]} M$ be continuous linear maps between topological modules over a semiring $R$. If $f \circ g$ is the identity map on $M_2$ and $g \circ f$ is the identity map on $M$, then $f$ is invertible as a continuous linear map.
ContinuousLinearMap.inverse_eq theorem
{f : M →L[R] M₂} {g : M₂ →L[R] M} (hf : f ∘L g = id R M₂) (hg : g ∘L f = id R M) : f.inverse = g
Full source
lemma inverse_eq {f : M →L[R] M₂} {g : M₂ →L[R] M} (hf : f ∘L g = id R M₂) (hg : g ∘L f = id R M) :
    f.inverse = g := by
  have : f = ContinuousLinearEquiv.equivOfInverse' f g hf hg := rfl
  rw [this, inverse_equiv]
  rfl
Inverse of Continuous Linear Map via Two-Sided Inverse Condition
Informal description
Let $f \colon M \to_{L[R]} M_2$ and $g \colon M_2 \to_{L[R]} M$ be continuous linear maps between topological modules over a semiring $R$. If $f \circ g$ is the identity map on $M_2$ and $g \circ f$ is the identity map on $M$, then the inverse of $f$ (as defined by `ContinuousLinearMap.inverse`) is equal to $g$.
ContinuousLinearMap.IsInvertible.inverse_apply_eq theorem
{f : M →L[R] M₂} {x : M} {y : M₂} (hf : f.IsInvertible) : f.inverse y = x ↔ y = f x
Full source
lemma IsInvertible.inverse_apply_eq {f : M →L[R] M₂} {x : M} {y : M₂} (hf : f.IsInvertible) :
    f.inverse y = x ↔ y = f x := by
  rcases hf with ⟨M, rfl⟩
  simp only [inverse_equiv, ContinuousLinearEquiv.coe_coe]
  exact ContinuousLinearEquiv.symm_apply_eq M
Characterization of Inverse Application for Invertible Continuous Linear Maps
Informal description
Let $f \colon M \to_{L[R]} M_2$ be an invertible continuous linear map between topological modules $M$ and $M_2$ over a semiring $R$. For any $x \in M$ and $y \in M_2$, the inverse map $f^{-1}$ satisfies $f^{-1}(y) = x$ if and only if $y = f(x)$.
ContinuousLinearMap.isInvertible_equiv_comp theorem
{e : M₂ ≃L[R] M₃} {f : M →L[R] M₂} : ((e : M₂ →L[R] M₃) ∘L f).IsInvertible ↔ f.IsInvertible
Full source
@[simp] lemma isInvertible_equiv_comp {e : M₂ ≃L[R] M₃} {f : M →L[R] M₂} :
    ((e : M₂ →L[R] M₃) ∘L f).IsInvertible ↔ f.IsInvertible := by
  constructor
  · rintro ⟨A, hA⟩
    have : f = e.symm ∘L ((e : M₂ →L[R] M₃) ∘L f) := by ext; simp
    rw [this, ← hA]
    simp
  · rintro ⟨M, rfl⟩
    simp
Invertibility of Composition with Continuous Linear Equivalence
Informal description
Let $R$ be a semiring, and let $M$, $M_2$, and $M_3$ be topological modules over $R$. Given a continuous linear equivalence $e \colon M_2 \simeq_{L[R]} M_3$ and a continuous linear map $f \colon M \to_{L[R]} M_2$, the composition $(e \circ f) \colon M \to_{L[R]} M_3$ is invertible if and only if $f$ is invertible.
ContinuousLinearMap.isInvertible_comp_equiv theorem
{e : M₃ ≃L[R] M} {f : M →L[R] M₂} : (f ∘L (e : M₃ →L[R] M)).IsInvertible ↔ f.IsInvertible
Full source
@[simp] lemma isInvertible_comp_equiv {e : M₃ ≃L[R] M} {f : M →L[R] M₂} :
    (f ∘L (e : M₃ →L[R] M)).IsInvertible ↔ f.IsInvertible := by
  constructor
  · rintro ⟨A, hA⟩
    have : f = (f ∘L (e : M₃ →L[R] M)) ∘L e.symm := by ext; simp
    rw [this, ← hA]
    simp
  · rintro ⟨M, rfl⟩
    simp
Invertibility of Composition with Continuous Linear Equivalence: $f \circ e$ is Invertible iff $f$ is Invertible
Informal description
Let $M$, $M_2$, and $M_3$ be topological modules over a semiring $R$, and let $e \colon M_3 \simeqL[R] M$ be a continuous linear equivalence. For any continuous linear map $f \colon M \toL[R] M_2$, the composition $f \circ e \colon M_3 \toL[R] M_2$ is invertible if and only if $f$ is invertible.
ContinuousLinearMap.inverse_equiv_comp theorem
{e : M₂ ≃L[R] M₃} {f : M →L[R] M₂} : (e ∘L f).inverse = f.inverse ∘L (e.symm : M₃ →L[R] M₂)
Full source
@[simp] lemma inverse_equiv_comp {e : M₂ ≃L[R] M₃} {f : M →L[R] M₂} :
    (e ∘L f).inverse = f.inverse ∘L (e.symm : M₃ →L[R] M₂) := by
  by_cases hf : f.IsInvertible
  · rcases hf with ⟨A, rfl⟩
    simp only [ContinuousLinearEquiv.comp_coe, inverse_equiv, ContinuousLinearEquiv.coe_inj]
    rfl
  · rw [inverse_of_not_isInvertible (by simp [hf]), inverse_of_not_isInvertible hf, zero_comp]
Inverse of Composition with Continuous Linear Equivalence: $(e \circ f)^{-1} = f^{-1} \circ e^{-1}$
Informal description
Let $M$, $M_2$, and $M_3$ be topological modules over a semiring $R$, and let $e : M_2 \simeq_{L[R]} M_3$ be a continuous linear equivalence. For any continuous linear map $f : M \to_{L[R]} M_2$, the inverse of the composition $e \circ f$ is equal to the composition of the inverse of $f$ with the inverse equivalence $e^{-1} : M_3 \to_{L[R]} M_2$. That is, $(e \circ f)^{-1} = f^{-1} \circ e^{-1}$.
ContinuousLinearMap.inverse_comp_equiv theorem
{e : M₃ ≃L[R] M} {f : M →L[R] M₂} : (f ∘L e).inverse = (e.symm : M →L[R] M₃) ∘L f.inverse
Full source
@[simp] lemma inverse_comp_equiv {e : M₃ ≃L[R] M} {f : M →L[R] M₂} :
    (f ∘L e).inverse = (e.symm : M →L[R] M₃) ∘L f.inverse := by
  by_cases hf : f.IsInvertible
  · rcases hf with ⟨A, rfl⟩
    simp only [ContinuousLinearEquiv.comp_coe, inverse_equiv, ContinuousLinearEquiv.coe_inj]
    rfl
  · rw [inverse_of_not_isInvertible (by simp [hf]), inverse_of_not_isInvertible hf, comp_zero]
Inverse of Composition with Continuous Linear Equivalence: $(f \circ e)^{-1} = e^{-1} \circ f^{-1}$
Informal description
Let $M$, $M_2$, and $M_3$ be topological modules over a semiring $R$, and let $e \colon M_3 \simeq_{L[R]} M$ be a continuous linear equivalence. For any continuous linear map $f \colon M \to_{L[R]} M_2$, the inverse of the composition $f \circ e$ is given by the composition of the inverse of $f$ with the inverse equivalence $e^{-1} \colon M \to_{L[R]} M_3$. That is, $$(f \circ e)^{-1} = e^{-1} \circ f^{-1}.$$
ContinuousLinearMap.IsInvertible.inverse_comp_of_left theorem
{g : M₂ →L[R] M₃} {f : M →L[R] M₂} (hg : g.IsInvertible) : (g ∘L f).inverse = f.inverse ∘L g.inverse
Full source
lemma IsInvertible.inverse_comp_of_left {g : M₂ →L[R] M₃} {f : M →L[R] M₂}
    (hg : g.IsInvertible) : (g ∘L f).inverse = f.inverse ∘L g.inverse := by
  rcases hg with ⟨N, rfl⟩
  simp
Inverse of Composition with Invertible Continuous Linear Map: $(g \circ f)^{-1} = f^{-1} \circ g^{-1}$
Informal description
Let $M$, $M_2$, and $M_3$ be topological modules over a semiring $R$, and let $g : M_2 \to_{L[R]} M_3$ be an invertible continuous linear map. For any continuous linear map $f : M \to_{L[R]} M_2$, the inverse of the composition $g \circ f$ is equal to the composition of the inverse of $f$ with the inverse of $g$. That is, $(g \circ f)^{-1} = f^{-1} \circ g^{-1}$.
ContinuousLinearMap.IsInvertible.inverse_comp_apply_of_left theorem
{g : M₂ →L[R] M₃} {f : M →L[R] M₂} {v : M₃} (hg : g.IsInvertible) : (g ∘L f).inverse v = f.inverse (g.inverse v)
Full source
lemma IsInvertible.inverse_comp_apply_of_left {g : M₂ →L[R] M₃} {f : M →L[R] M₂} {v : M₃}
    (hg : g.IsInvertible) : (g ∘L f).inverse v = f.inverse (g.inverse v) := by
  simp only [hg.inverse_comp_of_left, coe_comp', Function.comp_apply]
Inverse of Composition of Continuous Linear Maps Applied to Vector: $(g \circ f)^{-1}(v) = f^{-1}(g^{-1}(v))$
Informal description
Let $M$, $M_2$, and $M_3$ be topological modules over a semiring $R$, and let $g : M_2 \to_{L[R]} M_3$ be an invertible continuous linear map. For any continuous linear map $f : M \to_{L[R]} M_2$ and any vector $v \in M_3$, the inverse of the composition $g \circ f$ applied to $v$ is equal to the inverse of $f$ applied to the inverse of $g$ applied to $v$. That is, $$(g \circ f)^{-1}(v) = f^{-1}(g^{-1}(v)).$$
ContinuousLinearMap.IsInvertible.inverse_comp_of_right theorem
{g : M₂ →L[R] M₃} {f : M →L[R] M₂} (hf : f.IsInvertible) : (g ∘L f).inverse = f.inverse ∘L g.inverse
Full source
lemma IsInvertible.inverse_comp_of_right {g : M₂ →L[R] M₃} {f : M →L[R] M₂}
    (hf : f.IsInvertible) : (g ∘L f).inverse = f.inverse ∘L g.inverse := by
  rcases hf with ⟨M, rfl⟩
  simp
Inverse of Composition of Continuous Linear Maps with Right Invertibility: $(g \circ f)^{-1} = f^{-1} \circ g^{-1}$
Informal description
Let $M$, $M_2$, and $M_3$ be topological modules over a semiring $R$, and let $f \colon M \to_{L[R]} M_2$ be an invertible continuous linear map. For any continuous linear map $g \colon M_2 \to_{L[R]} M_3$, the inverse of the composition $g \circ f$ is given by the composition of the inverse of $f$ with the inverse of $g$. That is, $$(g \circ f)^{-1} = f^{-1} \circ g^{-1}.$$
ContinuousLinearMap.IsInvertible.inverse_comp_apply_of_right theorem
{g : M₂ →L[R] M₃} {f : M →L[R] M₂} {v : M₃} (hf : f.IsInvertible) : (g ∘L f).inverse v = f.inverse (g.inverse v)
Full source
lemma IsInvertible.inverse_comp_apply_of_right {g : M₂ →L[R] M₃} {f : M →L[R] M₂} {v : M₃}
    (hf : f.IsInvertible) : (g ∘L f).inverse v = f.inverse (g.inverse v) := by
  simp only [hf.inverse_comp_of_right, coe_comp', Function.comp_apply]
Inverse of Composition of Continuous Linear Maps Applied to Vector: $(g \circ f)^{-1}(v) = f^{-1}(g^{-1}(v))$
Informal description
Let $M$, $M_2$, and $M_3$ be topological modules over a semiring $R$, and let $f \colon M \to_{L[R]} M_2$ be an invertible continuous linear map. For any continuous linear map $g \colon M_2 \to_{L[R]} M_3$ and any vector $v \in M_3$, the inverse of the composition $g \circ f$ applied to $v$ is given by applying the inverse of $f$ to the result of applying the inverse of $g$ to $v$. That is, $$(g \circ f)^{-1}(v) = f^{-1}(g^{-1}(v)).$$
ContinuousLinearMap.ringInverse_equiv theorem
(e : M ≃L[R] M) : Ring.inverse ↑e = inverse (e : M →L[R] M)
Full source
@[simp]
theorem ringInverse_equiv (e : M ≃L[R] M) : Ring.inverse ↑e = inverse (e : M →L[R] M) := by
  suffices Ring.inverse ((ContinuousLinearEquiv.unitsEquiv _ _).symm e : M →L[R] M) = inverse ↑e by
    convert this
  simp
  rfl
Ring Inverse of Continuous Linear Automorphism Equals Its Continuous Linear Inverse
Informal description
For any continuous linear automorphism $e : M \simeq_{L[R]} M$ of a topological module $M$ over a semiring $R$, the ring-theoretic inverse of $e$ (considered as an element of the ring of continuous linear endomorphisms) is equal to the inverse of $e$ as a continuous linear map.
ContinuousLinearMap.inverse_eq_ringInverse theorem
(e : M ≃L[R] M₂) (f : M →L[R] M₂) : inverse f = Ring.inverse ((e.symm : M₂ →L[R] M).comp f) ∘L e.symm
Full source
/-- The function `ContinuousLinearEquiv.inverse` can be written in terms of `Ring.inverse` for the
ring of self-maps of the domain. -/
theorem inverse_eq_ringInverse (e : M ≃L[R] M₂) (f : M →L[R] M₂) :
    inverse f = Ring.inverseRing.inverse ((e.symm : M₂ →L[R] M).comp f) ∘L e.symm := by
  by_cases h₁ : f.IsInvertible
  · obtain ⟨e', he'⟩ := h₁
    rw [← he']
    change _ = Ring.inverseRing.inverse (e'.trans e.symm : M →L[R] M) ∘L (e.symm : M₂ →L[R] M)
    ext
    simp
  · suffices ¬IsUnit ((e.symm : M₂ →L[R] M).comp f) by simp [this, h₁]
    contrapose! h₁
    rcases h₁ with ⟨F, hF⟩
    use (ContinuousLinearEquiv.unitsEquiv _ _ F).trans e
    ext
    dsimp
    rw [hF]
    simp
Inverse of Continuous Linear Map via Ring Inverse and Equivalence
Informal description
Let $M$ and $M_2$ be topological modules over a semiring $R$, and let $e : M \simeqL[R] M_2$ be a continuous linear equivalence. For any continuous linear map $f : M \toL[R] M_2$, the inverse of $f$ is equal to the composition of the ring-theoretic inverse of $(e^{-1} \circ f)$ with $e^{-1}$, i.e., \[ f^{-1} = \text{Ring.inverse}(e^{-1} \circ f) \circ e^{-1}. \]
ContinuousLinearMap.ringInverse_eq_inverse theorem
: Ring.inverse = inverse (R := R) (M := M)
Full source
theorem ringInverse_eq_inverse : Ring.inverse = inverse (R := R) (M := M) := by
  ext
  simp [inverse_eq_ringInverse (ContinuousLinearEquiv.refl R M)]
Ring Inverse Equals Continuous Linear Inverse for Endomorphisms
Informal description
For a topological module $M$ over a semiring $R$, the ring-theoretic inverse operation on the ring of continuous linear endomorphisms of $M$ coincides with the continuous linear map inverse operation, i.e., $\text{Ring.inverse} = \text{inverse}$ as functions on $\text{End}_{L[R]}(M)$.
ContinuousLinearMap.inverse_id theorem
: (id R M).inverse = id R M
Full source
@[simp] theorem inverse_id : (id R M).inverse = id R M := by
  rw [← ringInverse_eq_inverse]
  exact Ring.inverse_one _
Inverse of Identity Continuous Linear Map is Identity
Informal description
The inverse of the identity continuous linear map on a topological module $M$ over a semiring $R$ is the identity map itself, i.e., $(\text{id}_{M})^{-1} = \text{id}_{M}$.
Submodule.ClosedComplemented.exists_submodule_equiv_prod theorem
[IsTopologicalAddGroup M] {p : Submodule R M} (hp : p.ClosedComplemented) : ∃ (q : Submodule R M) (e : M ≃L[R] (p × q)), (∀ x : p, e x = (x, 0)) ∧ (∀ y : q, e y = (0, y)) ∧ (∀ x, e.symm x = x.1 + x.2)
Full source
/-- If `p` is a closed complemented submodule,
then there exists a submodule `q` and a continuous linear equivalence `M ≃L[R] (p × q)` such that
`e (x : p) = (x, 0)`, `e (y : q) = (0, y)`, and `e.symm x = x.1 + x.2`.

In fact, the properties of `e` imply the properties of `e.symm` and vice versa,
but we provide both for convenience. -/
lemma ClosedComplemented.exists_submodule_equiv_prod [IsTopologicalAddGroup M]
    {p : Submodule R M} (hp : p.ClosedComplemented) :
    ∃ (q : Submodule R M) (e : M ≃L[R] (p × q)),
      (∀ x : p, e x = (x, 0)) ∧ (∀ y : q, e y = (0, y)) ∧ (∀ x, e.symm x = x.1 + x.2) :=
  let ⟨f, hf⟩ := hp
  ⟨LinearMap.ker f, .equivOfRightInverse _ p.subtypeL hf,
    fun _ ↦ by ext <;> simp [hf], fun _ ↦ by ext <;> simp [hf], fun _ ↦ rfl⟩
Decomposition of a Topological Module via Closed Complemented Submodule
Informal description
Let $M$ be a topological module over a semiring $R$ with a topological additive group structure, and let $p$ be a closed complemented submodule of $M$. Then there exists a submodule $q$ of $M$ and a continuous linear equivalence $e : M \simeq_{L[R]} (p \times q)$ such that: 1. For any $x \in p$, $e(x) = (x, 0)$, 2. For any $y \in q$, $e(y) = (0, y)$, 3. For any $x \in p \times q$, $e^{-1}(x) = x_1 + x_2$.
MulOpposite.opContinuousLinearEquiv definition
: M ≃L[R] Mᵐᵒᵖ
Full source
/-- The function `op` is a continuous linear equivalence. -/
@[simps!]
def opContinuousLinearEquiv : M ≃L[R] Mᵐᵒᵖ where
  __ := MulOpposite.opLinearEquiv R

Continuous linear equivalence to the multiplicative opposite
Informal description
The function `op` is a continuous linear equivalence between a topological module $M$ over a semiring $R$ and its multiplicative opposite $M^\text{op}$. This means it is both a linear isomorphism and a homeomorphism, preserving the module structure and continuity in both directions.