mathlib documentation

analysis.normed_space.operator_norm

Operator norm on the space of continuous linear maps #

Define the operator norm on the space of continuous (semi)linear maps between normed spaces, and prove its basic properties. In particular, show that this space is itself a normed space.

Since a lot of elementary properties don't require ∥x∥ = 0 → x = 0 we start setting up the theory for semi_normed_group and we specialize to normed_group at the end.

Note that most of statements that apply to semilinear maps only hold when the ring homomorphism is isometric, as expressed by the typeclass [ring_hom_isometric σ].

Most statements in this file require the field to be non-discrete, as this is necessary to deduce an inequality ∥f x∥ ≤ C ∥x∥ from the continuity of f. However, the other direction always holds. In this section, we just assume that 𝕜 is a normed field. In the remainder of the file, it will be non-discrete.

def linear_map.mk_continuous {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [normed_field 𝕜] [normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ : 𝕜 →+* 𝕜₂} (f : E →ₛₗ[σ] F) (C : ) (h : ∀ (x : E), f x C * x) :
E →SL[σ] F

Construct a continuous linear map from a linear map and a bound on this linear map. The fact that the norm of the continuous linear map is then controlled is given in linear_map.mk_continuous_norm_le.

Equations
def linear_map.to_continuous_linear_map₁ {𝕜 : Type u_1} {E : Type u_4} [semi_normed_group E] [normed_field 𝕜] [normed_space 𝕜 E] (f : 𝕜 →ₗ[𝕜] E) :
𝕜 →L[𝕜] E

Reinterpret a linear map 𝕜 →ₗ[𝕜] E as a continuous linear map. This construction is generalized to the case of any finite dimensional domain in linear_map.to_continuous_linear_map.

Equations
def linear_map.mk_continuous_of_exists_bound {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [normed_field 𝕜] [normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ : 𝕜 →+* 𝕜₂} (f : E →ₛₗ[σ] F) (h : ∃ (C : ), ∀ (x : E), f x C * x) :
E →SL[σ] F

Construct a continuous linear map from a linear map and the existence of a bound on this linear map. If you have an explicit bound, use linear_map.mk_continuous instead, as a norm estimate will follow automatically in linear_map.mk_continuous_norm_le.

Equations
theorem continuous_of_linear_of_boundₛₗ {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [normed_field 𝕜] [normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ : 𝕜 →+* 𝕜₂} {f : E → F} (h_add : ∀ (x y : E), f (x + y) = f x + f y) (h_smul : ∀ (c : 𝕜) (x : E), f (c x) = σ c f x) {C : } (h_bound : ∀ (x : E), f x C * x) :
theorem continuous_of_linear_of_bound {𝕜 : Type u_1} {E : Type u_4} {G : Type u_8} [semi_normed_group E] [semi_normed_group G] [normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 G] {f : E → G} (h_add : ∀ (x y : E), f (x + y) = f x + f y) (h_smul : ∀ (c : 𝕜) (x : E), f (c x) = c f x) {C : } (h_bound : ∀ (x : E), f x C * x) :
@[simp, norm_cast]
theorem linear_map.mk_continuous_coe {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [normed_field 𝕜] [normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ : 𝕜 →+* 𝕜₂} (f : E →ₛₗ[σ] F) (C : ) (h : ∀ (x : E), f x C * x) :
@[simp]
theorem linear_map.mk_continuous_apply {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [normed_field 𝕜] [normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ : 𝕜 →+* 𝕜₂} (f : E →ₛₗ[σ] F) (C : ) (h : ∀ (x : E), f x C * x) (x : E) :
(f.mk_continuous C h) x = f x
@[simp, norm_cast]
theorem linear_map.mk_continuous_of_exists_bound_coe {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [normed_field 𝕜] [normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ : 𝕜 →+* 𝕜₂} (f : E →ₛₗ[σ] F) (h : ∃ (C : ), ∀ (x : E), f x C * x) :
@[simp]
theorem linear_map.mk_continuous_of_exists_bound_apply {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [normed_field 𝕜] [normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ : 𝕜 →+* 𝕜₂} (f : E →ₛₗ[σ] F) (h : ∃ (C : ), ∀ (x : E), f x C * x) (x : E) :
@[simp]
theorem linear_map.to_continuous_linear_map₁_coe {𝕜 : Type u_1} {E : Type u_4} [semi_normed_group E] [normed_field 𝕜] [normed_space 𝕜 E] (f : 𝕜 →ₗ[𝕜] E) :
@[simp]
theorem linear_map.to_continuous_linear_map₁_apply {𝕜 : Type u_1} {E : Type u_4} [semi_normed_group E] [normed_field 𝕜] [normed_space 𝕜 E] (f : 𝕜 →ₗ[𝕜] E) (x : 𝕜) :
theorem norm_image_of_norm_zero {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} {𝓕 : Type u_10} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [semilinear_map_class 𝓕 σ₁₂ E F] (f : 𝓕) (hf : continuous f) {x : E} (hx : x = 0) :

If ∥x∥ = 0 and f is continuous then ∥f x∥ = 0.

theorem semilinear_map_class.bound_of_shell_semi_normed {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} {𝓕 : Type u_10} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] [semilinear_map_class 𝓕 σ₁₂ E F] (f : 𝓕) {ε C : } (ε_pos : 0 < ε) {c : 𝕜} (hc : 1 < c) (hf : ∀ (x : E), ε / c xx < εf x C * x) {x : E} (hx : x 0) :
theorem semilinear_map_class.bound_of_continuous {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} {𝓕 : Type u_10} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] [semilinear_map_class 𝓕 σ₁₂ E F] (f : 𝓕) (hf : continuous f) :
∃ (C : ), 0 < C ∀ (x : E), f x C * x

A continuous linear map between seminormed spaces is bounded when the field is nondiscrete. The continuity ensures boundedness on a ball of some radius ε. The nondiscreteness is then used to rescale any element into an element of norm in [ε/C, ε], whose image has a controlled norm. The norm control for the original element follows by rescaling.

theorem continuous_linear_map.bound {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) :
∃ (C : ), 0 < C ∀ (x : E), f x C * x
def continuous_linear_map.of_homothety {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →ₛₗ[σ₁₂] F) (a : ) (hf : ∀ (x : E), f x = a * x) :
E →SL[σ₁₂] F

A linear map which is a homothety is a continuous linear map. Since the field 𝕜 need not have as a subfield, this theorem is not directly deducible from the corresponding theorem about isometries plus a theorem about scalar multiplication. Likewise for the other theorems about homotheties in this file.

Equations
theorem continuous_linear_map.to_span_singleton_homothety (𝕜 : Type u_1) {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] (x : E) (c : 𝕜) :
def continuous_linear_map.to_span_singleton (𝕜 : Type u_1) {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] (x : E) :
𝕜 →L[𝕜] E

Given an element x of a normed space E over a field 𝕜, the natural continuous linear map from 𝕜 to E by taking multiples of x.

Equations
theorem continuous_linear_map.to_span_singleton_apply (𝕜 : Type u_1) {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] (x : E) (r : 𝕜) :
theorem continuous_linear_map.to_span_singleton_smul' (𝕜 : Type u_1) {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] (𝕜' : Type u_2) [normed_field 𝕜'] [normed_space 𝕜' E] [smul_comm_class 𝕜 𝕜' E] (c : 𝕜') (x : E) :
def linear_isometry.to_span_singleton (𝕜 : Type u_1) (E : Type u_4) [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] {v : E} (hv : v = 1) :
𝕜 →ₗᵢ[𝕜] E

Given a unit-length element x of a normed space E over a field 𝕜, the natural linear isometry map from 𝕜 to E by taking multiples of x.

Equations
@[simp]
theorem linear_isometry.to_span_singleton_apply {𝕜 : Type u_1} {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] {v : E} (hv : v = 1) (a : 𝕜) :
@[simp]
noncomputable def continuous_linear_map.op_norm {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →SL[σ₁₂] F) :

The operator norm of a continuous linear map is the inf of all its bounds.

Equations
@[protected, instance]
noncomputable def continuous_linear_map.has_op_norm {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} :
has_norm (E →SL[σ₁₂] F)
Equations
theorem continuous_linear_map.norm_def {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →SL[σ₁₂] F) :
f = has_Inf.Inf {c : | 0 c ∀ (x : E), f x c * x}
theorem continuous_linear_map.bounds_nonempty {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] {f : E →SL[σ₁₂] F} :
∃ (c : ), c {c : | 0 c ∀ (x : E), f x c * x}
theorem continuous_linear_map.bounds_bdd_below {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {f : E →SL[σ₁₂] F} :
bdd_below {c : | 0 c ∀ (x : E), f x c * x}
theorem continuous_linear_map.op_norm_le_bound {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →SL[σ₁₂] F) {M : } (hMp : 0 M) (hM : ∀ (x : E), f x M * x) :

If one controls the norm of every A x, then one controls the norm of A.

theorem continuous_linear_map.op_norm_le_of_lipschitz {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {f : E →SL[σ₁₂] F} {K : nnreal} (hf : lipschitz_with K f) :
theorem continuous_linear_map.op_norm_eq_of_bounds {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {φ : E →SL[σ₁₂] F} {M : } (M_nonneg : 0 M) (h_above : ∀ (x : E), φ x M * x) (h_below : ∀ (N : ), N 0(∀ (x : E), φ x N * x)M N) :
φ = M
theorem continuous_linear_map.op_norm_neg {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →SL[σ₁₂] F) :
theorem continuous_linear_map.antilipschitz_of_bound {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →SL[σ₁₂] F) {K : nnreal} (h : ∀ (x : E), x K * f x) :
theorem continuous_linear_map.bound_of_antilipschitz {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →SL[σ₁₂] F) {K : nnreal} (h : antilipschitz_with K f) (x : E) :
theorem continuous_linear_map.op_norm_nonneg {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) :
theorem continuous_linear_map.le_op_norm {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) (x : E) :

The fundamental property of the operator norm: ∥f x∥ ≤ ∥f∥ * ∥x∥.

theorem continuous_linear_map.dist_le_op_norm {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) (x y : E) :
theorem continuous_linear_map.le_op_norm_of_le {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) {c : } {x : E} (h : x c) :
theorem continuous_linear_map.le_of_op_norm_le {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) {c : } (h : f c) (x : E) :
theorem continuous_linear_map.ratio_le_op_norm {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) (x : E) :
theorem continuous_linear_map.unit_le_op_norm {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) (x : E) :

The image of the unit ball under a continuous linear map is bounded.

theorem continuous_linear_map.op_norm_le_of_shell {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] {f : E →SL[σ₁₂] F} {ε C : } (ε_pos : 0 < ε) (hC : 0 C) {c : 𝕜} (hc : 1 < c) (hf : ∀ (x : E), ε / c xx < εf x C * x) :
theorem continuous_linear_map.op_norm_le_of_ball {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] {f : E →SL[σ₁₂] F} {ε C : } (ε_pos : 0 < ε) (hC : 0 C) (hf : ∀ (x : E), x metric.ball 0 εf x C * x) :
theorem continuous_linear_map.op_norm_le_of_nhds_zero {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] {f : E →SL[σ₁₂] F} {C : } (hC : 0 C) (hf : ∀ᶠ (x : E) in nhds 0, f x C * x) :
theorem continuous_linear_map.op_norm_le_of_shell' {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] {f : E →SL[σ₁₂] F} {ε C : } (ε_pos : 0 < ε) (hC : 0 C) {c : 𝕜} (hc : c < 1) (hf : ∀ (x : E), ε * c xx < εf x C * x) :
theorem continuous_linear_map.op_norm_add_le {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f g : E →SL[σ₁₂] F) :

The operator norm satisfies the triangle inequality.

theorem continuous_linear_map.op_norm_zero {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] :

The norm of the 0 operator is 0.

theorem continuous_linear_map.norm_id_le {𝕜 : Type u_1} {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] :

The norm of the identity is at most 1. It is in fact 1, except when the space is trivial where it is 0. It means that one can not do better than an inequality in general.

theorem continuous_linear_map.norm_id_of_nontrivial_seminorm {𝕜 : Type u_1} {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] (h : ∃ (x : E), x 0) :

If there is an element with norm different from 0, then the norm of the identity equals 1. (Since we are working with seminorms supposing that the space is non-trivial is not enough.)

theorem continuous_linear_map.op_norm_smul_le {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] {𝕜' : Type u_3} [normed_field 𝕜'] [normed_space 𝕜' F] [smul_comm_class 𝕜₂ 𝕜' F] (c : 𝕜') (f : E →SL[σ₁₂] F) :
@[protected, instance]
noncomputable def continuous_linear_map.to_semi_normed_group {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] :

Continuous linear maps themselves form a seminormed space with respect to the operator norm.

Equations
theorem continuous_linear_map.nnnorm_def {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) :
f∥₊ = has_Inf.Inf {c : nnreal | ∀ (x : E), f x∥₊ c * x∥₊}
theorem continuous_linear_map.op_nnnorm_le_bound {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) (M : nnreal) (hM : ∀ (x : E), f x∥₊ M * x∥₊) :

If one controls the norm of every A x, then one controls the norm of A.

theorem continuous_linear_map.op_nnnorm_le_of_lipschitz {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] {f : E →SL[σ₁₂] F} {K : nnreal} (hf : lipschitz_with K f) :
theorem continuous_linear_map.op_nnnorm_eq_of_bounds {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] {φ : E →SL[σ₁₂] F} (M : nnreal) (h_above : ∀ (x : E), φ x M * x) (h_below : ∀ (N : nnreal), (∀ (x : E), φ x∥₊ N * x∥₊)M N) :
@[protected, instance]
def continuous_linear_map.to_normed_space {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] {𝕜' : Type u_3} [normed_field 𝕜'] [normed_space 𝕜' F] [smul_comm_class 𝕜₂ 𝕜' F] :
normed_space 𝕜' (E →SL[σ₁₂] F)
Equations
theorem continuous_linear_map.op_norm_comp_le {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_comp_triple σ₁₂ σ₂₃ σ₁₃] [ring_hom_isometric σ₁₂] [ring_hom_isometric σ₂₃] (h : F →SL[σ₂₃] G) (f : E →SL[σ₁₂] F) :

The operator norm is submultiplicative.

theorem continuous_linear_map.op_nnnorm_comp_le {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_comp_triple σ₁₂ σ₂₃ σ₁₃] [ring_hom_isometric σ₁₂] [ring_hom_isometric σ₂₃] (h : F →SL[σ₂₃] G) [ring_hom_isometric σ₁₃] (f : E →SL[σ₁₂] F) :
@[protected, instance]
noncomputable def continuous_linear_map.to_semi_normed_ring {𝕜 : Type u_1} {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] :

Continuous linear maps form a seminormed ring with respect to the operator norm.

Equations
@[protected, instance]
noncomputable def continuous_linear_map.to_normed_algebra {𝕜 : Type u_1} {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] :
normed_algebra 𝕜 (E →L[𝕜] E)

For a normed space E, continuous linear endomorphisms form a normed algebra with respect to the operator norm.

Equations
theorem continuous_linear_map.le_op_nnnorm {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) (x : E) :
theorem continuous_linear_map.nndist_le_op_nnnorm {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) (x y : E) :
theorem continuous_linear_map.lipschitz {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) :

continuous linear maps are Lipschitz continuous.

theorem continuous_linear_map.lipschitz_apply {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (x : E) :
lipschitz_with x∥₊ (λ (f : E →SL[σ₁₂] F), f x)

Evaluation of a continuous linear map f at a point is Lipschitz continuous in f.

theorem continuous_linear_map.op_norm_ext {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₁₃] (f : E →SL[σ₁₂] F) (g : E →SL[σ₁₃] G) (h : ∀ (x : E), f x = g x) :
theorem continuous_linear_map.op_norm_le_bound₂ {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] (f : E →SL[σ₁₃] F →SL[σ₂₃] G) {C : } (h0 : 0 C) (hC : ∀ (x : E) (y : F), (f x) y C * x * y) :
theorem continuous_linear_map.le_op_norm₂ {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] (f : E →SL[σ₁₃] F →SL[σ₂₃] G) (x : E) (y : F) :
@[simp]
theorem continuous_linear_map.op_norm_prod {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} {Gₗ : Type u_9} [semi_normed_group E] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] (f : E →L[𝕜] Fₗ) (g : E →L[𝕜] Gₗ) :
f.prod g = (f, g)
@[simp]
theorem continuous_linear_map.op_nnnorm_prod {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} {Gₗ : Type u_9} [semi_normed_group E] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] (f : E →L[𝕜] Fₗ) (g : E →L[𝕜] Gₗ) :
def continuous_linear_map.prodₗᵢ {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} {Gₗ : Type u_9} [semi_normed_group E] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] (R : Type u_2) [semiring R] [module R Fₗ] [module R Gₗ] [has_continuous_const_smul R Fₗ] [has_continuous_const_smul R Gₗ] [smul_comm_class 𝕜 R Fₗ] [smul_comm_class 𝕜 R Gₗ] :
(E →L[𝕜] Fₗ) × (E →L[𝕜] Gₗ) ≃ₗᵢ[R] E →L[𝕜] Fₗ × Gₗ

continuous_linear_map.prod as a linear_isometry_equiv.

Equations
@[simp]
theorem continuous_linear_map.op_norm_subsingleton {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) [subsingleton E] :
theorem continuous_linear_map.is_O_with_id {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) (l : filter E) :
asymptotics.is_O_with f l f (λ (x : E), x)
theorem continuous_linear_map.is_O_id {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) (l : filter E) :
f =O[l] λ (x : E), x
theorem continuous_linear_map.is_O_with_comp {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {F : Type u_6} {G : Type u_8} [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} [ring_hom_isometric σ₂₃] {α : Type u_1} (g : F →SL[σ₂₃] G) (f : α → F) (l : filter α) :
asymptotics.is_O_with g l (λ (x' : α), g (f x')) f
theorem continuous_linear_map.is_O_comp {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {F : Type u_6} {G : Type u_8} [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} [ring_hom_isometric σ₂₃] {α : Type u_1} (g : F →SL[σ₂₃] G) (f : α → F) (l : filter α) :
(λ (x' : α), g (f x')) =O[l] f
theorem continuous_linear_map.is_O_with_sub {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) (l : filter E) (x : E) :
asymptotics.is_O_with f l (λ (x' : E), f (x' - x)) (λ (x' : E), x' - x)
theorem continuous_linear_map.is_O_sub {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →SL[σ₁₂] F) (l : filter E) (x : E) :
(λ (x' : E), f (x' - x)) =O[l] λ (x' : E), x' - x
theorem linear_isometry.norm_to_continuous_linear_map_le {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →ₛₗᵢ[σ₁₂] F) :
theorem linear_map.mk_continuous_norm_le {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →ₛₗ[σ₁₂] F) {C : } (hC : 0 C) (h : ∀ (x : E), f x C * x) :

If a continuous linear map is constructed from a linear map via the constructor mk_continuous, then its norm is bounded by the bound given to the constructor if it is nonnegative.

theorem linear_map.mk_continuous_norm_le' {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →ₛₗ[σ₁₂] F) {C : } (h : ∀ (x : E), f x C * x) :

If a continuous linear map is constructed from a linear map via the constructor mk_continuous, then its norm is bounded by the bound or zero if bound is negative.

noncomputable def linear_map.mk_continuous₂ {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] (f : E →ₛₗ[σ₁₃] F →ₛₗ[σ₂₃] G) (C : ) (hC : ∀ (x : E) (y : F), (f x) y C * x * y) :
E →SL[σ₁₃] F →SL[σ₂₃] G

Create a bilinear map (represented as a map E →L[𝕜] F →L[𝕜] G) from the corresponding linear map and a bound on the norm of the image. The linear map can be constructed using linear_map.mk₂.

Equations
@[simp]
theorem linear_map.mk_continuous₂_apply {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] (f : E →ₛₗ[σ₁₃] F →ₛₗ[σ₂₃] G) {C : } (hC : ∀ (x : E) (y : F), (f x) y C * x * y) (x : E) (y : F) :
((f.mk_continuous₂ C hC) x) y = (f x) y
theorem linear_map.mk_continuous₂_norm_le' {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] (f : E →ₛₗ[σ₁₃] F →ₛₗ[σ₂₃] G) {C : } (hC : ∀ (x : E) (y : F), (f x) y C * x * y) :
theorem linear_map.mk_continuous₂_norm_le {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] (f : E →ₛₗ[σ₁₃] F →ₛₗ[σ₂₃] G) {C : } (h0 : 0 C) (hC : ∀ (x : E) (y : F), (f x) y C * x * y) :
noncomputable def continuous_linear_map.flip {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] (f : E →SL[σ₁₃] F →SL[σ₂₃] G) :
F →SL[σ₂₃] E →SL[σ₁₃] G

Flip the order of arguments of a continuous bilinear map. For a version bundled as linear_isometry_equiv, see continuous_linear_map.flipL.

Equations
@[simp]
theorem continuous_linear_map.flip_apply {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] (f : E →SL[σ₁₃] F →SL[σ₂₃] G) (x : E) (y : F) :
((f.flip) y) x = (f x) y
@[simp]
theorem continuous_linear_map.flip_flip {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] (f : E →SL[σ₁₃] F →SL[σ₂₃] G) :
f.flip.flip = f
@[simp]
theorem continuous_linear_map.op_norm_flip {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] (f : E →SL[σ₁₃] F →SL[σ₂₃] G) :
@[simp]
theorem continuous_linear_map.flip_add {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] (f g : E →SL[σ₁₃] F →SL[σ₂₃] G) :
(f + g).flip = f.flip + g.flip
@[simp]
theorem continuous_linear_map.flip_smul {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] (c : 𝕜₃) (f : E →SL[σ₁₃] F →SL[σ₂₃] G) :
(c f).flip = c f.flip
noncomputable def continuous_linear_map.flipₗᵢ' {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} (E : Type u_4) (F : Type u_6) (G : Type u_8) [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] (σ₂₃ : 𝕜₂ →+* 𝕜₃) (σ₁₃ : 𝕜 →+* 𝕜₃) [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] :
(E →SL[σ₁₃] F →SL[σ₂₃] G) ≃ₗᵢ[𝕜₃] F →SL[σ₂₃] E →SL[σ₁₃] G

Flip the order of arguments of a continuous bilinear map. This is a version bundled as a linear_isometry_equiv. For an unbundled version see continuous_linear_map.flip.

Equations
@[simp]
theorem continuous_linear_map.flipₗᵢ'_symm {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] :
(continuous_linear_map.flipₗᵢ' E F G σ₂₃ σ₁₃).symm = continuous_linear_map.flipₗᵢ' F E G σ₁₃ σ₂₃
@[simp]
theorem continuous_linear_map.coe_flipₗᵢ' {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] :
noncomputable def continuous_linear_map.flipₗᵢ (𝕜 : Type u_1) (E : Type u_4) (Fₗ : Type u_7) (Gₗ : Type u_9) [semi_normed_group E] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] :
(E →L[𝕜] Fₗ →L[𝕜] Gₗ) ≃ₗᵢ[𝕜] Fₗ →L[𝕜] E →L[𝕜] Gₗ

Flip the order of arguments of a continuous bilinear map. This is a version bundled as a linear_isometry_equiv. For an unbundled version see continuous_linear_map.flip.

Equations
@[simp]
theorem continuous_linear_map.flipₗᵢ_symm {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} {Gₗ : Type u_9} [semi_normed_group E] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] :
@[simp]
theorem continuous_linear_map.coe_flipₗᵢ {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} {Gₗ : Type u_9} [semi_normed_group E] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] :
noncomputable def continuous_linear_map.apply' {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} (F : Type u_6) [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] (σ₁₂ : 𝕜 →+* 𝕜₂) [ring_hom_isometric σ₁₂] :
E →SL[σ₁₂] (E →SL[σ₁₂] F) →L[𝕜₂] F

The continuous semilinear map obtained by applying a continuous semilinear map at a given vector.

This is the continuous version of linear_map.applyₗ.

Equations
@[simp]
theorem continuous_linear_map.apply_apply' {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (v : E) (f : E →SL[σ₁₂] F) :
noncomputable def continuous_linear_map.apply (𝕜 : Type u_1) {E : Type u_4} (Fₗ : Type u_7) [semi_normed_group E] [semi_normed_group Fₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] :
E →L[𝕜] (E →L[𝕜] Fₗ) →L[𝕜] Fₗ

The continuous semilinear map obtained by applying a continuous semilinear map at a given vector.

This is the continuous version of linear_map.applyₗ.

Equations
@[simp]
theorem continuous_linear_map.apply_apply {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} [semi_normed_group E] [semi_normed_group Fₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] (v : E) (f : E →L[𝕜] Fₗ) :
noncomputable def continuous_linear_map.compSL {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} (E : Type u_4) (F : Type u_6) (G : Type u_8) [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] (σ₁₂ : 𝕜 →+* 𝕜₂) (σ₂₃ : 𝕜₂ →+* 𝕜₃) {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_comp_triple σ₁₂ σ₂₃ σ₁₃] [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] [ring_hom_isometric σ₁₂] :
(F →SL[σ₂₃] G) →L[𝕜₃] (E →SL[σ₁₂] F) →SL[σ₂₃] E →SL[σ₁₃] G

Composition of continuous semilinear maps as a continuous semibilinear map.

Equations
@[simp]
theorem continuous_linear_map.compSL_apply {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_comp_triple σ₁₂ σ₂₃ σ₁₃] [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] [ring_hom_isometric σ₁₂] (f : F →SL[σ₂₃] G) (g : E →SL[σ₁₂] F) :
((continuous_linear_map.compSL E F G σ₁₂ σ₂₃) f) g = f.comp g
theorem continuous.const_clm_comp {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_comp_triple σ₁₂ σ₂₃ σ₁₃] [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] [ring_hom_isometric σ₁₂] {X : Type u_5} [topological_space X] {f : X → (E →SL[σ₁₂] F)} (hf : continuous f) (g : F →SL[σ₂₃] G) :
continuous (λ (x : X), g.comp (f x))
theorem continuous.clm_comp_const {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} [ring_hom_comp_triple σ₁₂ σ₂₃ σ₁₃] [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃] [ring_hom_isometric σ₁₂] {X : Type u_5} [topological_space X] {g : X → (F →SL[σ₂₃] G)} (hg : continuous g) (f : E →SL[σ₁₂] F) :
continuous (λ (x : X), (g x).comp f)
noncomputable def continuous_linear_map.compL (𝕜 : Type u_1) (E : Type u_4) (Fₗ : Type u_7) (Gₗ : Type u_9) [semi_normed_group E] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] :
(Fₗ →L[𝕜] Gₗ) →L[𝕜] (E →L[𝕜] Fₗ) →L[𝕜] E →L[𝕜] Gₗ

Composition of continuous linear maps as a continuous bilinear map.

Equations
@[simp]
theorem continuous_linear_map.compL_apply (𝕜 : Type u_1) (E : Type u_4) (Fₗ : Type u_7) (Gₗ : Type u_9) [semi_normed_group E] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] (f : Fₗ →L[𝕜] Gₗ) (g : E →L[𝕜] Fₗ) :
((continuous_linear_map.compL 𝕜 E Fₗ Gₗ) f) g = f.comp g
noncomputable def continuous_linear_map.precompR {𝕜 : Type u_1} {E : Type u_4} (Eₗ : Type u_5) {Fₗ : Type u_7} {Gₗ : Type u_9} [semi_normed_group E] [semi_normed_group Eₗ] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Eₗ] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] (L : E →L[𝕜] Fₗ →L[𝕜] Gₗ) :
E →L[𝕜] (Eₗ →L[𝕜] Fₗ) →L[𝕜] Eₗ →L[𝕜] Gₗ

Apply L(x,-) pointwise to bilinear maps, as a continuous bilinear map

Equations
@[simp]
theorem continuous_linear_map.precompR_apply {𝕜 : Type u_1} {E : Type u_4} (Eₗ : Type u_5) {Fₗ : Type u_7} {Gₗ : Type u_9} [semi_normed_group E] [semi_normed_group Eₗ] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Eₗ] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] (L : E →L[𝕜] Fₗ →L[𝕜] Gₗ) (ᾰ : E) :
(continuous_linear_map.precompR Eₗ L) = (continuous_linear_map.compL 𝕜 Eₗ Fₗ Gₗ) (L ᾰ)
noncomputable def continuous_linear_map.precompL {𝕜 : Type u_1} {E : Type u_4} (Eₗ : Type u_5) {Fₗ : Type u_7} {Gₗ : Type u_9} [semi_normed_group E] [semi_normed_group Eₗ] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Eₗ] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] (L : E →L[𝕜] Fₗ →L[𝕜] Gₗ) :
(Eₗ →L[𝕜] E) →L[𝕜] Fₗ →L[𝕜] Eₗ →L[𝕜] Gₗ

