From Two Odd Degrees to an Euler Circuit
An undirected graph with an open Euler trail has two different endpoints. The parity of the degrees at those endpoints is the obstacle to applying the Euler circuit characterization: precisely those two degrees are odd. Adding one edge between the endpoints changes each of those degrees by one, making them even. If the augmented graph is connected, the Euler circuit characterization then supplies a circuit using every edge. Removing the added edge from that circuit recovers an open Euler trail in the original graph.
Throughout, an original graph is finite and simple. An Euler trail is a trail that uses every edge exactly once; a trail may repeat vertices, but not edges. It is open when its starting and ending vertices differ. A closed Euler trail is an Euler circuit. In the augmentation, we allow a multigraph: parallel edges are permitted, and parallel edge instances are treated as distinct. This matters when the two odd-degree vertices are already adjacent.
The circuit result used here is the earlier Euler circuit characterization: a connected graph with at least one edge has an Euler circuit exactly when every vertex has even degree. We apply the result to the augmented multigraph, counting parallel edge instances separately. The point of this tutorial is to prove why this augmentation is exactly the right operation, and why removing the added edge returns a trail that uses precisely the original edges.
Why the Augmentation Works
First note how a trail constrains degrees. Whenever a trail passes through a vertex as an internal vertex, the arrival edge and departure edge use two incidences there. For a closed Euler trail this pairing accounts for all incidences, so every degree is even. For an open Euler trail, the incidences at each endpoint have one unpaired edge, while all incidences at other vertices pair up. Thus the two endpoints have odd degree and every other vertex has even degree.
Here is the same parity argument stated with the edge-use condition included.
Proof. Consider the sequence of edges in the trail, which uses every edge exactly once. At an internal occurrence of any vertex, the trail enters along one edge and leaves along another, pairing two incidences. If a vertex appears internally more than once, each such passage contributes another pair. At the starting vertex \(x\), the first edge has no preceding arrival edge, leaving one unpaired incidence; all its other incidences are paired. Therefore \(\deg(x)\) is odd. The same reasoning at the final vertex \(y\) leaves one unpaired incidence, so \(\deg(y)\) is odd. Every other vertex has all incidences paired and hence even degree. The endpoints are distinct because the trail is open. \(\square\)
Now suppose \(G\) is connected and has exactly two odd-degree vertices, \(x\) and \(y\). Add a new edge instance \(e^*\) with endpoints \(x,y\). The degree of each of \(x\) and \(y\) increases by one, changing each from odd to even. Every other degree remains unchanged and is already even. The augmented graph is connected because the original graph was connected, and adding an edge cannot destroy any existing connection. It has at least one edge, so the Euler circuit characterization applies.
To recover a trail, take an Euler circuit of the augmented graph. Since the circuit uses every edge instance, it uses \(e^*\) exactly once. Regard the circuit cyclically and start its written sequence at \(e^*\). In one direction around the circuit it has the form \(x,e^*,y,\ldots,x\), or the same form with \(x\) and \(y\) interchanged. Delete \(e^*\) and begin the remaining sequence at its other endpoint. What remains is a trail from \(y\) to \(x\) (or \(x\) to \(y\)). It uses every edge instance other than \(e^*\) exactly once, and those are exactly the edges of \(G\). The endpoints differ, so this is an open Euler trail in \(G\).
These arguments prove both directions of the theorem. An open Euler trail forces exactly two odd-degree vertices by the lemma. Conversely, for a connected graph with exactly two odd-degree vertices, the added edge makes all degrees even; the Euler circuit characterization gives a circuit, and deleting the added edge gives the required open trail.
Worked Examples
Worked Example: Augmenting a Path
Let \(G=(V,E)\), where \(V=\{1,2,3,4\}\) and \(E=\{12,23,34\}\). Find an open Euler trail using the augmentation argument.
The degrees are \(\deg(1)=1\), \(\deg(2)=2\), \(\deg(3)=2\), and \(\deg(4)=1\). Thus the two odd-degree vertices are \(1\) and \(4\). Add a new edge instance \(e^*=14\). In the augmented multigraph the degrees are \(\deg(1)=2\), \(\deg(2)=2\), \(\deg(3)=2\), and \(\deg(4)=2\). It is connected, so it has an Euler circuit. One such circuit is \(1,2,3,4,1\), whose final edge is \(e^*\).
Delete that final edge. The remaining sequence \(1,2,3,4\) uses \(12,23,34\), each once, and starts and ends at different vertices. Therefore it is an open Euler trail in the original graph.
Check: the circuit uses the three original edges and \(e^*\), for \(3+1=4\) edge instances. Removing \(e^*\) leaves \(4-1=3\) edges, exactly \(|E|=3\).
Worked Example: The Odd Vertices Are Already Adjacent
Let \(G=(V,E)\), where \(V=\{1,2,3,4\}\) and \(E=\{12,23,13,34\}\). Find an open Euler trail, taking care with the edge \(34\).
The degrees are \(\deg(1)=2\), \(\deg(2)=2\), \(\deg(3)=3\), and \(\deg(4)=1\). Thus \(3\) and \(4\) are the two odd-degree vertices. Since \(34\) is already an edge, adding an edge between \(3\) and \(4\) creates a second, parallel edge instance \(e^*\); it does not replace the original edge \(34\). The augmented degrees are \(2,2,4,2\), respectively, so all are even.
An Euler circuit in the augmented graph is \(3,1,2,3,4,3\). Its successive edge instances are \(31,12,23,34,e^*\), where the final step from \(4\) to \(3\) uses the added edge. Removing \(e^*\) leaves the open trail \(3,1,2,3,4\) in \(G\), using \(31,12,23,34\) exactly once.
Check: \(G\) has \(4\) edges, and the augmented circuit uses \(4+1=5\) edge instances. Removing the one added instance leaves \(5-1=4\) original edges. The trail starts at \(3\) and ends at \(4\), the two odd-degree vertices.
Worked Example: Recovering the Trail After a Circuit Wraps Around
Let \(G=(V,E)\), where \(V=\{1,2,3,4,5\}\) and \(E=\{12,23,34,41,35\}\). Add an edge between the odd-degree vertices and recover an open Euler trail.
The degrees are \(\deg(1)=2\), \(\deg(2)=2\), \(\deg(3)=3\), \(\deg(4)=2\), and \(\deg(5)=1\). The odd-degree vertices are \(3\) and \(5\). Add a new edge instance \(e^*=35\). The augmented degrees are \(2,2,4,2,2\), so every degree is even, and the graph remains connected.
One Euler circuit is \(3,2,1,4,3,5,3\). The edge instances in order are \(32,21,14,43,35,e^*\). In particular, the step \(3\) to \(5\) uses the original edge \(35\), and the final step \(5\) to \(3\) uses the added instance. Removing that final step leaves \(3,2,1,4,3,5\), an open Euler trail in \(G\).
Check: the original graph has \(5\) edges, and the circuit uses those \(5\) edge instances plus \(e^*\), for \(6\) in total. The recovered trail has \(6-1=5\) edges. Its endpoints are \(3\) and \(5\), and each listed original edge occurs once.
Conditions and Common Pitfalls
The two odd degrees are not enough on their own: connectedness is also required. For example, let \(V=\{1,2,3,4,5\}\) and \(E=\{12,23,31,45\}\). Vertices \(4\) and \(5\) are the only odd-degree vertices, but the triangle on \(\{1,2,3\}\) and the edge \(45\) are in separate components. Adding an edge between \(4\) and \(5\) leaves those components disconnected. The augmented graph therefore cannot have one Euler circuit using all its edges, and the original graph has no Euler trail using every edge.
A related mistake is to treat the augmented graph as simple even when \(x\) and \(y\) are already adjacent. In the second example, writing \(E\cup\{34\}=E\) would leave \(\deg(3)=3\) and \(\deg(4)=1\); it would not change either degree. The correction is to add a new edge instance parallel to the existing \(34\). Counting that instance raises both degrees by one, making them \(4\) and \(2\), respectively.
Finally, removing the added edge means removing that particular edge instance from the circuit, not deleting every edge with the same endpoints. When a parallel original edge exists, the circuit must use both instances, and only the artificial one is discarded. This distinction is what guarantees that the recovered trail still uses every original edge, including an original edge joining the two endpoints.
Why the Method Is Useful
The transformation reduces the open-trail question to a circuit question already characterized by degree parity and connectedness. Rather than search for an ordering of all edges directly, one checks the graph's connectivity and degrees, adds a single edge between the odd vertices, and applies the Euler circuit result. Any Euler circuit of the augmented graph can then be cut at the added edge to give an open Euler trail.
The argument also explains the exact role of the endpoints: they are precisely the vertices whose degree parity must change. Adding an edge between any other pair would not make all degrees even. The added edge is therefore not an arbitrary shortcut; it encodes the start and finish of the desired trail as one extra step that closes the route.
Check Your Understanding
Use the parity and augmentation arguments to answer these questions.
- A connected graph has exactly two odd-degree vertices \(a\) and \(b\). What happens to their degrees when a new edge instance \(ab\) is added?
- Explain why an Euler circuit in the augmented graph can be written with the added edge first, even if it was originally listed elsewhere in the circuit.
- Let \(V=\{1,2,3,4\}\) and \(E=\{12,23,34,41,13\}\). Find the odd-degree vertices, add the required edge instance, and give an Euler circuit of the augmented graph.
- Why does the augmentation argument fail if the graph consists of two components, one containing a cycle and one containing the two odd-degree vertices?
- If the two odd-degree vertices are adjacent in the original simple graph, why must the augmentation use a distinct parallel edge instance?