Transferring graph orderings to straight-line programs #
The graph-ordering hypothesis Multigraph.OrderingBound A η C lays out every connected loopless
multigraph of maximum degree three so that every lower-set cut has at most
(A + η) (M - N)⁺ + 3 log₂ N + C edges. This file transfers it to the wires of a straight-line
program over any signature, with any value type and any outputs, whose gates have at
most two arguments: it ranks the wires so that every prefix is crossed by few signals in the
sense of SingleCut.forward and SingleCut.backward.
The ordering transfer (exists_rank). For a program with fan-in at most two there is an
injective ranking of its wires, with ranks below n + s, such that for every wire w the
prefix P of the wires ranked at most as high as w satisfies
|forward P| + |backward P| ≤ (A + η) (g - i)⁺ + 3 log₂ (n + 3 s) + C,
where g and i are the numbers of gates and inputs in the component of w in the wire graph
(component). When the wire graph is connected (exists_rank_of_connected), every prefix
satisfies |forward P| + |backward P| ≤ (A + η) (s - n)⁺ + 3 log₂ (n + 3 s) + C.
The proof builds, for each component, the subcubic wire graph of Cutwidth.Wiring (a vertex per
wire, plus copy vertices routing a signal read by several argument slots), applies the ordering
hypothesis to it, and pulls the vertex order back to the wires. A signal crossing a split of the
wires crosses the corresponding cut of the wire graph with an edge of its own copy tree, so the
signals crossing a prefix number at most the edges of a lower-set cut. Components are laid out
one after another; a component is closed (component_closed), and closed sets contribute no
crossing signals (forward_union_of_closed, backward_union_of_closed), so a prefix is charged
to the component of its last wire. The outputs play no role: the bound holds for every set of
designated output wires.
Components and closed sets #
Closed sets are invisible to a split. Adding a closed set disjoint from P changes
neither the forward nor the backward signals of P.
The ordering transfer #
The graph-ordering hypothesis forces a nonnegative additive constant.
The ordering transfer. Let a program over any signature have fan-in at most two, and
assume the graph-ordering hypothesis with coefficient A, slack η and constant C. Then
some injective ranking of the wires, with ranks below n + s, has the following property: for
every wire w, the wires ranked at most as high as w are crossed by at most
(A + η) (g - i)⁺ + 3 log₂ (n + 3 s) + C forward and backward signals, where g and i are the
numbers of gates and inputs in the component of w.
The ordering transfer for a connected wire graph. If any two wires are joined by a path
of linked wires, some injective ranking of the wires has every prefix crossed by at most
(A + η) (s - n)⁺ + 3 log₂ (n + 3 s) + C forward and backward signals.