SearcharxivSearch

arXiv · 2603.23119

Compressing Dynamic Fully Indexable Dictionaries in Word-RAM

Abstract

We study the problem of constructing a dynamic fully indexable dictionary (FID) in the Word-RAM model using space close to the information-theoretic lower bound. A FID is a data-structure that encodes a bit-vector $B$ of length $u$ and answers, for $b\in\{0,1\}$, $\texttt{rank}_b(B, x)=|{\{y\leq x~|~B[y]=b\}}|$ and $\texttt{select}_b(B, r)=\min\{0\leq x<u~|~\texttt{rank}_b(B, x)=r\}$ ($-1$ if empty). A dynamic FID supports updates that modify a single bit of $B$, i.e., $B[i]\gets b$. We work in the Word-RAM model with $w$-bit words, assuming $w\geq \operatorname{lg} u$. Integer multiplication takes $\mathcal{O}(1)$ time. Our memory model is $\mathcal{M}_B$, allowing access to a fixed precomputed table of $\tau=\operatorname{polylog}(w)$ words, which can be computed in $\mathcal{O}(w\tau)$ time. In this paper, we show a dynamic FID based on the famous fusion-tree data-structure of P{\u{a}}tra{\c{s}}cu and Thorup [FOCS 2014], modified to use fewer bits and to support $\texttt{select}_0$. Let $n$ denote the number of ones in $B$. We describe a parametric construction: for every $\epsilon\leq 1/2$, there is a dynamic FID using $$\operatorname{lg}\binom{u}{n}+\mathcal{O}(nw^{\epsilon}/\epsilon)\text{ bits}$$ taking $\mathcal{O}({1/\epsilon+\log_w(n)})$ time for $\texttt{rank}_0/\texttt{rank}_1/\texttt{select}_0$ and updates, and $\mathcal{O}({\log_w(n)})$ time for $\texttt{select}_1$. All time bounds are worst-case. For $\epsilon={1/\sqrt{\operatorname{lg} w}}$, we reduce the space to $\operatorname{lg}\binom{u}{n}+\mathcal{O}(n\log w)$ bits. For $\epsilon=\Theta(1)$, the running time matches the lower bound of Fredman and Saks [STOC 1989]. This is the first deterministic dynamic FID in the standard Word-RAM model that achieves $o(n\sqrt{w})$ bits of redundancy in $\mathcal{M}_B$ (e.g., $\epsilon=1/4$), and optimal worst-case time.

Explore related subjects

Keep this discovery

Explore connections, maps & timelines

BibTeXRIS

Gabriel Marques Domingues. 2026-03-24. Compressing Dynamic Fully Indexable Dictionaries in Word-RAM. https://arxiv.org/abs/2603.23119

Cite the original work for its findings. Save a collection to share your selection of sources.

KEEP EXPLORING

Related papers

Quasi-Monte Carlo Beyond Hardy-Krause II: $(1 + \varepsilon)n$ Samples Suffice

Numerical integration studies how well one can estimate the integral of a function $f$ over $[0,1)^d$ using $n$ sample points. The two classical methods, Monte Carlo (MC) and quasi-Monte Carlo (QMC), have complementary strengths and weaknesses, and a fundamental question is to design an approach that combines the benefits of both. Recently, building on the transference principle in discrepancy theory, Bansal and Jiang~\cite{BJ25a} gave a randomized QMC method that bridges MC and QMC guarantees using only i.i.d.\ samples. Their method also goes beyond the classical Koksma--Hlawka inequality: it achieves integration error $\widetilde{O}_d(\sigma_{\mathsf{SO}}(f)/n)$, where the smoothed-out variation $\sigma_{\mathsf{SO}}(f)$ can be substantially smaller than the Hardy--Krause variation that governs the classical bound. However, their algorithm requires $n^2$ i.i.d.\ samples as input, and this quadratic blowup is inherent to any method based on the transference principle. In this work, we bypass the quadratic blowup: for any constant $\varepsilon > 0$, we show that $(1+\varepsilon)n$ i.i.d.\ samples suffice to both obtain the beyond-Hardy--Krause guarantee of~\cite{BJ25a}, resolving an open problem posed there, and to produce low-discrepancy point sequences. Our algorithms are variants of the online Haar-thinning method of Dwivedi, Feldheim, Gurel-Gurevich, and Ramdas~\cite{DFG+19}.

cs.DS

Single-Exponential Algorithms and a Polynomial Kernel for Strong Connectivity Augmentation

Strong Connectivity Augmentation (SCA) asks whether a directed acyclic graph can be made strongly connected by adding at most $k$ prescribed links whose total weight is within a given budget. Klinkby, Misra, and Saurabh (SODA 2021) gave an $O^*(2^{O(k\log k)})$-time algorithm and asked whether the problem admits a single-exponential parameterized algorithm and a polynomial kernel. We answer both questions affirmatively: SCA can be solved in $O^*(9^k)$ time and admits a polynomial kernel with $O(k^4)$ vertices and $O(k^{16})$ bits. For unweighted SCA, we obtain $O^*(4^k)$ time and a kernel with $O(k^3)$ vertices. Our algorithms are based on a particularly simple reduction to Strongly Connected Spanning Subgraph with two edge costs.

cs.DS