Succinct Data Structures for Retrieval and Approximate Membership

Martin Dietzfelbinger, Rasmus Pagh

    Publikation: Artikel i tidsskrift og konference artikel i tidsskriftKonferenceartikelForskningpeer review

    Abstract

    The retrieval problem is the problem of associating data with keys in a set. Formally, the data structure must store a function that has specified values on the elements of a given set S ⊆ U, |S| = n, but may have any value on elements outside S. All known methods (e. g. those based on perfect hash functions), induce a space overhead of Θ(n) bits over the optimum, regardless of the evaluation time. We show that for any k, query time O(k) can be achieved using space that is within a factor 1 + e − k of optimal, asymptotically for large n. The time to construct the data structure is O(n), expected. If we allow logarithmic evaluation time, the additive overhead can be reduced to O(loglogn) bits whp. A general reduction transfers the results on retrieval into analogous results on approximate membership, a problem traditionally addressed using Bloom filters. Thus we obtain space bounds arbitrarily close to the lower bound for this problem as well. The evaluation procedures of our data structures are extremely simple. For the results stated above we assume free access to fully random hash functions. This assumption can be justified using space o(n) to simulate full randomness on a RAM.
    OriginalsprogEngelsk
    BogserieLecture Notes in Computer Science
    Sider (fra-til)385-396
    Antal sider12
    ISSN0302-9743
    DOI
    StatusUdgivet - 2008
    BegivenhedICALP 2008 35th International Colloquium on Automata, Languages and Programming - Reykjavik, Island
    Varighed: 6 jul. 200813 jul. 2008
    Konferencens nummer: 35

    Konference

    KonferenceICALP 2008 35th International Colloquium on Automata, Languages and Programming
    Nummer35
    Land/OmrådeIsland
    ByReykjavik
    Periode06/07/200813/07/2008

    Emneord

    • retrieval problem
    • data structure
    • perfect hash functions
    • approximate membership
    • Bloom filters

    Citationsformater