Tutorials › Graph Theory (Undergraduate) › Structural Properties of the Petersen Graph

Subgraphs, Isomorphism and Special Families · Tutorial 41 of 799

Structural Properties of the Petersen Graph

Use a precise edge list to verify the Petersen graph’s local degrees, cycle structure and non-bipartiteness.

Beginner 9 min read

What You'll Learn

  • Read an explicit vertex and edge representation of the Petersen graph
  • Verify that every vertex has degree three
  • Prove that the graph contains no triangles
  • Trace two distinct 5-cycles directly from the edge list
  • Use an odd cycle to show that the graph is not bipartite
  • Avoid confusing the inner edges with consecutive-index edges

An Explicit Model of the Petersen Graph

The Petersen graph is a small graph with a striking combination of properties: every vertex has the same degree, there are no triangles, and yet the graph contains an odd cycle. An explicit vertex and edge list makes these claims verifiable without relying on a drawing. It also helps prevent a common error: the inner edges do not join consecutive subscripts.

We use subscripts modulo \(5\), so, for example, \(a_5=a_0\). The vertices are divided into an outer set and an inner set. The outer edges join consecutive \(a\)-vertices; each \(a_i\) is joined to \(b_i\); and the inner edges join \(b_i\) to \(b_{i+2}\). All edges are undirected, and the graph is simple: it has no loops or multiple edges.

Definition: The Petersen graph \(P\) has vertex set \(V(P)=\{a_0,a_1,a_2,a_3,a_4,b_0,b_1,b_2,b_3,b_4\}\) and edge set \(E(P)=\{a_0a_1,a_1a_2,a_2a_3,a_3a_4,a_4a_0,\ a_0b_0,a_1b_1,a_2b_2,a_3b_3,a_4b_4,\ b_0b_2,b_2b_4,b_4b_1,b_1b_3,b_3b_0\}\).

There are three groups of edges: five outer edges, five edges joining the two sets, and five inner edges. In particular, the inner edges form the cycle \(b_0,b_2,b_4,b_1,b_3,b_0\), not the cycle in subscript order. This organization will let us check degrees and cycles by reading the edge list.

Degree and Triangle Structure

Theorem: In \(P\), every vertex has degree \(3\), and \(P\) contains no triangle.

Proof. The neighbors of an outer vertex \(a_i\) are \(a_{i-1}\), \(a_{i+1}\), and \(b_i\), by the three specified types of edges. These are three distinct vertices, so \(\deg(a_i)=3\). The neighbors of an inner vertex \(b_i\) are \(b_{i-2}\), \(b_{i+2}\), and \(a_i\). The two inner neighbors are distinct modulo \(5\), and neither is \(a_i\), so \(\deg(b_i)=3\). Thus every vertex has degree \(3\).

For the triangle claim, divide the vertices into the outer set \(\{a_0,\ldots,a_4\}\) and the inner set \(\{b_0,\ldots,b_4\}\). Among the outer vertices, the only edges form the 5-cycle \(a_0,a_1,a_2,a_3,a_4,a_0\), which has no triangle: each outer vertex has only two outer neighbors, and those two are not adjacent. Among the inner vertices, the only edges form the 5-cycle \(b_0,b_2,b_4,b_1,b_3,b_0\), which likewise has no triangle.

It remains to exclude a triangle using both sets. Such a triangle would have either two outer vertices and one inner vertex, or one outer vertex and two inner vertices. Each \(b_i\) is adjacent to exactly one outer vertex, namely \(a_i\), so it cannot be joined to two outer vertices as required in the first case. Each \(a_i\) is adjacent to exactly one inner vertex, namely \(b_i\), so it cannot be joined to two inner vertices as required in the second case. All possible distributions of three vertices have been covered, so no triangle exists. \(\square\)

Worked Example: Checking the Degrees

