Symmetric functions and majority #
Symmetry means that the output depends only on Hamming weight. Majority uses the convention in Lecomte and Ramakrishnan's paper: ties are accepted. This differs from the strict-majority function used for error amplification.
A symmetric Boolean function is constant on each Hamming-weight level.
Equations
- Complexity.Shallow.Symmetric f = ∀ (x y : Fin n → Bool), Complexity.Shallow.weight x = Complexity.Shallow.weight y → f x = f y
Instances For
Majority with ties accepted, as in the source paper. Unlike the strict
Complexity.majority (2 · popCount > k) used for error amplification and the
Karchmer–Wigderson majority bounds, a tie (n = 2 · weight x) returns true.
Equations
Instances For
Majority depends only on Hamming weight.