Analysis of Boolean Functions in Lean

6.1. Notions of pseudorandomness🔗

Proposition6.1.1
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Definition 6.1.2
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
uses 1
Used by 3
Reverse dependency previews
Preview
Lemma 6.1.4
Loading preview
Reverse dependency preview content is loaded from the rendered-fragment cache.
L∃∀N

Proposition 6.1. Let n>1 and let f:\{-1,1\}^n\to\{0,1\} be a p-biased random function: independently for every x\in\{-1,1\}^n, f(x)=1 with probability p and f(x)=0 with probability 1-p. Except with probability at most 2^{-n}, both \left|\widehat f(\varnothing)-p\right| \le 2\sqrt n\,2^{-n/2} and \left|\widehat f(S)\right| \le 2\sqrt n\,2^{-n/2} \qquad\text{for every nonempty }S\subseteq[n] hold simultaneously.

Lean code for Proposition6.1.12 declarations
  • defdefined in FABL/Chapter06/Pseudorandomness/RandomFunctions.lean
    complete
    def FABL.pBiasedRandomFunctionPMF (n : ) (p : ) (hp : p  Set.Icc 0 1) :
      PMF (FABL.ZeroOneFunction n)
    def FABL.pBiasedRandomFunctionPMF (n : )
      (p : ) (hp : p  Set.Icc 0 1) :
      PMF (FABL.ZeroOneFunction n)
    The `p`-biased random-function law, with independent values at every cube input. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RandomFunctions.lean
    complete
    theorem FABL.measure_pBiasedRandomFunction_fourierFailure_le (n : )
      (hn : 1 < n) (p : ) (hp : p  Set.Icc 0 1) :
      (FABL.pBiasedRandomFunctionPMF n p hp).toMeasure.real
          {f |
            FABL.randomBooleanFourierThreshold n <
                |FABL.fourierCoeff f.toReal  - p| 
               S,
                S.Nonempty 
                  FABL.randomBooleanFourierThreshold n <
                    |FABL.fourierCoeff f.toReal S|} 
        2 ^ (-n)
    theorem FABL.measure_pBiasedRandomFunction_fourierFailure_le
      (n : ) (hn : 1 < n) (p : )
      (hp : p  Set.Icc 0 1) :
      (FABL.pBiasedRandomFunctionPMF n p
                hp).toMeasure.real
          {f |
            FABL.randomBooleanFourierThreshold
                  n <
                |FABL.fourierCoeff f.toReal
                       -
                    p| 
               S,
                S.Nonempty 
                  FABL.randomBooleanFourierThreshold
                      n <
                    |FABL.fourierCoeff
                        f.toReal S|} 
        2 ^ (-n)
    O'Donnell, Proposition 6.1: for a `p`-biased random zero-one function in dimension
    `n > 1`, the constant coefficient is close to `p` and every nonconstant coefficient is small,
    simultaneously except with probability at most `2⁻ⁿ`. 
Definition6.1.2
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
uses 1
Used by 7
Reverse dependency previews
Preview
Lemma 6.1.3
Loading preview
Reverse dependency preview content is loaded from the rendered-fragment cache.
L∃∀N

Definition 6.2. A function f:\{-1,1\}^n\to\mathbb R is \epsilon-regular (also called \epsilon-uniform) if |\widehat f(S)|\le\epsilon \qquad\text{for every nonempty }S\subseteq[n].

Lean code for Definition6.1.21 definition
  • defdefined in FABL/Chapter06/Pseudorandomness/Regularity.lean
    complete
    def FABL.IsFourierRegular {n : } (ε : ) (f : FABL.SignCube n  ) : Prop
    def FABL.IsFourierRegular {n : } (ε : )
      (f : FABL.SignCube n  ) : Prop
    A real-valued function is `ε`-regular when every nonconstant Fourier coefficient has
    absolute value at most `ε`. 
Lemma6.1.3
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 2
Statement dependency previews
Preview
Lemma 5.1.2
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
used by 0L∃∀N

Remark 6.3. Every f:\{-1,1\}^n\to\mathbb R is \lVert f\rVert_1-regular. When f takes values in [-1,1], the interesting range is therefore \epsilon\le1.

Lean code for Lemma6.1.31 theorem
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Regularity.lean
    complete
    theorem FABL.isFourierRegular_uniformLpNorm_one {n : }
      (f : FABL.SignCube n  ) :
      FABL.IsFourierRegular (FABL.uniformLpNorm 1 f) f
    theorem FABL.isFourierRegular_uniformLpNorm_one
      {n : } (f : FABL.SignCube n  ) :
      FABL.IsFourierRegular
        (FABL.uniformLpNorm 1 f) f
    Every function is regular with parameter its uniform `L¹` norm. 
Lemma6.1.4
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 5
Statement dependency previews
Preview
Proposition 3.2.9
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
used by 1L∃∀N

Example 6.4. A random p-biased function is 2\sqrt n\,2^{-n/2}-regular with probability at least 1-2^{-n}. A function is 0-regular exactly when it is constant. If A\subseteq\mathbb F_2^n is an affine subspace of codimension k, then \mathbf1_A is 2^{-k}-regular. For even n, the inner-product-mod-2 and complete-quadratic functions \operatorname{IP}_n,\operatorname{CQ}_n:\mathbb F_2^n\to\{0,1\} are 2^{-n/2-1}-regular. A nonconstant parity \chi_S is not \epsilon-regular for any \epsilon<1, while for odd n=2m+1, \operatorname{Maj}_{2m+1} is 1/\sqrt{2m+1}-regular.

