Reachability Queries in Very Large Graphs: a Fast Refined Online Search Approach

Total Page:16

File Type:pdf, Size:1020Kb

Reachability Queries in Very Large Graphs: a Fast Refined Online Search Approach Reachability Queries in Very Large Graphs: A Fast Refined Online Search Approach Renê R. Veloso1, Loïc Cerf2, Wagner Meira Jr2, Mohammed J. Zaki3,4 1Universidade Est. Montes Claros, Brazil 2Universidade Federal de Minas Gerais, Belo Horizonte MG, Brazil 3Qatar Computing Research Institute, Doha, Qatar 4Rensselaer Polytechnic Institute, Troy NY, USA [email protected], {lcerf,meira}@dcc.ufmg.br, [email protected] ABSTRACT A key problem in many graph-based applications is the need to know, given a directed graph G and two vertices u, v ∈ G, whether there is a path between u and v, i. e., if u reaches v. This problem is particularly challenging in the case of very large real-world graphs. A common approach is the pre- processing of the graphs, in order to produce an efficient index structure, which allows fast access to the reachability Figure 1: Reachability query tradeoffs information of the vertices. However, the majority of exist- ing methods can not handle very large graphs. We propose, in this paper, a novel indexing method called FELINE (Fast rEfined onLINE search), which is inspired by Dominance task even harder and demands the development of efficient Graph Drawing. FELINE creates an index from the graph methods to handle these graphs. representation in a two-dimensional plane, which provides A common problem in several graph-based applications is reachability information in constant time for a significant to verify whether a vertex is reachable from another. Let G V,E V portion of queries. Experiments demonstrate the efficiency = ( ) be a directed graph, with being its set of E V 2 of FELINE compared to state-of-the-art approaches. vertices and ⊆ its set of edges. A reachability query r(u, v) asks whether a vertex v ∈ V is reachable from a vertex u ∈ V , i. e., whether there is a path from u to v in G Categories and Subject Descriptors (see Definition 1). This decision problem is often found in H.2 [Database Management]: Systems; G.2.2 [Discrete social networks analysis, where, for instance, it is necessary Mathematics]: Graph Theory—graph labeling, graph algo- to learn whether there is a relationship between two entities, rithms, path and circuit problems for security reasons, to provide conditional access to shared resources or in business intelligence [2, 13]. Reachability is General Terms also useful to determine the visibility between websites for link structure analysis [25]. Algorithms, Performance Definition 1 (Reachability). Keywords 2 Reachability queries, online search, graph indexing ∀(u, v) ∈ V , v is reachable from u, denoted r(u, v), u = v 1. INTRODUCTION if and only if or . Developing scalable methods for the analysis of large sets ∃(u, w) ∈ E ∧ r(w, v) of graphs, including graphs that model biological and chem- ical structures is a challenging task. Further, the continuous Definition 1 shows the reachability relation r. This reach- growth of the size of the graphs, mainly in the web context, ability relation trivially is reflexive and transitive. It is not where they can reach tens of millions of nodes, makes such a antisymmetric, hence not a partial order, because G may contain cycles. That is why the approaches first turn G acyclic, i. e., they build the graph G′ = (V ′,E′) by con- densation (folding every strongly connected component of G into one single vertex in V ′ and retaining in E′ the edges be- tween those components). Tarjan’s algorithm [30] is used to identify the strongly connected components, i. e., the func- (c) 2014, Copyright is with the authors. Published in Proc. 17th Inter- tion scc : V → V ′. Its time complexity is O(|V | + |E|). By national Conference on Extending Database Technology (EDBT), March using the acyclic graph G′, the answer to the reachability 24-28, 2014, Athens, Greece: ISBN 978-3-89318065-3, on OpenProceed- query from u ∈ V to v ∈ V (in G) is the same as the answer ings.org. Distribution of this paper is permitted under the terms of the Cre- ′ ′ ative Commons license CC-by-nc-nd 4.0 to the reachability query from scc(u) ∈ V to scc(v) ∈ V 511 10.5441/002/edbt.2014.46 (in G′). However the reachability relation in G′ now is a 2. RELATED WORK partial order. As mentioned, Jin et al. [18] divides the existing ap- We follow the convention of existing approaches and as- proaches into three classes: Transitive Closure Compression, sume that all input graphs have been transformed into their ′ Hop Labeling and Refined Online Search. The methods of corresponding DAGs, i. e., we will refer the graph G as the the first class [1, 8, 21, 26, 33, 34] compress the transitive DAG G, omitting the application of function scc(u) to every closure of edges to assign to each vertex u a reachability com- vertex u ∈ V . Thus, we will discuss methods for reachability pressed set. Thus, we determine the reachability between only on DAGs. two vertices by verifying whether the destination vertex is As explained by Yildirim et al. [35], there are two basic in the reachability compressed set of the origin vertex. The approaches to answer reachability queries on DAGs, which second class is called Hop Labeling [10, 11, 16, 20, 27] and are in two extremes of a spectrum (see Figure 1 extracted its methods use intermediate vertices to encode the reach- from [35]). The first approach (left side) is to pre-compute ability between two other vertices. In general, each node and store the full transitive closure of edges, which allows maintains a list of intermediate vertices that it can reach, constant time queries, but requires a quadratic space com- and a list of intermediate vertices that can reach it. Con- plexity, making it infeasible to maintain the index in the sequently, to answer the queries, a join operation is made case of very large graphs. The second approach (right side) between the lists to determine the occurrence of vertices in is to employ a DFS or BFS search to verify the reachability, common. In the third class, as proposed by [7, 28, 31, 35], starting from vertex u to vertex v. This approach requires the approaches are based on the use of online searches. In O(|V | + |E|) time for each query, which is often unaccept- this case, they use a scheme for labeling the vertices in order able. There are some alternate approaches between these to prune aggressively the search space, minimizing the num- two basic ones, including ours, which aim to obtain a small ber of vertices to be expanded. However, the original graph index that is able to answer most queries in O(1) time. must be maintained in the memory to enable the searches, In a recent work, Jin et al. [18] divide the existing alter- which is usually in DFS fashion. Thus, these approaches nate approaches into three classes: Transitive Closure Com- have the advantage of not requiring prior computation of pression, Hop Labeling and Refined Online Search. How- the transitive closure in the construction of the index, and ever, the same work states that the manipulation of large have a more intuitive index construction step, which allows real-world graphs is not supported by the majority of the its application to very large graphs, and the query costs, in methods. In this paper, we demonstrate that it is possible the worst case, grow proportionally to the size of the graph. to create a new and efficient reachability index for very large Despite all the existing approaches, Yildirim et al. [35] graphs, that is simple to understand and easy to implement. showed in their work that very large graphs are not sup- This new index is inspired by Weak Dominance Drawing and ported by the vast majority of them. For example, the re- exposes a nice connection to graph drawing literature [3, 4, cent PATHTREE [19], that had its scalability contested [18, 14, 23]. 28, 35], since it performed well just on small graphs. In- Our reachability index represents non-planar DAGs in a deed, we found in the literature only three methods that two dimensional plane by assigning to each vertex u a unique can handle graphs with more than 100,000 edges, the Nuu- 2 coordinate (i. e., a pair of integers (xu,yu)) in the N plane, tila’s INTERVAL [26, 33], GRAIL [35], FERRARI [28] and preserving the reachability relations between most pairs of TF-Label [9]. vertices. Graphically, we translate reachability to the re- Nuutila’s INTERVAL [26, 33] extracts the complete tran- lation “being at the upper-right”, that is, both coordinates sitive closure of the graph, and uses some lists of interval rep- of a vertex v, reachable from another vertex u, need to be resentation to compress any contiguous vertex segment. For greater than or equal to the respective coordinates of u, instance, if the transitive closure of vertex u is the set of ver- necessarily. When this geometrical relation holds, we veri- tices identified by the integers 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, it can fy the reachability through a search in a reduced part of be compressed into three intervals: [1, 4],[6, 9] and [11, 12]. A the graph, identified from the index. When it does not, the bit-vector compression method, called PWAH (Partitioned non-reachability is decided in constant time. Word Aligned Hybrid compression scheme), is used to com- Based on this index, we present in this paper a novel in- press these lists of intervals, allowing efficient operation with dexing method called FELINE (Fast rEfined onLINE search).
Recommended publications
  • Masters Thesis: an Approach to the Automatic Synthesis of Controllers with Mixed Qualitative/Quantitative Specifications
    An approach to the automatic synthesis of controllers with mixed qualitative/quantitative specifications. Athanasios Tasoglou Master of Science Thesis Delft Center for Systems and Control An approach to the automatic synthesis of controllers with mixed qualitative/quantitative specifications. Master of Science Thesis For the degree of Master of Science in Embedded Systems at Delft University of Technology Athanasios Tasoglou October 11, 2013 Faculty of Electrical Engineering, Mathematics and Computer Science (EWI) · Delft University of Technology *Cover by Orestis Gartaganis Copyright c Delft Center for Systems and Control (DCSC) All rights reserved. Abstract The world of systems and control guides more of our lives than most of us realize. Most of the products we rely on today are actually systems comprised of mechanical, electrical or electronic components. Engineering these complex systems is a challenge, as their ever growing complexity has made the analysis and the design of such systems an ambitious task. This urged the need to explore new methods to mitigate the complexity and to create sim- plified models. The answer to these new challenges? Abstractions. An abstraction of the the continuous dynamics is a symbolic model, where each “symbol” corresponds to an “aggregate” of states in the continuous model. Symbolic models enable the correct-by-design synthesis of controllers and the synthesis of controllers for classes of specifications that traditionally have not been considered in the context of continuous control systems. These include qualitative specifications formalized using temporal logics, such as Linear Temporal Logic (LTL). Be- sides addressing qualitative specifications, we are also interested in synthesizing controllers with quantitative specifications, in order to solve optimal control problems.
    [Show full text]
  • Efficient Graph Reachability Query Answering Using Tree Decomposition
    Efficient Graph Reachability Query Answering using Tree Decomposition Fang Wei Computer Science Department, University of Freiburg, Germany Abstract. Efficient reachability query answering in large directed graphs has been intensively investigated because of its fundamental importance in many application fields such as XML data processing, ontology rea- soning and bioinformatics. In this paper, we present a novel indexing method based on the concept of tree decomposition. We show analytically that this intuitive approach is both time and space efficient. We demonstrate empirically the efficiency and the effectiveness of our method. 1 Introduction Querying and manipulating large scale graph-like data has attracted much atten- tion in the database community, due to the wide application areas of graph data, such as GIS, XML databases, bioinformatics, social network, and ontologies. The problem of reachability test in a directed graph is among the fundamental operations on the graph data. Given a digraph G = (V; E) and u; v 2 V , a reachability query, denoted as u ! v, ask: is there a path from u to v? One of the fundamental queries on biological networks is for instance, to find all genes whose expressions are directly or indirectly influenced by a given molecule [15]. Given the graph representation of the genes and regulation events, the question can also be reduced to the reachability query in a directed graph. Recently, tree decomposition methodologies have been successfully applied to solving shortest path query answering over undirected graphs [17]. Briefly stated, the vertices in a graph G are decomposed into a tree in which each node contains a set of vertices in G.
    [Show full text]
  • Depth-First Search & Directed Graphs
    Depth-first Search and Directed Graphs Story So Far • Breadth-first search • Using breadth-first search for connectivity • Using bread-first search for testing bipartiteness BFS (G, s): Put s in the queue Q While Q is not empty Extract v from Q If v is unmarked Mark v For each edge (v, w): Put w into the queue Q The BFS Tree • Can remember parent nodes (the node at level i that lead us to a given node at level i + 1) BFS-Tree(G, s): Put (∅, s) in the queue Q While Q is not empty Extract (p, v) from Q If v is unmarked Mark v parent(v) = p For each edge (v, w): Put (v, w) into the queue Q Spanning Trees • Definition. A spanning tree of an undirected graph G is a connected acyclic subgraph of G that contains every node of G . • The tree produced by the BFS algorithm (with (( u, parent(u)) as edges) is a spanning tree of the component containing s . • The BFS spanning tree gives the shortest path from s to every other vertex in its component (we will revisit shortest path in a couple of lectures) • BFS trees in general are short and bushy Spanning Trees • Definition. A spanning tree of an undirected graph G is a connected acyclic subgraph of G that contains every node of G . • The tree produced by the BFS algorithm (with (( u, parent(u)) as edges) is a spanning tree of the component containing s . • The BFS spanning tree gives the shortest path from s to every other vertex in its component (we will revisit shortest path in a couple of lectures) • BFS trees in general are short and bushy Generalizing BFS: Whatever-First If we change how we store
    [Show full text]
  • An Efficient Reachability Indexing Scheme for Large Directed Graphs
    1 Path-Tree: An Efficient Reachability Indexing Scheme for Large Directed Graphs RUOMING JIN, Kent State University NING RUAN, Kent State University YANG XIANG, The Ohio State University HAIXUN WANG, Microsoft Research Asia Reachability query is one of the fundamental queries in graph database. The main idea behind answering reachability queries is to assign vertices with certain labels such that the reachability between any two vertices can be determined by the labeling information. Though several approaches have been proposed for building these reachability labels, it remains open issues on how to handle increasingly large number of vertices in real world graphs, and how to find the best tradeoff among the labeling size, the query answering time, and the construction time. In this paper, we introduce a novel graph structure, referred to as path- tree, to help labeling very large graphs. The path-tree cover is a spanning subgraph of G in a tree shape. We show path-tree can be generalized to chain-tree which theoretically can has smaller labeling cost. On top of path-tree and chain-tree index, we also introduce a new compression scheme which groups vertices with similar labels together to further reduce the labeling size. In addition, we also propose an efficient incremental update algorithm for dynamic index maintenance. Finally, we demonstrate both analytically and empirically the effectiveness and efficiency of our new approaches. Categories and Subject Descriptors: H.2.8 [Database management]: Database Applications—graph index- ing and querying General Terms: Performance Additional Key Words and Phrases: Graph indexing, reachability queries, transitive closure, path-tree cover, maximal directed spanning tree ACM Reference Format: Jin, R., Ruan, N., Xiang, Y., and Wang, H.
    [Show full text]
  • The Surprizing Complexity of Generalized Reachability Games Nathanaël Fijalkow, Florian Horn
    The surprizing complexity of generalized reachability games Nathanaël Fijalkow, Florian Horn To cite this version: Nathanaël Fijalkow, Florian Horn. The surprizing complexity of generalized reachability games. 2010. hal-00525762v2 HAL Id: hal-00525762 https://hal.archives-ouvertes.fr/hal-00525762v2 Preprint submitted on 2 Feb 2012 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. The surprising complexity of generalized reachability games Nathanaël Fijalkow1,2 and Florian Horn1 1 LIAFA CNRS & Université Denis Diderot - Paris 7, France {nath,florian.horn}@liafa.jussieu.fr 2 ÉNS Cachan École Normale Supérieure de Cachan, France Abstract. Games on graphs provide a natural and powerful model for reactive systems. In this paper, we consider generalized reachability objectives, defined as conjunctions of reachability objectives. We first prove that deciding the winner in such games is PSPACE-complete, although it is fixed-parameter tractable with the number of reachability objectives as parameter. Moreover, we consider the memory requirements for both players and give matching upper and lower bounds on the size of winning strategies. In order to allow more efficient algorithms, we consider subclasses of generalized reachability games. We show that bounding the size of the reachability sets gives two natural subclasses where deciding the winner can be done efficiently.
    [Show full text]
  • Lecture 16: Directed Graphs
    Lecture 16: Directed Graphs BOS ORD JFK SFO DFW LAX MIA Courtesy of Goodrich, Tamassia and Olga Veksler Instructor: Yuzhen Xie Outline Directed Graphs Properties Algorithms for Directed Graphs DFS and BFS Strong Connectivity Transitive Closure DAG and Toppgological Ordering 2 Digraphs A digraph is a ggpraph whose E edges are all directed D Short for “directed graph” C Applications B one-way streets A flights task scheduling 3 Digraph Properties E D A graph G=(V,E) such that Each edge goes in one direction: C Ed(dge (A,B) goes from A to B, Edge (B,A) goes from B to A, B If G is simple, m < n*(n-1). A If we keep in-edges and out-edges in separate adjacency lists, we can perform listing of in-edges and out-edges in time proportional to their size OutgoingEdges(A): (A,C), (A,D), (A,B) IngoingEdges(A): (E,A),(B,A) We say that vertex w is reachable from vertex v if there is a directed path from v to w EiseahablefomAE is reachable from A E is not reachable from D 4 Algorithm DFS(G, v) Directed DFS Input digraph G and a start vertex v of G Output traverses vertices in G reachable from v We can specialize the setLabel(v, VISITED) traversal algorithms (DFS and for all e ∈ G.outgoingEdges(v) BFS) to digraphs by traversing edges only along w ← opposite(v,e) their direction if getLabel(w) = UNEXPLORED DFS(G, w) In the directed DFS algorithm, we have 3 four types of edges E discovery edges 4 bkdback edges D forward edges cross edges A directed DFS starting at a C 2 vertex s visits all the vertices reachable from s B 5
    [Show full text]
  • An Efficient Strongly Connected Components Algorithm In
    An Efficient Strongly Connected Components Algorithm in the Fault Tolerant Model∗† Surender Baswana1, Keerti Choudhary2, and Liam Roditty3 1 Department of Computer Science and Engineering, IIT Kanpur, Kanpur, India [email protected] 2 Department of Computer Science and Engineering, IIT Kanpur, Kanpur, India [email protected] 3 Department of Computer Science, Bar Ilan University, Ramat Gan, Israel [email protected] Abstract In this paper we study the problem of maintaining the strongly connected components of a graph in the presence of failures. In particular, we show that given a directed graph G = (V, E) with n = |V | and m = |E|, and an integer value k ≥ 1, there is an algorithm that computes in O(2kn log2 n) time for any set F of size at most k the strongly connected components of the graph G \ F . The running time of our algorithm is almost optimal since the time for outputting the SCCs of G \ F is at least Ω(n). The algorithm uses a data structure that is computed in a preprocessing phase in polynomial time and is of size O(2kn2). Our result is obtained using a new observation on the relation between strongly connected components (SCCs) and reachability. More specifically, one of the main building blocks in our result is a restricted variant of the problem in which we only compute strongly connected com- ponents that intersect a certain path. Restricting our attention to a path allows us to implicitly compute reachability between the path vertices and the rest of the graph in time that depends logarithmically rather than linearly in the size of the path.
    [Show full text]
  • Algorithms for Incremental Planar Graph Drawing and Two-Page Book Embeddings
    Algorithms for Incremental Planar Graph Drawing and Two-page Book Embeddings Inaugural-Dissertation zur Erlangung des Doktorgrades der Mathematisch-Naturwissenschaftlichen Fakult¨at der Universit¨at zu Koln¨ vorgelegt von Martin Gronemann aus Unna Koln¨ 2015 Berichterstatter (Gutachter): Prof. Dr. Michael Junger¨ Prof. Dr. Markus Chimani Prof. Dr. Bettina Speckmann Tag der m¨undlichenPr¨ufung: 23. Juni 2015 Zusammenfassung Diese Arbeit besch¨aftigt sich mit zwei Problemen bei denen es um Knoten- ordnungen in planaren Graphen geht. Hierbei werden als erstes Ordnungen betrachtet, die als Grundlage fur¨ inkrementelle Zeichenalgorithmen dienen. Solche Algorithmen erweitern in der Regel eine vorhandene Zeichnung durch schrittweises Hinzufugen¨ von Knoten in der durch die Ordnung gegebene Rei- henfolge. Zu diesem Zweck kommen im Gebiet des Graphenzeichnens verschie- dene Ordnungstypen zum Einsatz. Einigen dieser Ordnungen fehlen allerdings gewunschte¨ oder sogar fur¨ einige Algorithmen notwendige Eigenschaften. Diese Eigenschaften werden genauer untersucht und dabei ein neuer Typ von Ord- nung entwickelt, die sogenannte bitonische st-Ordnung, eine Ordnung, welche Eigenschaften kanonischer Ordnungen mit der Flexibilit¨at herk¨ommlicher st- Ordnungen kombiniert. Die zus¨atzliche Eigenschaft bitonisch zu sein erm¨oglicht es, eine st-Ordnung wie eine kanonische Ordnung zu verwenden. Es wird gezeigt, dass fur¨ jeden zwei-zusammenh¨angenden planaren Graphen eine bitonische st-Ordnung in linearer Zeit berechnet werden kann. Im Ge- gensatz zu kanonischen Ordnungen, k¨onnen st-Ordnungen naturgem¨aß auch fur¨ gerichtete Graphen verwendet werden. Diese F¨ahigkeit ist fur¨ das Zeichnen von aufw¨artsplanaren Graphen von besonderem Interesse, da eine bitonische st-Ordnung unter Umst¨anden es erlauben wurde,¨ vorhandene ungerichtete Zei- chenverfahren fur¨ den gerichteten Fall anzupassen.
    [Show full text]
  • Arxiv:1908.08911V1 [Cs.DS] 23 Aug 2019
    Parameterized Algorithms for Book Embedding Problems? Sujoy Bhore1, Robert Ganian1, Fabrizio Montecchiani2, and Martin N¨ollenburg1 1 Algorithms and Complexity Group, TU Wien, Vienna, Austria fsujoy,rganian,[email protected] 2 Engineering Department, University of Perugia, Perugia, Italy [email protected] Abstract. A k-page book embedding of a graph G draws the vertices of G on a line and the edges on k half-planes (called pages) bounded by this line, such that no two edges on the same page cross. We study the problem of determining whether G admits a k-page book embedding both when the linear order of the vertices is fixed, called Fixed-Order Book Thickness, or not fixed, called Book Thickness. Both problems are known to be NP-complete in general. We show that Fixed-Order Book Thickness and Book Thickness are fixed-parameter tractable parameterized by the vertex cover number of the graph and that Fixed- Order Book Thickness is fixed-parameter tractable parameterized by the pathwidth of the vertex order. 1 Introduction A k-page book embedding of a graph G is a drawing that maps the vertices of G to distinct points on a line, called spine, and each edge to a simple curve drawn inside one of k half-planes bounded by the spine, called pages, such that no two edges on the same page cross [20,25]; see Fig.1 for an illustration. This kind of layout can be alternatively defined in combinatorial terms as follows. A k-page book embedding of G is a linear order ≺ of its vertices and a coloring of its edges which guarantee that no two edges uv, wx of the same color have their vertices ordered as u ≺ w ≺ v ≺ x.
    [Show full text]
  • GRAIL: Scalable Reachability Index for Large Graphs
    Problem Definition & Motivation Background Our Approach : GRAIL Experiments Conclusion & Future Work GRAIL: Scalable Reachability Index for Large Graphs Hilmi Yıldırım1 Vineet Chaoji2 Mohammed J.Zaki1 1Rensselaer Polytechnic Institute Troy, NY 2Yahoo! Labs Bangalore, India 14 September VLDB 2010 Problem Definition & Motivation Background Our Approach : GRAIL Experiments Conclusion & Future Work Outline Problem Definition & Motivation Background Related Work Interval Labeling Our Approach : GRAIL Index Construction Querying Experiments Experimental Setup & Datasets Results and Comparison with Other Methods Sensitivity to Different Graph Types and Parameters Conclusion & Future Work Problem Definition & Motivation Background Our Approach : GRAIL Experiments Conclusion & Future Work Problem Definition Reachability Query : Given two vertices u and v in a directed acyclic graph G, is there a path between u and v? Simple in undirected graphs • Any directed graph can be transformed into a dag • A Query(B,I) B C D • Reachable E F G HI Query(D,B) • Not Reachable J Problem Definition & Motivation Background Our Approach : GRAIL Experiments Conclusion & Future Work Motivation Traditional Applications Class Hierarchies, GIS, • dependency graphs Trending Applications Semantic Web • Biological networks • Citation graphs • Motivation Existing methods do not • scale for large and dense graphs Motivation Problem Definition & Motivation Background Our Approach : GRAIL Experiments Conclusion & Future Work Related Work Construction Time Query Time Index Size Opt. Tree Cover (Agrawal et al. 89) O(nm) O(n) O(n2) GRIPP (Trissl et al. 07) O(m + n) O(m n) O(m + n) − Dual Labeling (Wang et al. 06) O(n + m + t3) O(1) O(n + t2) PathTree (Jin et al. 08) O(mk) O(mk)/O(mn) O(nk) 2HOP (Cohen et al.
    [Show full text]
  • 55 GRAPH DRAWING Emilio Di Giacomo, Giuseppe Liotta, Roberto Tamassia
    55 GRAPH DRAWING Emilio Di Giacomo, Giuseppe Liotta, Roberto Tamassia INTRODUCTION Graph drawing addresses the problem of constructing geometric representations of graphs, and has important applications to key computer technologies such as soft- ware engineering, database systems, visual interfaces, and computer-aided design. Research on graph drawing has been conducted within several diverse areas, includ- ing discrete mathematics (topological graph theory, geometric graph theory, order theory), algorithmics (graph algorithms, data structures, computational geometry, vlsi), and human-computer interaction (visual languages, graphical user interfaces, information visualization). This chapter overviews aspects of graph drawing that are especially relevant to computational geometry. Basic definitions on drawings and their properties are given in Section 55.1. Bounds on geometric and topological properties of drawings (e.g., area and crossings) are presented in Section 55.2. Sec- tion 55.3 deals with the time complexity of fundamental graph drawing problems. An example of a drawing algorithm is given in Section 55.4. Techniques for drawing general graphs are surveyed in Section 55.5. 55.1 DRAWINGS AND THEIR PROPERTIES TYPES OF GRAPHS First, we define some terminology on graphs pertinent to graph drawing. Through- out this chapter let n and m be the number of graph vertices and edges respectively, and d the maximum vertex degree (i.e., number of edges incident to a vertex). GLOSSARY Degree-k graph: Graph with maximum degree d k. ≤ Digraph: Directed graph, i.e., graph with directed edges. Acyclic digraph: Digraph without directed cycles. Transitive edge: Edge (u, v) of a digraph is transitive if there is a directed path from u to v not containing edge (u, v).
    [Show full text]
  • Grid Graph Reachability Problems
    Electronic Colloquium on Computational Complexity, Revision 1 of Report No. 149 (2005) Grid Graph Reachability Problems Eric Allender∗ David A. Mix Barrington† Tanmoy Chakraborty‡ Samir Datta§ Sambuddha Roy¶ Abstract graphs logspace reduces to single-source-single-sink acyclic grid graphs. We show that reachability on such We study the complexity of restricted versions of st- grid graphs AC0 reduces to undirected GGR. connectivity, which is the standard complete problem for NL. Grid graphs are a useful tool in this regard, since • We build on this to show that reachability for single- source multiple-sink planar dags is solvable in L. • reachability on grid graphs is logspace-equivalent to reachability in general planar digraphs, and • reachability on certain classes of grid graphs gives 1. Introduction natural examples of problems that are hard for NC1 0 under AC reductions but are not known to be hard for Graph reachability problems have long played a fun- L; they thus give insight into the structure of L. damental role in complexity theory. The general st- connectivity problem in directed graphs is the standard In addition to explicating the structure of L, another of our complete problem for NL, while the st-connectivity prob- goals is to expand the class of digraphs for which connec- lems for directed graphs of outdegree 1 [7, 12, 9] and undi- tivity can be solved in logspace, by building on the work of rected graphs [17] are complete for L. It follows from [3] Jakoby et al. [15], who showed that reachability in series- that reachability in directed graphs of width O(1) (or even parallel digraphs is solvable in L.
    [Show full text]