A practical algorithm for 2-admissibility
Christine Awofeso, Patrick Greaves, Oded Lachish, Felix Reidl
TL;DR
This work targets the practical computation of the sparse-graph measure called $2$-admissibility. It presents a polynomial-time, oracle-based algorithm that decides if $ ext{adm}_2(G) \le p$ in $O(p^4|G|)$ time and $O(|E(G)|+p^2)$ space, and it provides a concrete Rust implementation evaluated on 214 real-world networks, demonstrating scalability to large graphs with modest memory footprints. The theoretical construction combines $(2,L)$-path packings with an online oracle to greedily build an admissible ordering, while the implementation shows many networks exhibit small $2$-admissibility and thus can benefit from such structure-aware algorithms. The results suggest 2-admissibility is a practically useful sparseness measure for real networks and lay groundwork for extending the approach to higher admissibility levels ($3$- and $4$-admissibility) in future work.
Abstract
The $2$-admissibility of a graph is a promising measure to identify real-world networks which have an algorithmically favourable structure. In contrast to other related measures, like the weak/strong $2$-colouring numbers or the maximum density of graphs that appear as $1$-subdivisions, the $2$-admissibility can be computed in polynomial time. However, so far these results are theoretical only and no practical implementation to compute the $2$-admissibility exists. Here we present an algorithm which decides whether the $2$-admissibility of an input graph $G$ is at most $p$ in time $O(p^4 |V(G)|)$ and space $O(|E(G)| + p^2)$. The simple structure of the algorithm makes it easy to implement. We evaluate our implementation on a corpus of 214 real-world networks and find that the algorithm runs efficiently even on networks with millions of edges, that it has a low memory footprint, and that indeed many networks have a small $2$-admissibility.