Lean code for Lemma6.1.47 theorems
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RandomFunctions.lean
    complete
    theorem FABL.measure_pBiasedRandomFunction_not_isFourierRegular_le (n : )
      (hn : 1 < n) (p : ) (hp : p  Set.Icc 0 1) :
      (FABL.pBiasedRandomFunctionPMF n p hp).toMeasure.real
          {f |
            ¬FABL.IsFourierRegular (FABL.randomBooleanFourierThreshold n)
                f.toReal} 
        2 ^ (-n)
    theorem FABL.measure_pBiasedRandomFunction_not_isFourierRegular_le
      (n : ) (hn : 1 < n) (p : )
      (hp : p  Set.Icc 0 1) :
      (FABL.pBiasedRandomFunctionPMF n p
                hp).toMeasure.real
          {f |
            ¬FABL.IsFourierRegular
                (FABL.randomBooleanFourierThreshold
                  n)
                f.toReal} 
        2 ^ (-n)
    O'Donnell, Example 6.4 (first assertion): a `p`-biased random function fails
    `2 √n · 2⁻ⁿᐟ²`-regularity with probability at most `2⁻ⁿ`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Regularity.lean
    complete
    theorem FABL.isFourierRegular_zero_iff_exists_const {n : }
      (f : FABL.SignCube n  ) :
      FABL.IsFourierRegular 0 f   c, f = fun x => c
    theorem FABL.isFourierRegular_zero_iff_exists_const
      {n : } (f : FABL.SignCube n  ) :
      FABL.IsFourierRegular 0 f 
         c, f = fun x => c
    A function is zero-regular exactly when it is constant. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.isFourierRegular_setIndicator_binaryAffineSubspace_of_codimension
      {n : } (H : Submodule FABL.𝔽₂ (FABL.F₂Cube n)) (a : FABL.F₂Cube n)
      (k : ) (hcodim : FABL.f₂Codimension H = k) :
      FABL.IsFourierRegular (2 ^ k)⁻¹
        (FABL.binaryFunctionOnSignCube
          (FABL.setIndicator (FABL.binaryAffineSubspace H a)))
    theorem FABL.isFourierRegular_setIndicator_binaryAffineSubspace_of_codimension
      {n : }
      (H : Submodule FABL.𝔽₂ (FABL.F₂Cube n))
      (a : FABL.F₂Cube n) (k : )
      (hcodim : FABL.f₂Codimension H = k) :
      FABL.IsFourierRegular (2 ^ k)⁻¹
        (FABL.binaryFunctionOnSignCube
          (FABL.setIndicator
            (FABL.binaryAffineSubspace H a)))
    Example 6.4 in codimension form: an affine-subspace indicator of codimension `k` is
    `2⁻ᵏ`-regular. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.isFourierRegular_innerProductModTwo_zeroOne (m : ) :
      FABL.IsFourierRegular (2 ^ (m + 1))⁻¹
        (FABL.binaryFunctionOnSignCube
          (FABL.booleanRealEmbedding
            (FABL.booleanFunctionF₂Encoding
              (FABL.innerProductModTwoBoolean m))))
    theorem FABL.isFourierRegular_innerProductModTwo_zeroOne
      (m : ) :
      FABL.IsFourierRegular (2 ^ (m + 1))⁻¹
        (FABL.binaryFunctionOnSignCube
          (FABL.booleanRealEmbedding
            (FABL.booleanFunctionF₂Encoding
              (FABL.innerProductModTwoBoolean
                m))))
    The canonical zero-one encoding of `IP` on `2m` variables is `2⁻ᵐ⁻¹`-regular. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.isFourierRegular_completeQuadratic_zeroOne (n : ) (hn : Even n) :
      FABL.IsFourierRegular (2 ^ (n / 2 + 1))⁻¹
        (FABL.binaryFunctionOnSignCube
          (FABL.booleanRealEmbedding
            (FABL.booleanFunctionF₂Encoding
              (FABL.completeQuadraticBoolean n))))
    theorem FABL.isFourierRegular_completeQuadratic_zeroOne
      (n : ) (hn : Even n) :
      FABL.IsFourierRegular
        (2 ^ (n / 2 + 1))⁻¹
        (FABL.binaryFunctionOnSignCube
          (FABL.booleanRealEmbedding
            (FABL.booleanFunctionF₂Encoding
              (FABL.completeQuadraticBoolean
                n))))
    In even dimension, the canonical zero-one encoding of `CQ` is `2⁻ⁿᐟ²⁻¹`-regular. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.parityFunction_not_isFourierRegular_of_lt_one {n : }
      (S : Finset (Fin n)) (hS : S.Nonempty) {ε : } ( : ε < 1) :
      ¬FABL.IsFourierRegular ε (FABL.parityFunction S).toReal
    theorem FABL.parityFunction_not_isFourierRegular_of_lt_one
      {n : } (S : Finset (Fin n))
      (hS : S.Nonempty) {ε : } ( : ε < 1) :
      ¬FABL.IsFourierRegular ε
          (FABL.parityFunction S).toReal
    A nonconstant parity is not `ε`-regular for any `ε < 1`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.isFourierRegular_majority_odd (m : ) :
      FABL.IsFourierRegular (1 / (2 * m + 1))
        (FABL.majority (2 * m + 1)).toReal
    theorem FABL.isFourierRegular_majority_odd
      (m : ) :
      FABL.IsFourierRegular
        (1 / (2 * m + 1))
        (FABL.majority (2 * m + 1)).toReal
    Exercise 5.21 gives the `1 / √n` regularity assertion of Example 6.4 at every odd
    arity. 
Definition6.1.5
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 4
Statement dependency previews
Preview
Definition 1.5.1
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
Used by 14
Reverse dependency previews
Preview
Lemma 6.1.6
Loading preview
Reverse dependency preview content is loaded from the rendered-fragment cache.
L∃∀N

Definition 6.5. A probability density \varphi:\mathbb F_2^n\to\mathbb R_{\ge0} is an \epsilon-biased density if it is \epsilon-regular. Equivalently, \left|\mathbb E_{\boldsymbol x\sim\varphi}[\chi_\gamma(\boldsymbol x)]\right| \le\epsilon \qquad\text{for every }\gamma\in\widehat{\mathbb F_2^n}\setminus\{0\}. The marginal on every set of coordinates is again \epsilon-biased. If \varphi=\varphi_A=\mathbf1_A/\mathbb E[\mathbf1_A] for A\subseteq\mathbb F_2^n, then A is called an \epsilon-biased set.

Lean code for Definition6.1.56 declarations
  • defdefined in FABL/Chapter06/Pseudorandomness/SmallBias.lean
    complete
    def FABL.ProbabilityDensity.IsBiased {n : } (φ : FABL.ProbabilityDensity n)
      (ε : ) : Prop
    def FABL.ProbabilityDensity.IsBiased {n : }
      (φ : FABL.ProbabilityDensity n)
      (ε : ) : Prop
    O'Donnell, Definition 6.5: a density is `ε`-biased when every nontrivial
    vector-indexed Fourier coefficient has absolute value at most `ε`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/SmallBias.lean
    complete
    theorem FABL.ProbabilityDensity.isBiased_iff_expectation {n : }
      (φ : FABL.ProbabilityDensity n) (ε : ) :
      φ.IsBiased ε 
         (γ : FABL.F₂Cube n),
          γ  0 
            |φ.expectation fun x => (FABL.vectorWalshCharacter γ) x|  ε
    theorem FABL.ProbabilityDensity.isBiased_iff_expectation
      {n : } (φ : FABL.ProbabilityDensity n)
      (ε : ) :
      φ.IsBiased ε 
         (γ : FABL.F₂Cube n),
          γ  0 
            |φ.expectation fun x =>
                  (FABL.vectorWalshCharacter
                      γ)
                    x| 
              ε
    Small bias is equivalently a bound on every nontrivial parity expectation under the
    distribution induced by the density. 
  • defdefined in FABL/Chapter06/Pseudorandomness/SmallBiasMarginals.lean
    complete
    def FABL.coordinateProjectionLinear {n : } (J : Finset (Fin n)) :
      FABL.F₂Cube n →ₗ[FABL.𝔽₂] FABL.F₂Cube J.card
    def FABL.coordinateProjectionLinear {n : }
      (J : Finset (Fin n)) :
      FABL.F₂Cube n →ₗ[FABL.𝔽₂]
        FABL.F₂Cube J.card
    Restriction to the coordinates in `J`, canonically enumerated by `Fin J.card`. 
  • defdefined in FABL/Chapter06/Pseudorandomness/SmallBiasMarginals.lean
    complete
    def FABL.ProbabilityDensity.coordinateMarginal {n : }
      (φ : FABL.ProbabilityDensity n) (J : Finset (Fin n)) :
      FABL.ProbabilityDensity J.card
    def FABL.ProbabilityDensity.coordinateMarginal
      {n : } (φ : FABL.ProbabilityDensity n)
      (J : Finset (Fin n)) :
      FABL.ProbabilityDensity J.card
    The marginal density on the coordinates in `J`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/SmallBiasMarginals.lean
    complete
    theorem FABL.ProbabilityDensity.vectorFourierCoeff_coordinateMarginal {n : }
      (φ : FABL.ProbabilityDensity n) (J : Finset (Fin n))
      (γ : FABL.F₂Cube J.card) :
      FABL.vectorFourierCoeff (φ.coordinateMarginal J).toFun γ =
        FABL.vectorFourierCoeff φ.toFun (FABL.coordinateFrequencyLift J γ)
    theorem FABL.ProbabilityDensity.vectorFourierCoeff_coordinateMarginal
      {n : } (φ : FABL.ProbabilityDensity n)
      (J : Finset (Fin n))
      (γ : FABL.F₂Cube J.card) :
      FABL.vectorFourierCoeff
          (φ.coordinateMarginal J).toFun γ =
        FABL.vectorFourierCoeff φ.toFun
          (FABL.coordinateFrequencyLift J γ)
    Fourier coefficients of a coordinate marginal are the source coefficients at the lifted
    frequency. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/SmallBiasMarginals.lean
    complete
    theorem FABL.ProbabilityDensity.IsBiased.coordinateMarginal {n : }
      {φ : FABL.ProbabilityDensity n} {ε : } ( : φ.IsBiased ε)
      (J : Finset (Fin n)) : (φ.coordinateMarginal J).IsBiased ε
    theorem FABL.ProbabilityDensity.IsBiased.coordinateMarginal
      {n : } {φ : FABL.ProbabilityDensity n}
      {ε : } ( : φ.IsBiased ε)
      (J : Finset (Fin n)) :
      (φ.coordinateMarginal J).IsBiased ε
    O'Donnell, Definition 6.5: every coordinate marginal of an `ε`-biased density is
    again `ε`-biased. 
