Documentation

Mathlib.Analysis.Normed.Module.Dual

The topological dual of a normed space #

In this file we define the topological dual NormedSpace.Dual of a normed space, and the continuous linear map NormedSpace.inclusionInDoubleDual from a normed space into its double dual.

For base field ๐•œ = โ„ or ๐•œ = โ„‚, this map is actually an isometric embedding; we provide a version NormedSpace.inclusionInDoubleDualLi of the map which is of type a bundled linear isometric embedding, E โ†’โ‚—แตข[๐•œ] (Dual ๐•œ (Dual ๐•œ E)).

Since a lot of elementary properties don't require eq_of_dist_eq_zero we start setting up the theory for SeminormedAddCommGroup and we specialize to NormedAddCommGroup when needed.

Main definitions #

References #

Tags #

dual, polar

@[reducible, inline]
abbrev NormedSpace.Dual (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] (E : Type u_2) [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] :
Type (max u_1 u_2)

The topological dual of a seminormed space E.

Equations
Instances For
    instance NormedSpace.instDual (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] (E : Type u_2) [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] :
    NormedSpace ๐•œ (NormedSpace.Dual ๐•œ E)
    Equations
    def NormedSpace.inclusionInDoubleDual (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] (E : Type u_2) [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] :
    E โ†’L[๐•œ] NormedSpace.Dual ๐•œ (NormedSpace.Dual ๐•œ E)

    The inclusion of a normed space in its double (topological) dual, considered as a bounded linear map.

    Equations
    Instances For
      @[simp]
      theorem NormedSpace.dual_def (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] (E : Type u_2) [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] (x : E) (f : NormedSpace.Dual ๐•œ E) :
      ((NormedSpace.inclusionInDoubleDual ๐•œ E) x) f = f x
      def NormedSpace.dualPairing (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] (E : Type u_2) [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] :
      NormedSpace.Dual ๐•œ E โ†’โ‚—[๐•œ] E โ†’โ‚—[๐•œ] ๐•œ

      The dual pairing as a bilinear form.

      Equations
      Instances For
        @[simp]
        theorem NormedSpace.dualPairing_apply (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] (E : Type u_2) [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] {v : NormedSpace.Dual ๐•œ E} {x : E} :
        ((NormedSpace.dualPairing ๐•œ E) v) x = v x
        theorem NormedSpace.dualPairing_separatingLeft (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] (E : Type u_2) [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] :
        (NormedSpace.dualPairing ๐•œ E).SeparatingLeft
        theorem NormedSpace.norm_le_dual_bound (๐•œ : Type v) [RCLike ๐•œ] {E : Type u} [NormedAddCommGroup E] [NormedSpace ๐•œ E] (x : E) {M : โ„} (hMp : 0 โ‰ค M) (hM : โˆ€ (f : NormedSpace.Dual ๐•œ E), โ€–f xโ€– โ‰ค M * โ€–fโ€–) :

        If one controls the norm of every f x, then one controls the norm of x. Compare ContinuousLinearMap.opNorm_le_bound.

        theorem NormedSpace.eq_zero_of_forall_dual_eq_zero (๐•œ : Type v) [RCLike ๐•œ] {E : Type u} [NormedAddCommGroup E] [NormedSpace ๐•œ E] {x : E} (h : โˆ€ (f : NormedSpace.Dual ๐•œ E), f x = 0) :
        x = 0
        theorem NormedSpace.eq_zero_iff_forall_dual_eq_zero (๐•œ : Type v) [RCLike ๐•œ] {E : Type u} [NormedAddCommGroup E] [NormedSpace ๐•œ E] (x : E) :
        x = 0 โ†” โˆ€ (g : NormedSpace.Dual ๐•œ E), g x = 0
        theorem NormedSpace.eq_iff_forall_dual_eq (๐•œ : Type v) [RCLike ๐•œ] {E : Type u} [NormedAddCommGroup E] [NormedSpace ๐•œ E] {x : E} {y : E} :
        x = y โ†” โˆ€ (g : NormedSpace.Dual ๐•œ E), g x = g y

        See also geometric_hahn_banach_point_point.

        def NormedSpace.inclusionInDoubleDualLi (๐•œ : Type v) [RCLike ๐•œ] {E : Type u} [NormedAddCommGroup E] [NormedSpace ๐•œ E] :

        The inclusion of a normed space in its double dual is an isometry onto its image.

        Equations
        Instances For
          def NormedSpace.polar (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] :
          Set E โ†’ Set (NormedSpace.Dual ๐•œ E)

          Given a subset s in a normed space E (over a field ๐•œ), the polar polar ๐•œ s is the subset of Dual ๐•œ E consisting of those functionals which evaluate to something of norm at most one at all points z โˆˆ s.

          Equations
          Instances For
            theorem NormedSpace.mem_polar_iff (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] {x' : NormedSpace.Dual ๐•œ E} (s : Set E) :
            x' โˆˆ NormedSpace.polar ๐•œ s โ†” โˆ€ z โˆˆ s, โ€–x' zโ€– โ‰ค 1
            @[simp]
            theorem NormedSpace.zero_mem_polar (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] (s : Set E) :
            theorem NormedSpace.polar_nonempty (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] (s : Set E) :
            (NormedSpace.polar ๐•œ s).Nonempty
            @[simp]
            theorem NormedSpace.polar_univ (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] :
            NormedSpace.polar ๐•œ Set.univ = {0}
            theorem NormedSpace.isClosed_polar (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] (s : Set E) :
            @[simp]
            theorem NormedSpace.polar_closure (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] (s : Set E) :
            NormedSpace.polar ๐•œ (closure s) = NormedSpace.polar ๐•œ s
            theorem NormedSpace.smul_mem_polar {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] {s : Set E} {x' : NormedSpace.Dual ๐•œ E} {c : ๐•œ} (hc : โˆ€ z โˆˆ s, โ€–x' zโ€– โ‰ค โ€–cโ€–) :

            If x' is a dual element such that the norms โ€–x' zโ€– are bounded for z โˆˆ s, then a small scalar multiple of x' is in polar ๐•œ s.

            theorem NormedSpace.polar_ball_subset_closedBall_div {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] {c : ๐•œ} (hc : 1 < โ€–cโ€–) {r : โ„} (hr : 0 < r) :
            theorem NormedSpace.polar_closedBall {๐•œ : Type u_3} {E : Type u_4} [RCLike ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] {r : โ„} (hr : 0 < r) :

            The polar of closed ball in a normed space E is the closed ball of the dual with inverse radius.

            theorem NormedSpace.polar_ball {๐•œ : Type u_3} {E : Type u_4} [RCLike ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] {r : โ„} (hr : 0 < r) :
            theorem NormedSpace.isBounded_polar_of_mem_nhds_zero (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] {s : Set E} (s_nhd : s โˆˆ nhds 0) :

            Given a neighborhood s of the origin in a normed space E, the dual norms of all elements of the polar polar ๐•œ s are bounded by a constant.

            @[simp]
            theorem NormedSpace.polar_empty (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] :
            NormedSpace.polar ๐•œ โˆ… = Set.univ
            @[simp]
            theorem NormedSpace.polar_singleton (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] {a : E} :
            NormedSpace.polar ๐•œ {a} = {x : NormedSpace.Dual ๐•œ E | โ€–x aโ€– โ‰ค 1}
            theorem NormedSpace.mem_polar_singleton (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] {a : E} (y : NormedSpace.Dual ๐•œ E) :
            theorem NormedSpace.polar_zero (๐•œ : Type u_1) [NontriviallyNormedField ๐•œ] {E : Type u_2} [SeminormedAddCommGroup E] [NormedSpace ๐•œ E] :
            NormedSpace.polar ๐•œ {0} = Set.univ
            theorem NormedSpace.sInter_polar_eq_closedBall {๐•œ : Type u_3} {E : Type u_4} [RCLike ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] {r : โ„} (hr : 0 < r) :