Abstract
We introduce a new data structuring paradigm in which operations can be performed on a data structure not only in the present, but also in the past. In this new paradigm, called retroactive data structures, the historical sequence of operations performed on the data structure is not fixed. The data structure allows arbitrary insertion and deletion of operations at arbitrary times, subject only to consistency requirements. We initiate the study of retroactive data structures by formally defining the model and its variants. We prove that, unlike persistence, efficient retroactivity is not always achievable. Thus, we present efficient retroactive data structures for queues, doubly ended queues, priority queues, union-find, and decomposable search structures.
- Bentley, J. 1977. Algorithms for Klee's rectangle problems. unpublished manuscript, Department of Computer Science, Carnegie-Mellon University.Google Scholar
- Bentley, J. L., and Saxe, J. B. 1980. Decomposable searching problems I: Static-to-Dynamic transformations. J. Alg. 1, 301--358.Google ScholarCross Ref
- Cormen, T. H., Leiserson, C. E., Rivest, R. L., and Stein, C. 2001. Introduction to Algorithms, 2nd ed. MIT Press, Cambridge, MA. Google ScholarDigital Library
- Driscoll, J. R., Sarnak, N., Sleator, D. D., and Tarjan, R. E. 1989. Making data structures persistent. J. Comput. Syst. Sci. 38, 1, 86--124. Google ScholarDigital Library
- Fiat, A. and Kaplan, H. 2001. Making data structures confluently persistent. In Proceedings of the 12th Annual Symposium on Discrete Algorithms (Washington, DC) 537--546. Google ScholarDigital Library
- Fleischer, R. 1996. A simple balanced search tree with O(1) worst-case update time. Int. J. Found. Comput. Sci. 7, 2, 137--149.Google ScholarCross Ref
- Frandsena, G. S., Hansenb, J. P., and Miltersen, P. B. 2001. Lower bounds for dynamic algebraic problems. Inf. Comput. 171, 2 (Dec.), 333--349. Google ScholarDigital Library
- Goodrich, M. and Tamassia, R. 1991. Dynamic trees and dynamic point location. In Proceedings of the 23rd Annual ACM Symposium on Theory Computing. 523--533. Google ScholarDigital Library
- Mannila, H. and Ukkonen, E. 1986. The set union problem with backtracking. In Proceedings of the 13th International Conference on Automata, Languages and Programming (ICALP). Lecture Notes in Computer Science, vol. 226. Springer Verlag, Berlin. 236--243. Google ScholarDigital Library
- Orwell, G. 1949. 1984. Signet Classic.Google Scholar
- Pătrascu, M. and Demaine, E. D. 2004. Tight bounds for the partial-sums problem. In Proceedings of the 15th Annual ACM-SIAM Symposium on Discrete Algorithms. (New Orleans, LA). 20--29. Google ScholarDigital Library
- Ramakrishnan, R. and Gehrke, J. 2002. Database Management Systems. McGraw-Hill, New York. Google ScholarDigital Library
- Raman, R., Raman, V., and Rao, S. S. 2001. Succinct dynamic data structures. In Proceedings of the 7th Workshop on Algorithms and Data Structures. Lecture Notes in Computer Science, vol. 2125. Springer Verlag, Berlin. 426--437.Google Scholar
- Sarnak, N. and Tarjan, R. E. 1986. Planar point location using persistent search trees. Commun. ACM 29, 7 (Jul.), 669--679. Google ScholarDigital Library
- Sleator, D. D. and Tarjan, R. E. 1983. A data structure for dynamic trees. J. Comput. Syst. Sci. 26, 3, 362--381. Google ScholarDigital Library
- Snoeyink, J. 1997. Point location. In Handbook of Discrete and Computational Geometry, J. E. Goodman and J. O'Rourke, eds. CRC Press, Boca Raton, FL. 559--574. Google ScholarDigital Library
- Strassen, V. 1990. Algebraic complexity theory. In Algorithms and Complexity, J. van Leeuwen, ed. Handbook of Theoretical Computer Science, vol. A. MIT Press, Cambridge, MA. 633--672. Google ScholarDigital Library
- Tarjan, R. E. 1975. Efficiency of a good but not linear set union algorithm. J. ACM 22, 215--225. Google ScholarDigital Library
- Tarjan, R. E. 1979. A class of algorithms which require nonlinear time to maintain disjoint sets. J. Comput. Syst. Sci. 18, 110--127.Google ScholarCross Ref
- Westbrook, J. and Tarjan, R. E. 1989. Amortized analysis of algorithms for set union with backtracking. SIAM J. Comput. 18, 1--11. Google ScholarDigital Library
- Yao, A. C. 1981. Should tables be sorted? J. ACM 28, 3, 615--628. Google ScholarDigital Library
Index Terms
- Retroactive data structures
Recommendations
Retroactive data structures
SODA '04: Proceedings of the fifteenth annual ACM-SIAM symposium on Discrete algorithmsWe introduce a new data structuring paradigm in which operations can be performed on a data structure not only in the present but also in the past. In this new paradigm, called retroactive data structures, the historical sequence of operations performed ...
Space-Efficient Functional Offline-Partially-Persistent Trees with Applications to Planar Point Location
Algorithms and Data StructuresAbstractIn 1989 Driscoll, Sarnak, Sleator, and Tarjan presented general space-efficient transformations for making ephemeral data structures persistent. The main contribution of this paper is to adapt this transformation to the functional model. We ...
A survey of persistent data structures
ICCOMP'05: Proceedings of the 9th WSEAS International Conference on ComputersSeveral years after the introduction of the notion of persistence by Driscoll et al. [15] we review, in this paper, the most important data structuring paradigms and applications both in main and secondary memory.
Comments