Graph product

From testwiki
Revision as of 15:20, 28 August 2023 by imported>Timeroot (explaining self loop delicacy)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Template:Short description

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

The graph products differ in what exactly this condition is. It is always about whether or not the vertices Template:Math in Template:Mvar 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×H=2EGEH would suggest.

Overview table

The following table shows the most common graph products, with denoting "is connected by an edge to", and ≁ denoting non-adjacency. While ≁ does allow equality, ≄ means they must be distinct and non-adjacent. The operator symbols listed here are by no means standard, especially in older papers.

Name Condition for (a1,a2)(b1,b2) Number of edges
v1=|V(G1)|v2=|V(G2)|e1=|E(G1)|e2=|E(G2)|
Example
with anrelbn
abbreviated as reln
Cartesian product
(box product)
G1G2
a1=b1a2b2

a1b1a2=b2
=12

1=2
v1e2+e1v2
Tensor product
(Kronecker product,
categorical product)
G1×G2
a1b1a2b2 12 2e1e2
Lexicographical product
G1G2 or G1[G2]
a1b1

a1=b1a2b2
1

=12
v1e2+e1v22
Strong product
(Normal product,
AND product)
G1G2
a1=b1a2b2

a1b1a2=b2

a1b1a2b2
=12

1=2

12
v1e2+e1v2+2e1e2
Co-normal product
(disjunctive product, OR product)
G1*G2
a1b1

a2b2
1

2
v12e2+e1v222e1e2
Modular product a1b1a2b2

a1≄b1a2≄b2
12

12
Rooted product see article v1e2+e1
Zig-zag product see article see article see article
Replacement product
Homomorphic product[1]Template:Refn
G1G2
a1=b1

a1b1a2≁b2
=1

12
v1v2(v21)/2+e1(v222e2)

In general, a graph product is determined by any condition for (a1,a2)(b1,b2) that can be expressed in terms of an=bn and anbn.

Mnemonic

Let K2 be the complete graph on two vertices (i.e. a single edge). The product graphs K2K2, K2×K2, and K2K2 look exactly like the graph representing the operator. For example, K2K2 is a four cycle (a square) and K2K2 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

Notes

Template:Reflist

References

Template:Refbegin

Template:Refend