changeset 9:e31918783bb4

add lr-order
author Markus Kaiser <markus.kaiser@in.tum.de>
date Tue, 08 May 2012 22:46:33 +0200
parents 68eb440295ea
children a2eb53d53650
files planarity/presentation.tex
diffstat 1 files changed, 117 insertions(+), 21 deletions(-) [+]
line wrap: on
line diff
--- a/planarity/presentation.tex	Tue May 08 16:29:43 2012 +0200
+++ b/planarity/presentation.tex	Tue May 08 22:46:33 2012 +0200
@@ -46,8 +46,11 @@
 \pgfsetlayers{background,main}
 \tikzstyle{vertex}=[circle,draw,fill=blue!25,minimum size=20pt,inner sep=0pt]
 \tikzstyle{selected vertex} = [vertex, fill=red!50]
+\tikzstyle{small vertex} = [vertex, minimum size=12pt]
 \tikzstyle{edge} = [draw,thick,-]
 \tikzstyle{tree edge} = [draw,very thick,->]
+\tikzstyle{left edge} = [draw,thick,->, red]
+\tikzstyle{right edge} = [draw,thick,->, blue]
 \tikzstyle{back edge} = [draw,dashed,arrows={-latex}]
 \tikzstyle{selected edge} = [draw,line width=5pt,-,red!50]
 
@@ -170,7 +173,7 @@
 \end{figure}		
 		\vspace{1em}
 
-		\item<2-> Eine \alert{Zeichnung $\Gamma$} ordnet jedem Knoten Koordinaten und jeder Kante eine offene Jordankurve zu.
+		\item<2-> Eine \alert{Zeichnung} ordnet jedem Knoten Koordinaten und jeder Kante eine offene Jordankurve zu.
 		\item<2-> \alert{planar}: Keine sich überschneidenden Kurven
 		\item<2-> \alert{äquivalent}: Gleiche Reihenfolge der Kanten an Knoten
 	\end{itemize}
@@ -201,7 +204,7 @@
 	\begin{tikzpicture}[auto]
     \foreach \pos/ \name in {{(0,1)/a}, {(1,1)/b}, {(2,1)/c},{(0,2)/d},{(1,2)/e},{(2,2)/f},
                             {(4.164,1)/g}, {(5.464,1)/h}, {(5.626,1.986)/i},{(4.814,2.75)/j},{(4,1.986)/k}}
