Balanced Boolean function

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

In mathematics and computer science, a balanced Boolean function is a Boolean function whose output yields as many 0s as 1s over its input set. This means that for a uniformly random input string of bits, the probability of getting a 1 is 1/2.[1]Template:R/superscript

Examples

Examples of balanced Boolean functions are the majority function,[1]Template:R/superscript the "dictatorship function" that copies the first bit of its input to the output,[1]Template:R/superscript and the parity check function that produces the exclusive or of the input bits.[2]Template:R/superscript

If f is a bent function on n bits, and α is any nonzero vector of n bits, then the function that maps x to f(x)f(xα) is balanced. The bent functions are exactly the functions for which this is true, for all nonzero choices of α.[3]Template:R/superscript

The dictatorship function can be evaluated after examining only a single bit of the input, but that bit must always be examined. Benjamini, Schramm, and Wilson describe a more complex example based on percolation theory with the property that a randomized Las Vegas algorithm can compute the function exactly while ensuring that the probability of reading any particular input bit is small, roughly inversely proportional to the square root of the number of bits.[1]Template:R/superscript

Application

Balanced Boolean functions are used in cryptography, where being balanced is one of "the most important criteria for cryptographically strong Boolean functions".[3]Template:R/superscript If a function is not balanced, it will have a statistical bias, making it subject to cryptanalysis such as the correlation attack.

References

<templatestyles src="Reflist/styles.css" />

  1. a b c d Script error: No such module "citation/CS1".
  2. Script error: No such module "citation/CS1".
  3. a b Script error: No such module "citation/CS1".

Script error: No such module "Check for unknown parameters".