Documentation

Mathlib.Geometry.Manifold.BumpFunction

Smooth bump functions on a smooth manifold #

In this file we define SmoothBumpFunction I c to be a bundled smooth "bump" function centered at c. It is a structure that consists of two real numbers 0 < rIn < rOut with small enough rOut. We define a coercion to function for this type, and for f : SmoothBumpFunction I c, the function โ‡‘f written in the extended chart at c has the following properties:

The actual statements involve (pre)images under extChartAt I f and are given as lemmas in the SmoothBumpFunction namespace.

Tags #

manifold, smooth bump function

Smooth bump function #

In this section we define a structure for a bundled smooth bump function and prove its properties.

structure SmoothBumpFunction {E : Type uE} [NormedAddCommGroup E] [NormedSpace โ„ E] {H : Type uH} [TopologicalSpace H] (I : ModelWithCorners โ„ E H) {M : Type uM} [TopologicalSpace M] [ChartedSpace H M] (c : M) extends ContDiffBump (โ†‘(extChartAt I c) c) :

Given a smooth manifold modelled on a finite-dimensional space E, f : SmoothBumpFunction I M is a smooth function on M such that in the extended chart e at f.c:

  • f x = 1 in the closed ball of radius f.rIn centered at f.c;
  • f x = 0 outside of the ball of radius f.rOut centered at f.c;
  • 0 โ‰ค f x โ‰ค 1 for all x.

The structure contains data required to construct a function with these properties. The function is available as โ‡‘f or f x. Formal statements of the properties listed above involve some (pre)images under extChartAt I f.c and are given as lemmas in the SmoothBumpFunction namespace.

Instances For

    The function defined by f : SmoothBumpFunction c. Use automatic coercion to function instead.

    Equations
      Instances For
        theorem SmoothBumpFunction.one_of_dist_le {E : Type uE} [NormedAddCommGroup E] [NormedSpace โ„ E] {H : Type uH} [TopologicalSpace H] {I : ModelWithCorners โ„ E H} {M : Type uM} [TopologicalSpace M] [ChartedSpace H M] {c : M} (f : SmoothBumpFunction I c) {x : M} [FiniteDimensional โ„ E] (hs : x โˆˆ (chartAt H c).source) (hd : dist (โ†‘(extChartAt I c) x) (โ†‘(extChartAt I c) c) โ‰ค f.rIn) :
        โ†‘f x = 1
        theorem SmoothBumpFunction.eventuallyEq_one_of_dist_lt {E : Type uE} [NormedAddCommGroup E] [NormedSpace โ„ E] {H : Type uH} [TopologicalSpace H] {I : ModelWithCorners โ„ E H} {M : Type uM} [TopologicalSpace M] [ChartedSpace H M] {c : M} (f : SmoothBumpFunction I c) {x : M} [FiniteDimensional โ„ E] (hs : x โˆˆ (chartAt H c).source) (hd : dist (โ†‘(extChartAt I c) x) (โ†‘(extChartAt I c) c) < f.rIn) :
        โ†‘f =แถ [nhds x] 1
        theorem SmoothBumpFunction.nhdsWithin_range_basis {E : Type uE} [NormedAddCommGroup E] [NormedSpace โ„ E] {H : Type uH} [TopologicalSpace H] {I : ModelWithCorners โ„ E H} {M : Type uM} [TopologicalSpace M] [ChartedSpace H M] {c : M} :
        (nhdsWithin (โ†‘(extChartAt I c) c) (Set.range โ†‘I)).HasBasis (fun (x : SmoothBumpFunction I c) => True) fun (f : SmoothBumpFunction I c) => Metric.closedBall (โ†‘(extChartAt I c) c) f.rOut โˆฉ Set.range โ†‘I

        Given a smooth bump function f : SmoothBumpFunction I c, the closed ball of radius f.R is known to include the support of f. These closed balls (in the model normed space E) intersected with Set.range I form a basis of ๐“[range I] (extChartAt I c c).

        theorem SmoothBumpFunction.exists_r_pos_lt_subset_ball {E : Type uE} [NormedAddCommGroup E] [NormedSpace โ„ E] {H : Type uH} [TopologicalSpace H] {I : ModelWithCorners โ„ E H} {M : Type uM} [TopologicalSpace M] [ChartedSpace H M] {c : M} (f : SmoothBumpFunction I c) [FiniteDimensional โ„ E] {s : Set M} (hsc : IsClosed s) (hs : s โІ Function.support โ†‘f) :
        โˆƒ r โˆˆ Set.Ioo 0 f.rOut, s โІ (chartAt H c).source โˆฉ โ†‘(extChartAt I c) โปยน' Metric.ball (โ†‘(extChartAt I c) c) r

        If f is a smooth bump function and s closed subset of the support of f (i.e., of the open ball of radius f.rOut), then there exists 0 < r < f.rOut such that s is a subset of the open ball of radius r. Formally, s โІ e.source โˆฉ e โปยน' (ball (e c) r), where e = extChartAt I c.

        Replace rIn with another value in the interval (0, f.rOut).

        Equations
          Instances For

            The closures of supports of smooth bump functions centered at c form a basis of ๐“ c. In other words, each of these closures is a neighborhood of c and each neighborhood of c includes tsupport f for some f : SmoothBumpFunction I c.

            theorem SmoothBumpFunction.nhds_basis_support {E : Type uE} [NormedAddCommGroup E] [NormedSpace โ„ E] {H : Type uH} [TopologicalSpace H] {I : ModelWithCorners โ„ E H} {M : Type uM} [TopologicalSpace M] [ChartedSpace H M] {c : M} [FiniteDimensional โ„ E] [T2Space M] {s : Set M} (hs : s โˆˆ nhds c) :
            (nhds c).HasBasis (fun (f : SmoothBumpFunction I c) => tsupport โ†‘f โІ s) fun (f : SmoothBumpFunction I c) => Function.support โ†‘f

            Given s โˆˆ ๐“ c, the supports of smooth bump functions f : SmoothBumpFunction I c such that tsupport f โІ s form a basis of ๐“ c. In other words, each of these supports is a neighborhood of c and each neighborhood of c includes support f for some f : SmoothBumpFunction I c such that tsupport f โІ s.

            A smooth bump function is infinitely smooth.

            theorem SmoothBumpFunction.contMDiff_smul {E : Type uE} [NormedAddCommGroup E] [NormedSpace โ„ E] {H : Type uH} [TopologicalSpace H] {I : ModelWithCorners โ„ E H} {M : Type uM} [TopologicalSpace M] [ChartedSpace H M] {c : M} (f : SmoothBumpFunction I c) [FiniteDimensional โ„ E] [T2Space M] [IsManifold I (โ†‘โŠค) M] {G : Type u_1} [NormedAddCommGroup G] [NormedSpace โ„ G] {g : M โ†’ G} (hg : ContMDiffOn I (modelWithCornersSelf โ„ G) (โ†‘โŠค) g (chartAt H c).source) :
            ContMDiff I (modelWithCornersSelf โ„ G) โ†‘โŠค fun (x : M) => โ†‘f x โ€ข g x

            If f : SmoothBumpFunction I c is a smooth bump function and g : M โ†’ G is a function smooth on the source of the chart at c, then f โ€ข g is smooth on the whole manifold.