Use \(P\) with \(V(P)=\{a_0,a_1,a_2,a_3,a_4,b_0,b_1,b_2,b_3,b_4\}\) and \(E(P)=\{a_0a_1,a_1a_2,a_2a_3,a_3a_4,a_4a_0,a_0b_0,a_1b_1,a_2b_2,a_3b_3,a_4b_4,b_0b_2,b_2b_4,b_4b_1,b_1b_3,b_3b_0\}\). Compute the neighbors of \(a_0\) and \(b_0\).

The edge list shows that \(a_0\) is incident with \(a_0a_1\), \(a_4a_0\), and \(a_0b_0\). Therefore \(N(a_0)=\{a_1,a_4,b_0\}\), and \(\deg(a_0)=3\). The edges incident with \(b_0\) are \(a_0b_0\), \(b_0b_2\), and \(b_3b_0\). Therefore \(N(b_0)=\{a_0,b_2,b_3\}\), and \(\deg(b_0)=3\).

There are five edges of each of the three types, so \(|E(P)|=5+5+5=15\). The degree calculation for all ten vertices gives a total degree sum of \(10\cdot3=30\). Counting edge endpoints gives \(2\cdot15=30\), an independent check that agrees with the degree list.

Check: The neighbors listed for each of \(a_0\) and \(b_0\) are exactly the edges in the stated edge set that contain that vertex. Each list has three distinct vertices, as the degree claim requires.

Worked Example: Testing for a Triangle at a Vertex

Again take \(P\) with \(V(P)=\{a_0,a_1,a_2,a_3,a_4,b_0,b_1,b_2,b_3,b_4\}\) and \(E(P)=\{a_0a_1,a_1a_2,a_2a_3,a_3a_4,a_4a_0,a_0b_0,a_1b_1,a_2b_2,a_3b_3,a_4b_4,b_0b_2,b_2b_4,b_4b_1,b_1b_3,b_3b_0\}\). Check whether a triangle can contain \(a_0\).

The neighbors of \(a_0\) are \(a_1,a_4,b_0\). A triangle containing \(a_0\) would need an edge between some two of these three neighbors. The pair \(a_1,a_4\) is not an edge, since the outer edges are only \(a_0a_1,a_1a_2,a_2a_3,a_3a_4,a_4a_0\). The pair \(a_1,b_0\) is not an edge, since the only edge from \(a_1\) to an inner vertex is \(a_1b_1\). The pair \(a_4,b_0\) is not an edge, since the only edge from \(a_4\) to an inner vertex is \(a_4b_4\). Thus no triangle contains \(a_0\).

This check is local to one vertex; by itself it would not rule out a triangle elsewhere. The theorem’s full argument completes the check: the outer-only and inner-only cases are excluded by their 5-cycle edge patterns, and a mixed triangle is impossible because each vertex has exactly one neighbor in the other set.

Check: The three possible pairs from \(N(a_0)\) have all been tested against the edge set, and none is an edge. Therefore none can complete a triangle through \(a_0\).

Two 5-Cycles and Non-Bipartiteness

A cycle is a closed sequence of adjacent vertices in which no vertex is repeated apart from the final return to the starting vertex. The edge list displays a 5-cycle using only outer vertices and another using only inner vertices. The odd length of either cycle also gives an immediate obstruction to bipartiteness.

Result: The Petersen graph contains the cycles \(a_0,a_1,a_2,a_3,a_4,a_0\) and \(b_0,b_2,b_4,b_1,b_3,b_0\), each of length \(5\), and is not bipartite.

Proof. The outer sequence uses edges \(a_0a_1,a_1a_2,a_2a_3,a_3a_4,a_4a_0\), all in \(E(P)\), and its five vertices before returning to \(a_0\) are distinct. It is a 5-cycle. The inner sequence uses \(b_0b_2,b_2b_4,b_4b_1,b_1b_3,b_3b_0\), also all in \(E(P)\); its five vertices before returning to \(b_0\) are distinct as well. It too is a 5-cycle.

