Discrete MathGraph Theory

Graph Isomorphism

Two graphs have the same structure when a relabeling of the vertices matches their edges; different degree sequences prove they do not.

Not started Jump to practice

The same graph can be drawn in many ways, with different labels. When are two graphs "really the same"? The answer uses a bijection between their vertex sets, and the named graphs from special graphs give good test cases.

Key idea

Graphs $G$ and $H$ are isomorphic when there is a bijection $f : V(G) \to V(H)$ such that $u$ and $v$ are joined in $G$ exactly when $f(u)$ and $f(v)$ are joined in $H$. Properties preserved by every isomorphism are invariants: the number of vertices and edges, the degree sequence, connectedness, the number of triangles, the lengths of cycles. Different invariants prove two graphs are not isomorphic; matching invariants do not prove they are.

Why it works

An isomorphism is a relabeling: rename each vertex $u$ of $G$ as $f(u)$, and the edge set becomes exactly the edge set of $H$. Anything defined only from vertices and edges, without looking at the names or the drawing, survives a relabeling. That is why invariants can rule isomorphism out. But many different graphs share all the simple invariants, so to show two graphs are isomorphic you have to produce the bijection.
$C_{6}$ and two separate triangles: same number of vertices, same number of edges, the same degree sequence. The triangle count tells them apart. Click a vertex on the left, then one on the right, to build a relabeling.

Worked examples

Worked example: An invariant that differs

$G$ has edges $AB, BC, CD, DA, AC$ and $H$ has edges $12, 23, 34, 41, 13, 24$. Are they isomorphic?
  1. $G$ has $5$ edges and $H$ has $6$.
  2. An isomorphism maps edges to edges one-to-one, so the counts would have to match. Not isomorphic.

Answer: No

Worked example: Same degrees, still different

Is $C_{6}$ isomorphic to the graph made of two separate triangles?
  1. Both have $6$ vertices, $6$ edges, and every degree $2$.
  2. But $C_{6}$ is connected and has no triangles, while the other graph has two components and two triangles.
  3. Not isomorphic: connectedness and triangle counts are invariants.

Answer: No

Worked example: Building an isomorphism

$G$ is the cycle $A - B - C - D - E - A$. $H$ has edges $13, 35, 52, 24, 41$. Find an isomorphism.
  1. $H$ is also a cycle of length $5$: follow it, $1 \to 3 \to 5 \to 2 \to 4 \to 1$.
  2. Send the cycles to each other in order: $A \mapsto 1$, $B \mapsto 3$, $C \mapsto 5$, $D \mapsto 2$, $E \mapsto 4$.
  3. Check every edge: $AB \mapsto 13$, $BC \mapsto 35$, $CD \mapsto 52$, $DE \mapsto 24$, $EA \mapsto 41$. All are edges of $H$.

Answer: $A \mapsto 1, B \mapsto 3, C \mapsto 5, D \mapsto 2, E \mapsto 4$

Common mistake

Deciding "isomorphic" because the degree sequences match. Matching invariants are necessary, not sufficient; $C_{6}$ and two triangles share their degree sequence. Check: to prove "isomorphic," write the bijection and verify every edge; to prove "not isomorphic," name an invariant that differs.

Practice

Pass with 3 right answers, the last 2 in a row. Each right answer earns 2 XP.

Loading practice…

Builds on

Leads to

This is one of the top rungs of Discrete Math.

Sources and further reading

  • Oscar Levin, Discrete Mathematics: An Open Introduction (3rd ed.), section "Definitions" in the graph theory chapter (isomorphic graphs)
  • MIT OpenCourseWare 6.042J Mathematics for Computer Science (Lehman, Leighton and Meyer), chapter "Simple Graphs" (isomorphism)
@teddyrookbook GitHub