Jumping the median band of edge scores: proofs #
Fix c > 0. An edge is low when its score is below -c, in the band when its score lies in
[-c, c), and high otherwise. The band edges carry block labels, and band edges sharing a
vertex carry the same label. Block j has A_j vertices touching it with a low edge and
B_j vertices touching it with a high edge.
The band-jump score keeps the low and high scores and gives every band edge of block j the
same value blockValue j ∈ (-c, c). These values are distinct on the labels in use and
increase with the imbalance B_j - A_j, ties broken by label. The score-order decomposition
of this score has each bag inside the vertices with a jumped score at most t and one at
least t, for some t.
- For
t < -cort ≥ c, these vertices also have a score at mosttand one at leastt. - For
-c ≤ t < c, every such vertex either has no band edge but a low and a high edge, or touches a block valued belowtand has a high edge, or touches a block valued abovetand has a low edge, or touches the block valuedt. The blocks valued belowtall have imbalance at most that of every other block, sosum_add_sum_sdiff_le_maxbounds the middle two counts bymax (∑ A_j) (∑ B_j). The vertices straddling-ccontain the first kind and allA_jvertices disjointly, and those straddlingccontain the first kind and allB_jvertices disjointly.
Exchanging a prefix #
Prefix exchange. If every imbalance b i - a i on F ⊆ L is at most every imbalance
on L \ F, then counting b on F and a on L \ F gives at most the larger total.
Ranks by a key #
The number of elements of L whose key is below the key of j.
Equations
- Algebraic.Cutwidth.Gaussian.Internal.keyRank L κ j = {i ∈ L | κ i < κ j}.card
Instances For
Blocks of band edges #
The vertices with an edge scoring at most t and an edge scoring at least t.
Equations
- Algebraic.Cutwidth.Gaussian.Internal.scoreSpan H score t = {v : W | (∃ e ∈ H.edgeFinset, v ∈ e ∧ score e ≤ t) ∧ ∃ e ∈ H.edgeFinset, v ∈ e ∧ t ≤ score e}
Instances For
Band edges -c ≤ score e < c sharing a vertex carry the same block label.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The block labels of the band edges.
Equations
- Algebraic.Cutwidth.Gaussian.Internal.bandLabels H score c block = Finset.image block ({e ∈ H.edgeFinset | -c ≤ score e ∧ score e < c})
Instances For
The vertices without a band edge but with an edge scoring below -c and an edge scoring
at least c.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The endpoints of the band edges of block j.
Equations
Instances For
The endpoints of the band edges of block j with an edge scoring below -c.
Equations
Instances For
The endpoints of the band edges of block j with an edge scoring at least c.
Equations
Instances For
The imbalance B_j - A_j of block j.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The rank of block j among the band labels, ordered by imbalance and then by label.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The value of block j, strictly between -c and c and increasing with its rank.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Counting the straddling vertices #
Disjoint pieces of T have total size at most |T|.
The vertices straddling -c contain the band-free ones and, disjointly, the low
endpoints of every block.
The vertices straddling c contain the band-free ones and, disjointly, the high
endpoints of every block.
The band-jump score #
Outside the band, the band-jump score only removes vertices.
Inside the band, a vertex with a jumped score at most t and one at least t is
band-free, a high endpoint of a block valued below t, a low endpoint of a block valued
above t, or an endpoint of the block valued t.
Block values #
The band-jump decomposition #
Band-jump path decomposition. The score-order decomposition of the band-jump score
bandScore score c block (blockValue H score c block): bags at thresholds outside the band are
bounded by outside, and bags inside it by inside for the block valued at the threshold.
Outside the band, thresholds come from a low grid reaching -c, a high grid starting at
or below c, and the two tails.