13 research outputs found

    An Optimal Algorithm for Triangle Counting in the Stream

    Get PDF
    We present a new algorithm for approximating the number of triangles in a graph G whose edges arrive as an arbitrary order stream. If m is the number of edges in G, T the number of triangles, ?_E the maximum number of triangles which share a single edge, and ?_V the maximum number of triangles which share a single vertex, then our algorithm requires space: O?(m/T?(?_E + ?{?_V})) Taken with the ?((m ?_E)/T) lower bound of Braverman, Ostrovsky, and Vilenchik (ICALP 2013), and the ?((m ?{?_V})/T) lower bound of Kallaugher and Price (SODA 2017), our algorithm is optimal up to log factors, resolving the complexity of a classic problem in graph streaming

    A Simple Proof of a New Set Disjointness with Applications to Data Streams

    Get PDF

    Spiking Neural Networks Through the Lens of Streaming Algorithms

    Get PDF
    We initiate the study of biological neural networks from the perspective of streaming algorithms. Like computers, human brains suffer from memory limitations which pose a significant obstacle when processing large scale and dynamically changing data. In computer science, these challenges are captured by the well-known streaming model, which can be traced back to Munro and Paterson `78 and has had significant impact in theory and beyond. In the classical streaming setting, one must compute some function ff of a stream of updates S={u1,,um}\mathcal{S} = \{u_1,\ldots,u_m\}, given restricted single-pass access to the stream. The primary complexity measure is the space used by the algorithm. We take the first steps towards understanding the connection between streaming and neural algorithms. On the upper bound side, we design neural algorithms based on known streaming algorithms for fundamental tasks, including distinct elements, approximate median, heavy hitters, and more. The number of neurons in our neural solutions almost matches the space bounds of the corresponding streaming algorithms. As a general algorithmic primitive, we show how to implement the important streaming technique of linear sketching efficient in spiking neural networks. On the lower bound side, we give a generic reduction, showing that any space-efficient spiking neural network can be simulated by a space-efficiently streaming algorithm. This reduction lets us translate streaming-space lower bounds into nearly matching neural-space lower bounds, establishing a close connection between these two models.Comment: To appear in DISC'20, shorten abstrac

    An Asymptotically Optimal Algorithm for Maximum Matching in Dynamic Streams

    Get PDF
    We present an algorithm for the maximum matching problem in dynamic (insertion-deletions) streams with *asymptotically optimal* space complexity: for any nn-vertex graph, our algorithm with high probability outputs an α\alpha-approximate matching in a single pass using O(n2/α3)O(n^2/\alpha^3) bits of space. A long line of work on the dynamic streaming matching problem has reduced the gap between space upper and lower bounds first to no(1)n^{o(1)} factors [Assadi-Khanna-Li-Yaroslavtsev; SODA 2016] and subsequently to polylog(n)\text{polylog}{(n)} factors [Dark-Konrad; CCC 2020]. Our upper bound now matches the Dark-Konrad lower bound up to O(1)O(1) factors, thus completing this research direction. Our approach consists of two main steps: we first (provably) identify a family of graphs, similar to the instances used in prior work to establish the lower bounds for this problem, as the only "hard" instances to focus on. These graphs include an induced subgraph which is both sparse and contains a large matching. We then design a dynamic streaming algorithm for this family of graphs which is more efficient than prior work. The key to this efficiency is a novel sketching method, which bypasses the typical loss of polylog(n)\text{polylog}{(n)}-factors in space compared to standard L0L_0-sampling primitives, and can be of independent interest in designing optimal algorithms for other streaming problems.Comment: Full version of the paper accepted to ITCS 2022. 42 pages, 5 Figure

    Streaming Algorithms with Large Approximation Factors

    Get PDF

    On Constructing Spanners from Random Gaussian Projections

    Get PDF
    Graph sketching is a powerful paradigm for analyzing graph structure via linear measurements introduced by Ahn, Guha, and McGregor (SODA\u2712) that has since found numerous applications in streaming, distributed computing, and massively parallel algorithms, among others. Graph sketching has proven to be quite successful for various problems such as connectivity, minimum spanning trees, edge or vertex connectivity, and cut or spectral sparsifiers. Yet, the problem of approximating shortest path metric of a graph, and specifically computing a spanner, is notably missing from the list of successes. This has turned the status of this fundamental problem into one of the most longstanding open questions in this area. We present a partial explanation of this lack of success by proving a strong lower bound for a large family of graph sketching algorithms that encompasses prior work on spanners and many (but importantly not also all) related cut-based problems mentioned above. Our lower bound matches the algorithmic bounds of the recent result of Filtser, Kapralov, and Nouri (SODA\u2721), up to lower order terms, for constructing spanners via the same graph sketching family. This establishes near-optimality of these bounds, at least restricted to this family of graph sketching techniques, and makes progress on a conjecture posed in this latter work

    Graph Connectivity and Single Element Recovery via Linear and OR Queries

    Get PDF
    We study the problem of finding a spanning forest in an undirected, nn-vertex multi-graph under two basic query models. One is the Linear query model which are linear measurements on the incidence vector induced by the edges; the other is the weaker OR query model which only reveals whether a given subset of plausible edges is empty or not. At the heart of our study lies a fundamental problem which we call the {\em single element recovery} problem: given a non-negative real vector xx in NN dimension, return a single element xj>0x_j > 0 from the support. Queries can be made in rounds, and our goals is to understand the trade-offs between the query complexity and the rounds of adaptivity needed to solve these problems, for both deterministic and randomized algorithms. These questions have connections and ramifications to multiple areas such as sketching, streaming, graph reconstruction, and compressed sensing. Our main results are: * For the single element recovery problem, it is easy to obtain a deterministic, rr-round algorithm which makes (N1/r1)(N^{1/r}-1)-queries per-round. We prove that this is tight: any rr-round deterministic algorithm must make (N1/r1)\geq (N^{1/r} - 1) linear queries in some round. In contrast, a 11-round O(log2N)O(\log^2 N)-query randomized algorithm which succeeds 99% of the time is known to exist. * We design a deterministic O(r)O(r)-round, O~(n1+1/r)\tilde{O}(n^{1+1/r})-OR query algorithm for graph connectivity. We complement this with an Ω~(n1+1/r)\tilde{\Omega}(n^{1 + 1/r})-lower bound for any rr-round deterministic algorithm in the OR-model. * We design a randomized, 22-round algorithm for the graph connectivity problem which makes O~(n)\tilde{O}(n)-OR queries. In contrast, we prove that any 11-round algorithm (possibly randomized) requires Ω~(n2)\tilde{\Omega}(n^2)-OR queries
    corecore