Apply L(-,y) pointwise to bilinear maps, as a continuous bilinear map

Equations
noncomputable def continuous_linear_map.prod_mapL (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (M₁ : Type u₁) [semi_normed_group M₁] [normed_space 𝕜 M₁] (M₂ : Type u₂) [semi_normed_group M₂] [normed_space 𝕜 M₂] (M₃ : Type u₃) [semi_normed_group M₃] [normed_space 𝕜 M₃] (M₄ : Type u₄) [semi_normed_group M₄] [normed_space 𝕜 M₄] :
(M₁ →L[𝕜] M₂) × (M₃ →L[𝕜] M₄) →L[𝕜] M₁ × M₃ →L[𝕜] M₂ × M₄

continuous_linear_map.prod_map as a continuous linear map.

Equations
@[simp]
theorem continuous_linear_map.prod_mapL_apply (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] {M₁ : Type u₁} [semi_normed_group M₁] [normed_space 𝕜 M₁] {M₂ : Type u₂} [semi_normed_group M₂] [normed_space 𝕜 M₂] {M₃ : Type u₃} [semi_normed_group M₃] [normed_space 𝕜 M₃] {M₄ : Type u₄} [semi_normed_group M₄] [normed_space 𝕜 M₄] (p : (M₁ →L[𝕜] M₂) × (M₃ →L[𝕜] M₄)) :
(continuous_linear_map.prod_mapL 𝕜 M₁ M₂ M₃ M₄) p = p.fst.prod_map p.snd
theorem continuous.prod_mapL (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] {M₁ : Type u₁} [semi_normed_group M₁] [normed_space 𝕜 M₁] {M₂ : Type u₂} [semi_normed_group M₂] [normed_space 𝕜 M₂] {M₃ : Type u₃} [semi_normed_group M₃] [normed_space 𝕜 M₃] {M₄ : Type u₄} [semi_normed_group M₄] [normed_space 𝕜 M₄] {X : Type u_11} [topological_space X] {f : X → (M₁ →L[𝕜] M₂)} {g : X → (M₃ →L[𝕜] M₄)} (hf : continuous f) (hg : continuous g) :
continuous (λ (x : X), (f x).prod_map (g x))
theorem continuous.prod_map_equivL (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] {M₁ : Type u₁} [semi_normed_group M₁] [normed_space 𝕜 M₁] {M₂ : Type u₂} [semi_normed_group M₂] [normed_space 𝕜 M₂] {M₃ : Type u₃} [semi_normed_group M₃] [normed_space 𝕜 M₃] {M₄ : Type u₄} [semi_normed_group M₄] [normed_space 𝕜 M₄] {X : Type u_11} [topological_space X] {f : X → (M₁ ≃L[𝕜] M₂)} {g : X → (M₃ ≃L[𝕜] M₄)} (hf : continuous (λ (x : X), (f x))) (hg : continuous (λ (x : X), (g x))) :
continuous (λ (x : X), ((f x).prod (g x)))
theorem continuous_on.prod_mapL (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] {M₁ : Type u₁} [semi_normed_group M₁] [normed_space 𝕜 M₁] {M₂ : Type u₂} [semi_normed_group M₂] [normed_space 𝕜 M₂] {M₃ : Type u₃} [semi_normed_group M₃] [normed_space 𝕜 M₃] {M₄ : Type u₄} [semi_normed_group M₄] [normed_space 𝕜 M₄] {X : Type u_11} [topological_space X] {f : X → (M₁ →L[𝕜] M₂)} {g : X → (M₃ →L[𝕜] M₄)} {s : set X} (hf : continuous_on f s) (hg : continuous_on g s) :
continuous_on (λ (x : X), (f x).prod_map (g x)) s
theorem continuous_on.prod_map_equivL (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] {M₁ : Type u₁} [semi_normed_group M₁] [normed_space 𝕜 M₁] {M₂ : Type u₂} [semi_normed_group M₂] [normed_space 𝕜 M₂] {M₃ : Type u₃} [semi_normed_group M₃] [normed_space 𝕜 M₃] {M₄ : Type u₄} [semi_normed_group M₄] [normed_space 𝕜 M₄] {X : Type u_11} [topological_space X] {f : X → (M₁ ≃L[𝕜] M₂)} {g : X → (M₃ ≃L[𝕜] M₄)} {s : set X} (hf : continuous_on (λ (x : X), (f x)) s) (hg : continuous_on (λ (x : X), (g x)) s) :
continuous_on (λ (x : X), ((f x).prod (g x))) s
noncomputable def continuous_linear_map.lmul (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] :
𝕜' →L[𝕜] 𝕜' →L[𝕜] 𝕜'

Left multiplication in a normed algebra as a continuous bilinear map.

Equations
@[simp]
theorem continuous_linear_map.lmul_apply (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] (x y : 𝕜') :
((continuous_linear_map.lmul 𝕜 𝕜') x) y = x * y
@[simp]
theorem continuous_linear_map.op_norm_lmul_apply_le (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] (x : 𝕜') :
noncomputable def continuous_linear_map.lmulₗᵢ (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] [norm_one_class 𝕜'] :
𝕜' →ₗᵢ[𝕜] 𝕜' →L[𝕜] 𝕜'

Left multiplication in a normed algebra as a linear isometry to the space of continuous linear maps.

Equations
@[simp]
theorem continuous_linear_map.coe_lmulₗᵢ (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] [norm_one_class 𝕜'] :
@[simp]
theorem continuous_linear_map.op_norm_lmul_apply (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] [norm_one_class 𝕜'] (x : 𝕜') :
noncomputable def continuous_linear_map.lmul_right (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] :
𝕜' →L[𝕜] 𝕜' →L[𝕜] 𝕜'

Right-multiplication in a normed algebra, considered as a continuous linear map.

Equations
@[simp]
theorem continuous_linear_map.lmul_right_apply (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] (x y : 𝕜') :
@[simp]
theorem continuous_linear_map.op_norm_lmul_right_apply_le (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] (x : 𝕜') :
@[simp]
theorem continuous_linear_map.op_norm_lmul_right_apply (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] [norm_one_class 𝕜'] (x : 𝕜') :
noncomputable def continuous_linear_map.lmul_rightₗᵢ (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] [norm_one_class 𝕜'] :
𝕜' →ₗᵢ[𝕜] 𝕜' →L[𝕜] 𝕜'

Right-multiplication in a normed algebra, considered as a linear isometry to the space of continuous linear maps.

Equations
@[simp]
noncomputable def continuous_linear_map.lmul_left_right (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] :
𝕜' →L[𝕜] 𝕜' →L[𝕜] 𝕜' →L[𝕜] 𝕜'

Simultaneous left- and right-multiplication in a normed algebra, considered as a continuous trilinear map.

Equations
@[simp]
theorem continuous_linear_map.lmul_left_right_apply (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] (x y z : 𝕜') :
theorem continuous_linear_map.op_norm_lmul_left_right_apply_apply_le (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] (x y : 𝕜') :
theorem continuous_linear_map.op_norm_lmul_left_right_apply_le (𝕜 : Type u_1) [nondiscrete_normed_field 𝕜] (𝕜' : Type u_11) [normed_ring 𝕜'] [normed_algebra 𝕜 𝕜'] (x : 𝕜') :
noncomputable def continuous_linear_map.lsmul (𝕜 : Type u_1) {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] (𝕜' : Type u_11) [normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] :
𝕜' →L[𝕜] E →L[𝕜] E

Scalar multiplication as a continuous bilinear map.

Equations
@[simp]
theorem continuous_linear_map.lsmul_apply (𝕜 : Type u_1) {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] (𝕜' : Type u_11) [normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] (c : 𝕜') (x : E) :
((continuous_linear_map.lsmul 𝕜 𝕜') c) x = c x
theorem continuous_linear_map.op_norm_lsmul_apply_le {𝕜 : Type u_1} {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] {𝕜' : Type u_11} [normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] (x : 𝕜') :
theorem continuous_linear_map.op_norm_lsmul_le {𝕜 : Type u_1} {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] {𝕜' : Type u_11} [normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] :

The norm of lsmul is at most 1 in any semi-normed group.

@[simp]
theorem continuous_linear_map.norm_restrict_scalars {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} [semi_normed_group E] [semi_normed_group Fₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] {𝕜' : Type u_11} [nondiscrete_normed_field 𝕜'] [normed_algebra 𝕜' 𝕜] [normed_space 𝕜' E] [is_scalar_tower 𝕜' 𝕜 E] [normed_space 𝕜' Fₗ] [is_scalar_tower 𝕜' 𝕜 Fₗ] (f : E →L[𝕜] Fₗ) :
def continuous_linear_map.restrict_scalars_isometry (𝕜 : Type u_1) (E : Type u_4) (Fₗ : Type u_7) [semi_normed_group E] [semi_normed_group Fₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] (𝕜' : Type u_11) [nondiscrete_normed_field 𝕜'] [normed_algebra 𝕜' 𝕜] [normed_space 𝕜' E] [is_scalar_tower 𝕜' 𝕜 E] [normed_space 𝕜' Fₗ] [is_scalar_tower 𝕜' 𝕜 Fₗ] (𝕜'' : Type u_12) [ring 𝕜''] [module 𝕜'' Fₗ] [has_continuous_const_smul 𝕜'' Fₗ] [smul_comm_class 𝕜 𝕜'' Fₗ] [smul_comm_class 𝕜' 𝕜'' Fₗ] :
(E →L[𝕜] Fₗ) →ₗᵢ[𝕜''] E →L[𝕜'] Fₗ

continuous_linear_map.restrict_scalars as a linear_isometry.

Equations
@[simp]
theorem continuous_linear_map.coe_restrict_scalars_isometry {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} [semi_normed_group E] [semi_normed_group Fₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] {𝕜' : Type u_11} [nondiscrete_normed_field 𝕜'] [normed_algebra 𝕜' 𝕜] [normed_space 𝕜' E] [is_scalar_tower 𝕜' 𝕜 E] [normed_space 𝕜' Fₗ] [is_scalar_tower 𝕜' 𝕜 Fₗ] {𝕜'' : Type u_12} [ring 𝕜''] [module 𝕜'' Fₗ] [has_continuous_const_smul 𝕜'' Fₗ] [smul_comm_class 𝕜 𝕜'' Fₗ] [smul_comm_class 𝕜' 𝕜'' Fₗ] :
@[simp]
theorem continuous_linear_map.restrict_scalars_isometry_to_linear_map {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} [semi_normed_group E] [semi_normed_group Fₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] {𝕜' : Type u_11} [nondiscrete_normed_field 𝕜'] [normed_algebra 𝕜' 𝕜] [normed_space 𝕜' E] [is_scalar_tower 𝕜' 𝕜 E] [normed_space 𝕜' Fₗ] [is_scalar_tower 𝕜' 𝕜 Fₗ] {𝕜'' : Type u_12} [ring 𝕜''] [module 𝕜'' Fₗ] [has_continuous_const_smul 𝕜'' Fₗ] [smul_comm_class 𝕜 𝕜'' Fₗ] [smul_comm_class 𝕜' 𝕜'' Fₗ] :
noncomputable def continuous_linear_map.restrict_scalarsL (𝕜 : Type u_1) (E : Type u_4) (Fₗ : Type u_7) [semi_normed_group E] [semi_normed_group Fₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] (𝕜' : Type u_11) [nondiscrete_normed_field 𝕜'] [normed_algebra 𝕜' 𝕜] [normed_space 𝕜' E] [is_scalar_tower 𝕜' 𝕜 E] [normed_space 𝕜' Fₗ] [is_scalar_tower 𝕜' 𝕜 Fₗ] (𝕜'' : Type u_12) [ring 𝕜''] [module 𝕜'' Fₗ] [has_continuous_const_smul 𝕜'' Fₗ] [smul_comm_class 𝕜 𝕜'' Fₗ] [smul_comm_class 𝕜' 𝕜'' Fₗ] :
(E →L[𝕜] Fₗ) →L[𝕜''] E →L[𝕜'] Fₗ

continuous_linear_map.restrict_scalars as a continuous_linear_map.

Equations
@[simp]
theorem continuous_linear_map.coe_restrict_scalarsL {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} [semi_normed_group E] [semi_normed_group Fₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] {𝕜' : Type u_11} [nondiscrete_normed_field 𝕜'] [normed_algebra 𝕜' 𝕜] [normed_space 𝕜' E] [is_scalar_tower 𝕜' 𝕜 E] [normed_space 𝕜' Fₗ] [is_scalar_tower 𝕜' 𝕜 Fₗ] {𝕜'' : Type u_12} [ring 𝕜''] [module 𝕜'' Fₗ] [has_continuous_const_smul 𝕜'' Fₗ] [smul_comm_class 𝕜 𝕜'' Fₗ] [smul_comm_class 𝕜' 𝕜'' Fₗ] :
@[simp]
theorem continuous_linear_map.coe_restrict_scalarsL' {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} [semi_normed_group E] [semi_normed_group Fₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] {𝕜' : Type u_11} [nondiscrete_normed_field 𝕜'] [normed_algebra 𝕜' 𝕜] [normed_space 𝕜' E] [is_scalar_tower 𝕜' 𝕜 E] [normed_space 𝕜' Fₗ] [is_scalar_tower 𝕜' 𝕜 Fₗ] {𝕜'' : Type u_12} [ring 𝕜''] [module 𝕜'' Fₗ] [has_continuous_const_smul 𝕜'' Fₗ] [smul_comm_class 𝕜 𝕜'' Fₗ] [smul_comm_class 𝕜' 𝕜'' Fₗ] :
theorem submodule.norm_subtypeL_le {𝕜 : Type u_1} {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] (K : submodule 𝕜 E) :
@[protected]
theorem continuous_linear_map.has_sum {ι : Type u_11} {R : Type u_12} {R₂ : Type u_13} {M : Type u_14} {M₂ : Type u_15} [semiring R] [semiring R₂] [add_comm_monoid M] [module R M] [add_comm_monoid M₂] [module R₂ M₂] [topological_space M] [topological_space M₂] {σ : R →+* R₂} {f : ι → M} (φ : M →SL[σ] M₂) {x : M} (hf : has_sum f x) :
has_sum (λ (b : ι), φ (f b)) (φ x)

Applying a continuous linear map commutes with taking an (infinite) sum.

theorem has_sum.mapL {ι : Type u_11} {R : Type u_12} {R₂ : Type u_13} {M : Type u_14} {M₂ : Type u_15} [semiring R] [semiring R₂] [add_comm_monoid M] [module R M] [add_comm_monoid M₂] [module R₂ M₂] [topological_space M] [topological_space M₂] {σ : R →+* R₂} {f : ι → M} (φ : M →SL[σ] M₂) {x : M} (hf : has_sum f x) :
has_sum (λ (b : ι), φ (f b)) (φ x)

Alias of continuous_linear_map.has_sum.

@[protected]
theorem continuous_linear_map.summable {ι : Type u_11} {R : Type u_12} {R₂ : Type u_13} {M : Type u_14} {M₂ : Type u_15} [semiring R] [semiring R₂] [add_comm_monoid M] [module R M] [add_comm_monoid M₂] [module R₂ M₂] [topological_space M] [topological_space M₂] {σ : R →+* R₂} {f : ι → M} (φ : M →SL[σ] M₂) (hf : summable f) :
summable (λ (b : ι), φ (f b))
theorem summable.mapL {ι : Type u_11} {R : Type u_12} {R₂ : Type u_13} {M : Type u_14} {M₂ : Type u_15} [semiring R] [semiring R₂] [add_comm_monoid M] [module R M] [add_comm_monoid M₂] [module R₂ M₂] [topological_space M] [topological_space M₂] {σ : R →+* R₂} {f : ι → M} (φ : M →SL[σ] M₂) (hf : summable f) :
summable (λ (b : ι), φ (f b))

Alias of continuous_linear_map.summable.

@[protected]
theorem continuous_linear_map.map_tsum {ι : Type u_11} {R : Type u_12} {R₂ : Type u_13} {M : Type u_14} {M₂ : Type u_15} [semiring R] [semiring R₂] [add_comm_monoid M] [module R M] [add_comm_monoid M₂] [module R₂ M₂] [topological_space M] [topological_space M₂] {σ : R →+* R₂} [t2_space M₂] {f : ι → M} (φ : M →SL[σ] M₂) (hf : summable f) :
φ (∑' (z : ι), f z) = ∑' (z : ι), φ (f z)
@[protected]
theorem continuous_linear_equiv.has_sum {ι : Type u_11} {R : Type u_12} {R₂ : Type u_13} {M : Type u_14} {M₂ : Type u_15} [semiring R] [semiring R₂] [add_comm_monoid M] [module R M] [add_comm_monoid M₂] [module R₂ M₂] [topological_space M] [topological_space M₂] {σ : R →+* R₂} {σ' : R₂ →+* R} [ring_hom_inv_pair σ σ'] [ring_hom_inv_pair σ' σ] {f : ι → M} (e : M ≃SL[σ] M₂) {y : M₂} :
has_sum (λ (b : ι), e (f b)) y has_sum f ((e.symm) y)

Applying a continuous linear map commutes with taking an (infinite) sum.

@[protected]
theorem continuous_linear_equiv.summable {ι : Type u_11} {R : Type u_12} {R₂ : Type u_13} {M : Type u_14} {M₂ : Type u_15} [semiring R] [semiring R₂] [add_comm_monoid M] [module R M] [add_comm_monoid M₂] [module R₂ M₂] [topological_space M] [topological_space M₂] {σ : R →+* R₂} {σ' : R₂ →+* R} [ring_hom_inv_pair σ σ'] [ring_hom_inv_pair σ' σ] {f : ι → M} (e : M ≃SL[σ] M₂) :
summable (λ (b : ι), e (f b)) summable f
theorem continuous_linear_equiv.tsum_eq_iff {ι : Type u_11} {R : Type u_12} {R₂ : Type u_13} {M : Type u_14} {M₂ : Type u_15} [semiring R] [semiring R₂] [add_comm_monoid M] [module R M] [add_comm_monoid M₂] [module R₂ M₂] [topological_space M] [topological_space M₂] {σ : R →+* R₂} {σ' : R₂ →+* R} [ring_hom_inv_pair σ σ'] [ring_hom_inv_pair σ' σ] [t2_space M] [t2_space M₂] {f : ι → M} (e : M ≃SL[σ] M₂) {y : M₂} :
∑' (z : ι), e (f z) = y ∑' (z : ι), f z = (e.symm) y
@[protected]
theorem continuous_linear_equiv.map_tsum {ι : Type u_11} {R : Type u_12} {R₂ : Type u_13} {M : Type u_14} {M₂ : Type u_15} [semiring R] [semiring R₂] [add_comm_monoid M] [module R M] [add_comm_monoid M₂] [module R₂ M₂] [topological_space M] [topological_space M₂] {σ : R →+* R₂} {σ' : R₂ →+* R} [ring_hom_inv_pair σ σ'] [ring_hom_inv_pair σ' σ] [t2_space M] [t2_space M₂] {f : ι → M} (e : M ≃SL[σ] M₂) :
e (∑' (z : ι), f z) = ∑' (z : ι), e (f z)
@[protected]
theorem continuous_linear_equiv.lipschitz {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₁ : 𝕜₂ →+* 𝕜} [ring_hom_inv_pair σ₁₂ σ₂₁] [ring_hom_inv_pair σ₂₁ σ₁₂] [ring_hom_isometric σ₁₂] (e : E ≃SL[σ₁₂] F) :
theorem continuous_linear_equiv.is_O_comp {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₁ : 𝕜₂ →+* 𝕜} [ring_hom_inv_pair σ₁₂ σ₂₁] [ring_hom_inv_pair σ₂₁ σ₁₂] [ring_hom_isometric σ₁₂] (e : E ≃SL[σ₁₂] F) {α : Type u_3} (f : α → E) (l : filter α) :
(λ (x' : α), e (f x')) =O[l] f
theorem continuous_linear_equiv.is_O_sub {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₁ : 𝕜₂ →+* 𝕜} [ring_hom_inv_pair σ₁₂ σ₂₁] [ring_hom_inv_pair σ₂₁ σ₁₂] [ring_hom_isometric σ₁₂] (e : E ≃SL[σ₁₂] F) (l : filter E) (x : E) :
(λ (x' : E), e (x' - x)) =O[l] λ (x' : E), x' - x
theorem continuous_linear_equiv.homothety_inverse {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₁ : 𝕜₂ →+* 𝕜} [ring_hom_inv_pair σ₁₂ σ₂₁] [ring_hom_inv_pair σ₂₁ σ₁₂] (a : ) (ha : 0 < a) (f : E ≃ₛₗ[σ₁₂] F) :
(∀ (x : E), f x = a * x)∀ (y : F), (f.symm) y = a⁻¹ * y
def continuous_linear_equiv.of_homothety {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₁ : 𝕜₂ →+* 𝕜} [ring_hom_inv_pair σ₁₂ σ₂₁] [ring_hom_inv_pair σ₂₁ σ₁₂] (f : E ≃ₛₗ[σ₁₂] F) (a : ) (ha : 0 < a) (hf : ∀ (x : E), f x = a * x) :
E ≃SL[σ₁₂] F

A linear equivalence which is a homothety is a continuous linear equivalence.

Equations
theorem continuous_linear_equiv.is_O_comp_rev {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₁ : 𝕜₂ →+* 𝕜} [ring_hom_inv_pair σ₁₂ σ₂₁] [ring_hom_inv_pair σ₂₁ σ₁₂] [ring_hom_isometric σ₂₁] (e : E ≃SL[σ₁₂] F) {α : Type u_3} (f : α → E) (l : filter α) :
f =O[l] λ (x' : α), e (f x')
theorem continuous_linear_equiv.is_O_sub_rev {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₁ : 𝕜₂ →+* 𝕜} [ring_hom_inv_pair σ₁₂ σ₂₁] [ring_hom_inv_pair σ₂₁ σ₁₂] [ring_hom_isometric σ₂₁] (e : E ≃SL[σ₁₂] F) (l : filter E) (x : E) :
(λ (x' : E), x' - x) =O[l] λ (x' : E), e (x' - x)
theorem continuous_linear_equiv.to_span_nonzero_singleton_homothety (𝕜 : Type u_1) {E : Type u_4} [semi_normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] (x : E) (h : x 0) (c : 𝕜) :
def linear_equiv.to_continuous_linear_equiv_of_bounds {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [semi_normed_group E] [semi_normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₁ : 𝕜₂ →+* 𝕜} [ring_hom_inv_pair σ₁₂ σ₂₁] [ring_hom_inv_pair σ₂₁ σ₁₂] (e : E ≃ₛₗ[σ₁₂] F) (C_to C_inv : ) (h_to : ∀ (x : E), e x C_to * x) (h_inv : ∀ (x : F), (e.symm) x C_inv * x) :
E ≃SL[σ₁₂] F

Construct a continuous linear equivalence from a linear equivalence together with bounds in both directions.

Equations
noncomputable def continuous_linear_map.bilinear_comp {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} {E' : Type u_11} {F' : Type u_12} [semi_normed_group E'] [semi_normed_group F'] {𝕜₁' : Type u_13} {𝕜₂' : Type u_14} [nondiscrete_normed_field 𝕜₁'] [nondiscrete_normed_field 𝕜₂'] [normed_space 𝕜₁' E'] [normed_space 𝕜₂' F'] {σ₁' : 𝕜₁' →+* 𝕜} {σ₁₃' : 𝕜₁' →+* 𝕜₃} {σ₂' : 𝕜₂' →+* 𝕜₂} {σ₂₃' : 𝕜₂' →+* 𝕜₃} [ring_hom_comp_triple σ₁' σ₁₃ σ₁₃'] [ring_hom_comp_triple σ₂' σ₂₃ σ₂₃'] [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃'] [ring_hom_isometric σ₂₃'] (f : E →SL[σ₁₃] F →SL[σ₂₃] G) (gE : E' →SL[σ₁'] E) (gF : F' →SL[σ₂'] F) :
E' →SL[σ₁₃'] F' →SL[σ₂₃'] G

Compose a bilinear map E →SL[σ₁₃] F →SL[σ₂₃] G with two linear maps E' →SL[σ₁'] E and F' →SL[σ₂'] F.

Equations
@[simp]
theorem continuous_linear_map.bilinear_comp_apply {𝕜 : Type u_1} {𝕜₂ : Type u_2} {𝕜₃ : Type u_3} {E : Type u_4} {F : Type u_6} {G : Type u_8} [semi_normed_group E] [semi_normed_group F] [semi_normed_group G] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [nondiscrete_normed_field 𝕜₃] [normed_space 𝕜 E] [normed_space 𝕜₂ F] [normed_space 𝕜₃ G] {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃} {E' : Type u_11} {F' : Type u_12} [semi_normed_group E'] [semi_normed_group F'] {𝕜₁' : Type u_13} {𝕜₂' : Type u_14} [nondiscrete_normed_field 𝕜₁'] [nondiscrete_normed_field 𝕜₂'] [normed_space 𝕜₁' E'] [normed_space 𝕜₂' F'] {σ₁' : 𝕜₁' →+* 𝕜} {σ₁₃' : 𝕜₁' →+* 𝕜₃} {σ₂' : 𝕜₂' →+* 𝕜₂} {σ₂₃' : 𝕜₂' →+* 𝕜₃} [ring_hom_comp_triple σ₁' σ₁₃ σ₁₃'] [ring_hom_comp_triple σ₂' σ₂₃ σ₂₃'] [ring_hom_isometric σ₂₃] [ring_hom_isometric σ₁₃'] [ring_hom_isometric σ₂₃'] (f : E →SL[σ₁₃] F →SL[σ₂₃] G) (gE : E' →SL[σ₁'] E) (gF : F' →SL[σ₂'] F) (x : E') (y : F') :
((f.bilinear_comp gE gF) x) y = (f (gE x)) (gF y)
noncomputable def continuous_linear_map.deriv₂ {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} {Gₗ : Type u_9} [semi_normed_group E] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] (f : E →L[𝕜] Fₗ →L[𝕜] Gₗ) :
E × Fₗ →L[𝕜] E × Fₗ →L[𝕜] Gₗ

Derivative of a continuous bilinear map f : E →L[𝕜] F →L[𝕜] G interpreted as a map E × F → G at point p : E × F evaluated at q : E × F, as a continuous bilinear map.

Equations
@[simp]
theorem continuous_linear_map.coe_deriv₂ {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} {Gₗ : Type u_9} [semi_normed_group E] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] (f : E →L[𝕜] Fₗ →L[𝕜] Gₗ) (p : E × Fₗ) :
((f.deriv₂) p) = λ (q : E × Fₗ), (f p.fst) q.snd + (f q.fst) p.snd
theorem continuous_linear_map.map_add_add {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} {Gₗ : Type u_9} [semi_normed_group E] [semi_normed_group Fₗ] [semi_normed_group Gₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] [normed_space 𝕜 Gₗ] (f : E →L[𝕜] Fₗ →L[𝕜] Gₗ) (x x' : E) (y y' : Fₗ) :
(f (x + x')) (y + y') = (f x) y + ((f.deriv₂) (x, y)) (x', y') + (f x') y'
theorem linear_map.bound_of_shell {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [normed_group E] [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] (f : E →ₛₗ[σ₁₂] F) {ε C : } (ε_pos : 0 < ε) {c : 𝕜} (hc : 1 < c) (hf : ∀ (x : E), ε / c xx < εf x C * x) (x : E) :
theorem linear_map.bound_of_ball_bound {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} [normed_group E] [normed_group Fₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] {r : } (r_pos : 0 < r) (c : ) (f : E →ₗ[𝕜] Fₗ) (h : ∀ (z : E), z metric.ball 0 rf z c) :
∃ (C : ), ∀ (z : E), f z C * z

linear_map.bound_of_ball_bound' is a version of this lemma over a field satisfying is_R_or_C that produces a concrete bound.

theorem continuous_linear_map.op_norm_zero_iff {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [normed_group E] [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →SL[σ₁₂] F) [ring_hom_isometric σ₁₂] :
f = 0 f = 0

An operator is zero iff its norm vanishes.

@[simp]
theorem continuous_linear_map.norm_id {𝕜 : Type u_1} {E : Type u_4} [normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [nontrivial E] :

If a normed space is non-trivial, then the norm of the identity equals 1.

@[protected, instance]
def continuous_linear_map.norm_one_class {𝕜 : Type u_1} {E : Type u_4} [normed_group E] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [nontrivial E] :
@[protected, instance]
noncomputable def continuous_linear_map.to_normed_group {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [normed_group E] [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] :
normed_group (E →SL[σ₁₂] F)

Continuous linear maps themselves form a normed space with respect to the operator norm.

Equations
theorem continuous_linear_map.homothety_norm {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [normed_group E] [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} [ring_hom_isometric σ₁₂] [nontrivial E] (f : E →SL[σ₁₂] F) {a : } (hf : ∀ (x : E), f x = a * x) :
theorem continuous_linear_map.uniform_embedding_of_bound {𝕜 : Type u_1} {𝕜₂ : Type u_2} {E : Type u_4} {F : Type u_6} [normed_group E] [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜 E] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} (f : E →SL[σ₁₂] F) {K : nnreal} (hf : ∀ (x : E), x K * f x) :
theorem continuous_linear_map.antilipschitz_of_uniform_embedding {𝕜 : Type u_1} {E : Type u_4} {Fₗ : Type u_7} [normed_group E] [normed_group Fₗ] [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 Fₗ] (f : E →L[𝕜] Fₗ) (hf : uniform_embedding f) :

If a continuous linear map is a uniform embedding, then it is expands the distances by a positive factor.

def continuous_linear_map.of_mem_closure_image_coe_bounded {𝕜 : Type u_1} {𝕜₂ : Type u_2} {F : Type u_6} [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {E' : Type u_11} [semi_normed_group E'] [normed_space 𝕜 E'] [ring_hom_isometric σ₁₂] (f : E' → F) {s : set (E' →SL[σ₁₂] F)} (hs : metric.bounded s) (hf : f closure (coe_fn '' s)) :
E' →SL[σ₁₂] F

Construct a bundled continuous (semi)linear map from a map f : E → F and a proof of the fact that it belongs to the closure of the image of a bounded set s : set (E →SL[σ₁₂] F) under coercion to function. Coercion to function of the result is definitionally equal to f.

Equations
@[simp]
theorem continuous_linear_map.of_mem_closure_image_coe_bounded_apply {𝕜 : Type u_1} {𝕜₂ : Type u_2} {F : Type u_6} [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {E' : Type u_11} [semi_normed_group E'] [normed_space 𝕜 E'] [ring_hom_isometric σ₁₂] (f : E' → F) {s : set (E' →SL[σ₁₂] F)} (hs : metric.bounded s) (hf : f closure (coe_fn '' s)) :
def continuous_linear_map.of_tendsto_of_bounded_range {𝕜 : Type u_1} {𝕜₂ : Type u_2} {F : Type u_6} [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {E' : Type u_11} [semi_normed_group E'] [normed_space 𝕜 E'] [ring_hom_isometric σ₁₂] {α : Type u_3} {l : filter α} [l.ne_bot] (f : E' → F) (g : α → (E' →SL[σ₁₂] F)) (hf : filter.tendsto (λ (a : α) (x : E'), (g a) x) l (nhds f)) (hg : metric.bounded (set.range g)) :
E' →SL[σ₁₂] F

Let f : E → F be a map, let g : α → E →SL[σ₁₂] F be a family of continuous (semi)linear maps that takes values in a bounded set and converges to f pointwise along a nontrivial filter. Then f is a continuous (semi)linear map.

Equations
@[simp]
theorem continuous_linear_map.of_tendsto_of_bounded_range_apply {𝕜 : Type u_1} {𝕜₂ : Type u_2} {F : Type u_6} [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {E' : Type u_11} [semi_normed_group E'] [normed_space 𝕜 E'] [ring_hom_isometric σ₁₂] {α : Type u_3} {l : filter α} [l.ne_bot] (f : E' → F) (g : α → (E' →SL[σ₁₂] F)) (hf : filter.tendsto (λ (a : α) (x : E'), (g a) x) l (nhds f)) (hg : metric.bounded (set.range g)) :
theorem continuous_linear_map.tendsto_of_tendsto_pointwise_of_cauchy_seq {𝕜 : Type u_1} {𝕜₂ : Type u_2} {F : Type u_6} [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {E' : Type u_11} [semi_normed_group E'] [normed_space 𝕜 E'] [ring_hom_isometric σ₁₂] {f : (E' →SL[σ₁₂] F)} {g : E' →SL[σ₁₂] F} (hg : filter.tendsto (λ (n : ) (x : E'), (f n) x) filter.at_top (nhds g)) (hf : cauchy_seq f) :

If a Cauchy sequence of continuous linear map converges to a continuous linear map pointwise, then it converges to the same map in norm. This lemma is used to prove that the space of continuous linear maps is complete provided that the codomain is a complete space.

@[protected, instance]
def continuous_linear_map.complete_space {𝕜 : Type u_1} {𝕜₂ : Type u_2} {F : Type u_6} [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {E' : Type u_11} [semi_normed_group E'] [normed_space 𝕜 E'] [ring_hom_isometric σ₁₂] [complete_space F] :
complete_space (E' →SL[σ₁₂] F)

If the target space is complete, the space of continuous linear maps with its norm is also complete. This works also if the source space is seminormed.

theorem continuous_linear_map.is_compact_closure_image_coe_of_bounded {𝕜 : Type u_1} {𝕜₂ : Type u_2} {F : Type u_6} [normed_group F] [nondiscrete_normed_field 𝕜] [nondiscrete_normed_field 𝕜₂] [normed_space 𝕜₂ F] {σ₁₂ : 𝕜 →+* 𝕜₂} {E' : Type u_11} [semi_normed_group E'] [normed_space 𝕜 E'] [ring_hom_isometric σ₁₂] [proper_space F] {s : set (E' →SL[σ₁₂] F)} (hb : metric.bo