KuhnCells #
Ported from scottnarmstrong/Superdiffusion at 7f20476385d4af418f110303085ad0740c9eba46. Module imports, support namespace and local option directives adapted for Lean Pool.
Triadic simplices and the standard simplicial decomposition S_j(□) #
This module defines a local implementation of the simplex notation in ABK26's
"Triadic cubes and simplices" paragraph, which is the geometric input of
e.SW.def:
- the model ordered simplex and the triadic simplex
△_n^π(z)ofe.simplex.def; - vertices
V(△)and the fact that there ared + 1of them; - the standard simplicial decomposition
S_j(□)of a triadic cube into simplices of size3^j, together with its cardinality3^{d(scale − j)} · d!, its exactness as a partition, and its nesting under further triadic subdivision.
Carriers #
A simplex is indexed by a KuhnCell: a triadic support cube together with a
permutation of the coordinates. Its open realization openCarrier is the
manuscript's △_n^π(z) verbatim. Because the open simplices of a cube omit
their common faces, an exact (rather than almost-everywhere) partition needs a
boundary convention; carrier is the canonical half-open realization obtained
by breaking coordinate ties with Tuple.sort. closedCarrier is the closure.
The three are related by openCarrier ⊆ carrier ⊆ closedCarrier.
Reading notes (recorded) #
- The manuscript writes
S_n(z+□_m) = {z + △_n^π(z') : z' ∈ 3^n ℤ^d, △_n^π(z') ⊆ □_m}. Since the triadic grids are nested,△_n^π(z') ⊆ □_mselects exactly the scale-ntriadic descendants of□_m; that is the indexing taken here (descendantsAtScale). The conditionn ≤ mof the display is carried as an explicit hypothesis where it is used; outside that rangetriadicSimplexPartitionis empty, matchingdescendantsAtScale. - No face-to-face or simplicial-complex claim is made here or anywhere downstream.
References #
- ABK26, (
e.simplex.def).
The model ordered simplex #
The model open simplex of e.simplex.def: {x ∈ ℝ^d: -1/2 < x_{π(1)} < ⋯ < x_{π(d)} < 1/2}, written as the conjunction of the coordinate box and the
π-ordering. mem_orderedUnitSimplex_iff_chain shows this is the printed
chain.
Equations
Instances For
ABK26 e.simplex.def: the triadic simplex of size 3^n based at z,
△_n^π(z) = z + 3^n · {x : -1/2 < x_{π(1)} < ⋯ < x_{π(d)} < 1/2}.
Equations
- Algsuperdiff.Section3.Provider.Whitney.triadicSimplex n z pi = (fun (x : HCPolySupport.Vec d) => z + 3 ^ n • x) '' Algsuperdiff.Section3.Provider.Whitney.orderedUnitSimplex pi
Instances For
The translated/rescaled membership test for △_n^π(z).
Kuhn cells #
One triadic simplex, indexed by its support cube and the coordinate order
of e.simplex.def.
- supportCube : HCPolySupport.TriadicCube d
The triadic cube containing the simplex; its size is the simplex size.
- order : Equiv.Perm (Fin d)
The permutation
πofe.simplex.def.
Instances For
Coordinates centered at the index point of a triadic cube.
Equations
Instances For
The manuscript's open simplex △_{scale}^{order}(center) of a Kuhn cell.
Equations
Instances For
The canonical half-open realization. Tuple.sort assigns each coordinate
tie to exactly one cell, which turns the family of open simplices of a cube
into an exact partition of the half-open cube.
Equations
Instances For
The closed simplex: the closed support cube together with the weak
order-monotonicity of the local coordinates.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Vertices #
V(△): the k-th vertex of a Kuhn cell. It raises the last k
coordinates in the cell's order to the upper face and leaves the rest on the
lower face; k = 0 is the lower corner and k = d the upper corner.
Disclosure (definitional stand-in). ABK26 defines a vertex of a simplex to be
an extreme point of that simplex, and then observes that there are d+1 of
them. This declaration is instead the explicit corner formula, so it is a
stand-in for the printed definition, not a transcription of it. What is proved
here is that the formula proves in the cell (vertex_mem_closedCarrier), is
injective, and yields exactly d+1 points (ncard_vertexSet, the printed
count).
Equations
- T.vertex k i = (↑(T.supportCube.index i) + if d ≤ ↑((Equiv.symm T.order) i) + ↑k then 1 / 2 else -(1 / 2)) * HCPolySupport.cubeScaleFactor T.supportCube
Instances For
V(△): the vertex set of a Kuhn cell.
Instances For
The standard simplicial decomposition S_j(□) #
The enumeration equivalence used to count the cells of a decomposition.
Equations
- One or more equations did not get rendered due to their size.
Instances For
ABK26 S_j(□): the decomposition of the triadic cube Q into the triadic
simplices of size 3^j supported on its scale-j triadic descendants. Empty
when j > Q.scale, matching the display's range j ≤ m.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The size clause of S_j(□): every simplex of S_j(□) has size 3^j.
The canonical half-open cells of S_j(□) cover the half-open cube exactly.
The half-open cells of S_j(□) are pairwise disjoint, boundaries included.
The manuscript's open simplices of S_j(□) are pairwise disjoint.
Nesting of the standard decompositions #
The lexicographic key that coarsens a child order across one triadic subdivision: first the child's digit in that coordinate, then the child's own rank.
Equations
- Algsuperdiff.Section3.Provider.Whitney.childKuhnOrderKey digits pi i = toLex (↑(digits i), ↑((Equiv.symm pi) i))
Instances For
The parent order induced by a child cube's digits and the child's order.
Equations
Instances For
Every simplex of a deeper decomposition of Q lies in one of the d!
simplices of Q itself.
Nested standard decompositions. Every simplex of the finer decomposition
S_{j'}(□) lies inside a simplex of any coarser decomposition S_j(□), j' ≤ j ≤ Q.scale. This is the only cross-scale compatibility that e.SW.def
supports.