Topology · w
W Graph
Each node in the first half connects to k nodes in the second half (circular).
Evaluation
Linear · T ∘ E–iterations (left / right recursion)
Doubling · T ∘ T–iterations (double recursion)
iteration 1new pairs per iteration
Point at a node (or tab to the drawing and use the arrow keys) to see every node it reaches, wave by wave. Those pairs are its rows of the closure.
Nodes · edges10 · 25
Closure |TC|25
Closure / edges1.0×
A small instance from the generator the benchmark runs with n from 100 upwards.
Definition
Symbol
W_{n,k}
Edges
\{(i, n+1 + (i+j-1) \bmod n) \mid i \in 1..n, j \in 1..k\}
Generator
engine.data_generator.DataGenerator.generate_w_graphgenerate_db.py
def generate_w_graph(self, n: int) -> Generator[tuple[int, int], None, None]:
"""Generate a W graph with n nodes."""
logging.info(f'Generating W graph for n={n}')
for i in range(1, n + 1):
for j in range(1, self.k + 1):
yield (i, n + 1 + (i + j - 1) % n)