A graph is bipartite if its vertices can be partitioned into two sets so that every edge has one endpoint in each set. Along any cycle in a bipartite graph, the vertices must alternate between the two sets. After an odd number of edges the alternating sequence is in the opposite set from where it began. But a cycle returns to its starting vertex, which belongs to the same set as at the start. This is impossible for a cycle of length \(5\). Since \(P\) contains such a cycle, \(P\) is not bipartite. \(\square\)

Worked Example: Following the Inner Cycle

Take \(P\) with \(V(P)=\{a_0,a_1,a_2,a_3,a_4,b_0,b_1,b_2,b_3,b_4\}\) and \(E(P)=\{a_0a_1,a_1a_2,a_2a_3,a_3a_4,a_4a_0,a_0b_0,a_1b_1,a_2b_2,a_3b_3,a_4b_4,b_0b_2,b_2b_4,b_4b_1,b_1b_3,b_3b_0\}\). Trace the inner cycle and use it to test bipartiteness.

Start at \(b_0\). The edge list gives the next vertices \(b_2\), then \(b_4\), then \(b_1\), then \(b_3\), and finally \(b_0\). The five successive edges are \(b_0b_2\), \(b_2b_4\), \(b_4b_1\), \(b_1b_3\), and \(b_3b_0\). The first five vertices \(b_0,b_2,b_4,b_1,b_3\) are distinct, so this is a cycle of length \(5\).

If a bipartition existed, put \(b_0\) in one part. The edge \(b_0b_2\) would put \(b_2\) in the other part; \(b_2b_4\) would put \(b_4\) back in the first; \(b_4b_1\) would put \(b_1\) in the other; and \(b_1b_3\) would put \(b_3\) in the first. But the final edge \(b_3b_0\) would join two vertices in the first part, contradicting the definition of a bipartition.

Check: The edge sequence has five edges, and each consecutive pair in the listed sequence is in \(E(P)\), including the closing edge \(b_3b_0\). The final edge is precisely where the required alternating assignment fails.

Reading the Structure Correctly

These properties describe different aspects of the same representation. The degree calculation uses the local list of edges at each vertex. The triangle proof uses the separation into outer and inner vertices, together with the fact that each vertex has just one neighbor across that separation. The cycle and bipartiteness checks use a sequence of five explicitly listed edges. Keeping these arguments distinct makes each claim easy to verify.

A frequent mistake is to read “join \(b_i\) to \(b_{i+2}\)” as “join \(b_i\) to \(b_{i+1}\).” For example, an incorrect calculation might list \(b_0b_1\) as an inner edge because the subscripts are consecutive. That edge is not in \(E(P)\). The actual inner neighbors of \(b_0\) are \(b_2\) and \(b_3\), since the inner edges incident with \(b_0\) are \(b_0b_2\) and \(b_3b_0\). The correction matters: the inner 5-cycle is traversed in the order \(b_0,b_2,b_4,b_1,b_3,b_0\).

Also distinguish between showing that a graph contains a 5-cycle and showing that it is exactly a 5-cycle. The Petersen graph has ten vertices and fifteen edges, while either displayed cycle uses only five vertices and five edges. These cycles are subgraphs of \(P\), not descriptions of the entire graph. Their odd length is enough to prove non-bipartiteness; no claim that the rest of the graph is absent is needed.

Check Your Understanding

Use the explicit vertex and edge representation to answer each question.

  1. List all neighbors of \(a_3\) and \(b_3\), and verify that both vertices have degree \(3\).
  2. Why does checking only the three neighbors of \(a_0\) rule out triangles through \(a_0\), but not by itself rule out every triangle in \(P\)?
  3. Write the five edges, in order, of the outer 5-cycle and the inner 5-cycle.
  4. Explain why a 5-cycle cannot occur in a bipartite graph.
  5. Which edge would be incorrectly added if the inner vertices were mistakenly connected in subscript order, and what are the actual inner neighbors of \(b_0\)?