Smooth functions and affine slices on the standard simplex #
These geometric and calculus lemmas do not depend on Dirichlet densities or parameters.
The historical DirichletTransform namespace is retained for compatibility.
A function has N continuous derivatives near the closed standard simplex if it has that
regularity on some open neighborhood of the simplex in the ambient coordinate space.
Equations
- DirichletTransform.ContDiffNearStdSimplex N f = ∃ (U : Set (ι → ℝ)), IsOpen U ∧ Convexity.StdSimplex.coordinateSet ℝ ι ⊆ U ∧ ContDiffOn ℝ (↑N) f U
Instances For
Having more derivatives near the simplex implies having any smaller number of derivatives there.
Finite differentiability on a neighborhood implies continuity on the closed simplex.
Tangential derivatives #
The tangent vector to the simplex that increases coordinate j and decreases coordinate
k at the same rate.
Equations
- DirichletTransform.stdSimplexTangentVector j k = Pi.single j 1 - Pi.single k 1
Instances For
A simplex tangent vector has coordinate sum zero.
Reversing a simplex tangent direction negates it.
Transferring mass from a coordinate to itself gives the zero tangent vector.
The ambient directional derivative in the tangent direction that transfers mass from
coordinate k to coordinate j. Unlike a single coordinate derivative, this derivative is
intrinsic to the affine hyperplane containing the simplex.
Equations
- DirichletTransform.stdSimplexTangentDeriv j k f u = (fderiv ℝ f u) (DirichletTransform.stdSimplexTangentVector j k)
Instances For
Taking one tangential derivative consumes one order of differentiability near the simplex. This is the differential operator used in the boundary integration-by-parts recursion.
Boundary faces #
Restriction of a function to the face where coordinate i is zero. The remaining
coordinates are indexed by {j // j ≠ i} and already sum to one on their standard simplex.
Equations
Instances For
Restricting to a boundary face preserves finite differentiability near the corresponding lower-dimensional standard simplex.
Slice parametrization #
The affine line from the face u i = 0 to the vertex e i, parametrized so that the
omitted coordinate equals t.
Equations
- DirichletTransform.stdSimplexSlice i t f v = f (stdSimplexCoordMap i fun (j : { j : ι // j ≠ i }) => (1 - t) * v j)
Instances For
On the standard simplex of the complementary coordinates, the scaled chart is the line
from the face point to the vertex Pi.single i 1.
Finite differentiability near the simplex is inherited by every slice.
Affine slices of a continuous simplex function remain continuous on the opposite face.
The identity 1 = ∑ i, u i ^ M / powerPartitionDenom M u lets each term reserve
enough powers of its omitted coordinate for all the subsequent parameter shifts.
Equations
- DirichletTransform.powerPartitionDenom M u = ∑ j : ι, ↑(u j) ^ M