In graph theory, the zig-zag product of regular graphs , denoted by , takes a large graph () and a small graph (), and produces a graph that approximately inherits the size of the large one but the degree of the small one. An important property of the zig-zag product is that if is a good expander, then the expansion of the resulting graph is only slightly worse than the expansion of .
Roughly speaking, the zig-zag product replaces each vertex of with a copy (cloud) of , and connects the vertices by moving a small step (zig) inside a cloud, followed by a big step (zag) between two clouds, and finally performs another small step inside the destination cloud.
The zigzag product was introduced by Reingold, Vadhan & Wigderson (2002). When the zig-zag product was first introduced, it was used for the explicit construction of constant degree expanders and extractors. Later on the zig-zag product was used in computational complexity theory to prove that symmetric logspace and logspace are equal (Reingold 2008).
Let be a -regular graph on with rotation map and let be a -regular graph on with rotation map . The zig-zag product is defined to be the -regular graph on whose rotation map is as follows:
- Let .
- Let .
- Let .
- Output .
Reduction of the degree
It is immediate from the definition of the zigzag product that it transforms a graph to a new graph which is -regular. Thus if is a significantly larger than , the zigzag product will reduce the degree of . Roughly speaking, by amplifying each vertex of into a cloud of the size of the product in fact splits the edges of each original vertex between the vertices of the cloud that replace it.
Spectral gap preservation
The expansion of a graph can be measured by its spectral gap. An important property of the zigzag product is the preservation of the spectral gap. That is, if is a “good enough” expander (has a large spectral gap) then the expansion of the zigzag product is close to the original expansion of .
Formally: Define a -graph as any -regular graph on vertices, whose second largest eigenvalue (of the associated random walk) has absolute value at most .
Let be a -graph and be a -graph, then is a -graph, where .
The zigzag product operates separately on each connected component of .
Formally speaking, given two graphs: , a -regular graph on and , a -regular graph on - if is a connected component of then , where is the subgraph of induced by (i.e., the graph on which contains all of the edges in between vertices in ).
Construction of constant degree expanders
In 2002 Omer Reingold, Salil Vadhan, and Avi Wigderson have given a simple, explicit combinatorial construction of constant-degree expander graphs. The construction is iterative, and needs as a basic building block a single, expander of constant size. In each iteration the zigzag product is used in order to generate another graph whose size is increased but its degree and expansion remains unchanged. This process continues, yielding arbitrarily large expanders.
From the properties of the zigzag product mentioned above, we see that the product of a large graph with a small graph, inherits a size similar to the large graph, and degree similar to the small graph, while preserving its expansion properties from both, thus enabling to increase the size of the expander without deleterious effects.
Solving the undirected s-t connectivity problem in logarithmic space
In 2005 Omer Reingold introduced an algorithm that solves the undirected st-connectivity problem, the problem of testing whether there is a path between two given vertices in an undirected graph, using only logarithmic space. The algorithm relies heavily on the zigzag product.
Roughly speaking, in order to solve the undirected s-t connectivity problem in logarithmic space, the input graph is transformed, using a combination of powering and the zigzag product, into a constant-degree regular graph with a logarithmic diameter. The power product increases the expansion (hence reduces the diameter) at the price of increasing the degree, and the zigzag product is used to reduce the degree while preserving the expansion.
- Reingold, O.; Vadhan, S.; Widgerson, A. (2000), "Entropy waves, the zig-zag graph product, and new constant-degree expanders and extractors", Proc. 41st IEEE Symposium on Foundations of Computer Science (FOCS), pp. 3–13, doi:10.1109/SFCS.2000.892006.
- Reingold, O (2008), "Undirected connectivity in log-space", Journal of the ACM 55 (4): Article 17, 24 pages, doi:10.1145/1391289.1391291.
- Reingold, O.; Trevisan, L.; Vadhan, S. (2006), "Pseudorandom walks on regular digraphs and the RL vs. L problem", Proc. 38th ACM Symposium on Theory of Computing (STOC), pp. 457–466, doi:10.1145/1132516.1132583.