Lemma6.1.6
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 3
Statement dependency previews
Preview
Definition 1.5.3
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
used by 0L∃∀N

Example 6.6. Every probability density is 1-biased. The uniform density \varphi\equiv1 on \mathbb F_2^n is the only 0-biased density. If A is a proper affine subspace, then \varphi_A is not \epsilon-biased for any \epsilon<1.

The book next prints that the two-point set E=\{(0,\ldots,0),(1,\ldots,1)\} is 1/2-biased. This conflicts with Definition 6.5 and with the preceding affine-subspace statement. The corrected conclusion is: if n\ge2, choose a nonzero even-weight \gamma; then \mathbb E_{x\sim\varphi_E}[\chi_\gamma(x)]=1, so E is not \epsilon-biased for any \epsilon<1. For n=1, E=\mathbb F_2 and its density is 0-biased.

Lean code for Lemma6.1.65 theorems
  • theoremdefined in FABL/Chapter06/Pseudorandomness/SmallBias.lean
    complete
    theorem FABL.ProbabilityDensity.isBiased_one {n : }
      (φ : FABL.ProbabilityDensity n) : φ.IsBiased 1
    theorem FABL.ProbabilityDensity.isBiased_one
      {n : }
      (φ : FABL.ProbabilityDensity n) :
      φ.IsBiased 1
    O'Donnell, Example 6.6: every probability density is `1`-biased. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/SmallBias.lean
    complete
    theorem FABL.ProbabilityDensity.isBiased_zero_iff_eq_uniform {n : }
      (φ : FABL.ProbabilityDensity n) : φ.IsBiased 0  φ.toFun = fun x => 1
    theorem FABL.ProbabilityDensity.isBiased_zero_iff_eq_uniform
      {n : }
      (φ : FABL.ProbabilityDensity n) :
      φ.IsBiased 0  φ.toFun = fun x => 1
    O'Donnell, Example 6.6: the uniform density is the unique `0`-biased density. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/SmallBias.lean
    complete
    theorem FABL.ProbabilityDensity.affineSubspaceDensity_not_isBiased_of_lt_one
      {n : } (H : Submodule FABL.𝔽₂ (FABL.F₂Cube n)) (a : FABL.F₂Cube n)
      (hH : H  ) {ε : } ( : ε < 1) :
      ¬(FABL.subsetDensity (FABL.binaryAffineSubspace H a) ).IsBiased ε
    theorem FABL.ProbabilityDensity.affineSubspaceDensity_not_isBiased_of_lt_one
      {n : }
      (H : Submodule FABL.𝔽₂ (FABL.F₂Cube n))
      (a : FABL.F₂Cube n) (hH : H  ) {ε : }
      ( : ε < 1) :
      ¬(FABL.subsetDensity
              (FABL.binaryAffineSubspace H a)
              ).IsBiased
          ε
    O'Donnell, Example 6.6: the density of a proper affine subspace is not `ε`-biased
    for any `ε < 1`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/SmallBias.lean
    complete
    theorem FABL.ProbabilityDensity.constantPairDensity_not_isBiased_of_two_le
      {n : } (hn : 2  n) {ε : } ( : ε < 1) :
      ¬(FABL.ProbabilityDensity.constantPairDensity n).IsBiased ε
    theorem FABL.ProbabilityDensity.constantPairDensity_not_isBiased_of_two_le
      {n : } (hn : 2  n) {ε : }
      ( : ε < 1) :
      ¬(FABL.ProbabilityDensity.constantPairDensity
              n).IsBiased
          ε
    Corrected Example 6.6: for `n ≥ 2`, the all-zero/all-one pair is not `ε`-biased
    for any `ε < 1`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/SmallBias.lean
    complete
    theorem FABL.ProbabilityDensity.constantPairDensity_one_isBiased_zero :
      (FABL.ProbabilityDensity.constantPairDensity 1).IsBiased 0
    theorem FABL.ProbabilityDensity.constantPairDensity_one_isBiased_zero :
      (FABL.ProbabilityDensity.constantPairDensity
            1).IsBiased
        0
    Corrected Example 6.6: in dimension one, the all-zero/all-one pair density is
    `0`-biased. 
Proposition6.1.7
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 4
Statement dependency previews
Preview
Theorem 1.4.2
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
Used by 2
Reverse dependency previews
Preview
Theorem 6.4.17
Loading preview
Reverse dependency preview content is loaded from the rendered-fragment cache.
L∃∀N

Proposition 6.7. Let f:\mathbb F_2^n\to\mathbb R.

(1) If f is \epsilon-regular, then \lVert\widehat f\rVert_4^4-\mathbb E[f]^4 \le\epsilon^2\operatorname{Var}[f].

(2) If f is not \epsilon-regular, then \lVert\widehat f\rVert_4^4-\mathbb E[f]^4\ge\epsilon^4.

Here \lVert\widehat f\rVert_4^4 =\mathbb E_{x,y,z} [f(x)f(y)f(z)f(x+y+z)].

Lean code for Proposition6.1.74 declarations
  • defdefined in FABL/Chapter06/Pseudorandomness/FourierFourthMoment.lean
    complete
    def FABL.vectorFourierFourthMoment {n : } (f : FABL.F₂Cube n  ) : 
    def FABL.vectorFourierFourthMoment {n : }
      (f : FABL.F₂Cube n  ) : 
    The fourth power of the vector-indexed Fourier `4`-norm. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/FourierFourthMoment.lean
    complete
    theorem FABL.vectorFourierFourthMoment_sub_mean_pow_four_le {n : }
      (f : FABL.F₂Cube n  ) {ε : }
      (hregular :
        FABL.IsFourierRegular ε (FABL.binaryFunctionOnSignCube f)) :
      FABL.vectorFourierFourthMoment f - FABL.mean f ^ 4 
        ε ^ 2 * FABL.variance f
    theorem FABL.vectorFourierFourthMoment_sub_mean_pow_four_le
      {n : } (f : FABL.F₂Cube n  ) {ε : }
      (hregular :
        FABL.IsFourierRegular ε
          (FABL.binaryFunctionOnSignCube f)) :
      FABL.vectorFourierFourthMoment f -
          FABL.mean f ^ 4 
        ε ^ 2 * FABL.variance f
    O'Donnell, Proposition 6.7(1): regularity bounds the nonconstant fourth spectral
    moment by `ε²` times the variance. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/FourierFourthMoment.lean
    complete
    theorem FABL.epsilon_pow_four_le_vectorFourierFourthMoment_sub_mean_pow_four
      {n : } (f : FABL.F₂Cube n  ) {ε : } ( : 0  ε)
      (hregular :
        ¬FABL.IsFourierRegular ε (FABL.binaryFunctionOnSignCube f)) :
      ε ^ 4  FABL.vectorFourierFourthMoment f - FABL.mean f ^ 4
    theorem FABL.epsilon_pow_four_le_vectorFourierFourthMoment_sub_mean_pow_four
      {n : } (f : FABL.F₂Cube n  ) {ε : }
      ( : 0  ε)
      (hregular :
        ¬FABL.IsFourierRegular ε
            (FABL.binaryFunctionOnSignCube
              f)) :
      ε ^ 4 
        FABL.vectorFourierFourthMoment f -
          FABL.mean f ^ 4
    O'Donnell, Proposition 6.7(2): failure of `ε`-regularity forces at least `ε⁴`
    nonconstant fourth spectral mass. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/FourierFourthMoment.lean
    complete
    theorem FABL.vectorFourierFourthMoment_eq_additiveEnergy {n : }
      (f : FABL.F₂Cube n  ) :
      FABL.vectorFourierFourthMoment f =
        Finset.univ.expect fun x =>
          Finset.univ.expect fun y =>
            Finset.univ.expect fun z => f x * f y * f z * f (x + y + z)
    theorem FABL.vectorFourierFourthMoment_eq_additiveEnergy
      {n : } (f : FABL.F₂Cube n  ) :
      FABL.vectorFourierFourthMoment f =
        Finset.univ.expect fun x =>
          Finset.univ.expect fun y =>
            Finset.univ.expect fun z =>
              f x * f y * f z * f (x + y + z)
    O'Donnell, Proposition 6.7: the exact additive-energy formula for the fourth
    spectral moment. 
