Download Undirected ST

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Eigenvalues and eigenvectors wikipedia , lookup

Perron–Frobenius theorem wikipedia , lookup

Matrix multiplication wikipedia , lookup

Transcript
Undirected ST-Connectivity in
Log-Space
By Omer Reingold (Weizmann Institute)
Year 2004
Presented by Maor Mishkin
ST-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.
FALSE
TRUE
s
t
ST-Connectivity Problem

Is called USTCON or Maze Problem.
Exit t

sEntrance
The STCON problem is on a Directed
Graph.
ST-Connectivity Problem

s
Related problem (Cook late 70’s)Universal Traversal Problem, where we
need to also return the path, which
connects s and t – Not the focus of this
lecture.
t
Basic 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) -> this is also the lower
Time bound for USTCON problem.
Space O(N).
Space 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).
Input:101101
Input:100101
Algorithm: Pre-Calculation - Create an
Output:0
Output:1
array in the size of 2^N and put in place j
the parity bit of the bit array
representation of j.
Log-Space Algorithms




Definition of a Log-Space algorithm: Given an
input of size N, algorithm’s Space is O(logN).
Claim. If the algorithm is Log-Space &
Deterministic => Time is polynomial.
Proof. Lets assume that it is not polynomial
Time and is Log-Space, therefore will have
2C log N  N c different Space states. By looking
on Space at time i (Si), we know that we will
have Si & Sj that Si = Sj and i^=j (since
#Time is bigger than #Space states)-> a
contradiction to algorithm finishing the
calculation.
That is, class LOG-SPACE is contained in P.
Previous Related Work
STCON – J. Savitch (70), Log^2 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.

Previous 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, quasipolynomial Time in Space Log^2.
Previous Related Work


USTCON – [NSW89] improved
Savitch (70) to Space Log^1.5, and
not polynomial Time.
USTCON – [ATSWZ00] improved
the previous one to Space
Log^1.333, but still not polynomial
Time – most Space efficient until
this work.
Approach

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.
s
t
Approach


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 d O log N   d C1 log N  N C 2
(polynomial). We later explain how to
execute this in Log-Space.
Open issues


How can we enumerate paths on a
Graph that is Constant Degree &
Logarithmic Diameter Graph in LogSpace (relatively easy).
How can we Transform the input
Graph into a Constant Degree &
Logarithmic Diameter Graph (the
main issue).
Powering



Definition. the k’th 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.
Decreasing 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 d<<D).
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 d+1.
Expander Graphs



Definition. For a d-regular Graph
G(V,E), |V|=N.
N
  0 , S  V , S 
2
N S  S  1  S
Vertex Expansion Properties give
us that the Expander Graph will
have Logarithmic Diameter.
2
N 2 S   N S   S  1    N S   S  1    S

X
0
N i S   1    S 
N
X  log 1   
2
X
N
2
Expander 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 1970’s.
Widely used for De-Randomization,
Error Correction, CS theory.
Not 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).
Informal 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.
Informal USTCON algorithm
3. Now solve USTCON on the
resulting Graph that has
Logarithmic Diameter & Constant
Degree.
Graph 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 it’s adjacency
matrix is symmetric.
A Graph is D-regular if the sum of
entries in a row (and column) is D.
Graph Representation


Given a D-regular Graph, we can
assume that for vertex v, the edges
are labeled 1…D, and we can talk
about the i’th 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).
Graph Representation


For a D-regular undirected graph G, let
us define Rotation Map:
RotG : [N]*[D] --> [N]*[D] is defined as
RotG(v,i) = (w,j) if the i’th edge incident
to v leads to w, and this is the j’th edge
incident to w.
Rotation map will be the input Graph
representation at this work.
Measure 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.
1
M

 i, j   D  : Rot u , i   v, j 
Formally ->
D
2
u ,v
G
Eigenvalues 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
Graph 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)< λ as an
(N,D,λ)-graph.
Solving USTCON given a Constant
Degree Expander.


1.
2.
USTCON in Constant Degree Expanders can
be solved in Log-Space:
Let λ <1 be some constant, then there exists
an O(logD*logN) 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.
Solving USTCON given a Constant
Degree Expander (cont.)



The algorithm A simply enumerates all
D^l paths of length l=O(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 D^l paths requires
O(logD*logN) Space. When D is a
constant we get O(logN) Space.
Solving USTCON given a Constant
Degree Expander (cont.)
0
2
1
3
1
2
0
3
1
1
1
0
2
2
3
0 1
t
3
2
1
2
logd
0
1
2
3
2
0
s
0
0
0
1
logN
3
0
Powering & 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 t’th power of G is
the D^t-regular Graph G^t whose rotation map is
given by
Where these values are computed via the rule:
Powering & Expansion Measure
Lemma - If G is an (N,D,λ)-graph
then G^t is an (N,D^t, λ^t)-graph.
Proof – The normalized adjacency
matrix MG^t of G^t is the t’th
power of the Normalized Matrix MG
of G, so all the Eigenvalues also get
raised to the t’th power.
MGtx = MGt-1MGx = MGt-1λx=
λ MGt-1 x = λtx
Two 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
d^2 (d^2<<D)
Zig-Zag Product
Definition. If G is a D-regular Graph with N
vertexes with rotation map RotG & H is a dregular Graph with D vertexes with rotation
map RotH, then their Zig-Zag Product G z H is
defined to be the d^2-regular graph with N*D
vertexes whose rotation map RotG z H is as
follows:
 RotG H((v,a),(i,j)):
z
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’))

Expansion Properties of G z H

Theorem. ([RVW01]) If G is an
(N,D,λG)-graph & H is a (D,d, λH)graph, then G z H is a
(N*D,d^2,f(λG, λH))-graph, where:


1
1
2
f G ,  H   1   H G 
2
2

1    
2 2
H
2
G
 4 H
2
We get, that if is a “good” Expander
(λH ->0) then f(λG, λH)-> λG
Universal 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 z H Graph is a
sequence in G (original input) & can
be followed by the “Rotation Graph
Labeling” in the Zig-Zag Product.
Issues Summary






USTCON
Log-Space & Polynomial Time
Powering
Replacement Product
Expander Graphs
Zig-Zag Product