Documentation

LeanPool.EllipticPDE.Extension.Operator

Gluing the local extensions #

Guo's third step covers the boundary, fixes a partition of unity subordinate to that cover with each support compactly inside its neighbourhood, and sets ū = ∑ᵢ Pᵢ ūᵢ. This file carries out that sum.

Each piece is a local extension cut down by its piece of the partition, so the cutoff comes after the extension. That order is what makes the sum agree with the class: where a piece of the partition is nonzero the point lies in that chart's ball, where the local extension agrees with the class, so the piece equals Pᵢ u there and off the ball both sides vanish. The pieces then add to u because the partition adds to one.

supp(Pᵢ) ⋐ Wᵢ is compact containment, and the local extension of step 2 lives on a ball strictly inside the chart's, so the support is first pushed into a smaller ball. A compact subset of an open ball admits one.

The support clause follows by one more cutoff, which is how Guo reaches it: any open set the closure of the domain sits in admits a smooth cutoff equal to one on that closure, and multiplying by it moves the support inside without disturbing the agreement.

Constant of clause (iii) #

The partition, the charts, the radii and the supremum of each piece and of its partials all depend on the domain alone, so exists_extension_bound fixes them before the class appears and sums the local constants of exists_localExtension_bound over the finitely many pieces. That is clause (iii): one constant, depending on the domain and the exponent, bounding the extension and its gradient by the class and its gradient over the domain.

Main declarations #

References #

James Guo, Partial Differential Equations (Course Lecture Notes), Theorem III.2.2 (p. 20), proof step 3 (p. 22); L. C. Evans, Partial Differential Equations (2nd ed.), §5.4 Theorem 1 (p. 253).

theorem EllipticPdes.Extension.exists_lt_radius_of_isCompact_subset_ball {d : ℕ} {K : Set (EuclideanSpace ℝ (Fin d))} {x : EuclideanSpace ℝ (Fin d)} {R : ℝ} (hR : 0 < R) (hK : IsCompact K) (hKR : K ⊆ Metric.ball x R) :
∃ r < R, 0 < r ∧ K ⊆ Metric.ball x r

Shrinking an open ball around a compact subset.

The partition, the radii and the pieces, all fixed by the domain #

A boundary piece of the partition is supported in its chart's ball, hence compactly.

noncomputable def EllipticPdes.Extension.pieceRadius {d : ℕ} {Ω : Set (EuclideanSpace ℝ (Fin d))} (P : BoundaryPartition d Ω) (x : ↥P.centres) :

The ball the local extension of a boundary piece is taken on: strictly inside the chart's, and still containing the support of the piece. Chosen from the partition alone.