-        \node[vertex, minimum size=10pt] (\name) at \pos {};
+        \node[small vertex] (\name) at \pos {};
         
     \foreach \source/ \dest in {a/d, a/e, a/f,
                                 b/d, b/e, b/f,
@@ -445,7 +448,7 @@
 				\item Wurzel
 				\item DFS-Baum
 				\item Rückwärtskante
-				\item returning edge
+				\item Rückkehrkante (\emph{returning edge})
 				\vspace{2em}
 				\item<2> DFS-Index
 				\item<2> \alert{lowpoint}\\ $lowpt([5]) = 2$
@@ -489,8 +492,8 @@
 	\begin{definition}
 		Sei $G = (V, T \uplus B)$ ein \alert{DFS-orientierter} Graph. Eine Partition $B = L \uplus R$ seiner Rückwärtskanten heißt \alert{Links-Rechts-Partition} wenn für jeden Knoten mit eingehender Baumkante $e$ und ausgehenden Kanten $e_1$, $e_2$ gilt:
 		\begin{itemize}
-			\item Alle return edges von $e_1$ mit ihrem Ende über $lowpt(e_2)$ gehören zur einen und
-			\item Alle return edges von $e_2$ mit ihrem Ende über $lowpt(e_1)$ gehören zur anderen Klasse.
+			\item Alle Rückkehrkanten von $e_1$ mit ihrem Ende über $lowpt(e_2)$ gehören zur einen und
+			\item Alle Rückkehrkanten von $e_2$ mit ihrem Ende über $lowpt(e_1)$ gehören zur anderen Klasse.
 		\end{itemize}
 	\end{definition}
 \end{frame}
@@ -505,33 +508,126 @@
 	\vspace{2em}	
 		
 	\begin{itemize}
-		\item Jede Rückwärtskante erzeugt einen \alert{fundamentalen Zyklus}
+		\item Jede Rückwärtskante erzeugt einen \alert{Zyklus}
 		\item LR-Partition teilt Zyklen in solche im und gegen den Uhrzeigersinn
 		
 		\vspace{1em}
 		
 		\item Planare Zeichnung $\rightarrow$ LR-Zerlegung ist einfach
-		\item Umkehrung:
-		\begin{itemize}
-			\item Erweiterung um Baumkanten
-			\item Richtige Verschachtelung an Knoten
-		\end{itemize}
-	\end{itemize}
-\end{frame}
-
-\begin{frame}
-	\frametitle{Baumkanten}
-	Hat die Baumkante return edges?
-	\vspace{1.5em}
-	\begin{itemize}
-		\item \textbf{Nein} Seite egal
-		\item \textbf{Ja} Selbe Seite wie eine return-edge zum \alert{highpoint}
 	\end{itemize}
 \end{frame}
 
 \begin{frame}
 	\frametitle{Verschachtelung}
 	
+	\begin{block}{Beobachtung}
+	Baumkante $e_1$ außerhalb von Baumkante $e_2$ wenn
+	\vspace{1.5em}
+	\begin{itemize}
+		\item $lowpt(e_1) < lowpt(e_2)$
+		\item $lowpt(e_1) = lowpt(e_2)$ und $e_2$ eine Sehne besitzt
+	\end{itemize}	
+	\end{block}
+	\begin{center}
+	\begin{figure}
+	\begin{tikzpicture}[auto]
+	\useasboundingbox (-2, 0.5) rectangle (7, 5);	
+	
+    \draw[edge] (0,1) -- (0,3);
+    \draw[edge] (-1.5,4) -- (0,3);
+    \draw[edge] (1.5,4) -- (0,3);
+    
+    \draw[back edge, rounded corners] (-1.5,4) .. controls (4,6) and (1,1) .. (0,1);
+    \draw[back edge] (1.5,4) .. controls (0.5,2) .. (0,2);    
+
+
+    \draw[edge] (4.5,1) -- (4.5,3);
+    \draw[edge] (3,4) -- (4.5,3);
+    \draw[edge] (6,4) -- (4.5,3);
+    
+    \draw[back edge, rounded corners] (3,4) .. controls (8.5,6) and (5.5,1) .. (4.5,1);
+    \draw[back edge] (6,4) .. controls (5,2) .. (4.5,2);   
+    \draw[back edge] (6,4) .. controls (5.5,2) .. (4.5,1);   
+	\end{tikzpicture}
+	\end{figure}
+	\end{center}
+\end{frame}
+
+\begin{frame}
+	\frametitle{Verschachtelung}
+	
+	\begin{definition}
+		Seien $e_1^L,\ldots,e_l^L$ die linken ausgehenden Baumkanten und $e_1^R,\ldots,e_r^R$ die rechten ausgehenden Baumkanten eines Knotens $v$ und $u$ sein Elternknoten. Dann ist die \alert{LR-Ordnung} im Uhrzeigersinn
+		\begin{align*}
+			&(u,v),\\
+			&L(e_l^L),e_l^L,R(e_l^L),\ldots,R(e_1^L),\\
+			&L(e_1^R),\ldots,L(e_r^R),e_r^R,R(e_r^R)
+		\end{align*}
+	\end{definition}
+
+	\alert{$L(e)$} bezeichnet die linken eingehenden Rückwärtskanten deren Kreise sich $e$ teilen.
+\end{frame}
+
+\begin{frame}
+	\frametitle{Verschachtelung}	
+	\begin{block}{Lemma}
+		Eine \alert{LR-Ordnung} stellt eine Planarisierung einer \alert{LR-Zerlegung} dar.
+	\end{block}
+		
+	\vspace{2em}	
+		
+	\begin{columns}[T]
+		\begin{column}{.5\textwidth}
+	\begin{figure}
+	\begin{tikzpicture}[auto, scale=0.5]
+	\useasboundingbox (-5, 0) rectangle (5, 6);	
+	
+	\node[vertex] (u) at (0,0) {$u$};
+	\node[vertex] (v) at (0,3) {$v$};
+	\node[vertex] (w) at (-4,3) {$e_l^L$};
+	\node[vertex] (x) at (-3,5) {$e_2^L$};
+	\node[vertex] (y) at (-1,6) {$e_1^L$};		
+	\node[vertex] (a) at (1,6) {$e_1^R$};	
+	\node[vertex] (b) at (3,5) {$e_2^R$};	
+	\node[vertex] (c) at (4,3) {$e_r^R$};			
+	
+	\path[edge, ->] (u) -- (v);
+	\path[left edge] (v) -- (w);
+	\path[left edge] (v) -- (x);
+	\path[left edge] (v) -- (y);
+	\path[right edge] (v) -- (a);
+	\path[right edge] (v) -- (b);
+	\path[right edge] (v) -- (c);
+	
+	\end{tikzpicture}
+	\end{figure}
+		\end{column}
+		\begin{column}{.5\textwidth}
+	\begin{figure}
+	\begin{tikzpicture}[auto, scale=0.5]
+	\useasboundingbox (-5, 0) rectangle (5, 6);	
+	
+	\node[vertex] (u) at (0,0) {$u$};
+	\node[vertex] (v) at (0,3) {$v$};
+	\node[vertex] (w) at (-2,5) {$e^L$};
+	\node[vertex] (x) at (2, 5) {$e^R$};	
+	
+	\path[edge, ->] (u) -- (v);
+	\path[left edge] (v) -- (w);
+	\path[right edge] (v) -- (x);
+	
+	\draw[edge] (w) -- (-4,7);
+	\draw[left edge] (-4,7) .. controls(-4, 3.5) .. (v);
+	\draw[left edge] (-4,7) .. controls(-2.5, 3.5) .. (v);	
+	\draw[right edge] (-4,7) .. controls(-2, 7) .. (v);	
+	
+	\draw[edge] (x) -- (4,7);
+	\draw[left edge] (4,7) .. controls(4, 3.5) .. (v);	
+	\draw[right edge] (4,7) .. controls(2, 7) .. (v);	
+	\end{tikzpicture}
+	\end{figure}		
+		\end{column}
+	\end{columns}
 \end{frame}
 
 \subsection{Knotenbasiert}