Dynamic 3-sided planar range queries with expected doubly-logarithmic time

The Priority Search Tree is the classic solution for the problem of dynamic 2-dimensional searching for the orthogonal query range of the form [a,b]x(-~,c] (3-sided rectangle). It supports all operations in logarithmic worst case complexity in both main and external memory. In this work we show that the update and query complexities can be improved to expected doubly-logarithmic, when the input coordinates are being continuously drawn from specific probability distributions. We present three pairs of linear space solutions for the problem, i.e. a RAM and a corresponding I/O model variant: (1) First, we improve the update complexity to doubly-logarithmic expected with high probability, under the most general assumption that both the x- and y-coordinates of the input points are continuously being drawn from a distribution whose density function is unknown but fixed. (2) Next, we improve both the query complexity to doubly-logarithmic expected with high probability and the update complexity to doubly-logarithmic amortized expected, by assuming that only the x-coordinates are being drawn from a class of smooth distributions, and that the deleted points are selected uniformly at random among the currently stored points. In fact, the y-coordinates are allowed to be arbitrarily distributed. (3) Finally, we improve both the query and the update complexity to doubly-logarithmic expected with high probability by moreover assuming the y-coordinates to be continuously drawn from a more restricted class of realistic distributions. All data structures are deterministic and their complexity's expectation is with respect to the assumed distributions. They comprise combinations of known data structures and of two new data structures introduced here, namely the Weight Balanced Exponential Tree and the External Modified Priority Search Tree.

[1]  Kasper Green Larsen,et al.  I/O-efficient data structures for colored range and prefix reporting , 2012, SODA.

[2]  Christos Makris,et al.  ISB-tree: A new indexing scheme with efficient expected behaviour , 2005, J. Discrete Algorithms.

[3]  Mark H. Overmars Efficient Data Structures for Range Searching on a Grid , 1988, J. Algorithms.

[4]  Jeffrey Scott Vitter,et al.  External memory algorithms and data structures: dealing with massive data , 2001, CSUR.

[5]  Jeffrey Scott Vitter,et al.  Efficient Indexing Methods for Probabilistic Threshold Queries over Uncertain Data , 2004, VLDB.

[6]  Dan E. Willard,et al.  Applications of the fusion tree method to computational geometry and searching , 1992, SODA '92.

[7]  Alok Aggarwal,et al.  The input/output complexity of sorting and related problems , 1988, CACM.

[8]  Oliver Günther,et al.  Multidimensional access methods , 1998, CSUR.

[9]  Arne Andersson,et al.  Dynamic Interpolation Search in o(log log n) Time , 1993, ICALP.

[10]  Christos Makris,et al.  Dynamic Interpolation Search Revisited , 2006, ICALP.

[11]  Bernhard Seeger,et al.  An asymptotically optimal multiversion B-tree , 1996, The VLDB Journal.

[12]  Mark de Berg,et al.  Computational geometry: algorithms and applications , 1997 .

[13]  Mark H. Overmars,et al.  A balanced search tree with O(1) worst-case update time , 1988, Acta Informatica.

[14]  Sridhar Ramaswamy,et al.  The P-range tree: a new data structure for range searching in secondary memory , 1995, SODA '95.

[15]  Dan E. Willard Examining Computational Geometry, Van Emde Boas Trees, and Hashing from the Perspective of the Fusion Tree , 2000, SIAM J. Comput..

[16]  Kurt Mehlhorn,et al.  A log log n Data Structure for Three-Sided Range Queries , 1987, Inf. Process. Lett..

[17]  Stephen Alstrup,et al.  New data structures for orthogonal range searching , 2000, Proceedings 41st Annual Symposium on Foundations of Computer Science.

[18]  Pinar Heggernes,et al.  Graph-Theoretic Concepts in Computer Science , 2016, Lecture Notes in Computer Science.

[19]  Ralf Hartmut Güting,et al.  XP-Trees: External Priority Search Trees , 1990 .

[20]  Dan Gusfield,et al.  Algorithms on Strings, Trees, and Sequences - Computer Science and Computational Biology , 1997 .

[21]  Jeffrey Scott Vitter,et al.  On two-dimensional indexability and optimal range search indexing , 1999, PODS '99.

[22]  Maxime Crochemore,et al.  Algorithms on strings , 2007 .

[23]  Edward M. McCreight,et al.  Priority Search Trees , 1985, SIAM J. Comput..

[24]  Robert E. Tarjan,et al.  Fast Algorithms for Finding Nearest Common Ancestors , 1984, SIAM J. Comput..

[25]  Sridhar Ramaswamy,et al.  Indexing for Data Models with Constraints and Classes , 1996, J. Comput. Syst. Sci..

[26]  Robert E. Tarjan,et al.  A linear-time algorithm for a special case of disjoint set union , 1983, J. Comput. Syst. Sci..

[27]  Mikkel Thorup,et al.  Faster deterministic sorting and priority queues in linear space , 1998, SODA '98.

[28]  Christos Makris,et al.  Geometric Retrieval for Grid Points in the RAM Model , 2004, J. Univers. Comput. Sci..

[29]  Sridhar Ramaswamy,et al.  Path Caching: A Technique for Optimal External Searching , 1994, PODS 1994.

[30]  Donald E. Knuth,et al.  Deletions That Preserve Randomness , 1977, IEEE Transactions on Software Engineering.

[31]  Christos Makris,et al.  2-D Spatial Indexing Scheme in Optimal Time , 2000, ADBIS-DASFAA.

[32]  Arne Andersson Faster deterministic sorting and searching in linear space , 1996, Proceedings of 37th Conference on Foundations of Computer Science.

[33]  Jeffrey Scott Vitter,et al.  Optimal dynamic interval management in external memory , 1996, Proceedings of 37th Conference on Foundations of Computer Science.

[34]  Jeffrey Scott Vitter,et al.  Optimal Dynamic Interval Management in External Memory (extended abstract). , 1996, FOCS 1996.

[35]  Sridhar Ramaswamy,et al.  Indexing for data models with constraints and classes (extended abstract) , 1993, PODS '93.

[36]  Jennifer Widom,et al.  Models and issues in data stream systems , 2002, PODS.

[37]  Volker Heun,et al.  A New Succinct Representation of RMQ-Information and Improvements in the Enhanced Suffix Array , 2007, ESCAPE.

[38]  Sridhar Ramaswamy,et al.  Path caching (extended abstract): a technique for optimal external searching , 1994, PODS '94.

[39]  Dan Gusfield,et al.  Algorithms on Strings, Trees, and Sequences - Computer Science and Computational Biology , 1997 .

[40]  Kyriakos Mouratidis,et al.  Continuous monitoring of top-k queries over sliding windows , 2006, SIGMOD Conference.

[41]  Kurt Mehlhorn,et al.  Dynamic interpolation search , 1985, JACM.

[42]  F. Frances Yao,et al.  Computational Geometry , 1991, Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity.

[43]  Rolf Klein,et al.  Priority Search Trees in Secondary Memory (Extended Abstract) , 1987, WG.

[44]  Christos Makris,et al.  Improved Bounds for Finger Search on a RAM , 2003, Algorithmica.

[45]  Mikkel Thorup,et al.  Dynamic ordered sets with exponential search trees , 2002, J. ACM.

[46]  J. van Leeuwen,et al.  Theoretical Computer Science , 2003, Lecture Notes in Computer Science.