Binary operation on graphs
In graph theory, a graph product is a binary operation on graphs. Specifically, it is an operation that takes two graphs G1 and G2 and produces a graph H with the following properties:
- The vertex set of H is the Cartesian product V(G1) × V(G2), where V(G1) and V(G2) are the vertex sets of G1 and G2, respectively.
- Two vertices (a1,a2) and (b1,b2) of H are connected by an edge, iff a condition about a1, b1 in G1 and a2, b2 in G2 is fulfilled.
The graph products differ in what exactly this condition is. It is always about whether or not the vertices an, bn in Gn 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
, and not
as the formula
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 | Number of edges
| Example |
| with ![{\displaystyle a_{n}~{\text{rel}}~b_{n}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/1aa6c620f7e8a70dd09a6b6fab11115dd14fb7fe) abbreviated as |
Cartesian product (box product)
| ![{\displaystyle a_{1}=b_{1}~\land ~a_{2}\sim b_{2}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/7925d30dc9d091fcded8d1fc1731e186e95ef2a0)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| ![{\displaystyle =_{1}~\sim _{2}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/ed684d86ee5aa572b44197759169fb1d59b08422)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| | |
Tensor product (Kronecker product, categorical product)
| | | | |
Lexicographical product
or | ![{\displaystyle a_{1}\sim b_{1}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/03b61c4ed4c060fcf709d7e85fc3a12f9c9fe6ba)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| ![{\displaystyle \sim _{1}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/6e4e345a6edbc682c9e1d6167a0898a94484feb2)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| | |
Strong product (Normal product, AND product)
| ![{\displaystyle a_{1}=b_{1}~\land ~a_{2}\sim b_{2}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/7925d30dc9d091fcded8d1fc1731e186e95ef2a0)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
![{\displaystyle a_{1}\sim b_{1}~\land ~a_{2}=b_{2}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/91e3afac9ba58e2e5882d0af4890b5b0b811da09)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| ![{\displaystyle =_{1}~\sim _{2}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/ed684d86ee5aa572b44197759169fb1d59b08422)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
![{\displaystyle \sim _{1}~=_{2}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/50e0ac03262f80c5a926233274f8eca30ec5908d)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| | |
Co-normal product (disjunctive product, OR product)
| ![{\displaystyle a_{1}\sim b_{1}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/03b61c4ed4c060fcf709d7e85fc3a12f9c9fe6ba)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| ![{\displaystyle \sim _{1}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/6e4e345a6edbc682c9e1d6167a0898a94484feb2)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| | |
Modular product | ![{\displaystyle a_{1}\sim b_{1}~\land ~a_{2}\sim b_{2}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/9c655a5d09976e61352471e16e3cbd825db89c64)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| ![{\displaystyle \sim _{1}~\sim _{2}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/96bc78162a7a46c1adc01b2ddbc51c6efcbfdaef)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| | |
Rooted product | see article | | | |
Zig-zag product | see article | | see article | see article |
Replacement product | | | | |
Homomorphic product[1][3]
| ![{\displaystyle a_{1}=b_{1}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/45920a307ec60ae908bf34d3496fbcc7f415c0e1)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| ![{\displaystyle =_{1}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/218cf5d206a33faf81b65775218b28740ea2b618)
![{\displaystyle \lor }](https://wikimedia.org/api/rest_v1/media/math/render/svg/ab47f6b1f589aedcf14638df1d63049d233d851a)
| | |
In general, a graph product is determined by any condition for
that can be expressed in terms of
and
.
Mnemonic
Let
be the complete graph on two vertices (i.e. a single edge). The product graphs
,
, and
look exactly like the graph representing the operator. For example,
is a four cycle (a square) and
is the complete graph on four vertices.
The
notation for lexicographic product serves as a reminder that this product is not commutative. The resulting graph looks like substituting a copy of
for every vertex of
.
See also
Notes
- ^ a b Roberson, David E.; Mancinska, Laura (2012). "Graph Homomorphisms for Quantum Players". Journal of Combinatorial Theory, Series B. 118: 228–267. arXiv:1212.1724. doi:10.1016/j.jctb.2015.12.009.
- ^ Bačík, R.; Mahajan, S. (1995). "Semidefinite programming and its applications to NP problems". Computing and Combinatorics. Lecture Notes in Computer Science. Vol. 959. p. 566. doi:10.1007/BFb0030878. ISBN 978-3-540-60216-3.
- ^ The hom-product of [2] is the graph complement of the homomorphic product of.[1]
References
- Imrich, Wilfried; Klavžar, Sandi (2000). Product Graphs: Structure and Recognition. Wiley. ISBN 978-0-471-37039-0.