Lemma6.1.8
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
uses 1used by 0L∃∀N

Fact 6.8. Fix \delta\in[0,1] and choose f:\{-1,1\}^n\to\{-1,1\} uniformly at random. For every coordinate i\in[n], \mathbb E_f\!\left[\operatorname{Inf}^{(1-\delta)}_i[f]\right] =\frac{(1-\delta/2)^n}{2-\delta}.

Lean code for Lemma6.1.81 theorem
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RandomFunctions.lean
    complete
    theorem FABL.pmfExpectation_uniformBooleanFunction_stableInfluence_one_sub
      {n : } (δ : ) ( : δ  Set.Icc 0 1) (i : Fin n) :
      (FABL.pmfExpectation (FABL.uniformPMF (FABL.BooleanFunction n))
          fun f => FABL.stableInfluence (1 - δ) f.toReal i) =
        (1 - δ / 2) ^ n / (2 - δ)
    theorem FABL.pmfExpectation_uniformBooleanFunction_stableInfluence_one_sub
      {n : } (δ : ) ( : δ  Set.Icc 0 1)
      (i : Fin n) :
      (FABL.pmfExpectation
          (FABL.uniformPMF
            (FABL.BooleanFunction n))
          fun f =>
          FABL.stableInfluence (1 - δ)
            f.toReal i) =
        (1 - δ / 2) ^ n / (2 - δ)
    O'Donnell, Fact 6.8 and Exercise 6.2: for a uniformly random sign-valued function,
    the expected `(1 - δ)`-stable influence of every coordinate is
    `(1 - δ / 2)ⁿ / (2 - δ)`. 
Definition6.1.9
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 2
Statement dependency previews
Preview
Definition 2.4.14
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
Used by 3
Reverse dependency previews
Preview
Lemma 6.1.10
Loading preview
Reverse dependency preview content is loaded from the rendered-fragment cache.
L∃∀N

Definition 6.9. A function f:\{-1,1\}^n\to\mathbb R has (\epsilon,\delta)-small stable influences, or has no (\epsilon,\delta)-notable coordinates, if \operatorname{Inf}^{(1-\delta)}_i[f]\le\epsilon \qquad\text{for every }i\in[n]. This property gets stronger as \epsilon and \delta decrease. When \delta=0, it is called having \epsilon-small influences.

Lean code for Definition6.1.94 declarations
  • defdefined in FABL/Chapter06/Pseudorandomness/StableInfluences.lean
    complete
    def FABL.HasSmallStableInfluences {n : } (ε δ : )
      (f : FABL.SignCube n  ) : Prop
    def FABL.HasSmallStableInfluences {n : }
      (ε δ : ) (f : FABL.SignCube n  ) :
      Prop
    A function has `(ε, δ)`-small stable influences when every coordinate has stable influence
    at correlation `1 - δ` at most `ε`. 
  • defdefined in FABL/Chapter06/Pseudorandomness/StableInfluences.lean
    complete
    def FABL.HasSmallInfluences {n : } (ε : ) (f : FABL.SignCube n  ) : Prop
    def FABL.HasSmallInfluences {n : } (ε : )
      (f : FABL.SignCube n  ) : Prop
    The specialization called `ε`-small influences in the book. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/StableInfluences.lean
    complete
    theorem FABL.stableInfluence_one_eq_influence {n : } (f : FABL.SignCube n  )
      (i : Fin n) : FABL.stableInfluence 1 f i = FABL.influence f i
    theorem FABL.stableInfluence_one_eq_influence
      {n : } (f : FABL.SignCube n  )
      (i : Fin n) :
      FABL.stableInfluence 1 f i =
        FABL.influence f i
    At correlation one, stable influence is ordinary influence. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/StableInfluences.lean
    complete
    theorem FABL.hasSmallInfluences_iff {n : } (ε : ) (f : FABL.SignCube n  ) :
      FABL.HasSmallInfluences ε f   (i : Fin n), FABL.influence f i  ε
    theorem FABL.hasSmallInfluences_iff {n : }
      (ε : ) (f : FABL.SignCube n  ) :
      FABL.HasSmallInfluences ε f 
         (i : Fin n), FABL.influence f i  ε
    Small influences are exactly coordinatewise bounds on ordinary influences. 
Lemma6.1.10
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 4
Statement dependency previews
Preview
Definition 2.1.4
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
used by 1L∃∀N

Example 6.10. Constants have (0,0)-small stable influences, and they are the only functions with 0-small influences. Majority has 1/\sqrt n-small influences. For a nonempty parity \chi_S, \operatorname{Inf}^{(1-\delta)}_i[\chi_S] = \begin{cases} (1-\delta)^{|S|-1},&i\in S,\\ 0,&i\notin S; \end{cases} hence it has (\epsilon,\delta)-small stable influences whenever |S|\ge\ln(e/\epsilon)/\delta.

If an unbiased k-junta f has variance 1, then some coordinate has stable influence at least (1-\delta)^{k-1}/k; thus it does not have ((1-\delta)^k/k,\delta)-small stable influences for \delta\in(0,1). Finally, For odd n=2m+1, the function f(x_0,x_1,\ldots,x_n)=x_0\operatorname{Maj}_n(x_1,\ldots,x_n) satisfies \operatorname{Inf}^{(1-\delta)}_0[f]\ge1-\sqrt\delta.

