Core Concepts
We present efficient algorithms for maintaining a proper edge colouring of a dynamic graph, where the number of colours used is parameterized by the graph's arboricity.
Abstract
The paper studies the edge-colouring problem in dynamic graphs, where the goal is to assign colours to the edges such that edges sharing a vertex are coloured differently. The authors present two main results:
Static Algorithm:
The authors show how to compute a static ∆(uv) + O(α) edge colouring in O(m log ∆) time, where ∆(uv) is the maximum degree of the endpoints of edge uv, and α is the arboricity of the graph.
They also present a simpler algorithm that yields a ∆(uv) + 2α - 2 edge colouring in the same time.
Dynamic Algorithm:
The authors present a dynamic algorithm that maintains a ∆max + O(αmax) edge colouring, where ∆max and αmax are the maximum degree and arboricity over the sequence of graph updates, respectively. The algorithm has an amortized update time of O(log n log ∆max).
They then refine the data structure to maintain a ∆(uv) + O(α) edge colouring, with an amortized update time of O(log n log αmax log ∆max) for insertions and O(log^2 n log αmax log α log ∆max) for deletions.
The key ideas are:
Maintaining a hierarchical partition of the graph, where each vertex has a bounded out-degree.
Adapting the colouring to changes in the maximum degree and arboricity.
Using amortized analysis to bound the update time.
The algorithms improve upon the state-of-the-art dynamic edge colouring algorithms, especially for graphs with small arboricity compared to the maximum degree.