Graph product explained

In graph theory, a graph product is a binary operation on graphs. Specifically, it is an operation that takes two graphs and and produces a graph with the following properties:

The graph products differ in what exactly this condition is. It is always about whether or not the vertices in are equal or connected by an edge.

The terminology and notation for specific graph products in the literature varies quite a lot; even if the following may be considered somewhat standard, readers are advised to check what definition a particular author uses for a graph product, especially in older texts.

Even for more standard definitions, it is not always consistent in the literature how to handle self-loops. The formulas below for the number of edges in a product also may fail when including self-loops. For example, the tensor product of a single vertex self-loop with itself is another single vertex self-loop with

E=1

, and not

E=2

as the formula

EG x =2EGEH

would suggest.

Overview table

The following table shows the most common graph products, with

\sim

denoting "is connected by an edge to", and

\not\sim

denoting non-adjacency. While

\not\sim

does allow equality,

\not\simeq

means they must be distinct and non-adjacent. The operator symbols listed here are by no means standard, especially in older papers.
NameCondition for

(a1,a2)\sim(b1,b2)

Number of edges

\begin{array}{cc}v1=\vertV(G1)\vert&v2=\vertV(G2)\vert\e1=\vertE(G1)\vert&e2=\vertE(G2)\vert\end{array}

Example
with

an~rel~bn


abbreviated as

reln

Cartesian product
(box product)

G1\squareG2

a1=b1~\land~a2\simb2


\lor


a1\simb1~\land~a2=b2

=1~\sim2


\lor


\sim1~=2

v1~e2~+~e1~v2

Tensor product
(Kronecker product,
categorical product)

G1 x G2

a1\simb1~\land~a2\simb2

\sim1~\sim2

2~e1~e2

Lexicographical product

G1G2

or

G1[G2]

a1\simb1


\lor


a1=b1~\land~a2\simb2

\sim1


\lor


=1~\sim2

v1~e2~+~e1~

2
v
2
Strong product
(Normal product,
AND product)

G1\boxtimesG2

a1=b1~\land~a2\simb2


\lor


a1\simb1~\land~a2=b2


\lor


a1\simb1~\land~a2\simb2

=1~\sim2


\lor


\sim1~=2


\lor


\sim1~\sim2

v1~e2~+~e1~v2~+~2~e1~e2

Co-normal product
(disjunctive product, OR product)

G1*G2

a1\simb1


\lor


a2\simb2

\sim1


\lor


\sim2

2
v
1

~e2~+~e1~

2
v
2

~-~2~e1~e2

Modular product

a1\simb1~\land~a2\simb2


\lor


a1\not\simeqb1~\land~a2\not\simeqb2

\sim1~\sim2


\lor


\not\simeq1~\not\simeq2

Rooted productsee article

v1~e2~+~e1

Zig-zag productsee articlesee articlesee article
Replacement product
Homomorphic product[1]

G1\ltimesG2

a1=b1


\lor


a1\simb1~\land~a2\not\simb2

=1


\lor


\sim1~\not\sim2

v1v2(v2-1)/2+e1

2
(v
2

-2e2)

In general, a graph product is determined by any condition for

(a1,a2)\sim(b1,b2)

that can be expressed in terms of

an=bn

and

an\simbn

.

Mnemonic

Let

K2

be the complete graph on two vertices (i.e. a single edge). The product graphs

K2\squareK2

,

K2 x K2

, and

K2\boxtimesK2

look exactly like the graph representing the operator. For example,

K2\squareK2

is a four cycle (a square) and

K2\boxtimesK2

is the complete graph on four vertices.

The

G1[G2]

notation for lexicographic product serves as a reminder that this product is not commutative. The resulting graph looks like substituting a copy of

G2

for every vertex of

G1

.

See also

References

Notes and References

  1. 1212.1724. Roberson. David E.. Graph Homomorphisms for Quantum Players. Mancinska. Laura. 2012. 10.1016/j.jctb.2015.12.009. 118. Journal of Combinatorial Theory, Series B. 228–267.