1 / 18

Paper Talk: “Extracting Randomness: How and Why. A survey,” by Noam Nisan

Paper Talk: “Extracting Randomness: How and Why. A survey,” by Noam Nisan. Albert Boggess. Randomized Algorithms. Can solve problems for which there are no known deterministic algorithms Often simpler than deterministic equivalents. Generating Randomness.

glenda
Download Presentation

Paper Talk: “Extracting Randomness: How and Why. A survey,” by Noam Nisan

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. Paper Talk: “Extracting Randomness: How and Why. A survey,” by Noam Nisan Albert Boggess

  2. Randomized Algorithms • Can solve problems for which there are no known deterministic algorithms • Often simpler than deterministic equivalents

  3. Generating Randomness • Pseudo-random number generators are not sufficient • True randomness? • Physical source can provide some true randomness • Dispersers and extractors

  4. Dispersers and Extractors • The goal is to “convert a somewhat random distribution into an almost random distribution” by adding a small number of truly random bits. • Can be represented as either graphs or functions

  5. Definitions • Probability distribution X over finite space A: • X(a) ≥ 0 for all a in A • ∑aX(a) = 1 • Statistical distance between two probability distributions: • d(X, Y) = (½)∑a|X(a) – Y(a)| • X is e-close to Y if d(X, Y) ≤ e • Min-Entropy of a distribution: • H∞(X) = mina{-log2(X(a))}

  6. Extractors and Dispersers Graph • A type of bipartite graph where: • Left set [N] contains N = 2n vertices and right set [M] contains M = 2m vertices. Typically n > m. • Vertices are numbered by binary integers: • N = {1…N} = {0,1}n • M = {1…M} = {0,1}m • All vertices in the left set have the same degree D = 2d.

  7. Extractors and Dispersers Graph • Given a graph G = ([N], [M], E), the neighbor set of a vertex a in [N] is defined as T(a) = {z in [M] | (a,z) is in E}. • For a probability distribution X, T(X) is the probability distribution induced on [M] by choosing an a in [N] according to X, and then choosing a random neighbor z in T(a).

  8. Dispersers and Extractors Graph • Disperser: • G = ([N], [M], E) is a (k, e)-disperser if for all A in [N] where |A| ≥ K = 2k, |T(A)| ≥ (1 – e)M. • Extractor: • G = ([N], [M], E) is a (k, e)-extractor if for any distribution X with H∞(X) ≥ k, T(x) is e-close to uniform on [M]. • Any (k, e)-extractor is a (k, e)-disperser.

  9. Dispersers and Extractors Function • Given integer sets [N], [M],and [D], the function is defined as G : [N] x [D]  [M]. • T(x) = {z = G(x, y) | x is in [N], y is in [D]} • T(X) is the distribution of G(x, y) induced by choosing x according to distribution X and y uniformly in [D].

  10. Extractors and Dispersers Function • Disperser: • G : [N] x [D]  [M] is called a (k, e)-disperser if for any A in [N] where |A| ≥ K = 2k, |T(A)| ≥ (1 – e)M. • Extractor: • G : [N] x [D]  [M] is called a (k, e)-extractor if for any distribution X on [N] where H∞(X) ≥ k, T(X) is e-close to uniform.

  11. Goals • Minimize k, the amount of required “randomness” of the distribution on [N]. • Minimize e, the error. • Minimize d, the number of truly random bits required.

  12. Construction: Hashing • Hash functions can be used to construct extractors. • If H is a family of hash functions h : [N]  [L], then we say that H has collision error ∂ if P(h(a) = h(b)) ≤ (1 + ∂)/L • Given a family of hash functions H where h : [N]  [L], the extractor defined by H is G(x, h) = h(x)ºh. Therefore D = |H| and M = DL.

  13. Construction: Hashing • Given a family of hash functions H which map [N] to [L] and have collision error ∂, the extractor defined from H is a (k, e)-extractor where K = 2k = O(L/∂) and e = O(√∂).

  14. Construction: Hashing • Universal Hashing: • H = {h : [N]  [L]} where P(h(a) = x AND h(b) = y) = 1/L2 • Universal hash functions have 0 collision error. • For all 1 ≤ i ≤ n, there are universal hash function families of size |H| = poly(N). • d = O(n) • k = m – d + O(loge-1) • d is much too high.

  15. Construction: Hashing • Tiny families of hash functions: • We don’t require 0 collision error, just small collision error. • For all 1 ≤ i ≤ L ≤ N and e > 0, there exist families of hash functions that map [N] to [L] that have collision error e, and size |H| = poly(n,e,L). • This translates to (k, e)-extractors with D = poly(n,e,M) and k = m – d + O(loge-1)

  16. Composing Extractors • Can be composed by using the output of one extractor as the input of another. G1(x1, G2(x2 ,y)). • Only holds if X and X are independent. • (X1,X2) is a block-wise source if: • H∞(X1) ≥ k1 • H∞(X2 | X1 = x1) ≥ k2

  17. Reference Noam Nisan, “Extracting Randomness: How and Why A survey,” Proceedings of Computation Complexity 1996.

  18. Known Results

More Related