1 Graphen Definition: Ein Graph G = (V, E) setzt sich aus einer Knotenmenge V und einer (Multi)Menge E ⊆ V × V , die als Kantenmenge bezeichnet wird, zusammen. Falls E symmetrisch ist, d.h.(∀u, v ∈ V )[(u, v) ∈ E ⇒ (v, u) ∈ E], so ist G ein ungerichteter Graph, ansonsten heißt G gerichteter Graph. Alternativ kann man ungerichtete Graphen als Menge von 2-elementigen Mengen auffassen, und gerichtete Graphen als Menge von geordneten 2-Tupeln. Eine Schlinge bezeichnet eine Kante der Form (u, u) oder u, u. Falls E eine Multimenge ist, nennt man G auch Multigraph. Ein Graph ist einfach, wenn er keine Schlingen oder Mehrfachkanten enthält - E also keine Multimenge ist und (∀u, v ∈ V )[(u, v) ∈ E ⇒ u 6= v]. Als vollständiger Graph Kn wird ein Graph bezeichnet der alle Tupel aus V × V enthält, bis auf die reflexiven Glieder. D.h. Kn ist gleichzeitig einfach. Die Definition lautet also E = u, v|u, v ∈ V ∧ u 6= v bzw. analog für gerichtete Graphen. Die Anzahl der Kanten in einem vollständigen Graphen beträgt n n · (n − 1) |E| = = 2 2 dies beruht auf der Auswahl einer zweielementigen Teilmenge aus |V | = n. Als Folge ergibt sich, dass ein einfacher Graph maximal n2 Kanten besitzen kann. Ein Graph heißt bipartit, falls sich V in zwei nichtleere, disjunkte Teilmengen zerlegen lässt, also V = V1 ] V2 und für alle Kanten folgendes gilt: (∀e ∈ E)[e ∈ (V1 × V2 ) ∪ (V 2 × V1 ] Für bipartite Graphen ist auch eine Schreibweise der Art G = (V1 , V2 , E) möglich. Ein Beispiel für einen bipartiten Graphen stellt der C8 dar, ein Graph der einen Kreis darstellt und der sich beispielsweise in zwei Mengen V1 , V2 zerlegen ließe mit |V1 | = |V2 | = 4. Als vollständigen bipartiten Graph bezeichnet man denjenigen Graphen der bei Zerlegung in zwei Teilmengen die Eigenschaft E = (V1 × V2 ) ∪ (V2 × V1 ) besitzt. Die Notation ist dabei Km,n . Es ist jedoch egal, in welcher Reihenfolge die Kardinalitäten m = |V1 |, n = |V2 | notiert werden aufgrund der Kommutativität von ∪. Ein k-partiter Graph verallgemeinert die Konzepte des bipartiten Graphen. Analog dazu wird V in mehre Teilmengen zerlegt und die Kanten besitzen die Eigenschaft eine Teilmenge der vereinigten kartesischen Produkte der disjunkten, nichtleeren Teilmengen zu sein. Die Notation ist dabei z.B. für einen tripartiten Graph, der in drei Teilmengen mit jeweils 2 Knoten zerlegt wurde K2,2,2 . Als n-dimensionaler binärer Hyperwürfel wird ein Graph bezeichnet dessen Knotenmenge V = Vn = Bn = 0, 1n ist und E = {(u, v) ∈ Vn 2 |Hammingabstand(u, v) = 1} 1 was soviel bedeutet wie, dass die Kantenmenge nur genau die Kantenmenge enthält zwischen zwei Knoten, die sich an einer Stelle unterscheiden(wenn man die Knoten als Zeichenkette auffasst). Für die Anzahl der Knoten erhält n man nach Definition |Vn | = |Bn | = |2|n = 2n und für die Kanten |E| = n · 22 . Als Pfad der Länge n wird eine Folge von Knoten v1 , v2 , v3 , ..., vn aus V bezeichnet wobei für 0 < i < n gelte, dass (vi , vi+1 ) ∈ E erfüllt ist. Anschaulich sind also die Knoten v1 bis vn im Graphen verbunden. Ein Graph der genau nur einen Pfad der Länge n enthält, schreibt man auch Pn , wobei Pn = (V, E) wie folgt definiert ist: V = {v1 , v2 , ..., vn } und E = {{vi , vi+1 }|1 ≤ i < n} Ein Spezialfall stellt ein einfacher Pfad dar, der dadurch definiert ist, dass alle Knoten der Folge paarweise verschieden sind. Ein wie oben definierter Graph Pn ist jedoch per Definition immer einfach. Ein Kreis stellt eine Erweiterung eines Pfades dar. Der Unterschied zum Pfad besteht lediglich darin, dass Anfangs- und Endknoten der Folge v1 , v2 , v3 , ..., vn miteinander verbunden sind. Man könnte auch einen Kreis lediglich als Spezialfall eines Pfades v1 , ..., vn definieren, bei dem lediglich v1 = vn gilt. Ein einfacher Kreis ist demnach analog dem Pfad genau dann einfach, falls die Knoten v1 bis vn−1 paarweise verschieden sind. Ähnlich Pn lässt sich auch ein Graph definieren, der lediglich aus einem Kreis besteht. Sei Cn = (V, E) und V = {v1 , v2 , v3 , ..., vn }, es gilt E = {{vi , v(i+1) mod n }|1 ≤ i < n + 1} Bei einem ungerichteten Graphen machen solche Graphen jedoch erst für n ≥ 3 Sinn. Als Gitter wird ein Graph Mm,n = (V, E) bezeichnet, falls V = {1, ..., m} × {1, ..., n} und für alle Kanten (∀{(i, j), (k, l)} ∈ E) [|i − k| + |j − l| = 1] gilt. Anschaulich lässt sich Mm,n als ein Gitter aus m vertikalen und n horizontalen Knoten darstellen. Ein Torus stellt ähnlich wie der Kreis für den Pfad eine Erweiterung der Definition für das Gitter dar. Als Torus wird ein Graph Tm,n = (V, E bezeichnet, bei dem V = {1, ..., m} × {1, ..., n} gilt, aber (∀{(i, j), (k, l)} ∈ E) [|(i − k) mod m| + |(j − l) mod n| = 1] Zwei Graphen sind genau dann isomorph, falls eine entsprechende Bijektion 2 besteht. Zwei Knoten u, v ∈ V eines Graphen G = (V, E) bezeichnet man als adjazent(benachbart), falls {u, v} ∈ E gilt. Andersrum nennt man u und v inzident zur Kante {u, v}. u und v werden dabei als Endknoten der Kante {u, v} bezeichnet. Zwei Kanten {u, v} und {v, w} sind adjazent, wenn sie einen gemeinsamen Endknoten(hier v) enthalten. Als Nachbarschaft eines Knoten u bezeichnet man die Menge aller Knoten, die zu diesem adjazent sind. N (u) = {v ∈ V |u 6= v ∧ {u, v} ∈ E} Die Kardinalität |N (u)| = d(u) bezeichnet man als Grad des Knoten u. Falls u keine Nachbarn besitzt, also d(u) = 0, so nennt man u isoliert. Für einen Graphen mit der Knotenmenge V = {v1 , ..., vn } wird die Folge d(v1 ), d(v2 ), ..., d(vn ) mit d(v1 ) ≥ d(v2 ) ≥ ... ≥ d(vn ) als Gradfolge bezeichnet. Für isomorphe Graphen ist sie identisch, andersherum gilt dies aber nicht, d.h. zwei Graphen sind nicht zwangsläufig isomorph, wenn ihre Gradfolgen identisch sind. Die Summe aller Grade aller Knoten v ∈ V beträgt 2 · |E|. X d(v) = 2 · |E| v∈V Als Folge ergibt sich, dass die Anzahl der Knoten mit ungeradem Grad in einem Graphen gerade ist. Ein Graph heißt k-regulär wenn (∀v ∈ V ) [d(v) = k] gilt. Ein Graph G0 = (V 0 , E 0 ) wird als Teilgraph von G = (V, E) bezeichnet, falls V 0 ⊆ V ∧ E0 ⊆ E gilt. Ein Graph H heißt Unterteilung von G, falls sich H dadurch erzeugen lässt, indem eine Kante {u, v} ∈ V durch einen Pfad ersetzt wird(Hierbei gilt natürlich, dass die Knotenmenge von H größer als die von G ist). Nach dem Satz von Kuratowski ist ein Graph genau dann nicht planar, wenn er eine Unterteilung des K5 oder des K3,3 als Teilgraph enthält. 3 Ein Teilgraph G0 von G heißt (knoten-)induzierter Teilgraph von G, falls für die Kantenmenge E 0 von G0 folgendes gilt E 0 = E ∩ (V 0 × V 0 ) Anschaulich bedeutet dies, dass alle Kanten die in G für alle Knoten v 0 ∈ V 0 enthalten sind auch in E 0 enthalten sein müssen, damit G0 ein induzierter Teilgraph von G ist. Aus diesem Grund wird auch ein induzierter Teilgraph G00 mit der Knotenmenge V 00 = V \ V 0 als G \ V 0 bezeichnet. Ein Knoten u in einem Graphen G = (V, E) ist genau dann von einem anderen Knoten v ∈ V erreichbar, falls G einen Pfad mit den Endknoten u und v enthält. Dies lässt sich auch als Äquivalenzrelation beschreiben. Die zugehörigen Äquivalenzklassen der Erreichbarkeitsrelation R nennt man Zusammenhangskomponenten. Ein Graph wird als zusammenhängend bezeichnet, falls er genau eine Zusammenhangskomponente besitzt. Unter einem Baum wird ein Graph verstanden, der zusammenhängend und kreisfrei ist. Ein Baum besitzt dabei die Eigenschaft, dass |V | = |E| + 1 gilt, sowie, dass es für zwei Knoten genau einen einfachen Pfad in G gibt. Durch Umformung und Einsetzen der Baumbedingung ergibt sich X d(v) = 2 · |E| = 2n − 2 v∈V mit |V | = n. Ein Teilgraph T = (V 0 , E 0 ) von G wird als Spannbaum bezeichnet, falls G ein Baum ist. Die Anzahl der verschiedenen Spannbäume T von G, wobei |V | = n wird mit t(n) = nn−2 bezeichnet. Dieser Satz geht auf Arthur Cayley zurück und lässt sich z.B. mittels Prüfercodedefinition beweisen. Eine Kante e eines Graphen G nennt sich Brücke, falls G0 = (V, E\{e}) mehr Zusammenhangskomponenten enthält als G. Anschaulich bedeutet dies, dass durch Entfernen dieser Kante eine Zusammenhangskomponente des Graphen in zwei Zusammenhangskomponenten zerfällt. Eine Kante ist dabei genau dann eine Brücke, falls es keinen Kreis gibt der sie enthält. Als Abstand zweier Knoten u und v wird die minimale Anzahl k der Kanten zwischen den Knoten verstanden: d(u, v) = k. Der größtmögliche Abstand von allen Knoten wird als Durchmesser D(G) bezeichnet. 4 Die Adjazenzmatrix eines Graphen G ist eine quadratische Matrix der Maße n × n mit n = |V |, in der für ein Element aij gilt aij = 1 falls {vi , vj } ∈ E gilt, ansonsten aij = 0. Bei ungerichteten Graphen ist die Adjazenzmatrix dabei symmetrisch(d.h. aij = aji ). Falls G keine Schlingen enthält, sind die Diagonalelemente 0. Die Inzidenzmatrix von G ist als Matrix der Maße n × m definiert mit n = |V | und m = |E|. Ein Element bij ist dabei = 1 falls der Knoten vi in der Kante ej enthalten ist. 5