@@ -275,6 +275,10 @@ protected theorem hasBasis_nhds_zero [TopologicalSpace F] [TopologicalAddGroup F
275
275
fun SV => { f : E →SL[σ] F | ∀ x ∈ SV.1 , f x ∈ SV.2 } :=
276
276
ContinuousLinearMap.hasBasis_nhds_zero_of_basis (𝓝 0 ).basis_sets
277
277
278
+ theorem uniformEmbedding_toUniformOnFun [UniformSpace F] [UniformAddGroup F] :
279
+ UniformEmbedding fun f : E →SL[σ] F ↦ UniformOnFun.ofFun {s | Bornology.IsVonNBounded 𝕜₁ s} f :=
280
+ UniformConvergenceCLM.uniformEmbedding_coeFn ..
281
+
278
282
instance uniformContinuousConstSMul
279
283
{M : Type *} [Monoid M] [DistribMulAction M F] [SMulCommClass 𝕜₂ M F]
280
284
[UniformSpace F] [UniformAddGroup F] [UniformContinuousConstSMul M F] :
@@ -345,6 +349,66 @@ def toLinearMap₂ (L : E →L[𝕜] F →L[𝕜] G) : E →ₗ[𝕜] F →ₗ[
345
349
346
350
end BilinearMaps
347
351
352
+ section RestrictScalars
353
+
354
+ variable {𝕜 : Type *} [NontriviallyNormedField 𝕜]
355
+ {E : Type *} [AddCommGroup E] [TopologicalSpace E] [Module 𝕜 E] [ContinuousSMul 𝕜 E]
356
+ {F : Type *} [AddCommGroup F]
357
+
358
+ section UniformSpace
359
+
360
+ variable [UniformSpace F] [UniformAddGroup F] [Module 𝕜 F]
361
+ (𝕜' : Type *) [NontriviallyNormedField 𝕜'] [NormedAlgebra 𝕜' 𝕜]
362
+ [Module 𝕜' E] [IsScalarTower 𝕜' 𝕜 E] [Module 𝕜' F] [IsScalarTower 𝕜' 𝕜 F]
363
+
364
+ theorem uniformEmbedding_restrictScalars :
365
+ UniformEmbedding (restrictScalars 𝕜' : (E →L[𝕜] F) → (E →L[𝕜'] F)) := by
366
+ rw [← uniformEmbedding_toUniformOnFun.of_comp_iff]
367
+ convert uniformEmbedding_toUniformOnFun using 4 with s
368
+ exact ⟨fun h ↦ h.extend_scalars _, fun h ↦ h.restrict_scalars _⟩
369
+
370
+ theorem uniformContinuous_restrictScalars :
371
+ UniformContinuous (restrictScalars 𝕜' : (E →L[𝕜] F) → (E →L[𝕜'] F)) :=
372
+ (uniformEmbedding_restrictScalars 𝕜').uniformContinuous
373
+
374
+ end UniformSpace
375
+
376
+ variable [TopologicalSpace F] [TopologicalAddGroup F] [Module 𝕜 F]
377
+ (𝕜' : Type *) [NontriviallyNormedField 𝕜'] [NormedAlgebra 𝕜' 𝕜]
378
+ [Module 𝕜' E] [IsScalarTower 𝕜' 𝕜 E] [Module 𝕜' F] [IsScalarTower 𝕜' 𝕜 F]
379
+
380
+ theorem embedding_restrictScalars :
381
+ Embedding (restrictScalars 𝕜' : (E →L[𝕜] F) → (E →L[𝕜'] F)) :=
382
+ letI : UniformSpace F := TopologicalAddGroup.toUniformSpace F
383
+ haveI : UniformAddGroup F := comm_topologicalAddGroup_is_uniform
384
+ (uniformEmbedding_restrictScalars _).embedding
385
+
386
+ @[continuity, fun_prop]
387
+ theorem continuous_restrictScalars :
388
+ Continuous (restrictScalars 𝕜' : (E →L[𝕜] F) → (E →L[𝕜'] F)) :=
389
+ (embedding_restrictScalars _).continuous
390
+
391
+ variable (𝕜 E F)
392
+ variable (𝕜'' : Type *) [Ring 𝕜'']
393
+ [Module 𝕜'' F] [ContinuousConstSMul 𝕜'' F] [SMulCommClass 𝕜 𝕜'' F] [SMulCommClass 𝕜' 𝕜'' F]
394
+
395
+ /-- `ContinuousLinearMap.restrictScalars` as a `ContinuousLinearMap`. -/
396
+ def restrictScalarsL : (E →L[𝕜] F) →L[𝕜''] E →L[𝕜'] F :=
397
+ .mk <| restrictScalarsₗ 𝕜 E F 𝕜' 𝕜''
398
+
399
+ variable {𝕜 E F 𝕜' 𝕜''}
400
+
401
+ @[simp]
402
+ theorem coe_restrictScalarsL : (restrictScalarsL 𝕜 E F 𝕜' 𝕜'' : (E →L[𝕜] F) →ₗ[𝕜''] E →L[𝕜'] F) =
403
+ restrictScalarsₗ 𝕜 E F 𝕜' 𝕜'' :=
404
+ rfl
405
+
406
+ @[simp]
407
+ theorem coe_restrict_scalarsL' : ⇑(restrictScalarsL 𝕜 E F 𝕜' 𝕜'') = restrictScalars 𝕜' :=
408
+ rfl
409
+
410
+ end RestrictScalars
411
+
348
412
end ContinuousLinearMap
349
413
350
414
open ContinuousLinearMap
@@ -357,8 +421,8 @@ section Semilinear
357
421
358
422
variable {𝕜 : Type *} {𝕜₂ : Type *} {𝕜₃ : Type *} {𝕜₄ : Type *} {E : Type *} {F : Type *}
359
423
{G : Type *} {H : Type *} [AddCommGroup E] [AddCommGroup F] [AddCommGroup G] [AddCommGroup H]
360
- [NontriviallyNormedField 𝕜] [NontriviallyNormedField 𝕜₂] [NontriviallyNormedField 𝕜₃]
361
- [NontriviallyNormedField 𝕜₄] [ Module 𝕜 E] [Module 𝕜₂ F] [Module 𝕜₃ G] [Module 𝕜₄ H]
424
+ [NormedField 𝕜] [NormedField 𝕜₂] [NormedField 𝕜₃] [NormedField 𝕜₄ ]
425
+ [Module 𝕜 E] [Module 𝕜₂ F] [Module 𝕜₃ G] [Module 𝕜₄ H]
362
426
[TopologicalSpace E] [TopologicalSpace F] [TopologicalSpace G] [TopologicalSpace H]
363
427
[TopologicalAddGroup G] [TopologicalAddGroup H] [ContinuousConstSMul 𝕜₃ G]
364
428
[ContinuousConstSMul 𝕜₄ H] {σ₁₂ : 𝕜 →+* 𝕜₂} {σ₂₁ : 𝕜₂ →+* 𝕜} {σ₂₃ : 𝕜₂ →+* 𝕜₃} {σ₁₃ : 𝕜 →+* 𝕜₃}
@@ -404,7 +468,7 @@ end Semilinear
404
468
section Linear
405
469
406
470
variable {𝕜 : Type *} {E : Type *} {F : Type *} {G : Type *} {H : Type *} [AddCommGroup E]
407
- [AddCommGroup F] [AddCommGroup G] [AddCommGroup H] [NontriviallyNormedField 𝕜] [Module 𝕜 E]
471
+ [AddCommGroup F] [AddCommGroup G] [AddCommGroup H] [NormedField 𝕜] [Module 𝕜 E]
408
472
[Module 𝕜 F] [Module 𝕜 G] [Module 𝕜 H] [TopologicalSpace E] [TopologicalSpace F]
409
473
[TopologicalSpace G] [TopologicalSpace H] [TopologicalAddGroup G] [TopologicalAddGroup H]
410
474
[ContinuousConstSMul 𝕜 G] [ContinuousConstSMul 𝕜 H]
0 commit comments