Membership in Constant Time and Almost-Minimum Space

  title={Membership in Constant Time and Almost-Minimum Space},
  author={Andrej Brodnik and J. Ian Munro},
  journal={SIAM J. Comput.},
This paper deals with the problem of storing a subset of elements from the bounded universe $\mathcal{M} = \{0, \ldots, M-1\}$ so that membership queries can be performed efficiently. In particular, we introduce a data structure to represent a subset of $N$ elements of $\mathcal{M}$ in a number of bits close to the information-theoretic minimum, $B = \left\lceil \lg {M\choose N} \right\rceil$, and use the structure to answer membership queries in constant time. 

Tables from this paper

Space-Efficient Data Structures for Lattices
New data structures for lattices that are simple, efficient, and nearly optimal in terms of space complexity are presented and an error in a long-standing solution to the problem of representing lattices is identified.
A Dynamic Space-Efficient Filter with Constant Time Operations
This work presents the first space-efficient dynamic filter with constant time operations in the worst case and employs the classic reduction of Carter et al. (STOC 1978) on a new type of dictionary construction that supports random multisets.
Succinct Approximate Rank Queries
This paper yields the first sub linear space algorithm that computes approximate sliding window sums in $O(1)$ time, where the window size is given at the query time; additionally, it requires only $(1+o(1))$ more space than is needed for a fixed window size.
Low Redundancy in Static Dictionaries with Constant Query Time
  • R. Pagh
  • Computer Science
    SIAM J. Comput.
  • 2001
It is shown that on a unit cost RAM with word size $\Theta(\log |U|)$, a static dictionary for n-element sets with constant worst case query time can be obtained using B+O(n) bits of storage, where $B=\ceiling{\log_2\binom{|U|}{n}}$ is the minimum number of bits needed to represent all n- element subsets of U.
More Haste, Less Waste: Lowering the Redundancy in Fully Indexable Dictionaries
We consider the problem of representing, in a compressed format, a bit-vector~$S$ of $m$ bits with $n$ $\mathbf{1}$s, supporting the following operations, where $b \in \{ \mathbf{0}, \mathbf{1} \}$:
A Simple, Fast, and Compact Static Dictionary
A new static dictionary that is very fast and compact, while also extremely easy to implement is presented, and a space bound is proved with a novel application of the Kolmogorov-Smirnov distribution.
Explicit Deterministic Constructions for Membership in the Bitprobe Model
Several deterministic upper bounds are shown for the case when the number of bit probes, is small, by explicit constructions, culminating in one that uses o(m) bits of space where membership can be determined with «lg lg n» + 2 adaptive bit probes.
Succinct Choice Dictionaries
The choice dictionary is introduced as a data structure that can be initialized with a parameter $n\in\mathbb{N}=\{1,2,\ldots\}$ and subsequently maintains an initially empty subset $S$ of
On the Succinct Representation of Unlabeled Permutations
Succinct data structures for the problem of succinctly representing an arbitrary unlabeled permutation, so that \(\pi ^k(i) can be computed quickly for any i and any integer power k, are investigated.
Fast permutation-word multiplication and the simultaneous conjugacy problem
It is shown that the above product can be computed in time $O(\min{\{ n m, n m \log d / \log m\}})$ using $O(m + n m^{\epsilon})$ space, where $0 < \epsil on < 1$.


Searching in constant time and minimum space
A data structure is introduced to represent a subset of N elements of $\lbrack0,\...,M-1\rbrack$ in a number of bits close to the information-theoretic minimum and use the structure to answer membership queries in constant time.
The Spatial Complexity of Oblivious k-Probe Hash Functions
Nearly tight bounds on the spatial complexity of oblivious $O(1)$-probe hash functions, which are defined to depend solely on their search key argument are provided, establishing a significant gap between oblivious and nonoblivious search.
Membership in Constant Time and Minimum Space
We investigate the problem of storing a subset of the elements of a bounded universe so that searches can be performed in constant time and the space used is within a constant factor of the minimum
Should tables be sorted?
  • A. Yao
  • Computer Science
    19th Annual Symposium on Foundations of Computer Science (sfcs 1978)
  • 1978
It is shown that, in a rather general model including al1 the commonly-used schemes, $\lceil $ lg(n+l) $\rceil$ probes to the table are needed in the worst case, provided the key space is sufficiently large.
The program complexity of searching a table
  • Harry G. Mairson
  • Computer Science
    24th Annual Symposium on Foundations of Computer Science (sfcs 1983)
  • 1983
Under a model combining perfect hashing and binary search methods, it is shown that for k probes to the table, nk/2k+1(1 + o(1)) bits are necessary and sufficient to describe a table searching algorithm.
Dynamic perfect hashing: upper and lower bounds
An Omega (log n) lower bound is proved for the amortized worst-case time complexity of any deterministic algorithm in a class of algorithms encompassing realistic hashing-based schemes.
The Complexity of Some Simple Retrieval Problems
The cost of a complete updating algorithm is taken to be the number of bits it reads and/or writes in updating the representation of a data base, and lower bounds to measures of this cost are cited.
Storing a sparse table with O(1) worst case access time
A data structure for representing a set of n items from a universe of m items, which uses space n+o(n) and accommodates membership queries in constant time and is easy to implement.
Efficient Storage and Retrieval by Content and Address of Static Files
Firm lower bounds are given to minimax measures of bits stored and bits accessed for each of four retrieval questions, and representations and algorithms for a bit-addressable machine which come within factors of two or three of attaining all four bounds at once for files of any size.
Storing a sparse table
This work proposes a good worst-case method for storing a static table of n entries, each an integer between 0 and N - 1, and analysis shows why a simpler algorithm used for compressing LR parsing tables works so well.