Multi-break firing scripts on the closed length orthant #
This is the closed-face counterpart of the concrete part of
MultiBreakScript.lean. A row leaf first evaluates its named break positions,
then supplies the resulting concrete lists here. A zero-length slot has no
steps; BreakData.balance consequently forces its endpoint potential to agree.
Effectivity on a contracted subdivision reduces to its quotient-core and interior summands. This is the closed-face counterpart of the positive multi-break helper, and is the assembly point a row leaf uses after W4/W5.
An effective representative carrying a chip at a target vertex witnesses reachability there. It works verbatim on closed faces, including when core vertices have merged.
Path values of a closed-face multi-break script.
Equations
- d.breakValue potential breaks edge k = potential (d.core.tail edge) + ∑ j ∈ Finset.range k, Utilities.Certificate.SubdivisionGraph.Spec.breakSlope (breaks edge) j
Instances For
The concrete multi-break firing script on a contracted subdivision.
Equations
- d.breakScript potential breaks = d.slotValueScript potential (d.breakValue potential breaks)
Instances For
Closing condition for a multi-break script, including zero slots.
- balance (edge : Fin p) : potential (d.core.head edge) = potential (d.core.tail edge) + ∑ j ∈ Finset.range (d.length edge), SubdivisionGraph.Spec.breakSlope (breaks edge) j
Instances For
The unit-step slopes are the decoded break slopes. Vanishing slots impose no condition because their step type is empty.
At a contracted core class, the Laplacian is the endpoint sum over every original slot, including vanishing slots (which cancel in the generic formula).
At a surviving interior vertex, the Laplacian is the jump of the break slope.
The principal divisor vanishes away from named break positions.