\newcommand{\Id}[1]{\ensuremath{\mathit{#1}}}
\newcommand{\vek}[1]{\mathbf{#1}}
\newcommand{\mat}[1]{\mathbf{#1}}
\newcommand{\ceil}[1]{\left\lceil #1\right\rceil}
\newcommand{\floor}[1]{\left\lfloor #1\right\rfloor}
\newcommand{\abs}[1]{\left| #1\right|}
\newcommand{\norm}[1]{\left\|#1\right\|}
\newcommand{\enorm}[1]{\norm{#1}_{2}}
\newcommand{\sumnorm}[1]{\norm{#1}_{1}}
\newcommand{\maxnorm}[1]{\norm{#1}_{\infty}}
\newcommand{\xor}{\oplus}
\newcommand{\set}[1]{\left\{ #1\right\}}
\newcommand{\sset}[1]{\set{#1}}
\newcommand{\gilt}{:}
\newcommand{\sodass}{\mid}
\newcommand{\setGilt}[2]{\left\{ #1\gilt #2\right\}}
\newcommand{\seqGilt}[2]{\left\langle #1\gilt #2\right\rangle}
\newcommand{\Litem}[1]{\seq{#1}}
\newcommand{\Def}{:=}
\newcommand{\zvektor}[2]{\left(#1,#2\right)}
\newcommand{\vektor}[2]{\left(\begin{smallmatrix}#1\\#2\end{smallmatrix}\right)}
\newcommand{\vektord}[3]{\left(\begin{smallmatrix}#1\\#2\\#3\end{smallmatrix}\right)}
\newcommand{\condition}[1]{\left[#1\right]}
\newcommand{\binomial}[2]{\binom{#1}{#2}}
\newcommand{\even}{\mathrm{even}}
\newcommand{\odd}{\mathrm{odd}}
\newcommand{\mymod}{\,\bmod\,}
\newcommand{\nat}{\mathbb{N}}
\newcommand{\natnull}{\mathbb{N}_{0}}
\newcommand{\natplus}{\mathbb{N}_{+}}
\newcommand{\natless}[1]{\mathbb{N}_{#1}}
\newcommand{\nplus}{\mathbb{N}_+}
\newcommand{\real}{\mathbb{R}}
\newcommand{\rplus}{\mathbb{R}_+}
\newcommand{\rnneg}{\mathbb{R}_*}
\newcommand{\integer}{\mathbb{Z}}
\newcommand{\intint}[2]{{#1}..{#2}}
\newcommand{\realrange}[2]{\left[#1, #2\right]}
\newcommand{\realrangeo}[2]{\left(#1, #2\right)}
\newcommand{\realrangelo}[2]{\left(#1, #2\right]}
\newcommand{\realrangero}[2]{\left[#1, #2\right)}
\newcommand{\unitrange}[2]{\realrange{0}{1}}
\newcommand{\bool}{\set{0,1}}
\newcommand{\mapping}[2]{{#2}^{#1}}
\newcommand{\powerset}[1]{{\cal P}\left(#1\right)}
\newcommand{\NP}{\mathbf{NP}}
\newcommand{\Bild}{\mathbf{Bild}\:}
\newcommand{\withtype}[1]{\in#1}
\newcommand{\condprob}[2]{{\mathbb{P}}\left(#1\;|\;#2\right)}
\newcommand{\condexpect}[2]{{\mathbb{E}}\left(#1\;|\;#2\right)}
\newcommand{\var}{{\mathbb{V}}}
\newcommand{\quant}[2]{\tilde{#1}_{#2}}
\newcommand{\whpO}[1]{\tilde{\mathrm{O}}\left( #1\right)}
\newcommand{\Oschlange}{$\tilde{\mathrm{O}}$}
\newcommand{\Ohh}[1]{\mathcal{O}\!\left( #1\right)}
\newcommand{\Oh}[1]{\mathcal{O}\!\left( #1\right)}
\newcommand{\Ohlarge}[1]{\mathcal{O}\!\left( #1\right)}
\newcommand{\Ohsmall}[1]{\mathcal{O}(#1)}
\newcommand{\oh}[1]{\mathrm{o}\!\left( #1\right)}
\newcommand{\Th}[1]{\Theta\!\left( #1\right)}
\newcommand{\Om}[1]{\Omega\left(#1\right)}
\newcommand{\om}[1]{\omega\!\left( #1\right)}
\newcommand{\Oleq}{\preceq}
\newcommand{\lref}[1]{\ref{\labelprefix:#1}}
\newcommand{\llabel}[1]{\label{\labelprefix:#1}}
\newcommand{\labelprefix}{}
\marginparpush2mm
\marginparsep1mm
\newcommand{\frage}[1]{[{\sf#1}]\marginpar[\hfill$\Longrightarrow$]{$\Longleftarrow$}}
\newcommand{\mysubsubsection}[1]{\par\vspace{2mm}\noindent{\bf #1 }}
\newcommand{\punkt}{\enspace .}
\newcommand{\labelcommand}{}
\newcommand{\captiontext}{}
\newsavebox{\buchalgorithmparam}
\newcounter{lineNumber}
\newenvironment{buchalgorithmpos}[3]{%
\renewcommand{\labelcommand}{#2}%
\renewcommand{\captiontext}{#3}%
\sbox{\buchalgorithmparam}{\parbox{\textwidth}{#3}}%
\begin{figure}[#1]\begin{center}\begin{code}\setcounter{lineNumber}{1}}{%
\end{code}\end{center}\caption{\llabel{\labelcommand}\captiontext}\end{figure}}
\newenvironment{buchalgorithm}[2]{\begin{buchalgorithmpos}{htbp}{#1}{#2}}
{\end{buchalgorithmpos}}
\newenvironment{code}{\noindent\it%
\begin{tabbing}%
\hspace{1.5em}\=\hspace{1.5em}\=\hspace{1.5em}\=\hspace{1.5em}\=\hspace{1.5em}\=%
\hspace{1.5em}\=\hspace{1.5em}\=\hspace{1.5em}\=\hspace{1.5em}\=\hspace{1.5em}\=%
\kill}{\end{tabbing}}
\newcommand{\codel}[1]{\mbox{\rm "`#1"'}}
\newcommand{\codem}[1]{\mathrm{#1}}
\newcommand{\Assert}{{\bf assert\ }}
\newcommand{\Invariant}{{\bf invariant\ }}
\newcommand{\Class}{{\bf Class\ }}
\newcommand{\Constant}{{\bf Constant\ }}
\newcommand{\Array}{{\bf Array\ }}
\newcommand{\Of}{{\bf of\ }}
\newcommand{\Function} {{\bf Function\ }}
\newcommand{\Funct}[3]{\Function #1\Declare{{\rm (}{#2\rm )}}{#3}}
\newcommand{\Procedure}{{\bf Procedure\ }}
\newcommand{\Operator}{{\bf Operator\ }}
\newcommand{\Type}{{\bf Type\ }}
\newcommand{\Address}{{\bf address of\ }}
\newcommand{\Pointer}{{\bf Pointer\ }}
\newcommand{\Points}{\ensuremath{\rightarrow}}
\newcommand{\Allocate}{{\bf allocate\ }}
\newcommand{\This}{{\bf this\ }}
\newcommand{\Null}{{\bf null\ }}
\newcommand{\Dispose}{{\bf dispose\ }}
\newcommand{\Deallocate}{{\bf dispose\ }}
\newcommand{\Delete}{{\bf dispose\ }}
\newcommand{\Process}{{\bf process\ }}
\newcommand{\While} {{\bf while\ }}
\newcommand{\Repeat} {{\bf repeat\ }}
\newcommand{\Until} {{\bf until\ }}
\newcommand{\Loop} {{\bf loop\ }}
\newcommand{\Exit} {{\bf exit\ }}
\newcommand{\Goto} {{\bf goto\ }}
\newcommand{\Do} {{\bf do\ }}
\newcommand{\Od} {{\bf od\ }}
\newcommand{\Dopar} {{\bf dopar\ }}
\newcommand{\For} {{\bf for\ }}
\newcommand{\Foreach} {{\bf foreach\ }}
\newcommand{\Rof} {{\bf rof\ }}
\newcommand{\Is}{\mbox{\rm := }}
\newcommand{\Forall} {{\bf forall\ }}
\newcommand{\ForFromTo}[3]{{\For $#1$ \Is $#2$ \To $#3$ \Do}}
\newcommand{\ForFromToWhile}[4]{{\For $#1$ \Is $#2$ \To $#3$ \While $#4$ \Do}}
\newcommand{\ForFromDowntoWhile}[4]{{\For $#1$ \Is $#2$ \To $#3$ \While $#4$ \Do}}
\newcommand{\ForFromDownto}[3]{{\For $#1$ \Is $#2$ \Downto $#3$ \Do}}
\newcommand{\ForFromWhile}[3]{{\For $#1$ \Is $#2$ \To $\infty$ \While $#3$ \Do}}
\newcommand{\ForFromdownWhile}[3]{{\For $#1$ \Is $#2$ \Downto $-\infty$ \While $#3$ \Do}}
\newcommand{\ForFromToStep}[4]{{\For $#1$ \Is $#2$ \To $#3$ \Step $#4$ \Do}}
\newcommand{\ForFromDowntoStep}[4]{{\For $#1$ \Is $#2$ \Downto $#3$ \Step $#4$ \Do}}
\newcommand{\ForFromStepWhile}[4]{{\For $#1$ \Is $#2$ \To $\infty$ \Step $#3$ \While $#4$ \Do}}
\newcommand{\ForFromdownStepWhile}[4]{{\For $#1$ \Is $#2$ \Downto $-\infty$ \Step $#3$ \While $#4$ \Do}}
\newcommand{\To} {{\bf to\ }}
\newcommand{\Step} {{\bf step\ }}
\newcommand{\Downto} {{\bf downto\ }}
\newcommand{\If} {{\bf if\ }}
\newcommand{\Endif} {{\bf endif\ }}
\newcommand{\Fi} {{\bf fi\ }}
\newcommand{\Then} {{\bf then\ }}
\newcommand{\Else} {{\bf else\ }}
\newcommand{\Elsif} {{\bf elsif\ }}
\newcommand{\Return} {{\bf return\ }}
\newcommand{\Set} {{\bf set\ }}
\newcommand{\Boolean} {{\bf boolean\ }}
\newcommand{\Integer} {$\integer$}
\newcommand{\True} {{\bf true\ }}
\newcommand{\False} {{\bf false\ }}
\newcommand{\Bitand} {{\bf bitand\ }}
\newcommand{\Var} {{\bf var\ }}
\newcommand{\Xor} {{\bf\ xor\ }}
\newcommand{\Not} {{\bf\ not\ }}
\newcommand{\Or} {{\bf\ or\ }}
\newcommand{\Div} {{\bf\ div\ }}
\newcommand{\Mod} {{\bf\ mod\ }}
\newcommand{\Decrement} {\ensuremath{\mathbf{-}\mathbf{-}\ }}
\newcommand{\Increment} {\ensuremath{\mathbf{+}\mathbf{+}\ }}
\newcommand{\End} {{\bf end\ }}
\newcommand{\Endfor} {{\bf endfor\ }}
\newcommand{\Rem}[1] {{\bf //\hspace{0.5mm}{\rm#1}}}
\newcommand{\RRem}[1] {\`{\bf //\hspace{0.5mm}~}{\rm#1}}
\newcommand{\Flush}[1] {\`{\bf \hspace{0.5mm}~}{\rm#1}}
\newcommand{\RRemNL}[1] {\`{\bf (*~ }{\rm#1}{\bf ~*)}%
{\tiny\arabic{lineNumber}}\stepcounter{lineNumber}}
\newcommand{\Declare}[2]{#1\mbox{ \rm : }#2}
\newcommand{\DeclareInit}[3]{#1$=$#3 \mbox{ \rm : }#2}
\newcommand{\At}[1]{\left\langle#1\right\rangle}
\newcommand{\NL}{\`{\tiny\arabic{lineNumber}}\stepcounter{lineNumber}}
\newdimen\endofsize\endofsize=0.5em
\def\endofbeweis{~\quad\hglue\hsize minus\hsize
\hbox{\vrule height \endofsize width
\endofsize}\par}
\newcommand{\widebinop}[1]{\hspace{0.5em}#1\hspace{0.5em}}
\newcommand{\donotshow}[1]{}
\newcommand{\maths}{mathematics'}
\newcommand{\apostrophe}{'}
\newcommand{\dapostrophe}{''}
\newcommand{\ignore}[1]{}
\newcommand{\pnegskip}{\vspace*{-\baselineskip}\vspace*{-\belowdisplayskip}\par}
\newcommand{\proofendswithequation}{\vspace*{-\baselineskip}\vspace*{-\belowdisplayskip}\par}
\newcommand{\eqndot}{\ .}\newcommand{\eqncomma}{\ ,}
\providecommand{\mod}{\mathop{\rm mod}}
\newcommand{\conv}{\mathop{\rm conv}}
\newcommand{\F}{{\cal F}}
\newcommand{\dom}{\mathop{\rm dom}\nolimits}
\newcommand{\op}{\mathbin{\rm op}}
\newcommand{\mes}{\mathop {\rm mes}}
\newcommand{\ind}{\mathop {\rm ind}}
\newcommand{\size}{\mathop {\rm size}}
\newcommand{\fl}{\mathop {\rm fl}}
\newcommand{\cl}{\mathop {\rm cl}}
\newcommand{\inn}{\mathop {\rm int}}
\newcommand{\cpl}{\mathop {\rm cpl}}
\newcommand{\reg}{\mathop {\rm reg}}
\newcommand{\bd}{\mathop {\rm bd}}
\newcommand{\bR}{\mathop {\rm bR}}
\newcommand{\loglog}{\mathop {\rm loglog}}
\newcommand{\CC}{C\raisebox{.08ex}{\hbox{\tt ++}}}
\newcommand{\Cminus}{C\raisebox{.08ex}{\hbox{\tt ++}}\raisebox{.25ex}{-}}
\newcommand{\GG}{g\raisebox{.08ex}{\hbox{\tt ++}}}
\newcommand{\Gminus} {g\raisebox{.08ex}{\hbox{\tt ++}}\raisebox{.25ex}{-}}
\newcommand{\R}{I\! \!R}
\newcommand{\N}{I\! \!N}
\newcommand{\Z}{I\! \!Z}
\newcommand{\Rp}{I\! \!R_{>0}}
\newcommand{\Rn}{I\! \!R_{<0}}
\newcommand{\Rnn}{I\! \!R_{\ge 0}}
\newcommand{\progitem}[1]{$\langle$#1$\rangle$ }
\newcommand{\strecke}[2]{{#1#2}$^{\hspace{-.6cm}\longrightarrow}$ \ }
\newcommand{\punktstrecke}[2]{{#1#2}$^{\hspace{-.6cm}\longrightarrow}\ $}
\providecommand{\3}{\ss}
\newcommand{\la}{$\langle$}
\newcommand{\ra}{$\rangle$\ }
\newcommand{\Listitem}[1]{$\langle$#1$\rangle$\ }
\providecommand{\range}[2]{[#1\, ..\, #2]}
\newcommand{\halfrange}[2]{[#1\, ..\, #2)}
\newcommand{\Kurt}{\htmladdnormallink{Kurt Mehlhorn}{http://www.mpi-sb.mpg.de/\~{}mehlhorn}}
\newcommand{\Stefan}{\htmladdnormallink{Stefan N\"aher}{http://www.informatik.uni-halle.de/\~{}naeher}}
\newcommand{\Christian}{\htmladdnormallink{Christian Uhrig}{http://www.mpi-sb.mpg.de/\~{}uhrig}}
\newcommand{\LEDA}{\htmladdnormallink{LEDA}{http://www.mpi-sb.mpg.de/LEDA/leda.html}}
\newcommand{\GmbH}{\htmladdnormallink{LEDA Software
GmbH}{http://www.mpi-sb.mpg.de/LEDA/GMBH/gmbh.html}}
\newcommand{\SB}{Saarbr\"{u}cken}
\newcommand{\figlabel}[1]{\label{fig:#1}}
\newcommand{\figref}[1]{\ref{fig:#1}}
\newcommand{\Hline}{\hspace{0.0in}\hrulefill\hspace{0.0in}}
\newcommand{\uedge}[1]{\sset{#1}}
\providecommand{\Path}[1]{[#1]}
\newcommand{\seq}[1]{\langle#1\rangle}
\newcommand{\Exp}[1]{{\rm E}[ #1 ]}
\newcommand{\prob}[1]{{\rm prob}( #1 )}
\newcommand{\disjointcup}{\mathbin {\dot{\cup}}}
\newcommand{\Kmarginpar}[1]{\marginpar{\footnotesize #1}}
\newcommand{\mbegin}{\{\ \ }
\newcommand{\mend}{\}}
\newcommand{\memptyline}{\\[-2ex]}
\newlength{\mleftindent}
\setlength{\mleftindent}{\parindent}
\newlength{\mindent}
\settowidth{\mindent}{\mbegin}
\newlength{\mboxwidth}
\newcommand{\mincrement}{\addtolength{\mboxwidth}{-\mindent}}
\newcommand{\mdecrement}{\addtolength{\mboxwidth}{\mindent}}
\newlength{\preprogramskip}
\newlength{\postprogramskip}
\setlength{\preprogramskip}{\smallskipamount}
\setlength{\postprogramskip}{\smallskipamount}
\newlength{\mexpwidth}
\newlength{\mexpindent}
\newcommand{\indentafterkeyword}{\hspace*{0.5em}}
\newcommand{\mwhile}[2]
{\While #1 \Do\+\\ #2\-\\}
\newcommand{\mforall}[2]
{\Forall #1 \Do\+\\ #2\-\\}
\newcommand{\mifthen}[2]
{\If #1 \Then\+\\ #2\-\\}
\newcommand{\monelinewhile}[2]
{\While #1 \Do #2\\}
\newcommand{\monelineifthen}[2]
{\If #1 \Then #2 \\}
\newcommand{\mifelse}[3]
{\If #1 \Then\+\\ #2\-\\\Else\+\\ #3\-\\}
\newcommand{\mtwolineifelse}[3]
{\If #1 \Then #2\\\Else#3\\}
\newcommand{\monelineifelse}[3]
{\If #1 \Then #2 \Else #3\\}
\providecommand{\Path}[1]{[#1]}
\newcommand{\mindentcommand}[3]
{\setlength{\mexpwidth}{\mboxwidth}%
\settowidth{\mexpindent}{{\bf #1}\indentafterkeyword #2}%
\addtolength{\mboxwidth}{-\mexpindent}%
{\bf #1}\indentafterkeyword #2 \mbegin%
\parbox[t]{\mboxwidth}{#3}\\%
\hspace*{\mexpindent}\mend%
\addtolength{\mboxwidth}{\mexpindent}
}
\newlength{\proofpostskipamount}
\setlength{\proofpostskipamount}{0.5ex}
\newlength{\proofpreskipamount}
\setlength{\proofpostskipamount}{0.5ex}
\newenvironment{myproof}
{\par\vspace{\proofpreskipamount}\noindent{\bf Proof:}\hspace{0.5em}}
{\nopagebreak%
\strut\nopagebreak%
\hspace{\fill}\qed\par\vspace{\proofpostskipamount}\noindent}
\newenvironment{Proof}[1]
{\par\vspace{0.5ex}\noindent{\bf Proof #1:}\hspace{0.5em}}
{\nopagebreak%
\strut\nopagebreak%
\hspace{\fill}\qed\par\medskip\noindent}
\newcommand{\highqed}{\vspace{-\belowdisplayskip -2.0\baselineskip}\par}
\newlength{\mydefwidth}
\newlength{\mytextwidth}
\newcommand{\myurl}[1]{{\footnotesize \url{#1}}}
\newcommand{\textdef}[1]{\emph{#1}}
\newcommand{\betonung}[1]{\emph{#1}}
\newcommand{\usw}{\ldots}
\newcommand{\alphaq}{\overline{\alpha}}
\newcommand{\gr}[1]{{\mathit #1\/}}
\newcommand{\rmid}{;\ }
\newcommand{\case}[2]{#1: #2}
\newcommand{\Eins}{1}
\newcommand{\Zwei}{2}
\newcommand{\Drei}{3}
\newcounter{abbnummer}
\newcounter{plusabbnummber}
\newcounter{zweiplusabbnummer}