In extractor theory, a randomness merger is a function which extracts randomness out of a set of random variables, provided that at least one of them is uniformly random. Its name stems from the fact that it can be seen as a procedure which "merges" all the variables into one, preserving at least some of the entropy contained in the uniformly random variable. Mergers are currently used in order to explicitly construct randomness extractors.
Consider a set of random variables, , each distributed over at least one of which is uniformly random; but it is not known which one. Furthermore, the variables may be arbitrarily correlated: they may be functions of one another, they may be constant, and so on. However, since at least one of them is uniform, the set as a whole contains at least bits of entropy.
The job of the merger is to output a new random variable, also distributed over , that retains as much of that entropy as possible. Ideally, if it were known which of the variables is uniform, it could be used as the output, but that information is not known. The idea behind mergers is that by using a small additional random seed, it is possible to get a good result even without knowing which one is the uniform variable.
A naive idea would be to take the xor of all the variables. If one of them is uniformly distributed and independent of the other variables, then the output would be uniform. However, if suppose , and both of them are uniformly distributed, then the method would not work.
Definition (merger):
A function is called an -merger if for every set of random variables distributed over , at least one of which is uniform, the distribution of has smooth min-entropy . The variable denotes the uniform distribution over bits, and represents a truly random seed.
In other words, by using a small uniform seed of length , the merger returns a string which is -close to having at least min-entropy; this means that its statistical distance from a string with min-entropy is no larger than .
Reminder: There are several notions of measuring the randomness of a distribution; the min-entropy of a random variable is defined as the largest such that the most probable value of occurs with probability no more than . The min-entropy of a string is an upper bound to the amount of randomness that can be extracted from it. [1]
There are three parameters to optimize when building mergers:
Explicit constructions for mergers are known with relatively good parameters. For example, Dvir and Wigderson's construction gives:[2] For every and integer , if , there exists an explicit -merger such that:
The proof is constructive and allows building such a merger in polynomial time in the given parameters.
It is possible to use mergers in order to produce randomness extractors with good parameters. Recall that an extractor is a function which takes a random variable that has high min-entropy, and returns a smaller random variable, but one that is close to uniform. An arbitrary min-entropy extractor can be obtained using the following merger-based scheme:[2][3]
The essence of the scheme above is to use the merger in order to transform a string with arbitrary min-entropy into a smaller string, while not losing a lot of min-entropy in the process. This new string has very high min-entropy compared to its length, and it's then possible to use older, known, extractors which only work for those type of strings.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) Section 2.2.