Lean code for Lemma6.1.109 declarations
  • theoremdefined in FABL/Chapter06/Pseudorandomness/StableInfluences.lean
    complete
    theorem FABL.const_hasSmallStableInfluences_zero_zero {n : } (c : ) :
      FABL.HasSmallStableInfluences 0 0 fun x => c
    theorem FABL.const_hasSmallStableInfluences_zero_zero
      {n : } (c : ) :
      FABL.HasSmallStableInfluences 0 0
        fun x => c
    Constant functions have `(0, 0)`-small stable influences. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.hasSmallInfluences_zero_iff_exists_const {n : }
      (f : FABL.SignCube n  ) :
      FABL.HasSmallInfluences 0 f   c, f = fun x => c
    theorem FABL.hasSmallInfluences_zero_iff_exists_const
      {n : } (f : FABL.SignCube n  ) :
      FABL.HasSmallInfluences 0 f 
         c, f = fun x => c
    A real-valued function has zero-small influences exactly when it is constant. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.majority_hasSmallInfluences (n : ) :
      FABL.HasSmallInfluences (1 / n) (FABL.majority n).toReal
    theorem FABL.majority_hasSmallInfluences (n : ) :
      FABL.HasSmallInfluences (1 / n)
        (FABL.majority n).toReal
    Majority has `1 / √n`-small influences in every dimension. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.stableInfluence_parityFunction {n : } (ρ : ) (S : Finset (Fin n))
      (i : Fin n) :
      FABL.stableInfluence ρ (FABL.parityFunction S).toReal i =
        if i  S then ρ ^ (S.card - 1) else 0
    theorem FABL.stableInfluence_parityFunction
      {n : } (ρ : ) (S : Finset (Fin n))
      (i : Fin n) :
      FABL.stableInfluence ρ
          (FABL.parityFunction S).toReal i =
        if i  S then ρ ^ (S.card - 1) else 0
    The exact stable-influence profile of a parity. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.parityFunction_hasSmallStableInfluences_of_log_bound {n : }
      (S : Finset (Fin n)) (ε δ : ) ( : 0 < ε) ( : δ  Set.Ioc 0 1)
      (hcard : Real.log (Real.exp 1 / ε) / δ  S.card) :
      FABL.HasSmallStableInfluences ε δ (FABL.parityFunction S).toReal
    theorem FABL.parityFunction_hasSmallStableInfluences_of_log_bound
      {n : } (S : Finset (Fin n)) (ε δ : )
      ( : 0 < ε) ( : δ  Set.Ioc 0 1)
      (hcard :
        Real.log (Real.exp 1 / ε) / δ 
          S.card) :
      FABL.HasSmallStableInfluences ε δ
        (FABL.parityFunction S).toReal
    The logarithmic support-size condition in Example 6.10 implies the required
    stable-influence bound for parity. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.exists_stableInfluence_ge_of_isKJunta_of_balanced {n : }
      (f : FABL.BooleanFunction n) (k : ) (hk : 0 < k)
      (hjunta : FABL.IsKJunta f k) (hbalanced : FABL.IsBalanced f.toReal)
      (δ : ) ( : δ  Set.Ioo 0 1) :
       i, (1 - δ) ^ (k - 1) / k  FABL.stableInfluence (1 - δ) f.toReal i
    theorem FABL.exists_stableInfluence_ge_of_isKJunta_of_balanced
      {n : } (f : FABL.BooleanFunction n)
      (k : ) (hk : 0 < k)
      (hjunta : FABL.IsKJunta f k)
      (hbalanced : FABL.IsBalanced f.toReal)
      (δ : ) ( : δ  Set.Ioo 0 1) :
       i,
        (1 - δ) ^ (k - 1) / k 
          FABL.stableInfluence (1 - δ)
            f.toReal i
    An unbiased Boolean `k`-junta has a coordinate with the stable-influence lower bound in
    Example 6.10. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.not_hasSmallStableInfluences_of_isKJunta_of_balanced {n : }
      (f : FABL.BooleanFunction n) (k : ) (hk : 0 < k)
      (hjunta : FABL.IsKJunta f k) (hbalanced : FABL.IsBalanced f.toReal)
      (δ : ) ( : δ  Set.Ioo 0 1) :
      ¬FABL.HasSmallStableInfluences ((1 - δ) ^ k / k) δ f.toReal
    theorem FABL.not_hasSmallStableInfluences_of_isKJunta_of_balanced
      {n : } (f : FABL.BooleanFunction n)
      (k : ) (hk : 0 < k)
      (hjunta : FABL.IsKJunta f k)
      (hbalanced : FABL.IsBalanced f.toReal)
      (δ : ) ( : δ  Set.Ioo 0 1) :
      ¬FABL.HasSmallStableInfluences
          ((1 - δ) ^ k / k) δ f.toReal
    Hence an unbiased Boolean `k`-junta fails the smaller threshold printed in
    Example 6.10. 
  • defdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    def FABL.leadingCoordinateTimes {n : } (g : FABL.BooleanFunction n) :
      FABL.BooleanFunction (n + 1)
    def FABL.leadingCoordinateTimes {n : }
      (g : FABL.BooleanFunction n) :
      FABL.BooleanFunction (n + 1)
    Adjoin a leading signed coordinate and multiply it by a Boolean function on the tail
    coordinates. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.one_sub_sqrt_le_stableInfluence_leadingCoordinateTimes_majority_odd
      (m : ) (δ : ) ( : δ  Set.Icc 0 1) :
      1 - δ 
        FABL.stableInfluence (1 - δ)
          (FABL.leadingCoordinateTimes (FABL.majority (2 * m + 1))).toReal 0
    theorem FABL.one_sub_sqrt_le_stableInfluence_leadingCoordinateTimes_majority_odd
      (m : ) (δ : ) ( : δ  Set.Icc 0 1) :
      1 - δ 
        FABL.stableInfluence (1 - δ)
          (FABL.leadingCoordinateTimes
              (FABL.majority
                (2 * m + 1))).toReal
          0
    For odd majority, the leading-coordinate product has stable influence at least
    `1 - √δ` in the new coordinate. 
Definition6.1.11
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 3
Statement dependency previews
Preview
Definition 1.4.15
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
Used by 10
Reverse dependency previews
Preview
Proposition 6.1.12
Loading preview
Reverse dependency preview content is loaded from the rendered-fragment cache.
L∃∀N

Definition 6.11. A function f:\{-1,1\}^n\to\mathbb R is (\epsilon,k)-regular if |\widehat f(S)|\le\epsilon \qquad\text{whenever }0<|S|\le k. Equivalently, the degree-at-most-k part f^{\le k} is \epsilon-regular. For k=n (or k=\infty) this is ordinary \epsilon-regularity. An (\epsilon,k)-regular probability density, and its associated distribution, is also called (\epsilon,k)-wise independent.

Lean code for Definition6.1.113 declarations
  • defdefined in FABL/Chapter06/Pseudorandomness/Regularity.lean
    complete
    def FABL.IsLowDegreeFourierRegular {n : } (ε : ) (k : )
      (f : FABL.SignCube n  ) : Prop
    def FABL.IsLowDegreeFourierRegular {n : }
      (ε : ) (k : )
      (f : FABL.SignCube n  ) : Prop
    Low-degree Fourier regularity through level `k`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Regularity.lean
    complete
    theorem FABL.IsFourierRegular.isLowDegreeFourierRegular {n : } {ε : }
      {f : FABL.SignCube n  } (h : FABL.IsFourierRegular ε f) (k : ) :
      FABL.IsLowDegreeFourierRegular ε k f
    theorem FABL.IsFourierRegular.isLowDegreeFourierRegular
      {n : } {ε : }
      {f : FABL.SignCube n  }
      (h : FABL.IsFourierRegular ε f)
      (k : ) :
      FABL.IsLowDegreeFourierRegular ε k f
    Ordinary Fourier regularity implies every low-degree version with the same parameter. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Regularity.lean
    complete
    theorem FABL.isLowDegreeFourierRegular_dimension_iff {n : } (ε : )
      (f : FABL.SignCube n  ) :
      FABL.IsLowDegreeFourierRegular ε n f  FABL.IsFourierRegular ε f
    theorem FABL.isLowDegreeFourierRegular_dimension_iff
      {n : } (ε : )
      (f : FABL.SignCube n  ) :
      FABL.IsLowDegreeFourierRegular ε n f 
        FABL.IsFourierRegular ε f
    In dimension `n`, regularity through level `n` is ordinary regularity. 
Proposition6.1.12
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 3
Statement dependency previews
Preview
Definition 3.3.3
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
Used by 2
Reverse dependency previews
Preview
Corollary 6.1.14
Loading preview
Reverse dependency preview content is loaded from the rendered-fragment cache.
L∃∀N

Proposition 6.12. Let f:\{-1,1\}^n\to\mathbb R, \epsilon\ge0, and k\in\mathbb N.

(1) If f is (\epsilon,k)-regular, then every restriction fixing at most k coordinates changes the mean of f by at most 2^k\epsilon.

(2) If f is not (\epsilon,k)-regular, then some restriction fixing at most k coordinates changes the mean of f by more than \epsilon.

