1 / 9

Uniform algorithms for deterministic construction of efficient dictionaries

Uniform algorithms for deterministic construction of efficient dictionaries. Milan Ružić IT University of Copenhagen Faculty of Mathematics University of Belgrade ESA 2004 / ARCO 2005 presentation. The dictionary problem. How to store a set S  U and answer inquires about membership:

gudrun
Télécharger la présentation

Uniform algorithms for deterministic construction of efficient dictionaries

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Uniform algorithms for deterministic construction of efficient dictionaries Milan Ružić IT University of Copenhagen Faculty of Mathematics University of Belgrade ESA 2004 / ARCO 2005 presentation

  2. The dictionary problem • How to store a set S  Uand answer inquires about membership: “is xS?”. • In the dynamic dictionary problem, Smay change over time. • Conditions: • Compute on a unit-cost RAM with word length wand a standard instruction set, including multiplication and division. • Finite universe U  {0,1}w . • Use space linear in n  | S | .

  3. Randomized solutions • Started with a static dictionary with O(n) expected construction time, using (nw)random bits [Fredman, Komolós, Szmerédi ‘82]. • Reached a dynamic dictionary with: • Constant search time. • Constant update time with probability O(1 – n-c). • Use of only O(log n + log w) random bits. [Dietzfelbinger et al ’92] • However, what if: • random bits are not easily available, or • performance without a guarantee is unacceptable?

  4. Deterministic dictionaries with fast lookups

  5. The family of hash functions • Viewing the problem in a continuous setting - HR . • A sufficient condition for avoiding collisions :

  6. The set of good parameters • The set of multipliers which generate less than m collisions on the set ofsdifferences has the measure of at least • We can calculate the measures with numbers of bounded precision. • The set of “good” parameters contains sufficiently large intervals – that is, there are “good” multipliers which can be represented by a constant number of machine words.

  7. Finding a good function • Problem: Given a set of s differences, deterministically find a multiplier a which produces less than m colliding differences. • Not all differences need to be explicitly stored in memory. • We use bit by bit construction – sometimes several consecutive bits are set at once. • Choosing a bit is equivalent to choosing a half of a working interval. • Key observation: sets with relatively small support intervals are insignificant to current choice.

  8. Three classes of differences • The recurrence for measure estimates: 1(p+1) + 2(p+1) + E(p+1) (p) + E(p) • Several bits are chosen at once when Dmid. • O(w) term represents the total cost of finding the leftmost bits of keys.

  9. Reducing the construction time • We employ multi-level hashing scheme. The number of levels can be set by adjusting the parameters m and s. • The structure of the set of differences: • In the case of O(1) lookup time we set nkn, m  4n and r n. • Note on evaluation: When input consists of multi-word keys, full multiplication is usually not necessary.

More Related