2013-04-29 19:59:02 +02:00
\documentclass [a4paper,9pt] { scrartcl}
\usepackage { amssymb, amsmath} % needed for math
\usepackage [utf8] { inputenc} % this is needed for umlauts
\usepackage [ngerman] { babel} % this is needed for umlauts
\usepackage [T1] { fontenc} % this is needed for correct output of umlauts in pdf
\usepackage [margin=2.5cm] { geometry} %layout
\usepackage { hyperref} % links im text
\usepackage { color}
\usepackage { framed}
\usepackage { enumerate} % for advanced numbering of lists
\usepackage { braket} % needed for nice printing of sets
\usepackage { xcolor}
\usepackage { lastpage}
2013-06-11 21:51:30 +02:00
\usepackage { parskip}
\usepackage { csquotes}
2013-04-29 19:59:02 +02:00
\clubpenalty = 10000 % Schusterjungen verhindern
\widowpenalty = 10000 % Hurenkinder verhindern
\hypersetup {
pdfauthor = { Martin Thoma} ,
pdfkeywords = { Diskrete Mathematik} ,
pdftitle = { Graphentheorie I: Handout}
}
\usepackage { fancyhdr}
\pagestyle { fancy}
\lhead { Diskrete Mathematik}
\chead { Graphentheorie I (Martin Thoma)}
\rhead { Seite \thepage \ von \pageref { LastPage} }
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Custom definition style, by %
% http://mathoverflow.net/questions/46583/what-is-a-satisfactory-way-to-format-definitions-in-latex/58164#58164
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\makeatletter
\newdimen \errorsize \errorsize =0.2pt
% Frame with a label at top
\newcommand \LabFrame [2] { %
\fboxrule =\FrameRule
\fboxsep =-\errorsize
\textcolor { FrameColor} { %
\fbox { %
\vbox { \nobreak
\advance \FrameSep \errorsize
\begingroup
\advance \baselineskip \FrameSep
\hrule height \baselineskip
\nobreak
\vskip -\baselineskip
\endgroup
\vskip 0.5\FrameSep
\hbox { \hskip \FrameSep \strut
\textcolor { TitleColor} { \textbf { #1} } } %
\nobreak \nointerlineskip
\vskip 1.3\FrameSep
\hbox { \hskip \FrameSep
{ \normalcolor #2} %
\hskip \FrameSep } %
\vskip \FrameSep
} } %
} }
\definecolor { FrameColor} { rgb} { 0.25,0.25,1.0}
\definecolor { TitleColor} { rgb} { 1.0,1.0,1.0}
\newenvironment { contlabelframe} [2][\Frame @Lab\ (cont.)]{ %
% Optional continuation label defaults to the first label plus
\def \Frame @Lab{ #2} %
\def \FrameCommand { \LabFrame { #2} } %
\def \FirstFrameCommand { \LabFrame { #2} } %
\def \MidFrameCommand { \LabFrame { #1} } %
\def \LastFrameCommand { \LabFrame { #1} } %
\MakeFramed { \advance \hsize -\width \FrameRestore }
} { \endMakeFramed }
\newcounter { definition}
\newenvironment { definition} [1]{ %
\par
\refstepcounter { definition} %
\begin { contlabelframe} { Definition \thedefinition :\quad #1}
\noindent \ignorespaces }
{ \end { contlabelframe} }
\makeatother
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2013-06-11 21:51:30 +02:00
% Theorem %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% needed for theorems
\usepackage { amsthm}
\usepackage { thmtools}
\usepackage { changepage}
\newlength \Thmindent
\setlength \Thmindent { 20pt}
\newenvironment { precondition}
{ \par \medskip \adjustwidth { \Thmindent } { } \normalfont \textbf { Voraussetzungen:} \par \nobreak }
{ \endadjustwidth }
\newenvironment { claim}
{ \par \medskip \adjustwidth { \Thmindent } { } \normalfont \textbf { Behauptung:} }
{ \endadjustwidth }
\declaretheoremstyle [
spaceabove=0pt,spacebelow=0pt,
preheadhook=\adjustwidth { \Thmindent } { } ,
prefoothook=\endadjustwidth ,
headpunct=:,
numbered=no,
qed=\qedsymbol
]{ proof}
\declaretheorem [style=proof,name=Beweis] { Proof}
\theoremstyle { plain}
\newtheorem { theorem} { Satz}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Add some shortcuts %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage { pifont} % http://ctan.org/pkg/pifont
\newcommand { \cmark } { \ding { 51} } % a checkmark
\newcommand { \xmark } { \ding { 55} } % a cross
\usepackage { amsmath}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2013-04-29 19:59:02 +02:00
% Begin document %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin { document}
\begin { definition} { Graph}
Ein Graph ist ein Tupel $ ( E, K ) $ , wobei $ E \neq \emptyset $ die Eckenmenge und
$ K \subseteq E \times E $ die
Kantenmenge bezeichnet.
\end { definition}
\begin { definition} { Inzidenz}
Sei $ e \in E $ und $ k = \Set { e _ 1 , e _ 2 } \in K $ .
$ e $ heißt \textbf { inzident} zu $ k : \Leftrightarrow e = e _ 1 $ oder $ e = e _ 2 $
\end { definition}
2013-06-13 11:18:18 +02:00
\begin { definition} { Schlinge}
Sei $ G = ( E, K ) $ ein Graph und $ k = \Set { e _ 1 , e _ 2 } \in K $ eine Kante.
$ k $ heißt \textbf { Schlinge} $ : \Leftrightarrow e _ 1 = e _ 2 $
\end { definition}
2013-04-29 19:59:02 +02:00
\begin { definition} { Vollständiger Graph}
Sei $ G = ( E, K ) $ ein Graph.
$ G $ heißt \textbf { vollständig} $ : \Leftrightarrow K = E \times E \setminus \Set { e \in E: \Set { e, e } } $
\end { definition}
Ein vollständiger Graph mit $ n $ Ecken wird als $ K _ n $ bezeichnet.
\begin { definition} { Bipartiter Graph}
Sei $ G = ( E, K ) $ ein Graph und $ A, B \subset E $ zwei disjunkte Eckenmengen mit
$ E \setminus A = B $ .
$ G $ heißt \textbf { bipartit} $ : \Leftrightarrow \forall _ { k = \Set { e _ 1 , e _ 2 } \in K } : ( e _ 1 \in A \text { und } e _ 2 \in B ) \text { oder } ( e _ 1 \in B \text { und } e _ 2 \in A ) $
\end { definition}
\begin { definition} { Vollständig bipartiter Graph}
Sei $ G = ( E, K ) $ ein bipartiter Graph und $ \Set { A, B } $ bezeichne die Bipartition.
$ G $ heißt \textbf { vollständig bipartit} $ : \Leftrightarrow A \times B = K $
\end { definition}
\begin { definition} { Kantenzug, Länge eines Kantenzuges und Verbindung von Ecken}
Sei $ G = ( E, K ) $ ein Graph.
Dann heißt eine Folge $ k _ 1 , k _ 2 , \dots , k _ s $ von Kanten, zu denen es Ecken
$ e _ 0 , e _ 1 , e _ 2 , \dots , e _ s $ gibt, so dass
\begin { itemize}
\item $ k _ 1 = \Set { e _ 0 , e _ 1 } $
\item $ k _ 2 = \Set { e _ 1 , e _ 2 } $
\item \dots
\item $ k _ s = \Set { e _ { s - 1 } , e _ s } $
\end { itemize}
gilt ein \textbf { Kantenzug} , der $ e _ 0 $ und $ e _ s $ \textbf { verbindet} und $ s $
seine \textbf { Länge} .
\end { definition}
\begin { definition} { Geschlossener Kantenzug}
Sei $ G = ( E, K ) $ ein Graph und $ A = ( e _ 0 , e _ 1 , \dots , e _ s ) $ ein Kantenzug.
A heißt \textbf { geschlossen} $ : \Leftrightarrow e _ s = e _ 0 $ .
\end { definition}
\begin { definition} { Weg}
Sei $ G = ( E, K ) $ ein Graph und $ A = ( k _ 1 , k _ 2 \dots , k _ s ) $ ein Kantenzug.
A heißt \textbf { Weg} $ : \Leftrightarrow \forall _ { i, j \in 1 , \dots , s } : i \neq j \Rightarrow k _ i \neq k _ j $ .
\end { definition}
\begin { definition} { Einfacher Kreis}
Sei $ G = ( E, K ) $ ein Graph und $ A = ( k _ 1 , k _ 2 \dots , k _ s ) $ ein Kantenzug.
A heißt \textbf { Kreis} $ : \Leftrightarrow A $ ist geschlossen und ein Weg.
\end { definition}
\begin { definition} { Zusammenhängender Graph}
Sei $ G = ( E, K ) $ ein Graph.
$ G $ heißt \textbf { zusammenhängend} $ : \Leftrightarrow \forall e _ 1 , e _ 2 \in E: $
Es ex. ein Kantenzug, der $ e _ 1 $ und $ e _ 2 $ verbindet
\end { definition}
\begin { definition} { Grad einer Ecke}
Der \textbf { Grad} einer Ecke ist die Anzahl der Kanten, die von dieser Ecke
ausgehen.
\end { definition}
\begin { definition} { Isolierte Ecke}
Hat eine Ecke den Grad 0, so nennt man ihn \textbf { isoliert} .
\end { definition}
\begin { definition} { Eulerscher Kreis}
Sei $ G $ ein Graph und $ A $ ein Kreis in $ G $ .
2013-06-11 21:51:30 +02:00
$ A $ heißt \textbf { eulerscher Kreis} $ : \Leftrightarrow \forall _ { k \in K } : k \in A $ .
2013-04-29 19:59:02 +02:00
\end { definition}
\begin { definition} { Eulerscher Graph}
Ein Graph heißt \textbf { eulersch} , wenn er einen eulerschen Kreis enthält.
\end { definition}
2013-06-13 11:18:18 +02:00
\vspace { 0.5cm}
2013-06-11 21:51:30 +02:00
\begin { theorem} { Euler 1736}
~~~
\begin { precondition}
Sei $ G = ( E, K ) $ ein Graph.
\end { precondition}
\begin { claim}
Wenn ein Graph $ G $ eulersch ist, dann hat jede Ecke von $ G $ geraden Grad.
\end { claim}
\begin { Proof} Direkt\\
Sei $ C = ( e _ 0 , \dots , e _ n, e _ 0 ) $ ein Eulerkreis in $ G $
$ \Rightarrow $ Es gilt: $ \forall e \in E \exists i \in \Set { 0 , \dots , n } : e = e _ i $ und alle Kanten aus $ G $ sind genau ein mal in $ C $ .\\
Außerdem gilt:
\[ \text { Grad } ( e _ i ) = \begin { cases }
2013-06-13 11:18:18 +02:00
2 \cdot \text { Anzahl der Vorkommen von } e_ i \text { in } C & \text { falls } i\neq 0\\
2 \cdot (\text { Anzahl der Vorkommen von } e_ i -1) \text { in } C & \text { falls } i = 0\\
2013-06-11 21:51:30 +02:00
\end { cases}
\]
$ \Rightarrow \forall e \in E: \text { Grad } ( e ) $ ist gerade
\end { Proof}
\end { theorem}
2013-06-13 11:18:18 +02:00
\vspace { 0.5cm}
2013-06-11 21:51:30 +02:00
\begin { theorem} { Umkehrung des Satzes von Euler}
~~~
\begin { precondition}
Sei $ G = ( E, K ) $ ein zusammenhängender Graph.
\end { precondition}
\begin { claim}
Wenn jede Ecke von $ G $ geraden Grad hat, dann ist $ G $ eulersch.
\end { claim}
\begin { Proof} über Induktion über Anzahl $ m $ der Kanten\\
\underline { I.A.:} $ m = 0 $ : $ G $ ist eulersch. \cmark \\
$ m = 1 $ : Es gibt keinen Graphen in dem jede Ecke geraden Grad hat. \cmark \\
$ m = 2 $ : Nur ein Graph ist zusammenhängend, hat zwei Kanten und nur Ecken geraden Grades. Dieser ist eulersch. \cmark
2013-06-13 11:18:18 +02:00
\goodbreak
2013-06-11 21:51:30 +02:00
\underline { I.V.:} Sei $ m \in \mathbb { N } _ 0 $ beliebig, aber fest und
es gelte:
Für alle zusammenhängenden Graphen $ G $ mit höchstens $ m $ Kanten, bei denen jede Ecke geraden Grad hat, ist $ G $ eulersch.
\underline { I.S.:} Sei $ G = ( E,K ) $ mit $ 2 \leq m = |K| $ ein zusammenhängender Graph, der nur Ecken geraden Grades hat.\\
$ \Rightarrow $ Jede Ecke von $ G $ hat min. Grad 2.
$ \stackrel { A 5 } { \Rightarrow } $ Es gibt einen Kreis $ C $ in $ G $ .\\
Sei nun
\[ G _ C = ( E _ C, K _ C ) \text { mit } E _ C \subseteq E \text { und } K _ C \subseteq K \]
der Graph, der durch $ C $ induziert wird.
Sei
\[ G ^ * = ( E, K \setminus K _ C ) \]
Es gilt:
\begin { itemize}
\item Jede Ecke in $ G ^ * $ hat geraden Grad
2013-06-13 11:18:18 +02:00
\item Jede Zusammenhangskomponente hat weniger als $ m $ Knoten
\item [$\Rightarrow$] I.V. ist auf jede Zusammenhangskomponente anwendbar
\item [$\Rightarrow$] Jede Zusammenhangskomponente hat einen Eulerkreis
2013-06-11 21:51:30 +02:00
\item [$\Rightarrow$] Man kann den Kreis $ C $ durch die Eulerkreise erweitern und erhält insgesamt einen Eulerkreis
\end { itemize}
$ \Rightarrow $ $ G $ ist eulersch
\end { Proof}
\end { theorem}
2013-06-13 11:18:18 +02:00
\vspace { 0.5cm}
2013-06-11 21:51:30 +02:00
2013-04-29 19:59:02 +02:00
\begin { definition} { Offene eulersche Linie}
Sei $ G $ ein Graph und $ A $ ein Weg, der kein Kreis ist.
$ A $ heißt \textbf { offene eulersche Linie} von $ G : \Leftrightarrow $ Jede Kante
in $ G $ kommt genau ein mal in $ A $ vor.
\end { definition}
2013-06-13 11:18:18 +02:00
\vspace { 0.5cm}
\begin { theorem} { }
2013-06-11 21:51:30 +02:00
~~~
\begin { precondition}
Sei $ G = ( E, K ) $ ein zusammenhängender Graph.
\end { precondition}
\begin { claim}
$ G $ hat eine offene eulersche Linie $ : \Leftrightarrow G $ hat genau zwei Ecken ungeraden Grades
\end { claim}
\begin { Proof} Direkt von \enquote { $ \Rightarrow $ } , Rückrichtung \enquote { $ \Leftarrow $ } analog\\
Sei $ L = ( e _ 0 , \dots , e _ s ) $ in $ G $ eine offene eulerschle Linie in $ G $ .\\
$ \Leftrightarrow G ^ * = ( E, K \cup \Set { e _ s, e _ 0 } ) $ hat einen Eulerkreis\\
$ \Leftrightarrow G ^ * $ hat nur Knoten geraden Grades\\
$ \Leftrightarrow G $ hat genau zwei Knoten ($ e _ 0 , e _ s $ ) ungeraden Grades
\end { Proof}
\end { theorem}
2013-06-13 11:18:18 +02:00
\vfill
2013-06-11 21:51:30 +02:00
Alle \LaTeX -Quellen und die neueste Version der PDF sind unter
\href { https://github.com/MartinThoma/LaTeX-examples/tree/master/presentations/Diskrete-Mathematik} { github.com/MartinThoma/LaTeX-examples/tree/master/presentations/Diskrete-Mathematik}
zu finden
2013-04-29 19:59:02 +02:00
\end { document}