Pseudo-random Graphs and Bit Probe Schemes with One-Sided Error

We study probabilistic bit-probe schemes for the membership problem. Given a set A of at most n elements from the universe of size m we organize such a structure that queries of type "x ∈ A?" can be answered very quickly. H. Buhrman, P.B. Miltersen, J. Radhakrishnan, and S. Venkatesh proposed a bit-probe scheme based on expanders. Their scheme needs space of O(n log m) bits, and requires to read only one randomly chosen bit from the memory to answer a query. The answer is correct with probability 2/3 with two-sided errors. In this paper we show that for the same problem there exists a bitprobe scheme with one-sided error that needs space of O(n log2m + poly(logm)) bits. The difference with the model of Buhrman, Miltersen, Radhakrishnan, and Venkatesh is that we consider a bit-probe scheme with an auxiliary word. This means that in our scheme the memory is split into two parts of different size: the main storage of O(n log2m) bits and a short word of logO(1) m bits that is pre-computed once for the stored set A and "cached". To answer a query "x e A?" we allow to read the whole cached word and only one bit from the main storage. For some reasonable values of parameters (e.g., for poly(log m) ≪ n ≪ m) our space bound is better than what can be achieved by any scheme without cached data (the lower bound Ω(n2 log m/log n) was proven in [11]). We obtain a slightly weaker result (space of size n1+δpoly(logm) bits and two bit probes for every query) for a scheme that is effectively encodable. Our construction is based on the idea of naive derandomization, which is of independent interest. First we prove that a random combinatorial object (a graph) has the required properties, and then show that such a graph can be obtained as an outcome of a pseudo-random generator. Thus, a suitable graph can be specified by a short seed of a PRG, and we can put an appropriate value of the seed into the cache memory of the scheme.

[1]  Venkatesan Guruswami,et al.  Unbalanced expanders and randomness extractors from Parvaresh--Vardy codes , 2009, JACM.

[2]  Peter Bro Miltersen,et al.  Are Bitvectors Optimal? , 2002, SIAM J. Comput..

[3]  Rasmus Pagh Low Redundancy in Static Dictionaries with O(1) Worst Case Lookup Time , 1999, ICALP.

[4]  Amos Fiat,et al.  Non-oblivious hashing , 1988, STOC '88.

[5]  Noam Nisan,et al.  Pseudorandom generators for space-bounded computation , 1992, Comb..

[6]  Luca Trevisan,et al.  Construction of extractors using pseudo-random generators (extended abstract) , 1999, STOC '99.

[7]  P. Erdös,et al.  Families of finite sets in which no set is covered by the union ofr others , 1985 .

[8]  Burton H. Bloom,et al.  Space/time trade-offs in hash coding with allowable errors , 1970, CACM.

[9]  Rasmus Pagh,et al.  On the cell probe complexity of membership and perfect hashing , 2001, STOC '01.

[10]  Avi Wigderson,et al.  Randomness conductors and constant-degree lossless expanders , 2002, STOC '02.

[11]  J. Ian Munro,et al.  Membership in Constant Time and Minimum Space , 1994, ESA.

[12]  Noam Nisan,et al.  Pseudorandom generators for space-bounded computations , 1990, STOC '90.

[13]  Daniel M. Kane,et al.  Bounded Independence Fools Degree-2 Threshold Functions , 2010, 2010 IEEE 51st Annual Symposium on Foundations of Computer Science.

[14]  Ran Raz,et al.  Extracting all the randomness and reducing the error in Trevisan's extractors , 1999, STOC '99.

[15]  J. Ian Munro,et al.  Membership in Constant Time and Almost-Minimum Space , 1999, SIAM J. Comput..

[16]  N. Linial,et al.  Expander Graphs and their Applications , 2006 .

[17]  Alan Siegel,et al.  On Universal Classes of Extremely Random Constant-Time Hash Functions , 1995, SIAM J. Comput..

[18]  Periklis A. Papakonstantinou,et al.  How strong is Nisanʼs pseudo-random generator? , 2011, Inf. Process. Lett..

[19]  Daniil Musatov Theorems about space-bounded Kolmogorov complexity obtained by "naive" derandomization , 2010, ArXiv.

[20]  János Komlós,et al.  Storing a sparse table with O(1) worst case access time , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[21]  Jeffrey Scott Vitter,et al.  Algorithms and Data Structures for External Memory , 2008, Found. Trends Theor. Comput. Sci..

[22]  Alexander Vardy,et al.  Correcting errors beyond the Guruswami-Sudan radius in polynomial time , 2005, 46th Annual IEEE Symposium on Foundations of Computer Science (FOCS'05).

[23]  Noam Nisan,et al.  Hardness vs Randomness , 1994, J. Comput. Syst. Sci..

[24]  Nabil Kahale,et al.  Eigenvalues and expansion of regular graphs , 1995, JACM.

[25]  Amnon Ta-Shma,et al.  Storing information with extractors , 2002, Inf. Process. Lett..

[26]  Rasmus Pagh,et al.  Cuckoo Hashing , 2001, Encyclopedia of Algorithms.

[27]  Pat Morin,et al.  Cuckoo hashing: Further analysis , 2003, Inf. Process. Lett..

[28]  Johan Håstad,et al.  Almost optimal lower bounds for small depth circuits , 1986, STOC '86.

[29]  Moni Naor,et al.  De-amortized Cuckoo Hashing: Provable Worst-Case Performance and Experimental Results , 2009, ICALP.

[30]  D. Sivakumar Algorithmic derandomization via complexity theory , 2002, STOC '02.

[31]  Amnon Ta-Shma,et al.  Loss-less condensers, unbalanced expanders, and extractors , 2001, STOC '01.

[32]  Alan Siegel,et al.  On universal classes of fast high performance hash functions, their time-space tradeoff, and their applications , 1989, 30th Annual Symposium on Foundations of Computer Science.

[33]  Uzi Vishkin,et al.  Constant Depth Reducibility , 1984, SIAM J. Comput..

[34]  Anna Pagh,et al.  One-Probe Search , 2002, ICALP.

[35]  Mark Braverman Poly-logarithmic Independence Fools AC0 Circuits , 2009, Computational Complexity Conference.

[36]  Amos Fiat,et al.  Nonoblivious hashing , 1992, JACM.

[37]  Jeffrey Scott Vitter,et al.  External memory algorithms and data structures: dealing with massive data , 2001, CSUR.