Table of Contents
Fetching ...

Dynamic Range Minimum Queries on the Ultra-Wide Word RAM

Philip Bille, Inge Li Gørtz, Tord Stordalen, Máximo Pérez López

TL;DR

This work studies dynamic range minimum queries on the ultra-wide word RAM (UWRAM), a model that augments the classic word RAM with ultrawords of length $w^2$ and scattered memory access to emulate vector hardware. The authors achieve an exponential improvement over prior bounds by reducing dynamic RMQ to fast prefix-minimum computations on word sequences of length $O(w)$ and proving a novel $O(\log \log \ell)$-time prefix-min algorithm via a recursive, parallel approach built atop a range minimum tree. The resulting data structure is linear in space and supports $\mathsf{rmq}$ and $\mathsf{update}$ in $O(\log \log \log n)$ time, with a space-efficient variant based on block decomposition. This combination of a range-minimum-tree framework, prefix-min reductions, and UWRAM primitives suggests practical potential for vector-enabled hardware and raises open questions about optimality and extensions to fully dynamic updates.

Abstract

We consider the dynamic range minimum problem on the ultra-wide word RAM model of computation. This model extends the classic $w$-bit word RAM model with special ultrawords of length $w^2$ bits that support standard arithmetic and boolean operation and scattered memory access operations that can access $w$ (non-contiguous) locations in memory. The ultra-wide word RAM model captures (and idealizes) modern vector processor architectures. Our main result is a linear space data structure that supports range minimum queries and updates in $O(\log \log \log n)$ time. This exponentially improves the time of existing techniques. Our result is based on a simple reduction to prefix minimum computations on sequences $O(\log n)$ words combined with a new parallel, recursive implementation of these.

Dynamic Range Minimum Queries on the Ultra-Wide Word RAM

TL;DR

This work studies dynamic range minimum queries on the ultra-wide word RAM (UWRAM), a model that augments the classic word RAM with ultrawords of length and scattered memory access to emulate vector hardware. The authors achieve an exponential improvement over prior bounds by reducing dynamic RMQ to fast prefix-minimum computations on word sequences of length and proving a novel -time prefix-min algorithm via a recursive, parallel approach built atop a range minimum tree. The resulting data structure is linear in space and supports and in time, with a space-efficient variant based on block decomposition. This combination of a range-minimum-tree framework, prefix-min reductions, and UWRAM primitives suggests practical potential for vector-enabled hardware and raises open questions about optimality and extensions to fully dynamic updates.

Abstract

We consider the dynamic range minimum problem on the ultra-wide word RAM model of computation. This model extends the classic -bit word RAM model with special ultrawords of length bits that support standard arithmetic and boolean operation and scattered memory access operations that can access (non-contiguous) locations in memory. The ultra-wide word RAM model captures (and idealizes) modern vector processor architectures. Our main result is a linear space data structure that supports range minimum queries and updates in time. This exponentially improves the time of existing techniques. Our result is based on a simple reduction to prefix minimum computations on sequences words combined with a new parallel, recursive implementation of these.

Paper Structure

This paper contains 27 sections, 7 theorems, 10 equations, 5 figures.

Key Result

Theorem 1

Given an array $A$ of $n$$w$-bit integers, we can construct an $O(n)$ space data structure in $O(n)$ time on the UWRAM that supports $\mathsf{rmq}$ and $\mathsf{update}$ in $O(\log \log \log n)$ time.

Figures (5)

  • Figure 1: The layout of a word sequence $X$.
  • Figure 2: An example array $A$, with its range minimum tree. For a query $\mathsf{rmq}(1, 12)$, we illustrate with grey circles the right sequence vertices of $i=1$ and the left sequence vertices of $j=12$ of depth greater than $d+1 = 1$.
  • Figure 3: Illustration of an $\mathsf{update}(5,\alpha)$ query. We draw with grey circles the off-path sequence vertices. Note how the value of $v_{10}$ should be $\min(v_{20}, \alpha)$, the value of $v_5$ should be $\min(v_{10}, v_{11})=\min(v_{11}, v_{20}, \alpha)$, and the value of $v_2$ should be $\min(v_4, v_5)=\min(v_4, v_{11}, v_{20}, \alpha)$, and so on. These values are the prefix minimum of the grey vertices and $\alpha$.
  • Figure 4: Our prefix minimum algorithm, for $w=16$ and a word sequence of length $4$.
  • Figure 5: Illustration of Step 2 of Section 5.2: computing the $16$-way prefix minimum of a word sequence $X$, given the $4$-way prefix minimum of $X$ in $X^b$. Note that $\widehat{B}^b$ is shifted left by $b$ words.

Theorems & Definitions (7)

  • Theorem 1
  • Theorem 2
  • Lemma 3
  • Corollary 4
  • Lemma 5
  • Theorem 6
  • Theorem 7