Documentation

LeanPool.HighContrastHomogenization.Support.Sobolev.Foundations.Cutoff.Euclidean

Coarse-graining support: Support.Sobolev.Foundations.Cutoff.Euclidean #

Imported from the Apache-2.0 CoarseGraining development at commit c7ddd76c08ade64fed1b8d2ca51be14dfee8deb4.

Explicit Euclidean geometry on Vec d #

The project uses Vec d = Fin d → ℝ, whose default metric is the product/sup metric. This file defines the Euclidean squared distance and Euclidean balls explicitly on the same underlying type, so later cutoff statements can be about round Euclidean balls without changing ambient type to EuclideanSpace.

Euclidean squared distance on Vec d, independent of the default Vec d metric.

Equations
Instances For

    The legacy squared-distance expression is the square of the explicit Euclidean distance.

    def HCPolySupport.euclideanBall {d : ℕ} (x₀ : Vec d) (R : ℝ) :
    Set (Vec d)

    Explicit Euclidean open ball on Vec d.

    Equations
    Instances For
      def HCPolySupport.euclideanClosedBall {d : ℕ} (x₀ : Vec d) (R : ℝ) :
      Set (Vec d)

      Explicit Euclidean closed ball on Vec d.

      Equations
      Instances For
        def HCPolySupport.euclideanSphere {d : ℕ} (x₀ : Vec d) (R : ℝ) :
        Set (Vec d)

        Explicit Euclidean sphere on Vec d.

        Equations
        Instances For
          theorem HCPolySupport.euclideanSqDist_affine_center {d : ℕ} (x₀ y : Vec d) (r : ℝ) :
          euclideanSqDist (r • y + x₀) x₀ = r ^ 2 * euclideanSqDist y 0

          Translating a point by -z from the center has the same explicit Euclidean squared distance as z from the origin.

          If z lies in the explicit Euclidean ball about the origin, then x - z lies in the corresponding explicit Euclidean ball about x.

          theorem HCPolySupport.affine_mem_euclideanBall_iff_of_pos {d : ℕ} (x₀ y : Vec d) {r : ℝ} (hr : 0 < r) :
          r • y + x₀ ∈ euclideanBall x₀ r ↔ y ∈ euclideanBall 0 1
          theorem HCPolySupport.vecNormSq_weighted_add_le {d : ℕ} {a b : ℝ} (ha : 0 ≤ a) (hb : 0 ≤ b) (hab : a + b = 1) (v w : Vec d) :
          vecNormSq (a • v + b • w) ≤ a * vecNormSq v + b * vecNormSq w

          Convexity inequality for the coordinate Euclidean squared norm.

          theorem HCPolySupport.euclideanSqDist_weighted_add_le {d : ℕ} {a b : ℝ} (ha : 0 ≤ a) (hb : 0 ≤ b) (hab : a + b = 1) (x y x₀ : Vec d) :
          euclideanSqDist (a • x + b • y) x₀ ≤ a * euclideanSqDist x x₀ + b * euclideanSqDist y x₀

          Convexity inequality for the coordinate Euclidean squared distance.

          Explicit Euclidean closed balls are convex subsets of the project carrier.

          theorem HCPolySupport.convex_euclideanBall {d : ℕ} (x₀ : Vec d) (R : ℝ) :

          Explicit Euclidean open balls are convex subsets of the project carrier.

          theorem HCPolySupport.sq_coord_sub_le_euclideanSqDist {d : ℕ} (x y : Vec d) (i : Fin d) :
          (x i - y i) ^ 2 ≤ euclideanSqDist x y
          theorem HCPolySupport.contDiff_euclideanSqDist_left {d : ℕ} (x₀ : Vec d) :
          ContDiff ℝ ↑⊤ fun (x : Vec d) => euclideanSqDist x x₀
          theorem HCPolySupport.isOpen_euclideanBall {d : ℕ} (x₀ : Vec d) (R : ℝ) :

          Explicit Euclidean spheres are closed in the default product topology.

          The explicit sphere is contained in the corresponding explicit closed ball.

          The closed Euclidean ball is the disjoint union of its open ball and sphere, stated as a set-difference identity.

          The closed Euclidean ball is covered by its open ball and sphere.

          A positive-radius explicit Euclidean sphere lies in the frontier of the corresponding explicit closed ball.

          theorem HCPolySupport.center_mem_euclideanBall {d : ℕ} (x₀ : Vec d) {R : ℝ} (hR : 0 < R) :
          x₀ ∈ euclideanBall x₀ R
          theorem HCPolySupport.euclideanBall_nonempty {d : ℕ} (x₀ : Vec d) {R : ℝ} (hR : 0 < R) :
          theorem HCPolySupport.euclideanBall_subset_metricBall {d : ℕ} {x₀ : Vec d} {R : ℝ} (hR : 0 < R) :
          euclideanBall x₀ R ⊆ Metric.ball x₀ R

          An explicit coordinate-Euclidean open ball is contained in the default product-metric open ball of the same radius.

          theorem HCPolySupport.metricClosedBall_div_two_natCast_succ_subset_euclideanBall {d : ℕ} {x₀ : Vec d} {R : ℝ} (hR : 0 < R) :
          Metric.closedBall x₀ (R / (2 * (↑d + 1))) ⊆ euclideanBall x₀ R

          A positive explicit Euclidean ball contains a small default-metric closed ball around its center. The conservative radius avoids needing a sharp comparison between the product metric and the coordinate Euclidean norm.

          theorem HCPolySupport.euclideanClosedBall_subset_euclideanBall {d : ℕ} {x₀ : Vec d} {s R : ℝ} (hs : 0 ≤ s) (hsR : s < R) :
          theorem HCPolySupport.euclideanBall_subset_euclideanBall {d : ℕ} {x₀ : Vec d} {s R : ℝ} (hs : 0 ≤ s) (hsR : s < R) :
          euclideanBall x₀ s ⊆ euclideanBall x₀ R