From: Martin Mares Date: Wed, 16 Apr 2008 11:41:45 +0000 (+0200) Subject: Lower bounds and bug fixes. X-Git-Tag: printed~90 X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=9f6dae5f91a6a03d851b04d91bc685da43e31f68;p=saga.git Lower bounds and bug fixes. --- diff --git a/PLAN b/PLAN index 04d7887..cc4fc6b 100644 --- a/PLAN +++ b/PLAN @@ -83,11 +83,6 @@ Models: - PM: unify yardsticks - all data structures should mention space complexity -Dynamic: - -- What is the origin of the semidynamic MSF? -- lower bounds - Ranking: - the general perspective: is it only a technical trick? diff --git a/biblio.bib b/biblio.bib index 2edd9d2..ea0f7d8 100644 --- a/biblio.bib +++ b/biblio.bib @@ -1397,3 +1397,27 @@ year={1981}, publisher={SIAM} } + +@inproceedings{ thorup:nearopt, + author = {Mikkel Thorup}, + title = {Near-optimal fully-dynamic graph connectivity}, + booktitle = {STOC '00: Proceedings of the thirty-second annual ACM symposium on Theory of computing}, + year = {2000}, + isbn = {1-58113-184-4}, + pages = {343--350}, + location = {Portland, Oregon, United States}, + doi = {http://doi.acm.org/10.1145/335305.335345}, + publisher = {ACM}, + address = {New York, NY, USA}, +} + +@article{ henzinger:lowerbounds, + title={{Lower Bounds for Fully Dynamic Connectivity Problems in Graphs}}, + author={Henzinger, M. R. and Fredman, M. L.}, + journal={Algorithmica}, + volume={22}, + number={3}, + pages={351--362}, + year={1998}, + publisher={Springer} +} diff --git a/dyn.tex b/dyn.tex index 7797c0b..4a8a1d8 100644 --- a/dyn.tex +++ b/dyn.tex @@ -502,6 +502,17 @@ we apply the trick from Example \ref{accel} and store~$F_0$ in a~ET-tree with $a This does not hurt the complexity of insertions and deletions, but allows for faster queries. \qed +\rem +An~$\Omega(\log n/\log\log n)$ lower bound for amortized complexity of the dynamic connectivity +problem has been proven by Henzinger and Fredman \cite{henzinger:lowerbounds} in the cell +probe model with $\O(\log n)$-bit words. Thorup has answered by a~faster algorithm +\cite{thorup:nearopt} that achieves $\O(\log n\log^3\log n)$ time per update and +$\O(\log n/\log^{(3)} n)$ per query on a~RAM with $\O(\log n)$-bit words. (He claims +that the algorithm runs on a~Pointer Machine, but it uses arithmetic operations, +so it does not fit the definition of the PM we use. The algorithm only does not +need indexing of arrays.) So far, it is not known how to extend this algorithm +to fit our needs, so we omit the details. + %-------------------------------------------------------------------------------- \section{Dynamic MSF} @@ -645,18 +656,13 @@ The limitation of MSF structures based on the Holm's algorithm for connectivity to only edge deletions seems to be unavoidable. The invariant I3 could be easily broken for many cycles at once whenever a~very light non-tree edge is inserted. We could try increasing the level of the newly inserted edge, but we would quite -possibly hit I1 before we skipped the levels of all the heaviest edges on the +likely hit I1 before we managed to skip the levels of all the heaviest edges on the particular cycles. -On the other hand, if we decided to drop I3, we would encounter different problems. -We have enough time to scan all non-tree edges incident to the current tree~$T_1$ ---- we can charge it on the level increases of its tree edges and if we use the -degree reduction from Lemma \ref{degred}, there are at most two non-tree edges -per vertex. (The reduction can be used dynamically as it always translates a~single -change of the original graph to $\O(1)$ changes of the reduced graph.) The lightest -replacement edge however could also be located in the super-trees of~$T_1$ at the -lower levels, which are too large to scan and both I1 and I2 prevent us from -charging the time on increasing levels there. +On the other hand, if we decided to drop I3, we would encounter different problems. The ET-trees can +bring the lightest non-tree incident with the current tree~$T_1$, but the lightest replacement edge +could also be located in the super-trees of~$T_1$ at the lower levels, which are too large to scan +and both I1 and I2 prevent us from charging the time on increasing levels there. An~interesting special case in which insertions are possible is when all non-tree edges have the same weight. This leads to the following algorithm for dynamic MSF