Lean code for Proposition6.1.122 theorems
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.IsLowDegreeFourierRegular.abs_mean_signRestriction_sub_mean_le
      {n : } {ε : } {k : } {f : FABL.SignCube n  }
      (hregular : FABL.IsLowDegreeFourierRegular ε k f) ( : 0  ε)
      (J : Finset (Fin n)) (z : FABL.FixedSignCube J)
      (hJ : Fintype.card (FABL.FixedIndex J)  k) :
      |FABL.mean (FABL.signRestriction f J z) - FABL.mean f|  2 ^ k * ε
    theorem FABL.IsLowDegreeFourierRegular.abs_mean_signRestriction_sub_mean_le
      {n : } {ε : } {k : }
      {f : FABL.SignCube n  }
      (hregular :
        FABL.IsLowDegreeFourierRegular ε k f)
      ( : 0  ε) (J : Finset (Fin n))
      (z : FABL.FixedSignCube J)
      (hJ :
        Fintype.card (FABL.FixedIndex J) 
          k) :
      |FABL.mean
              (FABL.signRestriction f J z) -
            FABL.mean f| 
        2 ^ k * ε
    O'Donnell, Proposition 6.12(1): regularity through level `k` controls the change in mean under
    every restriction fixing at most `k` coordinates. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.exists_signRestriction_mean_change_gt_of_not_isLowDegreeFourierRegular
      {n : } (f : FABL.SignCube n  ) {ε : } {k : }
      (hregular : ¬FABL.IsLowDegreeFourierRegular ε k f) :
       J,
        Fintype.card (FABL.FixedIndex J)  k 
           z, ε < |FABL.mean (FABL.signRestriction f J z) - FABL.mean f|
    theorem FABL.exists_signRestriction_mean_change_gt_of_not_isLowDegreeFourierRegular
      {n : } (f : FABL.SignCube n  )
      {ε : } {k : }
      (hregular :
        ¬FABL.IsLowDegreeFourierRegular ε k
            f) :
       J,
        Fintype.card (FABL.FixedIndex J)  k 
           z,
            ε <
              |FABL.mean
                    (FABL.signRestriction f J
                      z) -
                  FABL.mean f|
    O'Donnell, Proposition 6.12(2): failure of regularity through level `k` is witnessed by a
    restriction fixing at most `k` coordinates whose mean changes by more than `ε`. 
Proposition6.1.13
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
uses 1
Used by 2
Reverse dependency previews
Preview
Corollary 6.1.14
Loading preview
Reverse dependency preview content is loaded from the rendered-fragment cache.
L∃∀N

Proposition 6.13. Let f:\{-1,1\}^n\to\mathbb R, \epsilon\ge0, and k\in\mathbb N.

(1) If f is (\epsilon,k)-regular, then \operatorname{Cov}[f,h] \le\lVert\widehat h\rVert_1\epsilon for every h:\{-1,1\}^n\to\mathbb R of degree at most k. In particular, \operatorname{Cov}[f,h]\le 2^{k/2}\epsilon for every Boolean-valued k-junta h.

(2) If f is not (\epsilon,k)-regular, then there is a Boolean-valued k-junta h such that \operatorname{Cov}[f,h]>\epsilon.

Lean code for Proposition6.1.133 theorems
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.IsLowDegreeFourierRegular.covariance_le_fourierOneNorm_mul {n : }
      {ε : } {k : } {f h : FABL.SignCube n  }
      (hregular : FABL.IsLowDegreeFourierRegular ε k f)
      (hdegree : FABL.fourierDegree h  k) ( : 0  ε) :
      FABL.covariance f h  FABL.fourierOneNorm h * ε
    theorem FABL.IsLowDegreeFourierRegular.covariance_le_fourierOneNorm_mul
      {n : } {ε : } {k : }
      {f h : FABL.SignCube n  }
      (hregular :
        FABL.IsLowDegreeFourierRegular ε k f)
      (hdegree : FABL.fourierDegree h  k)
      ( : 0  ε) :
      FABL.covariance f h 
        FABL.fourierOneNorm h * ε
    O'Donnell, Proposition 6.13(1): regularity through level `k` bounds covariance with every
    degree-at-most-`k` function by its Fourier `1`-norm times `ε`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.IsLowDegreeFourierRegular.covariance_booleanJunta_le {n : }
      {ε : } {k : } {f : FABL.SignCube n  }
      (hregular : FABL.IsLowDegreeFourierRegular ε k f) ( : 0  ε)
      (h : FABL.BooleanFunction n) (hjunta : FABL.IsKJunta h k) :
      FABL.covariance f h.toReal  2 ^ (k / 2) * ε
    theorem FABL.IsLowDegreeFourierRegular.covariance_booleanJunta_le
      {n : } {ε : } {k : }
      {f : FABL.SignCube n  }
      (hregular :
        FABL.IsLowDegreeFourierRegular ε k f)
      ( : 0  ε)
      (h : FABL.BooleanFunction n)
      (hjunta : FABL.IsKJunta h k) :
      FABL.covariance f h.toReal 
        2 ^ (k / 2) * ε
    The Boolean-junta specialization of Proposition 6.13(1). 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.exists_booleanJunta_covariance_gt_of_not_isLowDegreeFourierRegular
      {n : } (f : FABL.SignCube n  ) {ε : } {k : }
      (hregular : ¬FABL.IsLowDegreeFourierRegular ε k f) :
       h, FABL.IsKJunta h k  ε < FABL.covariance f h.toReal
    theorem FABL.exists_booleanJunta_covariance_gt_of_not_isLowDegreeFourierRegular
      {n : } (f : FABL.SignCube n  )
      {ε : } {k : }
      (hregular :
        ¬FABL.IsLowDegreeFourierRegular ε k
            f) :
       h,
        FABL.IsKJunta h k 
          ε < FABL.covariance f h.toReal
    O'Donnell, Proposition 6.13(2): failure of regularity through level `k` is witnessed by
    positive covariance with a Boolean `k`-junta. 
Corollary6.1.14
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 3
Statement dependency previews
Preview
Lemma 1.5.2
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
used by 0L∃∀N

Corollary 6.14. For f:\{-1,1\}^n\to\mathbb R, the following are equivalent:

(1) f is (0,k)-regular.

(2) Every restriction of at most k coordinates leaves \mathbb E[f] unchanged.

(3) \operatorname{Cov}[f,h]=0 for every Boolean-valued k-junta h.

If f is a probability density, condition (3) is equivalent to \mathbb E_{\boldsymbol x\sim f}[h(\boldsymbol x)]=\mathbb E[h] for every Boolean-valued k-junta h.

Lean code for Corollary6.1.143 theorems
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.isLowDegreeFourierRegular_zero_iff_forall_mean_signRestriction_eq
      {n : } (f : FABL.SignCube n  ) (k : ) :
      FABL.IsLowDegreeFourierRegular 0 k f 
         (J : Finset (Fin n)) (z : FABL.FixedSignCube J),
          Fintype.card (FABL.FixedIndex J)  k 
            FABL.mean (FABL.signRestriction f J z) = FABL.mean f
    theorem FABL.isLowDegreeFourierRegular_zero_iff_forall_mean_signRestriction_eq
      {n : } (f : FABL.SignCube n  )
      (k : ) :
      FABL.IsLowDegreeFourierRegular 0 k f 
         (J : Finset (Fin n))
          (z : FABL.FixedSignCube J),
          Fintype.card (FABL.FixedIndex J) 
              k 
            FABL.mean
                (FABL.signRestriction f J z) =
              FABL.mean f
    O'Donnell, Corollary 6.14: zero regularity through level `k` is equivalent to invariance of
    the mean under every restriction fixing at most `k` coordinates. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.isLowDegreeFourierRegular_zero_iff_forall_covariance_booleanJunta_eq_zero
      {n : } (f : FABL.SignCube n  ) (k : ) :
      FABL.IsLowDegreeFourierRegular 0 k f 
         (h : FABL.BooleanFunction n),
          FABL.IsKJunta h k  FABL.covariance f h.toReal = 0
    theorem FABL.isLowDegreeFourierRegular_zero_iff_forall_covariance_booleanJunta_eq_zero
      {n : } (f : FABL.SignCube n  )
      (k : ) :
      FABL.IsLowDegreeFourierRegular 0 k f 
         (h : FABL.BooleanFunction n),
          FABL.IsKJunta h k 
            FABL.covariance f h.toReal = 0
    O'Donnell, Corollary 6.14: zero regularity through level `k` is equivalent to vanishing
    covariance against every Boolean `k`-junta. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.ProbabilityDensity.isLowDegreeFourierRegular_zero_iff_forall_expectation_booleanJunta_eq_mean
      {n : } (φ : FABL.ProbabilityDensity n) (k : ) :
      FABL.IsLowDegreeFourierRegular 0 k
          (FABL.binaryFunctionOnSignCube φ.toFun) 
         (h : FABL.BooleanFunction n),
          FABL.IsKJunta h k 
            (φ.expectation fun x =>
                h.toReal ((FABL.binaryCubeSignEquiv n) x)) =
              FABL.mean h.toReal
    theorem FABL.ProbabilityDensity.isLowDegreeFourierRegular_zero_iff_forall_expectation_booleanJunta_eq_mean
      {n : } (φ : FABL.ProbabilityDensity n)
      (k : ) :
      FABL.IsLowDegreeFourierRegular 0 k
          (FABL.binaryFunctionOnSignCube
            φ.toFun) 
         (h : FABL.BooleanFunction n),
          FABL.IsKJunta h k 
            (φ.expectation fun x =>
                h.toReal
                  ((FABL.binaryCubeSignEquiv
                      n)
                    x)) =
              FABL.mean h.toReal
    The probability-density form of Corollary 6.14: zero low-degree regularity is equivalent to
    matching uniform expectation on every Boolean `k`-junta. 
