]> mj.ucw.cz Git - saga.git/commitdiff
Parts of preface.
authorMartin Mares <mj@ucw.cz>
Tue, 22 Apr 2008 18:35:19 +0000 (20:35 +0200)
committerMartin Mares <mj@ucw.cz>
Tue, 22 Apr 2008 18:35:19 +0000 (20:35 +0200)
adv.tex
dyn.tex
macros.tex
opt.tex
pref.tex
rank.tex

diff --git a/adv.tex b/adv.tex
index 1e9f8740c3fd73b383df39431ed37acb8bd0a1af..41095c8545f56ee6ccf3f7c194834d6fd7c22ff7 100644 (file)
--- a/adv.tex
+++ b/adv.tex
@@ -539,7 +539,7 @@ A~better algorithm will be shown in Chapter \ref{optchap}.
 
 %--------------------------------------------------------------------------------
 
-\section{Verification of minimality}
+\section{Verification of minimality}\id{verifysect}%
 
 Now we will turn our attention to a~slightly different problem: given a~spanning
 tree, how to verify that it is minimum? We will show that this can be achieved
diff --git a/dyn.tex b/dyn.tex
index 629b2b85bf5b230e276dd7c69a4b9d8a1deb2c88..f07103ac08cc19f4d596c73cca1c8d1aee0545b5 100644 (file)
--- a/dyn.tex
+++ b/dyn.tex
@@ -516,7 +516,7 @@ to fit our needs, so we omit the details.
 
 %--------------------------------------------------------------------------------
 
-\section{Dynamic spanning forests}
+\section{Dynamic spanning forests}\id{dynmstsect}%
 
 Let us turn our attention back to the dynamic MSF now.
 Most of the early algorithms for dynamic connectivity also imply $\O(n^\varepsilon)$
index 4fcc480fa88fb89fb7aca4c201b32f0899dcce2a..e4011aec6bc786cd38e1cc176a364915748814a1 100644 (file)
 \def\example{\proclaim{Example}}
 
 \def\label#1{{\sl (#1)\/}\enspace}
-\def\labelx#1{\label{#1}\hfil\break\kern 0pt}  % Eat spaces
+\def\labelx#1{\label{#1}\hfil\break\eatspaces}
+\def\eatspaces{\kern0pt}
 
 \def\thmn{\thm\labelx}
 \def\lemman{\lemma\labelx}
 \def\problemn{\problem\labelx}
 \def\remn{\rem\labelx}
 
-\def\paran#1{\para {\sl #1.\/}\enspace\kern 0pt}
+\def\paran#1{\para {\sl #1.\/}\enspace\eatspaces}
 
 \def\proof{\noindent {\sl Proof.}\enspace}
 \def\proofsketch{\noindent {\sl Proof sketch.}\enspace}
diff --git a/opt.tex b/opt.tex
index 86402c617a708fe47db3e157138d6623f74e16af..6d7e74252c28271cad668e2ee03a20d5e029c08a 100644 (file)
--- a/opt.tex
+++ b/opt.tex
@@ -4,7 +4,7 @@
 
 \chapter{Approaching Optimality}\id{optchap}%
 
-\section{Soft heaps}
+\section{Soft heaps}\id{shsect}%
 
 A~vast majority of MST algorithms that we have encountered so far is based on
 the Tarjan's Blue rule (Lemma \ref{bluelemma}). The rule serves to identify
index 5597cc5539c1a3744eb76ce65317e8ec96434295..597430ffb375e6ef515795bed6c8aaf71629bd07 100644 (file)
--- a/pref.tex
+++ b/pref.tex
@@ -4,4 +4,62 @@
 
 \unchapter{Preface}
 
+This thesis tells the story of two well-established problems of algorithmic
+graph theory: the minimum spanning trees and ranks of permutations. At distance,
+both problems seem to be simple, boring and already solved, because we have poly\-nom\-ial-time
+algorithms for them since ages. But when we come closer and seek algorithms that
+are really efficient, the problems twirl and twist and withstand many a~brave
+attempt at the optimum solution. They also reveal a~vast and diverse landscape
+of a~deep and beautiful theory. Still closer, this landscape turns out to be interwoven
+with the intricate details of various models of computation and even of arithmetics
+itself.
+
+I have tried to cover all known important results on both problems and unite them
+in a~single coherent theory. At many places, I have tried to contribute my own
+little stones to this mosaic: several new results, simplifications of existing
+ones, and last, but not least filling in important details where the original
+authors have missed some.
+
+When compared with the earlier surveys on the minimum spanning trees, most
+notably Graham and Hell \cite{gh:history} and Eisner \cite{eisner:tutorial},
+this work includes many of the recent advances, the dynamic algorithms and
+also the relationship with computational models. No previous work covering
+the ranking problems in entirety is known.
+
+\FIXME{GA booklet}
+
+\def\ss#1{\medskip\>{\bo #1.}\enspace\eatspaces}
+
+\ss{My results}
+
+\itemize\ibull
+\:The lower bound in Section \ref{contalg}. Not published yet.
+\:The tree isomorphism algorithm in Section \ref{bucketsort}. Not published yet.
+\:Both algorithms for minor-closed graph classes in Section \ref{minorclosed}. Published in \cite{mm:mst}.
+\:The linear-time verification algorithm in Section \ref{verifysect} is a~simplification
+  of the algorithm of King \cite{king:verify} and it corrects many omissions
+  in the original paper. Not published yet.
+\:The dynamic MST algorithm for graphs with limited edge weights in Section \ref{dynmstsect}.
+\:The ranking algorithms in Sections \ref{ranksect} to \ref{kpranksect} are joint research with Milan Straka,
+  published in \cite{mm:rank}.
+\:The remaining sections of Chapter \ref{rankchap} contain unpublished original research.
+\endlist
+
+\ss{Other minor contributions}
+
+\itemize\ibull
+\:The flattening procedure in Section \ref{bucketsort}. Published in \cite{mm:mst}.
+\:The unified view of vector computations in Section \ref{bitsect}. XXXX: MO
+\:Several simplifications of the soft heaps in Section \ref{shsect}.
+\endlist
+
+\ss{Acknowledgements}
+
+\ss{Notation}
+
+\bigskip
+
+So, my gentle reader, let us nestle deep in an~ancient wing armchair. The saga of the
+graph algorithms begins~\dots
+
 \endpart
index aa6379ccb5b1371cb86a318748c5d9c0684f1593..014d56d4af97000a8f3593f26d96aec6e5a1c0c0 100644 (file)
--- a/rank.tex
+++ b/rank.tex
@@ -5,7 +5,7 @@
 \chapter{Ranking Combinatorial Structures}
 \id{rankchap}
 
-\section{Ranking and unranking}
+\section{Ranking and unranking}\id{ranksect}%
 
 The techniques for building efficient data structures on the RAM described
 in Chapter~\ref{ramchap} can be also used for a~variety of problems related