\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} \usepackage{parskip} \usepackage{csquotes} \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 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 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} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 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} \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} \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$. $A$ heißt \textbf{eulerscher Kreis} $:\Leftrightarrow \forall_{k \in K}: k \in A$. \end{definition} \begin{definition}{Eulerscher Graph} Ein Graph heißt \textbf{eulersch}, wenn er einen eulerschen Kreis enthält. \end{definition} \vspace{0.5cm} \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} 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\\ \end{cases} \] $\Rightarrow \forall e \in E: \text{Grad}(e)$ ist gerade \end{Proof} \end{theorem} \vspace{0.5cm} \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 \goodbreak \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{A5}{\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 \item Jede Zusammenhangskomponente hat weniger als $m$ Knoten \item[$\Rightarrow$] I.V. ist auf jede Zusammenhangskomponente anwendbar \item[$\Rightarrow$] Jede Zusammenhangskomponente hat einen Eulerkreis \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} \vspace{0.5cm} \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} \vspace{0.5cm} \begin{theorem}{} ~~~ \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} \vfill 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 \end{document}