Zum Inhalt springen

Eulersche Kantenzüge/Einführung/Textabschnitt

Aus Wikiversity
Euler möchte bei seinem täglichen Spaziergang über jede Brücke genau einmal gehen. Man spricht vom Königsberger Brückenproblem.



Es sei  G=(V,E)  ein Graph. Ein Kantenzug e1,…,em heißt eulersch, wenn in ihm jede Kante aus E genau einmal vorkommt.

Man spricht auch kurz von einem Eulerzug. Bei einem eulerschen Kantenzug wird jede Kante genau einmal durchlaufen. Es kann dabei Knoten geben, die dabei mehrfach oder auch (isolierte Punkte) gar nicht berührt werden. Unter einem geschlossenen eulerschen Kantenzug versteht man einen eulerschen Kantenzug, bei dem die Anfangskante mit der Endkante koinzident ist. Nicht geschlossene eulersche Kantenzüge nennt man auch offene eulersche Kantenzüge. Das ursprüngliche Brückenproblem bezieht sich auf einen Multigraphen, da die linke Insel doppelt mit beiden Flussseiten verbunden ist. Indem man aber auf diesen Kanten jeweils einen Hilfsknoten einführt, gelangt man zu einem äquivalenten Problem über einen einfachen Graphen.


Ein Graph G heißt eulersch, wenn in ihm ein geschlossener Eulerzug existiert.


Zwei Untergraphen  H1=(V1,E1)⊆G  und  H2=(V2,E2)⊆G  in einem Graphen  G=(V,E)  heißen kantendisjunkt, wenn  E1∩E2=∅  ist.




Satz  

Für einen zusammenhängenden Graphen  G=(V,E)  sind folgende Aussagen äquivalent.

  1. G ist eulersch.
  2. Jeder Knotenpunkt von G hat einen geraden Grad.
  3. G ist die Vereinigung von kantendisjunkten Kreisen (wobei ein einzelner Punkt hier als Kreis gelte).

Beweis  

Von (1) nach (2) ist klar, da bei einem geschlossenen Eulerzug jeder Knotenpunkt genau so oft besucht wie verlassen wird.

Von (2) nach (3). Wir führen Induktion über die Anzahl der Kanten. Da der Graph zusammenhängend ist, handelt es sich um einen isolierten Punkt oder aber jeder Knoten besitzt einen Grad von zumindest 2. Deshalb muss es in G einen Kreis K geben. Man kann ja in einem beliebigen Punkt starten und von diesem Punkt ausgehend nach und nach einen Kantenzug konstruieren. Wenn der Kantenzug in einen Punkt hineingeht, so kann man den Kantenzug fortsetzen, da zumindest zwei Kanten in dem Punkt zusammenlaufen. Sobald ein schon erreichter Punkt erneut auftaucht, ist der Kreis fertig, die „Vorperiode“ kann man außer Acht lassen. Es seien F die Kanten des Kreises und wir betrachten den neuen Graphen  G′=(V,E∖F).  Wenn ein Punkt aus V zu einer Kante aus F inzident ist, so reduziert sich der Grad in diesem Knoten um 2, da ja jeder Punkt in einem Kreis inzident zu zwei Kanten ist. Wenn ein Punkt im Kreis nicht aufgerufen wird, so ändert sich der Grad nicht. In jedem Fall besitzt in G′ jeder Punkt wieder einen geraden Grad. Der neue Graph muss nicht mehr zusammenhängend sein, allerdings erfüllen die einzelnen Zusammenhangskomponenten von G′ wieder die Voraussetzung, dass sämtliche Grade gerade sind. Nach Induktionsvoraussetzung besitzen die Zusammenhangskomponenten jeweils eine Darstellung als Vereinigung mit kantendisjunkten Kreisen. Also besitzt G′ eine Darstellung als Vereinigung mit kantendisjunkten Kreisen und zusammen mit K ergibt sich eine Darstellung von G als Vereinigung mit kantendisjunkten Kreisen.

Von (3) nach (1). Es seien  Kj=(Vj,Ej),   j∈J,  die beteiligten kantendisjunkten Kreise, die G überdecken. Wir konstruieren induktiv Kantenzüge, die für zunehmend größere Vereinigungen dieser Kreise einen Eulerzug darstellen. Einen einzelnen Kreis kann man unmittelbar als einen Eulerzug für diesen Kreis auffassen. Es sei nun vorausgesetzt, dass man s Kreise, die wir als K1,…,Ks durchnummerieren, derart gefunden hat, dass es einen Eulerzug für

Gs=⋃j=1sKj

gibt. Bei  s<r  gibt es aufgrund des Zusammenhangs des Graphen einen weiteren Kreis, den wir Ks+1 nennen, der einen gemeinsamen Knotenpunkt mit Gs hat, sagen wir u. Dann erhält man aus dem Eulerzug für Gs einen Eulerzug für  Gs+1=Gs∪Ks+1,  indem man, wenn der Eulerzug den Punkt u erreicht, in den Kreis Ks+1 abbiegt, diesen einmal durchläuft und danach an der Stelle u den alten Eulerzug fortsetzt. Da Ks+1 kantendisjunkt zu Gs ist, entsteht dabei wieder ein Eulerzug.

◻


Das im Beweis zu Fakt beschriebene Verfahren, um, falls die Gradbedingung erfüllt ist, einen geschlossenen eulerschen Kantenzug über die kantendisjunkten Kreise zu finden, ist grundsätzlich konstruktiv. Man nennt das Verfahren den Algorithmus von Hierholzer. Bei einem Knotenpunkt vom Grad 2 ist der Kantendurchlauf für einen Eulerzug bis auf die Orientierung vorgegeben. Man kann aber im Allgemeinen bei einem Knotenpunkt mit einem Grad >2 nicht frei vorgeben, in welcher Reihenfolge die in dem Punkt zusammenlaufenden Kanten hintereinander gelegt werden. Im Schmetterlingsgraphen können in einem Eulerzug die beiden rechten Kanten, die am Kreuzungspunkt anliegen, nicht direkt aufeinander folgen, da sonst der rechte Kreis geschlossen wird.




Korollar  

Es sei  G=(V,E)  ein zusammenhängender Graph, für den der Grad eines jeden Knotenpunktes gerade ist. Es sei u ein Punkt und es seien v,w adjazente Punkte zu u.

Dann ist die Kantenfolge {v,u},{u,w} genau dann Teil eines geschlossenen Eulerzuges durch G, wenn der Graph G′, der aus G entsteht, indem man einen neuen Punkt u′ einführt und die beiden Kanten {v,u},{u,w} durch {v,u′},{u′,w} ersetzt, zusammenhängend ist.

Beweis  

Der konstruierte „Überbrückungsgraph“ besitzt ebenfalls die Eigenschaft, dass jeder Knotenpunkt einen geraden Grad besitzt. Wenn er zusammenhängend ist, so gibt es nach Fakt einen geschlossenen Eulerzug durch G′. Da an u′ nur die beiden Kanten {v,u′} und {u′,w} anliegen, werden diese hintereinander durchlaufen. Wenn man die Konstruktion rückgängig macht (also u und u′ identifiziert), so erhält man einen Eulerzug von G, bei dem die beiden Kanten hintereinander vorkommen. Wenn es umgekehrt einen Eulerzug von G gibt, der die beiden Kanten hintereinander durchläuft, so kann man daraus direkt einen Eulerzug von G′ konstruieren, was zeigt, dass G′ zusammenhängend ist.

◻