Nearly Optimal Static Las Vegas Succinct Dictionary

11/04/2019
by   Huacheng Yu, et al.
0

Given a set S of n (distinct) keys from key space [U], each associated with a value from Σ, the static dictionary problem asks to preprocess these (key, value) pairs into a data structure, supporting value-retrieval queries: for any given x∈ [U], valRet(x) must return the value associated with x if x∈ S, or return if x∉ S. The special case where |Σ|=1 is called the membership problem. The "textbook" solution is to use a hash table, which occupies linear space and answers each query in constant time. On the other hand, the minimum possible space to encode all (key, value) pairs is only OPT:= _2Un+n_2|Σ| bits, which could be much less. In this paper, we design a randomized dictionary data structure using OPT+poly n+O( U) bits of space, and it has expected constant query time, assuming the query algorithm can access an external lookup table of size n^0.001. The lookup table depends only on U, n and |Σ|, and not the input. Previously, even for membership queries and U≤ n^O(1), the best known data structure with constant query time requires OPT+n/poly n bits of space (Pagh [Pag01] and Pǎtraşcu [Pat08]); the best-known using OPT+n^0.999 space has query time O( n); the only known non-trivial data structure with OPT+n^0.001 space has O( n) query time and requires a lookup table of size ≥ n^2.99 (!). Our new data structure answers open questions by Pǎtraşcu and Thorup [Pat08,Tho13].

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/13/2020

Lower Bound for Succinct Range Minimum Query

Given an integer array A[1..n], the Range Minimum Query problem (RMQ) as...
research
01/23/2018

Finding Pairwise Intersections of Rectangles in a Query Rectangle

We consider the following problem: Preprocess a set S of n axis-parallel...
research
02/11/2023

A Simple Data Structure for Maintaining a Discrete Probability Distribution

We revisit the following problem: given a set of indices S = {1, …, n} a...
research
03/22/2015

Construction of FuzzyFind Dictionary using Golay Coding Transformation for Searching Applications

Searching through a large volume of data is very critical for companies,...
research
03/01/2019

Superseding traditional indexes by orchestrating learning and geometry

We design the first learned index that solves the dictionary problem wit...
research
05/05/2020

A Space-Efficient Dynamic Dictionary for Multisets with Constant Time Operations

We consider the dynamic dictionary problem for multisets. Given an upper...
research
07/19/2019

3SUM with Preprocessing: Algorithms, Lower Bounds and Cryptographic Applications

Given a set of integers {a_1, ..., a_N}, the 3SUM problem requires findi...

Please sign up or login with your details

Forgot password? Click here to reset