- Published 2007

The problem of interest in this lecture is undirected st connectivity. For a given graph G and two vertices s and t, determine whether there exists a path connecting s and t in G. By using any kind of algorithm for finding a shortest path from s to t, this problem can be solved trivially in polynomial time. But in this lecture, we are not going to consider the running time, instead, we will answer the question what kind of space complexity class this problem exactly belongs to. When calculating the space (memory) used by an algorithm, we only count the working space of the algorithm, that is we suppose the input is stored on some read only memory, and we don’t count that part of the memory. Note that this problem can also be done trivially in non-deterministic logarithmic space, namely for each path in the searching tree, we halt the algorithm at the level N . Then, it is easy to see that when s, t are connected, there exists a path shorter than n, which can be discovered by the non-deterministic algorithm, otherwise, the algorithm fails at every path. At each step of the algorithm, the non-deterministic algorithm only need to know the current position by using logN bits. The class of such problems that can be solved in non-deterministic logarithmic space is called SL. USTCON is SL-complete. We will demonstrate an algorithm of Reingold, which solves USTCON in deterministic logarithmic space (L). This implies SL = L. Before Reingold’s algorithm, people always tried to prune the graph and hoped to find a algorithm belonging to L. If the diameter of G is logN and the degree of the graph is constant, then this can be done in L. The idea of Reingold’s algorithm is to convert every graph G into a constant degree graph with logarithmic diameter in log space. This essentially makes the graph much more complicated. However, surprisingly, it works. There are three majors steps to the algorithm. First, convert our given graph G into a regular graph such that the connectivity between vertices is preserved. Now that the graph is regular the second step repeatedly employs the zig-zag product to transform the graph into a large enough expander. The graph G now has logarithmic diameter and the final step merely searches all possible paths from s to t in logarithmic space. To prove the analysis is correct it is important to show that every step can done in log space, and to ensure that the images of s and t are connected if and only if s and t are connected.

@inproceedings{Randall2007UndirectedSI,
title={Undirected St-connectivity in Log Space 2 Expander Graphs 2.1 What Are Expanders?},
author={Dana Randall and Luke Postle and Linji Yang},
year={2007}
}