107,379 research outputs found

    Capturing Topology in Graph Pattern Matching

    Get PDF
    Graph pattern matching is often defined in terms of subgraph isomorphism, an NP-complete problem. To lower its complexity, various extensions of graph simulation have been considered instead. These extensions allow pattern matching to be conducted in cubic-time. However, they fall short of capturing the topology of data graphs, i.e., graphs may have a structure drastically different from pattern graphs they match, and the matches found are often too large to understand and analyze. To rectify these problems, this paper proposes a notion of strong simulation, a revision of graph simulation, for graph pattern matching. (1) We identify a set of criteria for preserving the topology of graphs matched. We show that strong simulation preserves the topology of data graphs and finds a bounded number of matches. (2) We show that strong simulation retains the same complexity as earlier extensions of simulation, by providing a cubic-time algorithm for computing strong simulation. (3) We present the locality property of strong simulation, which allows us to effectively conduct pattern matching on distributed graphs. (4) We experimentally verify the effectiveness and efficiency of these algorithms, using real-life data and synthetic data.Comment: VLDB201

    New Classes of Distributed Time Complexity

    Full text link
    A number of recent papers -- e.g. Brandt et al. (STOC 2016), Chang et al. (FOCS 2016), Ghaffari & Su (SODA 2017), Brandt et al. (PODC 2017), and Chang & Pettie (FOCS 2017) -- have advanced our understanding of one of the most fundamental questions in theory of distributed computing: what are the possible time complexity classes of LCL problems in the LOCAL model? In essence, we have a graph problem Ī \Pi in which a solution can be verified by checking all radius-O(1)O(1) neighbourhoods, and the question is what is the smallest TT such that a solution can be computed so that each node chooses its own output based on its radius-TT neighbourhood. Here TT is the distributed time complexity of Ī \Pi. The time complexity classes for deterministic algorithms in bounded-degree graphs that are known to exist by prior work are Ī˜(1)\Theta(1), Ī˜(logā”āˆ—n)\Theta(\log^* n), Ī˜(logā”n)\Theta(\log n), Ī˜(n1/k)\Theta(n^{1/k}), and Ī˜(n)\Theta(n). It is also known that there are two gaps: one between Ļ‰(1)\omega(1) and o(logā”logā”āˆ—n)o(\log \log^* n), and another between Ļ‰(logā”āˆ—n)\omega(\log^* n) and o(logā”n)o(\log n). It has been conjectured that many more gaps exist, and that the overall time hierarchy is relatively simple -- indeed, this is known to be the case in restricted graph families such as cycles and grids. We show that the picture is much more diverse than previously expected. We present a general technique for engineering LCL problems with numerous different deterministic time complexities, including Ī˜(logā”Ī±n)\Theta(\log^{\alpha}n) for any Ī±ā‰„1\alpha\ge1, 2Ī˜(logā”Ī±n)2^{\Theta(\log^{\alpha}n)} for any Ī±ā‰¤1\alpha\le 1, and Ī˜(nĪ±)\Theta(n^{\alpha}) for any Ī±<1/2\alpha <1/2 in the high end of the complexity spectrum, and Ī˜(logā”Ī±logā”āˆ—n)\Theta(\log^{\alpha}\log^* n) for any Ī±ā‰„1\alpha\ge 1, 2Ī˜(logā”Ī±logā”āˆ—n)\smash{2^{\Theta(\log^{\alpha}\log^* n)}} for any Ī±ā‰¤1\alpha\le 1, and Ī˜((logā”āˆ—n)Ī±)\Theta((\log^* n)^{\alpha}) for any Ī±ā‰¤1\alpha \le 1 in the low end; here Ī±\alpha is a positive rational number
    • ā€¦
    corecore