Definition6.1.15
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 3
Statement dependency previews
Preview
Definition 1.4.6
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
Used by 8
Reverse dependency previews
Preview
Lemma 6.1.16
Loading preview
Reverse dependency preview content is loaded from the rendered-fragment cache.
L∃∀N

Definition 6.15. A Boolean-valued (0,k)-regular function is kth-order correlation immune. If it is also unbiased, it is k-resilient. A (0,k)-regular probability density, and its associated distribution, is k-wise independent.

Lean code for Definition6.1.152 definitions
  • defdefined in FABL/Chapter06/Pseudorandomness/CorrelationImmunity.lean
    complete
    def FABL.IsCorrelationImmune {n : } (k : ) (f : FABL.BooleanFunction n) :
      Prop
    def FABL.IsCorrelationImmune {n : } (k : )
      (f : FABL.BooleanFunction n) : Prop
    A Boolean function is correlation immune of order `k` when its nonconstant Fourier
    coefficients through level `k` vanish. 
  • defdefined in FABL/Chapter06/Pseudorandomness/CorrelationImmunity.lean
    complete
    def FABL.IsResilient {n : } (k : ) (f : FABL.BooleanFunction n) : Prop
    def FABL.IsResilient {n : } (k : )
      (f : FABL.BooleanFunction n) : Prop
    A correlation-immune Boolean function is resilient when it is also unbiased. 
Lemma6.1.16
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 2
Statement dependency previews
Preview
Definition 2.1.2
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
used by 0L∃∀N

Example 6.16. If |S|=k+1, then \chi_S is k-resilient; more generally, so is \chi_Sg whenever g does not depend on any coordinate in S. For a correlation-immune function that is not resilient, let h:\{-1,1\}^{3m}\to\{-1,1\} be h=\chi_{\{1,\ldots,2m\}}\wedge\chi_{\{m+1,\ldots,3m\}}. It is True on one quarter of its inputs, but fixing fewer than 2m input bits does not change this bias. Thus h is correlation immune of order 2m-1 and is not unbiased.

Lean code for Lemma6.1.1613 declarations
  • theoremdefined in FABL/Chapter06/Pseudorandomness/CorrelationImmunity.lean
    complete
    theorem FABL.parityFunction_isResilient {n : } (S : Finset (Fin n)) (k : )
      (hcard : S.card = k + 1) : FABL.IsResilient k (FABL.parityFunction S)
    theorem FABL.parityFunction_isResilient {n : }
      (S : Finset (Fin n)) (k : )
      (hcard : S.card = k + 1) :
      FABL.IsResilient k
        (FABL.parityFunction S)
    A parity on `k + 1` coordinates is `k`-resilient. 
  • defdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    def FABL.parityTimes {n : } (S : Finset (Fin n))
      (g : FABL.BooleanFunction n) : FABL.BooleanFunction n
    def FABL.parityTimes {n : }
      (S : Finset (Fin n))
      (g : FABL.BooleanFunction n) :
      FABL.BooleanFunction n
    Multiply a parity by a Boolean function on the same cube. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.fourierCoeff_parityTimes {n : } (S T : Finset (Fin n))
      (g : FABL.BooleanFunction n) :
      FABL.fourierCoeff (FABL.parityTimes S g).toReal T =
        FABL.fourierCoeff g.toReal (symmDiff S T)
    theorem FABL.fourierCoeff_parityTimes {n : }
      (S T : Finset (Fin n))
      (g : FABL.BooleanFunction n) :
      FABL.fourierCoeff
          (FABL.parityTimes S g).toReal T =
        FABL.fourierCoeff g.toReal
          (symmDiff S T)
    Multiplication by a parity translates the Fourier spectrum by symmetric difference. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.parityTimes_isResilient_of_dependsOn_compl {n : }
      (S : Finset (Fin n)) (g : FABL.BooleanFunction n) (k : )
      (hcard : S.card = k + 1) (hdepends : DependsOn g (Finset.univ \ S)) :
      FABL.IsResilient k (FABL.parityTimes S g)
    theorem FABL.parityTimes_isResilient_of_dependsOn_compl
      {n : } (S : Finset (Fin n))
      (g : FABL.BooleanFunction n) (k : )
      (hcard : S.card = k + 1)
      (hdepends :
        DependsOn g (Finset.univ \ S)) :
      FABL.IsResilient k
        (FABL.parityTimes S g)
    A parity on `k+1` coordinates times a function independent of those coordinates is
    `k`-resilient. 
  • defdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    def FABL.firstTwoThirds (m : ) (hm : 0 < m) : Finset (Fin (3 * m))
    def FABL.firstTwoThirds (m : ) (hm : 0 < m) :
      Finset (Fin (3 * m))
    The first two thirds of the coordinates in the explicit `3m`-variable construction. 
  • defdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    def FABL.lastTwoThirds (m : ) (hm : 0 < m) : Finset (Fin (3 * m))
    def FABL.lastTwoThirds (m : ) (hm : 0 < m) :
      Finset (Fin (3 * m))
    The last two thirds of the coordinates in the explicit `3m`-variable construction. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.card_firstTwoThirds_symmDiff_lastTwoThirds (m : ) (hm : 0 < m) :
      (symmDiff (FABL.firstTwoThirds m hm) (FABL.lastTwoThirds m hm)).card =
        2 * m
    theorem FABL.card_firstTwoThirds_symmDiff_lastTwoThirds
      (m : ) (hm : 0 < m) :
      (symmDiff (FABL.firstTwoThirds m hm)
            (FABL.lastTwoThirds m hm)).card =
        2 * m
  • defdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    def FABL.correlationImmuneAndExample (m : ) (hm : 0 < m) :
      FABL.BooleanFunction (3 * m)
    def FABL.correlationImmuneAndExample (m : )
      (hm : 0 < m) :
      FABL.BooleanFunction (3 * m)
    The correlation-immune but biased function from Example 6.16. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.fourierCoeff_correlationImmuneAndExample (m : ) (hm : 0 < m)
      (T : Finset (Fin (3 * m))) :
      FABL.fourierCoeff (FABL.correlationImmuneAndExample m hm).toReal T =
        ((((if T =  then 1 else 0) +
                if FABL.firstTwoThirds m hm = T then 1 else 0) +
              if FABL.lastTwoThirds m hm = T then 1 else 0) -
            if
                symmDiff (FABL.firstTwoThirds m hm)
                    (FABL.lastTwoThirds m hm) =
                  T then
              1
            else 0) /
          2
    theorem FABL.fourierCoeff_correlationImmuneAndExample
      (m : ) (hm : 0 < m)
      (T : Finset (Fin (3 * m))) :
      FABL.fourierCoeff
          (FABL.correlationImmuneAndExample m
              hm).toReal
          T =
        ((((if T =  then 1 else 0) +
                if
                    FABL.firstTwoThirds m hm =
                      T then
                  1
                else 0) +
              if
                  FABL.lastTwoThirds m hm =
                    T then
                1
              else 0) -
            if
                symmDiff
                    (FABL.firstTwoThirds m hm)
                    (FABL.lastTwoThirds m
                      hm) =
                  T then
              1
            else 0) /
          2
    The exact Fourier coefficients of the explicit construction. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.correlationImmuneAndExample_isCorrelationImmune (m : )
      (hm : 0 < m) :
      FABL.IsCorrelationImmune (2 * m - 1)
        (FABL.correlationImmuneAndExample m hm)
    theorem FABL.correlationImmuneAndExample_isCorrelationImmune
      (m : ) (hm : 0 < m) :
      FABL.IsCorrelationImmune (2 * m - 1)
        (FABL.correlationImmuneAndExample m
          hm)
    The explicit function is correlation immune of order `2m-1`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.mean_correlationImmuneAndExample (m : ) (hm : 0 < m) :
      FABL.mean (FABL.correlationImmuneAndExample m hm).toReal = 1 / 2
    theorem FABL.mean_correlationImmuneAndExample
      (m : ) (hm : 0 < m) :
      FABL.mean
          (FABL.correlationImmuneAndExample m
              hm).toReal =
        1 / 2
    The construction has mean `1/2`, so it is not resilient. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.correlationImmuneAndExample_not_isResilient (m : ) (hm : 0 < m) :
      ¬FABL.IsResilient (2 * m - 1) (FABL.correlationImmuneAndExample m hm)
    theorem FABL.correlationImmuneAndExample_not_isResilient
      (m : ) (hm : 0 < m) :
      ¬FABL.IsResilient (2 * m - 1)
          (FABL.correlationImmuneAndExample m
            hm)
    The explicit correlation-immune construction is not resilient. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/Examples.lean
    complete
    theorem FABL.uniformProbability_correlationImmuneAndExample_eq_true (m : )
      (hm : 0 < m) :
      (FABL.uniformProbability fun x =>
          FABL.correlationImmuneAndExample m hm x = -1) =
        1 / 4
    theorem FABL.uniformProbability_correlationImmuneAndExample_eq_true
      (m : ) (hm : 0 < m) :
      (FABL.uniformProbability fun x =>
          FABL.correlationImmuneAndExample m
              hm x =
            -1) =
        1 / 4
    In the book's `-1 = True` convention, the construction is True on exactly one quarter
    of the cube. 
