1 research outputs found

    Succinct Approximate Rank Queries

    Full text link
    We consider the problem of summarizing a multi set of elements in {1,2,…,n}\{1, 2, \ldots , n\} under the constraint that no element appears more than β„“\ell times. The goal is then to answer \emph{rank} queries --- given i∈{1,2,…,n}i\in\{1, 2, \ldots , n\}, how many elements in the multi set are smaller than ii? --- with an additive error of at most Ξ”\Delta and in constant time. For this problem, we prove a lower bound of Bβ„“,n,Ξ”β‰œ\mathcal B_{\ell,n,\Delta}\triangleq ⌊nβŒˆΞ”/β„“βŒ‰βŒ‹\left\lfloor{\frac{n}{\left\lceil{\Delta / \ell}\right\rceil}}\right\rfloor log⁑(max⁑{βŒŠβ„“/Ξ”βŒ‹,1}+1)\log\big({\max\{\left\lfloor{\ell / \Delta}\right\rfloor,1\} + 1}\big) bits and provide a \emph{succinct} construction that uses Bβ„“,n,Ξ”(1+o(1))\mathcal B_{\ell,n,\Delta}(1+o(1)) bits. Next, we generalize our data structure to support processing of a stream of integers in {0,1,…,β„“}\{0,1,\ldots,\ell\}, where upon a query for some i≀ni\le n we provide a Ξ”\Delta-additive approximation for the sum of the \emph{last} ii elements. We show that this too can be done using Bβ„“,n,Ξ”(1+o(1))\mathcal B_{\ell,n,\Delta}(1+o(1)) bits and in constant time. This yields the first sub linear space algorithm that computes approximate sliding window sums in O(1)O(1) time, where the window size is given at the query time; additionally, it requires only (1+o(1))(1+o(1)) more space than is needed for a fixed window size
    corecore