Equations
Instances For
    theorem EllipticPdes.Extension.pieceRadius_spec {d : ℕ} {Ω : Set (EuclideanSpace ℝ (Fin d))} (P : BoundaryPartition d Ω) (x : ↥P.centres) :
    pieceRadius P x < (P.chart ↑x).radius ∧ 0 < pieceRadius P x ∧ tsupport (P.part (some x)) ⊆ Metric.ball (↑x) (pieceRadius P x)

    What pieceRadius was chosen for.

    theorem EllipticPdes.Extension.pieceRadius_lt {d : ℕ} {Ω : Set (EuclideanSpace ℝ (Fin d))} (P : BoundaryPartition d Ω) (x : ↥P.centres) :
    pieceRadius P x < (P.chart ↑x).radius

    The chosen ball sits strictly inside the chart's.

    The chosen ball still contains the support of the piece.

    noncomputable def EllipticPdes.Extension.extPiece {d : ℕ} {Ω : Set (EuclideanSpace ℝ (Fin d))} (P : BoundaryPartition d Ω) (i : Option ↥P.centres) (u : EuclideanSpace ℝ (Fin d) → ℝ) :

    One piece of the glued extension. The interior piece is the class extended by zero and cut down by its piece of the partition; a boundary piece is the local extension of its chart, cut down the same way. The cutoff comes after the extension, which is what makes the piece agree with Pᵢ u on the domain.

    Equations
    Instances For
      noncomputable def EllipticPdes.Extension.extPieceGrad {d : ℕ} {Ω : Set (EuclideanSpace ℝ (Fin d))} (P : BoundaryPartition d Ω) (i : Option ↥P.centres) (u : EuclideanSpace ℝ (Fin d) → ℝ) (g : Fin d → EuclideanSpace ℝ (Fin d) → ℝ) (k : Fin d) :

      Gradient of one piece, with the product rule's second term.

      Equations
      Instances For
        noncomputable def EllipticPdes.Extension.extFun {d : ℕ} {Ω : Set (EuclideanSpace ℝ (Fin d))} (P : BoundaryPartition d Ω) (u : EuclideanSpace ℝ (Fin d) → ℝ) :

        Glued extension. The pieces add to the class on the domain because the partition adds to one there.

        Equations
        Instances For
          noncomputable def EllipticPdes.Extension.extFunGrad {d : ℕ} {Ω : Set (EuclideanSpace ℝ (Fin d))} (P : BoundaryPartition d Ω) (u : EuclideanSpace ℝ (Fin d) → ℝ) (g : Fin d → EuclideanSpace ℝ (Fin d) → ℝ) (k : Fin d) :

          Gradient of the glued extension.

          Equations
          Instances For

            Guo's third step with its constant (Theorem III.2.2, proof step 3, p. 22): the local extensions glued with the partition of unity extend the class across the whole boundary, and one constant, taken before the class, bounds the extension and its gradient by the class and its gradient over the domain.

            Guo's third step with its constant, with the partition and the extension quantified away. This is the form the support clause and the embedding consume.

            Guo's third step (Theorem III.2.2, proof step 3, p. 22): the local extensions glued with the partition of unity extend the class across the whole boundary.

            theorem EllipticPdes.Extension.exists_cutoff_one_on_compact {d : ℕ} {K U : Set (EuclideanSpace ℝ (Fin d))} (hK : IsCompact K) (hU : IsOpen U) (hKU : K ⊆ U) :
            ∃ (χ : EuclideanSpace ℝ (Fin d) → ℝ), ContDiff ℝ (↑⊤) χ ∧ HasCompactSupport χ ∧ tsupport χ ⊆ U ∧ ∀ y ∈ K, χ y = 1

            Cutting between a compact set and an open one. A smooth cutoff equal to one on the compact set and compactly supported inside the open one.

            noncomputable def EllipticPdes.Extension.extSubsetFun {d : ℕ} {Ω : Set (EuclideanSpace ℝ (Fin d))} (P : BoundaryPartition d Ω) (χ u : EuclideanSpace ℝ (Fin d) → ℝ) :

            Extension with its support cut into a given open set. One more cutoff, equal to one on the closure of the domain, which leaves the agreement alone and moves the support.

            Equations
            Instances For
              noncomputable def EllipticPdes.Extension.extSubsetGrad {d : ℕ} {Ω : Set (EuclideanSpace ℝ (Fin d))} (P : BoundaryPartition d Ω) (χ u : EuclideanSpace ℝ (Fin d) → ℝ) (g : Fin d → EuclideanSpace ℝ (Fin d) → ℝ) (k : Fin d) :

              Gradient of that extension, with the cutoff's own derivative.

              Equations
              Instances For
                theorem EllipticPdes.Extension.extSubsetFun_eq {d : ℕ} {Ω : Set (EuclideanSpace ℝ (Fin d))} (P : BoundaryPartition d Ω) (χ u : EuclideanSpace ℝ (Fin d) → ℝ) :
                extSubsetFun P χ u = fun (y : EuclideanSpace ℝ (Fin d)) => χ y * extFun P u y

                extSubsetFun unapplied, which is the form the support statements read.

                theorem EllipticPdes.Extension.extSubsetGrad_eq {d : ℕ} {Ω : Set (EuclideanSpace ℝ (Fin d))} (P : BoundaryPartition d Ω) (χ u : EuclideanSpace ℝ (Fin d) → ℝ) (g : Fin d → EuclideanSpace ℝ (Fin d) → ℝ) (k : Fin d) :
                extSubsetGrad P χ u g k = fun (y : EuclideanSpace ℝ (Fin d)) => χ y * extFunGrad P u g k y + Sobolev.partialD k χ y * extFun P u y

                extSubsetGrad unapplied.

                theorem EllipticPdes.Extension.extension_subset_bound {d : ℕ} {Ω Ω' : Set (EuclideanSpace ℝ (Fin d))} (hΩopen : IsOpen Ω) (hΩb : Bornology.IsBounded Ω) (P : BoundaryPartition d Ω) {χ : EuclideanSpace ℝ (Fin d) → ℝ} (hχc : ContDiff ℝ (↑⊤) χ) (hχcs : HasCompactSupport χ) (hχs : tsupport χ ⊆ Ω') (hχ1 : ∀ y ∈ closure Ω, χ y = 1) {p : ENNReal} (hp : 1 ≤ p) :

                Guo's Theorem III.2.2 (p. 20), all three clauses. The extension agrees with the class on the domain, is supported inside any open set the closure of the domain sits in, and is bounded in every Lᵖ seminorm, together with its gradient, by the class and its gradient over the domain, with one constant taken before the class.

                Guo's Theorem III.2.2 (p. 20), all three clauses, with the partition, the cutoff and the extension quantified away.

                theorem EllipticPdes.Extension.exists_extension_subset {d : ℕ} (hd : 0 < d) {Ω Ω' : Set (EuclideanSpace ℝ (Fin d))} (hΩopen : IsOpen Ω) (hΩb : Bornology.IsBounded Ω) (hC1 : HasC1Boundary Ω) (hΩ'open : IsOpen Ω') (hsub : closure Ω ⊆ Ω') {u : EuclideanSpace ℝ (Fin d) → ℝ} {g : Fin d → EuclideanSpace ℝ (Fin d) → ℝ} (hu : MeasureTheory.IntegrableOn u Ω MeasureTheory.volume) (hgi : ∀ (k : Fin d), MeasureTheory.IntegrableOn (g k) Ω MeasureTheory.volume) (hwg : Embedding.HasWeakGradOn Ω u g) :

                Clauses (i) and (ii) of Guo's Theorem III.2.2 (p. 20). The extension agrees with the class on the domain and is supported inside any open set the closure of the domain sits in.