Lemma6.1.17
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 2
Statement dependency previews
Preview
Theorem 2.2.10
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
used by 1L∃∀N

Exercise 6.2. Prove Fact 6.8.

Lean code for Lemma6.1.173 theorems
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RandomFunctions.lean
    complete
    theorem FABL.expect_sq_fourierCoeff_uniformBooleanFunction {n : }
      (S : Finset (Fin n)) :
      (Finset.univ.expect fun f => FABL.fourierCoeff f.toReal S ^ 2) =
        1 / 2 ^ n
    theorem FABL.expect_sq_fourierCoeff_uniformBooleanFunction
      {n : } (S : Finset (Fin n)) :
      (Finset.univ.expect fun f =>
          FABL.fourierCoeff f.toReal S ^ 2) =
        1 / 2 ^ n
    Every squared Fourier coefficient has mean `2⁻ⁿ` for a uniformly random sign function. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RandomFunctions.lean
    complete
    theorem FABL.sum_pow_card_sub_one_filter_mem {n : } (ρ : ) (i : Fin n) :
       S with i  S, ρ ^ (S.card - 1) = (1 + ρ) ^ (n - 1)
    theorem FABL.sum_pow_card_sub_one_filter_mem
      {n : } (ρ : ) (i : Fin n) :
       S with i  S, ρ ^ (S.card - 1) =
        (1 + ρ) ^ (n - 1)
    The subset weights in one stable influence sum to `(1 + ρ)ⁿ⁻¹`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RandomFunctions.lean
    complete
    theorem FABL.pmfExpectation_uniformBooleanFunction_stableInfluence {n : }
      (ρ : ) (i : Fin n) :
      (FABL.pmfExpectation (FABL.uniformPMF (FABL.BooleanFunction n))
          fun f => FABL.stableInfluence ρ f.toReal i) =
        (1 + ρ) ^ (n - 1) / 2 ^ n
    theorem FABL.pmfExpectation_uniformBooleanFunction_stableInfluence
      {n : } (ρ : ) (i : Fin n) :
      (FABL.pmfExpectation
          (FABL.uniformPMF
            (FABL.BooleanFunction n))
          fun f =>
          FABL.stableInfluence ρ f.toReal i) =
        (1 + ρ) ^ (n - 1) / 2 ^ n
    Exercise 6.2: before substituting `ρ = 1 - δ`, the expected stable influence of a uniformly
    random sign function is `(1 + ρ)ⁿ⁻¹ / 2ⁿ`. 
Lemma6.1.18
Group: Chapter 6: Pseudorandomness and F₂-polynomials (115)
Group member previews
Preview
Proposition 6.1.1
Loading preview
Group member preview content is loaded from the rendered-fragment cache.
Statement uses 5
Statement dependency previews
Preview
Theorem 1.4.2
Loading preview
Statement dependency preview content is loaded from the rendered-fragment cache.
used by 1L∃∀N

Exercise 6.8. Prove Proposition 6.13.

Lean code for Lemma6.1.184 theorems
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.fourierCoeff_eq_zero_of_dependsOn_of_not_subset {n : }
      (f : FABL.SignCube n  ) {J T : Finset (Fin n)}
      (hdepends : DependsOn f J) (hT : ¬T  J) : FABL.fourierCoeff f T = 0
    theorem FABL.fourierCoeff_eq_zero_of_dependsOn_of_not_subset
      {n : } (f : FABL.SignCube n  )
      {J T : Finset (Fin n)}
      (hdepends : DependsOn f J)
      (hT : ¬T  J) :
      FABL.fourierCoeff f T = 0
    A function depending only on `J` has no Fourier coefficient supported outside `J`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.fourierDegree_toReal_le_of_isKJunta {n : }
      (h : FABL.BooleanFunction n) {k : } (hjunta : FABL.IsKJunta h k) :
      FABL.fourierDegree h.toReal  k
    theorem FABL.fourierDegree_toReal_le_of_isKJunta
      {n : } (h : FABL.BooleanFunction n)
      {k : } (hjunta : FABL.IsKJunta h k) :
      FABL.fourierDegree h.toReal  k
    A Boolean `k`-junta has Fourier degree at most `k`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.fourierOneNorm_toReal_le_two_rpow_half_of_isKJunta {n : }
      (h : FABL.BooleanFunction n) {k : } (hjunta : FABL.IsKJunta h k) :
      FABL.fourierOneNorm h.toReal  2 ^ (k / 2)
    theorem FABL.fourierOneNorm_toReal_le_two_rpow_half_of_isKJunta
      {n : } (h : FABL.BooleanFunction n)
      {k : } (hjunta : FABL.IsKJunta h k) :
      FABL.fourierOneNorm h.toReal 
        2 ^ (k / 2)
    The Fourier `1`-norm of a Boolean `k`-junta is at most `2^(k/2)`. 
  • theoremdefined in FABL/Chapter06/Pseudorandomness/RegularityCharacterizations.lean
    complete
    theorem FABL.IsLowDegreeFourierRegular.abs_covariance_le_fourierOneNorm_mul
      {n : } {ε : } {k : } {f h : FABL.SignCube n  }
      (hregular : FABL.IsLowDegreeFourierRegular ε k f)
      (hdegree : FABL.fourierDegree h  k) ( : 0  ε) :
      |FABL.covariance f h|  FABL.fourierOneNorm h * ε
    theorem FABL.IsLowDegreeFourierRegular.abs_covariance_le_fourierOneNorm_mul
      {n : } {ε : } {k : }
      {f h : FABL.SignCube n  }
      (hregular :
        FABL.IsLowDegreeFourierRegular ε k f)
      (hdegree : FABL.fourierDegree h  k)
      ( : 0  ε) :
      |FABL.covariance f h| 
        FABL.fourierOneNorm h * ε
    The absolute covariance bound underlying Proposition 6.13(1).