@@ -68,7 +68,7 @@ Absorbent and balanced sets in a vector space over a normed field.
68
68
open normed_field set
69
69
open_locale pointwise topological_space nnreal
70
70
71
- variables {R 𝕜 E ι : Type *}
71
+ variables {R 𝕜 E F G ι : Type *}
72
72
73
73
section semi_normed_ring
74
74
variables [semi_normed_ring 𝕜]
@@ -271,6 +271,8 @@ instance : has_zero (seminorm 𝕜 E) :=
271
271
272
272
@[simp] lemma coe_zero : ⇑(0 : seminorm 𝕜 E) = 0 := rfl
273
273
274
+ @[simp] lemma zero_apply (x : E) : (0 : seminorm 𝕜 E) x = 0 := rfl
275
+
274
276
instance : inhabited (seminorm 𝕜 E) := ⟨0 ⟩
275
277
276
278
variables (p : seminorm 𝕜 E) (c : 𝕜) (x y : E) (r : ℝ)
@@ -378,8 +380,48 @@ calc p 0 = p ((0 : 𝕜) • 0) : by rw zero_smul
378
380
end smul_with_zero
379
381
end add_monoid
380
382
383
+ section module
384
+ variables [add_comm_group E] [add_comm_group F] [add_comm_group G]
385
+ variables [module 𝕜 E] [module 𝕜 F] [module 𝕜 G]
386
+ variables [has_scalar R ℝ] [has_scalar R ℝ≥0 ] [is_scalar_tower R ℝ≥0 ℝ]
387
+
388
+ /-- Composition of a seminorm with a linear map is a seminorm. -/
389
+ def comp (p : seminorm 𝕜 F) (f : E →ₗ[𝕜] F) : seminorm 𝕜 E :=
390
+ { to_fun := λ x, p(f x),
391
+ smul' := λ _ _, (congr_arg p (f.map_smul _ _)).trans (p.smul _ _),
392
+ triangle' := λ _ _, eq.trans_le (congr_arg p (f.map_add _ _)) (p.triangle _ _) }
393
+
394
+ lemma coe_comp (p : seminorm 𝕜 F) (f : E →ₗ[𝕜] F) : ⇑(p.comp f) = p ∘ f := rfl
395
+
396
+ @[simp] lemma comp_apply (p : seminorm 𝕜 F) (f : E →ₗ[𝕜] F) (x : E) : (p.comp f) x = p (f x) := rfl
397
+
398
+ @[simp] lemma comp_id (p : seminorm 𝕜 E) : p.comp linear_map.id = p :=
399
+ ext $ λ _, rfl
400
+
401
+ @[simp] lemma comp_zero (p : seminorm 𝕜 F) : p.comp (0 : E →ₗ[𝕜] F) = 0 :=
402
+ ext $ λ _, seminorm.zero _
403
+
404
+ @[simp] lemma zero_comp (f : E →ₗ[𝕜] F) : (0 : seminorm 𝕜 F).comp f = 0 :=
405
+ ext $ λ _, rfl
406
+
407
+ lemma comp_comp (p : seminorm 𝕜 G) (g : F →ₗ[𝕜] G) (f : E →ₗ[𝕜] F) :
408
+ p.comp (g.comp f) = (p.comp g).comp f :=
409
+ ext $ λ _, rfl
410
+
411
+ lemma add_comp (p q : seminorm 𝕜 F) (f : E →ₗ[𝕜] F) : (p + q).comp f = p.comp f + q.comp f :=
412
+ ext $ λ _, rfl
413
+
414
+ lemma comp_triangle (p : seminorm 𝕜 F) (f g : E →ₗ[𝕜] F) : p.comp (f + g) ≤ p.comp f + p.comp g :=
415
+ λ _, p.triangle _ _
416
+
417
+ lemma smul_comp (p : seminorm 𝕜 F) (f : E →ₗ[𝕜] F) (c : R) : (c • p).comp f = c • (p.comp f) :=
418
+ ext $ λ _, rfl
419
+
420
+ lemma comp_mono {p : seminorm 𝕜 F} {q : seminorm 𝕜 F} (f : E →ₗ[𝕜] F) (hp : p ≤ q) :
421
+ p.comp f ≤ q.comp f := λ _, hp _
422
+
381
423
section norm_one_class
382
- variables [norm_one_class 𝕜] [add_comm_group E] [module 𝕜 E] (p : seminorm 𝕜 E) (x y : E) (r : ℝ)
424
+ variables [norm_one_class 𝕜] (p : seminorm 𝕜 E) (x y : E) (r : ℝ)
383
425
384
426
@[simp]
385
427
protected lemma neg : p (-x) = p x :=
@@ -419,9 +461,27 @@ begin
419
461
end
420
462
421
463
end norm_one_class
464
+ end module
465
+ end semi_normed_ring
466
+
467
+ section semi_normed_comm_ring
468
+ variables [semi_normed_comm_ring 𝕜] [add_comm_group E] [add_comm_group F] [module 𝕜 E] [module 𝕜 F]
469
+
470
+ lemma comp_smul (p : seminorm 𝕜 F) (f : E →ₗ[𝕜] F) (c : 𝕜) :
471
+ p.comp (c • f) = ∥c∥₊ • p.comp f :=
472
+ ext $ λ _, by rw [comp_apply, smul_apply, linear_map.smul_apply, p.smul, nnreal.smul_def,
473
+ coe_nnnorm, smul_eq_mul, comp_apply]
474
+
475
+ lemma comp_smul_apply (p : seminorm 𝕜 F) (f : E →ₗ[𝕜] F) (c : 𝕜) (x : E) :
476
+ p.comp (c • f) x = ∥c∥ * p (f x) := p.smul _ _
477
+
478
+ end semi_normed_comm_ring
422
479
423
480
/-! ### Seminorm ball -/
424
481
482
+ section semi_normed_ring
483
+ variables [semi_normed_ring 𝕜]
484
+
425
485
section add_comm_group
426
486
variables [add_comm_group E]
427
487
460
520
end has_scalar
461
521
462
522
section module
463
- variables [norm_one_class 𝕜] [module 𝕜 E] (p : seminorm 𝕜 E)
523
+
524
+ variables [module 𝕜 E]
525
+ variables [add_comm_group F] [module 𝕜 F]
526
+
527
+ lemma ball_comp (p : seminorm 𝕜 F) (f : E →ₗ[𝕜] F) (x : E) (r : ℝ) :
528
+ (p.comp f).ball x r = f ⁻¹' (p.ball (f x) r) :=
529
+ begin
530
+ ext,
531
+ simp_rw [ball, mem_preimage, comp_apply, set.mem_set_of_eq, map_sub],
532
+ end
533
+
534
+ section norm_one_class
535
+ variables [norm_one_class 𝕜] (p : seminorm 𝕜 E)
464
536
465
537
@[simp] lemma ball_bot {r : ℝ} (x : E) (hr : 0 < r) : ball (⊥ : seminorm 𝕜 E) x r = set.univ :=
466
538
ball_zero' x hr
@@ -489,6 +561,7 @@ begin
489
561
exact ball_finset_sup_eq_Inter _ _ _ hr,
490
562
end
491
563
564
+ end norm_one_class
492
565
end module
493
566
end add_comm_group
494
567
end semi_normed_ring
0 commit comments