Documentation

LeanPool.AnomalousDiffusion.Homogenization.Geometry.BoundaryLayer

Boundary Layer #

Support for the Armstrong–Vicol anomalous-diffusion formalization.

The geometric boundary of a half-open cube, encoded as the difference between the half-open realization and its open core.

Equations
Instances For
    def Homogenization.cubeShrunkSet {d : ℕ} (Q : TriadicCube d) (t : ℝ) :
    Set (Vec d)

    The cube obtained by shrinking each face inward by the normalized amount t. For t = 0 this recovers the original half-open cube.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      The boundary layer of thickness t, defined as the part of the cube left after removing the shrunk core.

      Equations
      Instances For
        @[simp]
        theorem Homogenization.mem_cubeShrunkSet_iff {d : ℕ} {Q : TriadicCube d} {t : ℝ} {x : Vec d} :
        x ∈ cubeShrunkSet Q t ↔ ∀ (i : Fin d), (↑(Q.index i) - 1 / 2 + t) * cubeScaleFactor Q ≤ x i ∧ x i < (↑(Q.index i) + 1 / 2 - t) * cubeScaleFactor Q
        theorem Homogenization.center_mem_cubeShrunkSet_of_lt_half {d : ℕ} (Q : TriadicCube d) {t : ℝ} (ht : t < 1 / 2) :
        (fun (i : Fin d) => ↑(Q.index i) * cubeScaleFactor Q) ∈ cubeShrunkSet Q t
        theorem Homogenization.cubeSet_middleChild_subset_cubeShrunkSet {d : ℕ} (Q : TriadicCube d) {t : ℝ} (ht : t ≤ 1 / 3) :
        cubeSet { scale := Q.scale - 1, index := fun (i : Fin d) => 3 * Q.index i } ⊆ cubeShrunkSet Q t
        theorem Homogenization.cubeSet_childCube_subset_cubeShrunkSet_of_digits_eq_one {d : ℕ} (Q : TriadicCube d) (digits : Fin d → Fin 3) (hdigits : ∀ (i : Fin d), digits i = 1) {t : ℝ} (ht : t ≤ 1 / 3) :
        cubeSet { scale := Q.scale - 1, index := fun (i : Fin d) => 3 * Q.index i + ↑↑(digits i) - 1 } ⊆ cubeShrunkSet Q t
        theorem Homogenization.middleChild_mem_childCubes {d : ℕ} (Q : TriadicCube d) :
        { scale := Q.scale - 1, index := fun (i : Fin d) => 3 * Q.index i } ∈ childCubes Q
        theorem Homogenization.middleChild_mem_descendantsAtScale_pred {d : ℕ} (Q : TriadicCube d) :
        { scale := Q.scale - 1, index := fun (i : Fin d) => 3 * Q.index i } ∈ descendantsAtScale Q (Q.scale - 1)
        theorem Homogenization.cubeBoundaryLayer_subset_iUnion_childCubes_except_middle {d : ℕ} (Q : TriadicCube d) {t : ℝ} (ht : t ≤ 1 / 3) :
        cubeBoundaryLayer Q t ⊆ ⋃ R ∈ {S : TriadicCube d | S ∈ childCubes Q ∧ S ≠ { scale := Q.scale - 1, index := fun (i : Fin d) => 3 * Q.index i }}, cubeSet R