Title: Undirected ST-Connectivity in Log-Space
1Undirected ST-Connectivity in Log-Space
- By Omer Reingold (Weizmann Institute)
- Year 2004
- Presented by Maor Mishkin
2ST-Connectivity Problem
- Given an Undirected Graph and
- given two Vertices in the Graph, s and t,
- We need to return true if s and t are
connected and to return false if they are not
connected.
TRUE
FALSE
3ST-Connectivity Problem
- Is called USTCON or Maze Problem.
- The STCON problem is on a Directed Graph.
Exit
t
Entrance
s
4ST-Connectivity Problem
- Related problem (Cook late 70s)- Universal
Traversal Problem, where we need to also return
the path, which connects s and t Not the focus
of this lecture.
s
t
5Basic Search Algorithms
- Breadth First Search (BFS) and
- Depth First Search (DFS)
- solve the problem in directed graphs (denoted
STCON), therefore will solve in Undirected also. - Let N be the input Graph size.
- Time O(N) -gt this is also the lower Time bound
for USTCON problem. - Space O(N).
6Space vs. Time
- Algorithms have central resources of computation,
Space Time. - Space is the work memory not including Input
memory. - Trade-Off example Given a bit array, calculate
the parity bit (XOR over all the bits) in Time
O(1). - Algorithm Pre-Calculation - Create an array in
the size of 2N and put in place j the parity bit
of the bit array representation of j.
Input101101 Output0
Input100101 Output1
7Log-Space Algorithms
- Definition of a Log-Space algorithm Given an
input of size N, algorithms Space is O(logN). - Claim. If the algorithm is Log-Space
Deterministic gt Time is polynomial. - Proof. Lets assume that it is not polynomial Time
and is Log-Space, therefore will have
different Space states. By
looking on Space at time i (Si), we know that we
will have Si Sj that Si Sj and ij (since
Time is bigger than Space states)-gt a
contradiction to algorithm finishing the
calculation. - That is, class LOG-SPACE is contained in P.
8Previous Related Work
- STCON J. Savitch (70), Log2 Space a super
polynomial Time. - USTCON R. Aleliunas (79), Randomized Log-Space.
Use a pointer to current vertex and a counter.
Randomly start finding a path from s to t, stop
when counter hits a limit. - the Random walk has a one side error.
9Previous Related Work
- USTCON Massive work to solve the problem
without Randomization, but still
pseudo-randomized algorithms AKS87, BNS89,
Nis92b, INW94 We will fully remove the
Randomization factor. - Universal Traversal Sequence Noam Nisan 92b,
quasi-polynomial Time in Space Log2.
10Previous Related Work
- USTCON NSW89 improved Savitch (70) to Space
Log1.5, and not polynomial Time. - USTCON ATSWZ00 improved the previous one to
Space Log1.333, but still not polynomial Time
most Space efficient until this work.
11Approach
- To solve the connectivity problem between s t,
improve the connectivity of every connected
component in the Graph, that is - Transform the input Graph into a Graph, which
has Logarithmic Diameter (with the same connected
components). We also make it a Constant Degree
one.
12Approach
- Since the Graph will have Logarithmic Diameter,
we can build all Logarithmic length paths,
starting from s, and to see if one visits t . - Since the Degree is Constant and does not depend
on N, the number of such paths is
(polynomial). We later explain how to execute
this in Log-Space.
13Open issues
- How can we enumerate paths on a Graph that is
Constant Degree Logarithmic Diameter Graph in
Log-Space (relatively easy). - How can we Transform the input Graph into a
Constant Degree Logarithmic Diameter Graph (the
main issue).
14Powering
- Definition. the kth Power of G contains an edge
between two vertices v w, iff there exists a
path of length k from v to w in G. - Repeatedly squaring the graph logarithmic number
of times will turn G into a Logarithmic Diameter
Graph. - Powering increases the Degree of the Graph and
will not maintain the Graph as a Constant Degree
one.
15Decreasing Degrees
- Replacement Product - an operation with two
Graphs, a D-regular Graph G with N vertices and a
d-regular Graph H on D vertices (with dltltD). - Each vertex v of G is replaced with a copy Hv
of H. - Each of the d vertices of Hv is connected to its
neighbors in Hv and also to one vertex in Hw,
where (v,w) is one of the D edges going out of v
in G. - The Degree of the Product Graph is d1.
16Expander Graphs
- Definition. For a d-regular Graph G(V,E), VN.
- , ,
-
- Vertex Expansion Properties give us that the
Expander Graph will have Logarithmic Diameter.
17Expander Graphs
- We can turn a Graph into an Expander by Squaring
it Logarithmic Times. - Algebraic Expansion Properties will give us a way
to measure the Graph Expansion Properties. - Introduced in the 1970s.
- Widely used for De-Randomization, Error
Correction, CS theory.
18Not Damaging Logarithmic Diameter
- It turns out that if H is a good enough
Expander, the expansion properties of the
Replacement Product are not worse by much than
those of the original Graph. - Formal statements to this effect were proved by
Reingold, Vadhan Wigderson RVW01 for the
Replacement Product and for the Zig-Zag Product
(to be described later).
19Informal USTCON algorithm
- 1. First turn the input Graph into a
constant-degree, regular Graph with each
connected component being non-bipartite (not
Replacement Product). - 2. The main transformation turns each connected
component of the Graph, in a logarithmic number
of phases, into an Expander (a logarithmic
diameter) - 2.1. Each phase starts by raising the current
graph to some constant power and then reducing
the degree back via a Replacement or Zig-Zag
product, using a constant size Expander.
20Informal USTCON algorithm
- 3. Now solve USTCON on the resulting Graph that
has Logarithmic Diameter Constant Degree.
21Graph Representation
- Adjacency Matrix - A way to represent a Graph
G(V,E) not the input graph will be used for
theoretic discussion only. - At entry (v,u) will have a non-negative integer
that equals to the number of edges that go from
vertex v to vertex u. - A Graph is undirected iff its adjacency matrix
is symmetric. - A Graph is D-regular if the sum of entries in a
row (and column) is D.
22Graph Representation
- Given a D-regular Graph, we can assume that for
vertex v, the edges are labeled 1D, and we can
talk about the ith neighbor of v. - When taking a step from v to w, it may be useful
to keep track of the edges traversed to get to w
(rather then just remembering that we are now at
w).
23Graph Representation
- For a D-regular undirected graph G, let us define
Rotation Map - RotG ND --gt ND is defined as
RotG(v,i) (w,j) if the ith edge incident to v
leads to w, and this is the jth edge incident to
w. - Rotation map will be the input Graph
representation at this work.
24Measure of Graph Expansion
- We would like to make sure that our iterations
will give us a good Expander, therefore we
would like to measure our Graph Expansion. - Expansion Properties can be calculated. we will
look at the Normalized Adjacency Matrix MG of a
D-regular Graph G, that is the Adjacency Matrix
of G divided by D. - Formally -gt
25Eigenvalues and Eigenvectors
- Eigenvalue - The factor by which a linear
transformation multiplies one of its
Eigenvectors. - Eigenvector For matrix M, vector x is an
Eigenvector with Eigenvalue ? iff Mx ?x. - All one Eignvalue
26Graph Expansion Measurement
- It turns out that the Eigenvalues of MG are at
most 1. - We denote by ?(G) the second largest Eigenvalue
of MG (in the absolute value) - It is known that ?(G) is a good measure of the
Expansion property of G.alpha vs. lambda - We refer to a D-regular undirected Graph G with N
vertices such that ?(G)lt ? as an (N,D,?)-graph.
27Solving USTCON given a Constant Degree Expander.
- USTCON in Constant Degree Expanders can be solved
in Log-Space - Let ? lt1 be some constant, then there exists an
O(logDlogN) Space algorithm A, such that when a
D-regular undirected Graph G with N vertices is
given to A as an input the following holds - If s t are in the same connected component
this component is an (N,D, ?)-Graph then A
outputs connected. - If A outputs connected then s t are indeed in
the same connected component.
28Solving USTCON given a Constant Degree Expander
(cont.)
- The algorithm A simply enumerates all Dl paths
of length lO(logN) from s, where the leading
constant in the big-O notation depends on ?. The
algorithm A outputs connected iff at least one
of these paths encounter t. - Following any path from s with length l requires
O(logN) Space. - Enumerating all Dl paths requires O(logDlogN)
Space. When D is a constant we get O(logN) Space.
29Solving USTCON given a Constant Degree Expander
(cont.)
0
2
1
3
3
1
2
0
0
0
2
3
1
1
1
3
0
2
2
0
2
3
1
1
3
2
0
0
1
2
0
1
0
30Powering Expansion Measure
- Our main transformation will take a graph and
transform each one of its connected components
into a Constant Degree Expander. If we ignore the
constant degree requirement, a simple way of
amplifying the Graph is by Powering. - Let G be a D-regular multi-graph with N vertexes,
given by rotation map RotG. The tth power of G
is the Dt-regular Graph Gt whose rotation map
is given by -
- Where these values are computed via the rule
31Powering Expansion Measure
- Lemma - If G is an (N,D,?)-graph then Gt is an
(N,Dt, ?t)-graph. - Proof The normalized adjacency matrix MGt of
Gt is the tth power of the Normalized Matrix MG
of G, so all the Eigenvalues also get raised to
the tth power. - MGtx MGt-1MGx MGt-1?x
- ? MGt-1 x ?tx
32Two Graph Products
- Reminder - Replacement Product
- Zig-Zag Product of G H correspond to a subset
of the paths of length three in the Replacement
Product of these Graphs. - The degree of the output graph is d2 (d2ltltD)
33Zig-Zag Product
- Definition. If G is a D-regular Graph with N
vertexes with rotation map RotG H is a
d-regular Graph with D vertexes with rotation map
RotH, then their Zig-Zag Product G H is defined
to be the d2-regular graph with ND vertexes
whose rotation map RotG H is as follows - RotG H((v,a),(i,j))
- 1. Let(a,i)RotH (a,i)
- 2. Let(w,b)RotG(v,a)
- 3. Let(b,j)RotH(b,j)
- 4. Output((w,b),(j,i))
z
z
z
34Expansion Properties of G H
z
- Theorem. (RVW01) If G is an (N,D,?G)-graph H
is a (D,d, ?H)-graph, then G H is a - (ND,d2,f(?G, ?H))-graph, where
- We get, that if is a good Expander (?H -gt0)
then f(?G, ?H)-gt ?G
z
35Universal Traversal exploration sequence
- The mentioned Algorithm also solves Universal
Traversal - (i.e. finding the path from s to t if such a
path exist). - Every edge in the logarithmic long path of the
final G H Graph is a sequence in G (original
input) can be followed by the Rotation Graph
Labeling in the Zig-Zag Product.
z
36Issues Summary
- USTCON
- Log-Space Polynomial Time
- Powering
- Replacement Product
- Expander Graphs
- Zig-Zag Product