For any undirected and weighted graph with vertices and edges, we call a sparse subgraph of , with proper reweighting of the edges, a -spectral sparsifier if \[ (1-\varepsilon)x^{\intercal}L_Gx\leq x^{\intercal} L_{H} x\leq (1+\varepsilon) x^{\intercal} L_Gx \] holds for any , where and are the respective Laplacian matrices of and . Noticing that time is needed for any algorithm to construct a spectral sparsifier and a spectral sparsifier of requires edges, a natural question is to investigate, for any constant , if a -spectral sparsifier of with edges can be constructed in time, where the notation suppresses polylogarithmic factors. All previous constructions on spectral sparsification require either super-linear number of edges or time. In this work we answer this question affirmatively by presenting an algorithm that, for any undirected graph and , outputs a -spectral sparsifier of with edges in time. Our algorithm is based on three novel techniques: (1) a new potential function which is much easier to compute yet has similar guarantees as the potential functions used in previous references; (2) an efficient reduction from a two-sided spectral sparsifier to a one-sided spectral sparsifier; (3) constructing a one-sided spectral sparsifier by a semi-definite program.
View on arXiv