STCON in Directed Unique-Path Graphs Sampath Kannan Sanjeev Khanna Sudeepa Roy University of Pennsylvania 1.

Slides:



Advertisements
Similar presentations
Finding Cycles and Trees in Sublinear Time Oded Goldreich Weizmann Institute of Science Joint work with Artur Czumaj, Dana Ron, C. Seshadhri, Asaf Shapira,
Advertisements

Graph Algorithms Algorithm Design and Analysis Victor AdamchikCS Spring 2014 Lecture 11Feb 07, 2014Carnegie Mellon University.
Introduction to Algorithms Lecture 12 Prof. Constantinos Daskalakis CLRS
Testing planarity part 1 Thomas van Dijk. Preface Appendix of Planar Graph Drawing Quite hard to read So we’ll try to explain it, not just tell you about.
Depth-First Search1 Part-H2 Depth-First Search DB A C E.
Compact and Low Delay Routing Labeling Scheme for Unit Disk Graphs Chenyu Yan, Yang Xiang, and Feodor F. Dragan (WADS 2009) Kent State University, Kent,
Fall 2013 CMU CS Computational Complexity Lecture 5 Savich’s theorem, and IS theorems. These slides are mostly a resequencing of Chris Umans’ slides.
Comp 122, Fall 2004 Elementary Graph Algorithms. graphs Lin / Devi Comp 122, Fall 2004 Graphs  Graph G = (V, E) »V = set of vertices »E = set of.
More Graphs COL 106 Slides from Naveen. Some Terminology for Graph Search A vertex is white if it is undiscovered A vertex is gray if it has been discovered.
CSE 2331/5331 Topic 11: Basic Graph Alg. Representations Undirected graph Directed graph Topological sort.
Graph Searching CSE 373 Data Structures Lecture 20.
Graph Search Methods A vertex u is reachable from vertex v iff there is a path from v to u
Graph Search Methods A vertex u is reachable from vertex v iff there is a path from v to u
Graph Searching (Graph Traversal) Algorithm Design and Analysis Week 8 Bibliography: [CLRS] – chap 22.2 –
Graph Traversals Visit vertices of a graph G to determine some property: Is G connected? Is there a path from vertex a to vertex b? Does G have a cycle?
Complexity 12-1 Complexity Andrei Bulatov Non-Deterministic Space.
(Omer Reingold, 2005) Speaker: Roii Werner TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A A A AA A.
Data Structures & Algorithms Graph Search Richard Newman based on book by R. Sedgewick and slides by S. Sahni.
Computability and Complexity 19-1 Computability and Complexity Andrei Bulatov Non-Deterministic Space.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Spring, 2001 Makeup Lecture Chapter 23: Graph Algorithms Depth-First SearchBreadth-First.
1 Data Structures DFS, Topological Sort Dana Shapira.
Undirected ST-Connectivity 2 DL Omer Reingold, STOC 2005: Presented by: Fenghui Zhang CPSC 637 – paper presentation.
DAST 2005 Tirgul 11 (and more) sample questions. DAST 2005 Q.Let G = (V,E) be an undirected, connected graph with an edge weight function w : E→R. Let.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 9 Instructor: Paul Beame.
COMP171 Depth-First Search.
Computability and Complexity 20-1 Computability and Complexity Andrei Bulatov Class NL.
Graph Traversals CSC 172 SPRING 2002 LECTURE 26. Traversing graphs Depth-First Search like a post-order traversal of a tree Breath-First Search Less like.
Graph Traversals CSC 172 SPRING 2004 LECTURE 21. Announcements  Project 3 is graded  handed back Tuesday  Grad spam, tonight – if you are really anxious.
Depth-first search COMP171 Fall Graph / Slide 2 Depth-First Search (DFS) * DFS is another popular graph search strategy n Idea is similar to pre-order.
Undirected ST-Connectivity In Log Space
Undirected ST-Connectivity In Log Space Omer Reingold Slides by Sharon Bruckner.
Depth-First Search Lecture 24 COMP171 Fall Graph / Slide 2 Depth-First Search (DFS) * DFS is another popular graph search strategy n Idea is similar.
Non-Deterministic Space is Closed Under Complementation Neil Immerman Richard Szelepcsenyi Presented By: Subhajit Dasgupta.
Depth-First Search Idea: Keep going forward as long as there are unseen nodes to be visited. Backtrack when stuck. v G G G G is completely traversed.
Graph Algorithms Using Depth First Search Prepared by John Reif, Ph.D. Distinguished Professor of Computer Science Duke University Analysis of Algorithms.
Minimal Spanning Trees What is a minimal spanning tree (MST) and how to find one.
Search Related Algorithms. Graph Code Adjacency List Representation:
Spring 2015 Lecture 10: Elementary Graph Algorithms
1 Depth-First Search Idea: –Starting at a node, follow a path all the way until you cannot move any further –Then backtrack and try another branch –Do.
Elementary Graph Algorithms CLRS Chapter 22. Graph A graph is a structure that consists of a set of vertices and a set of edges between pairs of vertices.
Graphs.
CSE 2331 / 5331 Topic 12: Shortest Path Basics Dijkstra Algorithm Relaxation Bellman-Ford Alg.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Lecture 11 Algorithm Analysis Arne Kutzner Hanyang University / Seoul Korea.
Jan Topological Order and SCC Edge classification Topological order Recognition of strongly connected components.
A deterministic near-linear time algorithm for finding minimum cuts in planar graphs Thank you, Steve, for presenting it for us!!! Parinya Chalermsook.
1 Chapter 22 Elementary Graph Algorithms. 2 Introduction G=(V, E) –V = vertex set –E = edge set Graph representation –Adjacency list –Adjacency matrix.
1 Subgraphs A subgraph S of a graph G is a graph such that The vertices of S are a subset of the vertices of G The edges of S are a subset of the edges.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Ver Chapter 13: Graphs Data Abstraction & Problem Solving with C++
David Luebke 1 1/25/2016 CSE 207: Algorithms Graph Algorithms.
Shahed University Dr. Shahriar Bijani May  A path is a sequence of vertices P = (v 0, v 1, …, v k ) such that, for 1 ≤ i ≤ k, edge (v i – 1, v.
Graphs Definition: a graph is an abstract representation of a set of objects where some pairs of the objects are connected by links. The interconnected.
Chapter 05 Introduction to Graph And Search Algorithms.
Graphs + Shortest Paths David Kauchak cs302 Spring 2013.
GRAPH ALGORITHM. Graph A pair G = (V,E) – V = set of vertices (node) – E = set of edges (pairs of vertices) V = (1,2,3,4,5,6,7) E = ( (1,2),(2,3),(3,5),(1,4),(4,5),(6,7)
MA/CSSE 473 Day 14 Strassen's Algorithm: Matrix Multiplication Decrease and Conquer DFS.
The 2x2 Simple Packing Problem André van Renssen Supervisor: Bettina Speckmann.
CSC 213 – Large Scale Programming Lecture 31: Graph Traversals.
Space Complexity Guy Feigenblat Based on lecture by Dr. Ely Porat Complexity course Computer science department, Bar-Ilan university December 2008.
CSC317 1 At the same time: Breadth-first search tree: If node v is discovered after u then edge uv is added to the tree. We say that u is a predecessor.
Nattee Niparnan. Graph  A pair G = (V,E)  V = set of vertices (node)  E = set of edges (pairs of vertices)  V = (1,2,3,4,5,6,7)  E = ((1,2),(2,3),(3,5),(1,4),(4,
Graphs – Breadth First Search
Shortest Paths.
Chapter 22 Elementary Graph Algorithms
Space-efficient graph algorithms
Graph Algorithms – 2 DAGs Topological order
Shortest Paths.
Shortest Paths.
CSE 417: Algorithms and Computational Complexity
3.2 Graph Traversal.
Presentation transcript:

STCON in Directed Unique-Path Graphs Sampath Kannan Sanjeev Khanna Sudeepa Roy University of Pennsylvania 1

(Directed) st-connectivity (STCON) s t t 2 directed path from s to t in G?

Open Questions  O(log n) space algorithm for STCON? (L = NL!)  Time-space tradeoff analysis Known Results  NL-complete  O(n) space and O(m+n) time (BFS or DFS)  O(log 2 n) space and O(n log n ) time (Savitch)  USTCON  L (Reingold’04) Questions involving STCON 3

Time-Space Trade-off for STCON 4 Sublinear-space poly-time algorithm for STCON? Space (  )Time (  ) BFS/DFS Barnes et al ’98 ? Savitch O(n)O(m+n) n / 2  ( √ log n) poly-time O(n ε ), ε < 1poly-time O(log 2 n)O(n log n )

(Poly-time) STCON in Special Graphs s UL or Unambiguous Logspace Unique computation path from start to accepting configuration 5 Tree: O(log n)-spaceStrongUL: O(log 2 n / log log n)-space (AL’98)ReachUL: O(log 2 n / log log n)-space (AL’98) Can we allow some cycles reachable from s? Unique-Path Graphs

Back Edges, Forward Edges and Cross Edges s 6 Tree Edge Back Edge Forward Edge Cross Edge

At most one directed simple path from s to any vertex Unique-Path Graphs ss No forward edge or cross edge in DFS-tree from any vertex reachable from s v 7

Main Theorem In unique-path graphs, STCON is solvable in O(n ε /ε) space and n O(1/ε) time for any ε  (0, 1] Poly-time, O(n ε ) space algorithm for constant ε “Small-space implementation” of DFS 8

Space Requirement in Standard DFS Linear space needed to remember  where to backtrack to from a vertex  if a vertex has been already visited 9 Backtrack Step Discovery Step Goal: Implement “backtrack step” and “discovery step” in poly-time and sublinear space

Plan for Rest of the Talk … An O(√n)-space algorithm  Backtrack Step in O(√n) space  Discovery Step in O(√n) space Extension to O(n ε )-space algorithm Recognition of unique-path graphs 10

√n-bounded DFS Backtrack when length of exploration path > √n Visits all and only the vertices within √n distance O(√n)-space implementation in unique-path graphs 11

Landmark Vertices Vertices evenly spaced at √n distance from s along the current exploration path s = z 0 z1z1 z2z2 √n x 12 Can be stored in O(√n) space

Backtrack Step Backtrack(v) Z = last landmark vertex u = parent(v) iff v is not reachable from z in G – (u, v) by a √n-bounded DFS. IN(v) y x u y v x z u ≤ √n O(√n)-space implementation 13 s

Discovery Step discovery (u, v) ≡ (u, v) is a back edge do a √n-bounded DFS from v z i = highest indexed landmark vertex reached do a √n-bounded DFS from z i-1 (u, v) is a back edge iff v is reached before z i v u √n v O(√n)-space implementation z i-1 zizi 14 s

O(√n)-space O( n ε )-space No. of Landmark vertices Spacing between landmark vertices Backtrack and discovery steps O(n ε )-space Poly-time Algorithm 15 √n O(√n) nεnε n 1- ε Backtrack and discovery steps use reachability queries O(n ε )

O(n ε )-space Poly-time Algorithm Backtrack(x)  suppose z is the last landmark vertex on the exploration path to v.  for any u  IN(v), v is not reachable from z in G – (u, v) by a √n-bounded DFS iff u is parent of x y v x z u n 1- ε -bounded DFS (recursively) Example √n n 1- ε Reach(z, v, G–(u, v), n 1- ε )?Reach(s, t, G, n-1)? 16

O(n ε )-space Poly-time Algorithm O(m) calls to n 1- ε -bounded reachability queries T(n) ≤ cm T(n 1- ε ) + O(m+n) T(n) = n O(1/ε) O(n ε /ε) space 17

Other Results 18 Recognize unique-path graphs in poly-time and O(n ε ) space

Recognize Unique-Path Graphs Simpler Problem:  Either solve STCON correctly or report that the graph is not a unique-path graph 19 DFS from any vertex reachable from s does not produce any forward or cross edge

Solve STCON or Detect Violation Should be correct as long as it runs Should be poly-time  Ideally: should not revisit vertices  Even if revisits vertices poly-time should be enforced 20 Run previous algorithm as long as no forward or cross edge is detected √n-bounded DFS can be modified to work correctly

Detect Forward/Cross Edges 21 √n v u v z i-1 zizi ≤ √n Forward edges are easy to detect ‘Some’ cross edges are also easy to detect Other cross edges we cannot detect  They do not affect correctness  Run a clock to ensure poly-time > √n Can be extended further to recognize Unique-Path Graphs

22 Poly-log space poly-time algorithm for unique-path graphs? Poly-log space poly-time algorithm for other directed graphs?  O(log n)-space algorithm for regular directed graphs – RTV’06  O(log n)-space algorithm for single source multiple sink planar directed graphs – Allender et. al.’06 O(n ε )-space poly-time algorithm for general directed graphs? Open Problems

Thank You 23