In
graph theory
In mathematics, graph theory is the study of ''graphs'', which are mathematical structures used to model pairwise relations between objects. A graph in this context is made up of '' vertices'' (also called ''nodes'' or ''points'') which are conne ...
, the zig-zag product of
regular graph
In graph theory, a regular graph is a graph where each vertex has the same number of neighbors; i.e. every vertex has the same degree or valency. A regular directed graph must also satisfy the stronger condition that the indegree and outdegree o ...
s
, denoted by
, is a
binary operation
In mathematics, a binary operation or dyadic operation is a rule for combining two elements (called operands) to produce another element. More formally, a binary operation is an operation of arity two.
More specifically, an internal binary op ...
which takes a large graph (
) and a small graph (
) and produces a graph that approximately inherits the size of the large one but the
degree
Degree may refer to:
As a unit of measurement
* Degree (angle), a unit of angle measurement
** Degree of geographical latitude
** Degree of geographical longitude
* Degree symbol (°), a notation used in science, engineering, and mathematics
...
of the small one. An important property of the zig-zag product is that if
is a good
expander
Expander may refer to:
*Dynamic range compression operated in reverse
*Part of the process of signal compression
*Part of the process of companding
*A component used to connect SCSI computer data storage, devices together
*Turboexpander, a turbin ...
, 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 . 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
In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved by ...
to prove that
symmetric logspace and
logspace
In computational complexity theory, L (also known as LSPACE or DLOGSPACE) is the complexity class containing decision problems that can be solved by a deterministic Turing machine using a logarithmic amount of writable memory space., Definition&n ...
are equal .
Definition
Let
be a
-regular graph on