According to wikipedia:
- "Expander graphs have found extensive applications in computer science, in designing algorithms, error correcting codes, extractors, pseudorandom generators, sorting networks and robust computer networks. They have also been used in proofs of many important results in computational complexity theory, such as SL=L and the PCP theorem. In cryptography too, expander graphs are used to construct hash functions."
We will not explore everything about expander graphs, but will focus on the performances of random walks on expander graphs.
Consider an undirected (multi-)graph , where the parallel edges between two vertices are allowed.
- For , let .
- The Edge Boundary of a set , denoted , is .
|Definition (Graph expansion)
- The expansion ratio of an undirected graph on vertices, is defined as
Expander graphs are -regular (multi)graphs with and .
This definition states the following properties of expander graphs:
- Expander graphs are sparse graphs. This is because the number of edges is .
- Despite the sparsity, expander graphs have good connectivity. This is supported by the expansion ratio.
- This one is implicit: expander graph is a family of graphs , where is the number of vertices. The asymptotic order and in the definition is relative to the number of vertices , which grows to infinity.
The following fact is directly implied by the definition.
- An expander graph has diameter .
The proof is left for an exercise.
For a vertex set , the size of the edge boundary can be seen as the "perimeter" of , and can be seen as the "volume" of . The expansion property can be interpreted as a combinatorial version of isoperimetric inequality.
- Vertex expansion
- We can alternatively define the vertex expansion. For a vertex set , its vertex boundary, denoted is defined as that
- and the vertex expansion of a graph is .
Existence of expander graph
We will show the existence of expander graphs by the probabilistic method. In order to do so, we need to generate random -regular graphs.
Suppose that is even. We can generate a random -regular graph as follows:
- Let be the vertex set. Uniformly and independently choose cycles of .
- For each vertex , for every cycle, assuming that the two neighbors of in that cycle is and , add two edges and to .
The resulting is a multigraph. That is, it may have multiple edges between two vertices. We will show that is an expander graph with high probability. Formally, for some constant and constant ,
By the probabilistic method, this shows that there exist expander graphs. In fact, the above probability bound shows something much stronger: it shows that almost every regular graph is an expander.
Recall that . We call such that a "bad ". Then if and only if there exists a bad of size at most . Therefore,
Let be the set of vertices in which has neighbors in , and let . It is obvious that , thus, for a bad , . Therefore, there are at most possible choices such . For any fixed choice of , the probability that an edge picked by a vertex in connects to a vertex in is at most , and there are such edges. For any fixed of size and of size , the probability that all neighbors of all vertices in are in is at most . Due to the union bound, for any fixed of size ,
The last line is when . Therefore, is an expander graph with expansion ratio with high probability for suitable choices of constant and constant .
Computing Graph Expansion
Computation of graph expansion seems hard, because the definition involves the minimum over exponentially many subsets of vertices. In fact, the problem of deciding whether a graph is an expander is co-NP-complete. For a non-expander , the vertex set which has low expansion ratio is a proof of the fact that is not an expander, which can be verified in poly-time. However, there is no efficient algorithm for computing the unless NP=P.
The expansion ratio of a graph is closely related to the sparsest cut of the graph, which is the dual problem of the multicommodity flow problem, both NP-complete. Studies of these two problems revolutionized the area of approximation algorithms.
We will see right now that although it is hard to compute the expansion ratio exactly, the expansion ratio can be approximated by some efficiently computable algebraic identity of the graph.