Abstract
We present a general technique for dynamizing a significant class of problems whose underlying structure is a computation graph embedded in a tree. This class of problems includes the evaluation of linear expressions over k-tuples from a semiring with binary and unary operators, attribute grammars with linear dependencies, point location in binary space partitions, compaction of slicing floorplans, graph drawing, generalized heaps, and a variety of optimization problems in bounded tree-width graphs. For problems in this class, we support a complete repertory of dynamic operations in logarithmic time using linear space.
Research supported in part by the National Science Foundation under grant CCR-9007851, by the U.S. Army Research Office under grant DAAL03-91-G-0035, and by the Office of Naval Research and the Defense Advanced Research Projects Agency under contract N00014-91-J-4052, ARPA order 8225.
Preview
Unable to display preview. Download preview PDF.
References
B. Alpern, R. Hoover, B. Rosen, P. Sweeney, and F.K. Zadeck, “Incremental Evaluation of Computational Circuits,” Proc. ACM-SIAM Symp. on Discrete Algorithms (1990), 32–42.
S.W. Bent, D.D. Sleator, and R.E. Tarjan, “Biased Search Trees,” SIAM J. Computing 14 (1985), 545–568.
G. M. Beshers and R. H. Campbell, “Maintained and Constructor Attributes,” Proc. ACM Symp. on Language Issues in Programming Environments, ACM SIGPLAN Notices (1985), 34–42.
Y.-J. Chiang, F.P. Preparata, and R. Tamassia, “A Unified Approach to Dynamic Point Location, Ray Shooting and Shortest Paths in Planar Maps,” Proc. ACM-SIAM Symp. on Discrete Algorithms (1993).
Y.-J. Chiang and R. Tamassia, “Dynamic Algorithms in Computational Geometry,” IEEE Proc., Special Issue on Computational Geometry 80 (1992), 362–381.
R. F. Cohen, G. Di Battista, R. Tamassia, I.G. Tollis, and P. Bertolazzi, “A Framework for Dynamic Graph Drawing,” Proc. ACM Symp. on Computational Geometry (1992), 261–270.
R.F. Cohen, S. Sairam, R. Tamassia, and J.S. Vitter, “Dynamic Algorithms for Optimization Problems in Bounded Tree-Width Graphs,” Proc. 3rd Integer Programming and Combinatorial Optimization Conference (1993).
R.F. Cohen and R. Tamassia, “Dynamic Expression Trees and their Applications,” Proc. ACM-SIAM Symp. on Discrete Algorithms (1991), 52–61.
R.F. Cohen and R. Tamassia, “Combine and Conquer,” Dept. Computer Science, Brown Univ., Technical Report CS-92-19, 1992.
G. Di Battista and R. Tamassia, “Incremental Planarity Testing,” Proc. 30th IEEE Symp. on Foundations of Computer Science (1989), 436–441.
G. Di Battista and R. Tamassia, “On-Line Graph Algorithms with SPQR-Trees,” Automata, Languages and Programming (Proc. 17th ICALP), Lecture Notes in Computer Science 442 (1990), 598–611.
D. Eppstein, Z. Galil, G.F. Italiano, and A. Nissenzweig, “Sparsification — A technique for speeding up dynamic graph algorithms,” Proc. IEEE Symp. on Foundations of Computer Science (1992).
D. Eppstein, G.F. Italiano, R. Tamassia, R.E. Tarjan, J. Westbrook, and M. Yung, “Maintenance of a Minimum Spanning Forest in a Dynamic Plane Graph,” J. of Algorithms 13 (1992), 33–54.
G.N. Frederickson, “Data Structures for On-Line Updating of Minimum Spanning Trees, with Applications,” SIAM J. Computing 14 (1985), 781–798.
G.N. Frederickson, “Ambivalent Data Structures for Dynamic 2-Edge-Connectivity and k Smallest Spanning Trees,” Proc. 32th IEEE Symp. on Foundations of Computer Science (1991).
G.N. Frederickson, “A Data Structure for Dynamically Maintaining Rooted Trees.,” Proc. ACM-SIAM Symp. on Discrete Algorithms (1993).
Z. Galil and G.F. Italiano, “Fully Dynamic Algorithms for Edge-Connectivity Problems,” Proc. 23th ACM Symp. on Theory of Computing (1991), 317–327.
Z. Galil and G.F. Italiano, “Maintaining Biconnected Components of Dynamic Planar Graphs,” Automata, Languages and Programming (Proc. 18th ICALP), Lecture Notes in Computer Science (1991).
L. G. Jones, “Incremental Compaction of Flat Symbolic IC Layouts,” Department of Computer Science, University of Illinois, Urbana, Illinois, Technical Report No. UIUCDCS-R-87-1386, 1987.
L. G. Jones and J. Simon, “Hierarchical VLSI Design Systems Based on Attribute Grammars,” Proc. 13th ACM Symp. on Principles of Programming Languages (1986), 58–69.
A. Kanevsky, R. Tamassia, J. Chen, and G. Di Battista, “On-Line Maintenance of the Four-Connected Components of a Graph,” Proc. 32th IEEE Symp. on Foundations of Computer Science (1991), 793–801.
D. E. Knuth, “Semantics of Context-Free Languages,” Mathematical Systems Theory 2 (1968), 127–145.
M. Overmars, “The Design of Dynamic Data Structures,” Lecture Notes in Computer Science 156 (1983).
M.S. Patterson and F.F. Yao, “Optimal Binary Space Partitions for Orthoganal Objects,” Proc. 1st ACM-SIAM Symp. on Discrete Algorithms (1990), 100–106.
J.A. La Poutre, “Dynamic Graph Algorithms and Data Structures,” Dept. of Computer Science, University of Utrechet, Utrechet, Ph.D. Thesis, 1991.
F.P. Preparata, “A New Approach to Planar Point Location,” SIAM J. Computing 10 (1981), 473–483.
T.W. Reps, Generating Language-Based Environments, The MIT Press, 1984.
T.W. Reps and T. Teitelbaum, The Synthesizer Generator, Springer-Verlag, 1989.
C. Schwarz, M. Smid, and J. Snoeyink, “An Optimal Algorithm for the On-line Closest-Pair Problem,” Proc. ACM Symp. on Computational Geometry (1992).
D.D. Sleator and R.E. Tarjan, “A Data Structure for Dynamic Trees,” J. Computer Systems Sciences 24 (1983), 362–381.
D.D. Sleator and R.E. Tarjan, “Self-Adjusting Binary Search Trees,” J. ACM 32 (1985), 652–686.
L. Stockmeyer, “Optimal Orientation of Cells in Slicing Floorplan Design,” Information and Control 57 (1983), 91–101.
J. Westbrook and R.E. Tarjan, “Maintaining Bridge-Connected and Biconnected Components On-Line,” Algorithmica 7 (1992), 433–464.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1993 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cohen, R.F., Tamassia, R. (1993). Combine and conquer: A general technique for dynamic algorithms. In: Lengauer, T. (eds) Algorithms—ESA '93. ESA 1993. Lecture Notes in Computer Science, vol 726. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57273-2_47
Download citation
DOI: https://doi.org/10.1007/3-540-57273-2_47
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57273-2
Online ISBN: 978-3-540-48032-7
eBook Packages: Springer Book Archive