Splitting the vertices of a multigraph into directed paths #
Fix a set K of kept edges. Every vertex w is replaced by a directed path of slots, one
for each end at w of a kept edge: first the ends of the kept edges entering w, then the
ends of those leaving w. Each kept edge joins the slot of its tail end to the slot of its
head end, and consecutive slots of a path are joined by a path edge.
Every slot meets at most two path edges and one kept edge, and no edge is a loop. A vertex
with s > 0 slots contributes s vertices and s - 1 path edges, so the number of edges
minus the number of vertices is the number of kept edges minus the number of vertices with a
slot. A directed walk entering a vertex along a kept edge arrives at an entering slot, and the
path reaches every leaving slot from there, so directed walks lift; a lifted walk stays in
the paths of the vertices of the original walk, so vertex-disjoint walks lift to
vertex-disjoint walks.
Keeping the edges whose tail lies in the undirected component of a vertex r makes the split
graph connected. Applied to a superconcentrator whose terminals lie in that component, the
split graph is a superconcentrator, with each input placed at the first slot of its path and
each output at the last.
Positions in a finite set #
The split graph #
The kept edges directed into w.
Equations
- Algebraic.Cutwidth.Superconcentrator.Internal.inEdges G K w = {e ∈ K | G.snd e = w}
Instances For
The kept edges directed out of w.
Equations
- Algebraic.Cutwidth.Superconcentrator.Internal.outEdges G K w = {e ∈ K | G.fst e = w}
Instances For
The number of slots of w: the number of ends at w of kept edges.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The vertices of the split graph: the slots of all vertices.
Equations
Instances For
The edges of the split graph: the kept edges and the path edges joining consecutive slots.
Equations
- Algebraic.Cutwidth.Superconcentrator.Internal.SplitEdge G K = (↥K ⊕ (w : V) × Fin (Algebraic.Cutwidth.Superconcentrator.Internal.slots G K w - 1))
Instances For
The slot at which a kept edge leaves its tail.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The slot at which a kept edge enters its head.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The split graph: kept edges run from tail slots to head slots, and path edges from each slot to the next slot of the same vertex.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The split graph has no loops.
Every slot meets at most three edges: the kept edge of the slot and two path edges.
Counting #
The split graph has two slots for every kept edge.
Edges minus vertices of the split graph: kept edges minus vertices with a slot.
Walks inside one vertex path #
Directed steps of the split graph between slots of vertices in P.
Equations
- Algebraic.Cutwidth.Superconcentrator.Internal.stepIn P a b = ((Algebraic.Cutwidth.Superconcentrator.Internal.split G K).DirAdj a b ∧ a.fst ∈ P ∧ b.fst ∈ P)
Instances For
Inside the path of a vertex of P, each slot reaches every later slot.
Any two slots of one vertex are joined in the split graph.