9.7. Exercises and notes
-
FABL.bernoulliNegOneOrZero[complete] -
FABL.exercise9_1[complete]
Exercise 9.1. For arbitrary real numbers 1<b<B, construct a
b-reasonable random variable X such that 1+X is not
B-reasonable.
Lean code for Lemma9.7.1●2 declarations
Associated Lean declarations
-
FABL.bernoulliNegOneOrZero[complete]
-
FABL.exercise9_1[complete]
-
FABL.bernoulliNegOneOrZero[complete] -
FABL.exercise9_1[complete]
-
defdefined in FABL/Chapter09/Reasonableness.leancomplete
def FABL.bernoulliNegOneOrZero (b : Bool) : ℝ
def FABL.bernoulliNegOneOrZero (b : Bool) : ℝ
The negative-one-or-zero realization used to witness failure of translation invariance.
-
theoremdefined in FABL/Chapter09/Reasonableness.leancomplete
theorem FABL.exercise9_1 {b B : ℝ} (hb : 1 < b) (hbB : b < B) : ∃ p X, FABL.IsReasonable p b X ∧ ¬FABL.IsReasonable p B fun x => 1 + X x
theorem FABL.exercise9_1 {b B : ℝ} (hb : 1 < b) (hbB : b < B) : ∃ p X, FABL.IsReasonable p b X ∧ ¬FABL.IsReasonable p B fun x => 1 + X x
O'Donnell, Exercise 9.1: reasonableness is not translation invariant, already on a two-point finite probability space.
-
FABL.reasonable_three_add_const[complete] -
FABL.linearForm_threeReasonable[complete] -
FABL.exercise9_2_uniformBits[complete] -
FABL.exercise9_2_independent_threeReasonable[complete]
Exercise 9.2. Suppose \deg(f)\le1 and its inputs are independent,
3-reasonable random variables satisfying
\mathbb E[X_i]=\mathbb E[X_i^3]=0. Prove that f(X) is
3-reasonable.
Lean code for Lemma9.7.2●4 theorems
Associated Lean declarations
-
FABL.reasonable_three_add_const[complete]
-
FABL.linearForm_threeReasonable[complete]
-
FABL.exercise9_2_uniformBits[complete]
-
FABL.exercise9_2_independent_threeReasonable[complete]
-
FABL.reasonable_three_add_const[complete] -
FABL.linearForm_threeReasonable[complete] -
FABL.exercise9_2_uniformBits[complete] -
FABL.exercise9_2_independent_threeReasonable[complete]
-
theoremdefined in FABL/Chapter09/Reasonableness.leancomplete
theorem FABL.reasonable_three_add_const.{u_1} {Ω : Type u_1} [Fintype Ω] (p : PMF Ω) (X : Ω → ℝ) (c : ℝ) (hmean : FABL.pmfExpectation p X = 0) (hthird : (FABL.pmfExpectation p fun x => X x ^ 3) = 0) (hX : FABL.IsReasonable p 3 X) : FABL.IsReasonable p 3 fun x => c + X x
theorem FABL.reasonable_three_add_const.{u_1} {Ω : Type u_1} [Fintype Ω] (p : PMF Ω) (X : Ω → ℝ) (c : ℝ) (hmean : FABL.pmfExpectation p X = 0) (hthird : (FABL.pmfExpectation p fun x => X x ^ 3) = 0) (hX : FABL.IsReasonable p 3 X) : FABL.IsReasonable p 3 fun x => c + X x
Adding a constant preserves the sharp constant `3` for a centered, zero-third-moment, `3`-reasonable finite random variable. This is the affine step in Exercise 9.2.
-
theoremdefined in FABL/Chapter09/Reasonableness.leancomplete
theorem FABL.linearForm_threeReasonable {n : ℕ} (a : Fin n → ℝ) : FABL.IsReasonable (FABL.uniformPMF (FABL.SignCube n)) 3 (FABL.linearForm a)
theorem FABL.linearForm_threeReasonable {n : ℕ} (a : Fin n → ℝ) : FABL.IsReasonable (FABL.uniformPMF (FABL.SignCube n)) 3 (FABL.linearForm a)
The sharp degree-one Bonami estimate for a Rademacher linear form.
-
theoremdefined in FABL/Chapter09/Reasonableness.leancomplete
theorem FABL.exercise9_2_uniformBits {n : ℕ} (c : ℝ) (a : Fin n → ℝ) : FABL.IsReasonable (FABL.uniformPMF (FABL.SignCube n)) 3 fun x => c + FABL.linearForm a x
theorem FABL.exercise9_2_uniformBits {n : ℕ} (c : ℝ) (a : Fin n → ℝ) : FABL.IsReasonable (FABL.uniformPMF (FABL.SignCube n)) 3 fun x => c + FABL.linearForm a x
O'Donnell, Exercise 9.2 for the displayed finite uniform-bit instance: every affine degree-one polynomial of independent uniform signs is `3`-reasonable.
-
theoremdefined in FABL/Chapter09/ReasonableProductPolynomials.leancomplete
theorem FABL.exercise9_2_independent_threeReasonable.{u_1} {n : ℕ} {Ω : Fin n → Type u_1} [(i : Fin n) → Fintype (Ω i)] (p : (i : Fin n) → PMF (Ω i)) (X : (i : Fin n) → Ω i → ℝ) (a : Finset (Fin n) → ℝ) (hmean : ∀ (i : Fin n), FABL.pmfExpectation (p i) (X i) = 0) (hthird : ∀ (i : Fin n), (FABL.pmfExpectation (p i) fun z => X i z ^ 3) = 0) (hreasonable : ∀ (i : Fin n), FABL.IsReasonable (p i) 3 (X i)) (hdegree : FABL.MultilinearDegreeAtMost a 1) : FABL.IsReasonable (FABL.independentProductPMF p) 3 (FABL.productMultilinearRandomVariable a X)
theorem FABL.exercise9_2_independent_threeReasonable.{u_1} {n : ℕ} {Ω : Fin n → Type u_1} [(i : Fin n) → Fintype (Ω i)] (p : (i : Fin n) → PMF (Ω i)) (X : (i : Fin n) → Ω i → ℝ) (a : Finset (Fin n) → ℝ) (hmean : ∀ (i : Fin n), FABL.pmfExpectation (p i) (X i) = 0) (hthird : ∀ (i : Fin n), (FABL.pmfExpectation (p i) fun z => X i z ^ 3) = 0) (hreasonable : ∀ (i : Fin n), FABL.IsReasonable (p i) 3 (X i)) (hdegree : FABL.MultilinearDegreeAtMost a 1) : FABL.IsReasonable (FABL.independentProductPMF p) 3 (FABL.productMultilinearRandomVariable a X)
Exercise 9.2 in its general independent-variable form: every degree-one multilinear polynomial of independent `3`-reasonable variables whose first and third moments vanish is itself `3`-reasonable.
-
FABL.DisjointBlockChoices[complete] -
FABL.DisjointBlockChoices.blocks[complete] -
FABL.DisjointBlockChoices.blocks_length[complete] -
FABL.DisjointBlockChoices.blocks_card[complete] -
FABL.DisjointBlockChoices.blocks_subset[complete] -
FABL.DisjointBlockChoices.blocks_pairwiseDisjoint[complete] -
FABL.DisjointBlockChoices.ext_of_blocks_eq[complete] -
FABL.SixDisjointBlockChoice[complete] -
FABL.disjointBlockChoicesFintype[complete] -
FABL.SixDisjointBlockChoice.block[complete] -
FABL.SixDisjointBlockChoice.block_card[complete] -
FABL.SixDisjointBlockChoice.block_pairwiseDisjoint[complete] -
FABL.natCard_powersetCardSubtype[complete] -
FABL.natCard_disjointBlockChoices[complete] -
FABL.natCard_sixDisjointBlockChoice[complete] -
FABL.prod_choose_sub_mul_factorials[complete] -
FABL.sixBlockMultinomial[complete] -
FABL.natCard_sixDisjointBlockChoice_eq_multinomial[complete] -
FABL.k4EdgeEnds[complete] -
FABL.k4IncidentEdges[complete] -
FABL.card_k4IncidentEdges[complete] -
FABL.SixDisjointBlockChoice.incidentSupport[complete] -
FABL.SixDisjointBlockChoice.incidentSupport_card[complete] -
FABL.SixDisjointBlockChoice.eq_of_mem_blocks[complete] -
FABL.tupleSymmDiff_finFour[complete] -
FABL.SixDisjointBlockChoice.tupleSymmDiff_incidentSupport[complete] -
FABL.SixDisjointBlockChoice.block_eq_incidentSupport_inter[complete] -
FABL.levelKPolynomial[complete] -
FABL.fourierCoeff_levelKPolynomial[complete] -
FABL.expect_levelKPolynomial_sq[complete] -
FABL.LevelKParityTuple[complete] -
FABL.SixDisjointBlockChoice.toParityTuple[complete] -
FABL.SixDisjointBlockChoice.toParityTuple_injective[complete] -
FABL.expect_levelKPolynomial_pow_eq_natCard_parityTuple[complete] -
FABL.natCard_le_fourthMoment_levelKPolynomial_of_injective[complete] -
FABL.sixBlockMultinomial_le_fourthMoment_levelKPolynomial[complete] -
FABL.exercise9_3_fourthMoment_lower_bound[complete] -
FABL.exercise9_3_fourthMoment_lower_bound_of_dvd[complete] -
FABL.fixedShiftFactorialRatio[complete] -
FABL.tendsto_fixedShiftFactorialRatio[complete] -
FABL.fixedShiftFactorialRatio_eq_factorial_ratio[complete] -
FABL.sixBlockMultinomial_shift_mul_factorials[complete] -
FABL.choose_three_mul_shift_mul_factorials[complete] -
FABL.exercise9_3_ratio_shift_eq[complete] -
FABL.tendsto_exercise9_3_multinomial_ratio[complete] -
FABL.factorialStirlingApprox[complete] -
FABL.factorial_isEquivalent_factorialStirlingApprox[complete] -
FABL.factorialStirlingApprox_three_ratio_eq[complete] -
FABL.levelThreeFactorialConstant[complete] -
FABL.levelThreeGrowth[complete] -
FABL.levelThreeFactorialConstant_isEquivalent[complete] -
FABL.levelThreeFactorialConstant_isTheta[complete] -
FABL.levelThreeBookGrowth[complete] -
FABL.levelThreeGrowth_eq_nine_mul_bookGrowth[complete] -
FABL.levelThreeFactorialConstant_isTheta_bookGrowth[complete] -
FABL.exercise9_3_uniformLpNorm_lower_bound[complete] -
FABL.levelThreeBookNormGrowth[complete] -
FABL.levelThreeBookGrowth_fourthRoot_eq_normGrowth[complete] -
FABL.levelThreeFactorialConstant_fourthRoot_isTheta_normGrowth[complete]
Exercise 9.3. Let 3\mid k, n\ge2k, and
f(x)=\sum_{|S|=k}x^S.
Prove
\mathbb E[f^4]
\ge
\frac{\binom{n}{k/3,k/3,k/3,k/3,k/3,k/3,n-2k}}
{\binom nk^2}
\mathbb E[f^2]^2.
As n\to\infty, prove the ratio is \Theta(k^{-2}9^k) and hence
\|f\|_4
\ge\Omega(k^{-1/2})(\sqrt3)^k\|f\|_2.
Lean code for Lemma9.7.3●59 declarations
Associated Lean declarations
-
FABL.DisjointBlockChoices[complete]
-
FABL.DisjointBlockChoices.blocks[complete]
-
FABL.DisjointBlockChoices.blocks_length[complete]
-
FABL.DisjointBlockChoices.blocks_card[complete]
-
FABL.DisjointBlockChoices.blocks_subset[complete]
-
FABL.DisjointBlockChoices.blocks_pairwiseDisjoint[complete]
-
FABL.DisjointBlockChoices.ext_of_blocks_eq[complete]
-
FABL.SixDisjointBlockChoice[complete]
-
FABL.disjointBlockChoicesFintype[complete]
-
FABL.SixDisjointBlockChoice.block[complete]
-
FABL.SixDisjointBlockChoice.block_card[complete]
-
FABL.SixDisjointBlockChoice.block_pairwiseDisjoint[complete]
-
FABL.natCard_powersetCardSubtype[complete]
-
FABL.natCard_disjointBlockChoices[complete]
-
FABL.natCard_sixDisjointBlockChoice[complete]
-
FABL.prod_choose_sub_mul_factorials[complete]
-
FABL.sixBlockMultinomial[complete]
-
FABL.natCard_sixDisjointBlockChoice_eq_multinomial[complete]
-
FABL.k4EdgeEnds[complete]
-
FABL.k4IncidentEdges[complete]
-
FABL.card_k4IncidentEdges[complete]
-
FABL.SixDisjointBlockChoice.incidentSupport[complete]
-
FABL.SixDisjointBlockChoice.incidentSupport_card[complete]
-
FABL.SixDisjointBlockChoice.eq_of_mem_blocks[complete]
-
FABL.tupleSymmDiff_finFour[complete]
-
FABL.SixDisjointBlockChoice.tupleSymmDiff_incidentSupport[complete]
-
FABL.SixDisjointBlockChoice.block_eq_incidentSupport_inter[complete]
-
FABL.levelKPolynomial[complete]
-
FABL.fourierCoeff_levelKPolynomial[complete]
-
FABL.expect_levelKPolynomial_sq[complete]
-
FABL.LevelKParityTuple[complete]
-
FABL.SixDisjointBlockChoice.toParityTuple[complete]
-
FABL.SixDisjointBlockChoice.toParityTuple_injective[complete]
-
FABL.expect_levelKPolynomial_pow_eq_natCard_parityTuple[complete]
-
FABL.natCard_le_fourthMoment_levelKPolynomial_of_injective[complete]
-
FABL.sixBlockMultinomial_le_fourthMoment_levelKPolynomial[complete]
-
FABL.exercise9_3_fourthMoment_lower_bound[complete]
-
FABL.exercise9_3_fourthMoment_lower_bound_of_dvd[complete]
-
FABL.fixedShiftFactorialRatio[complete]
-
FABL.tendsto_fixedShiftFactorialRatio[complete]
-
FABL.fixedShiftFactorialRatio_eq_factorial_ratio[complete]
-
FABL.sixBlockMultinomial_shift_mul_factorials[complete]
-
FABL.choose_three_mul_shift_mul_factorials[complete]
-
FABL.exercise9_3_ratio_shift_eq[complete]
-
FABL.tendsto_exercise9_3_multinomial_ratio[complete]
-
FABL.factorialStirlingApprox[complete]
-
FABL.factorial_isEquivalent_factorialStirlingApprox[complete]
-
FABL.factorialStirlingApprox_three_ratio_eq[complete]
-
FABL.levelThreeFactorialConstant[complete]
-
FABL.levelThreeGrowth[complete]
-
FABL.levelThreeFactorialConstant_isEquivalent[complete]
-
FABL.levelThreeFactorialConstant_isTheta[complete]
-
FABL.levelThreeBookGrowth[complete]
-
FABL.levelThreeGrowth_eq_nine_mul_bookGrowth[complete]
-
FABL.levelThreeFactorialConstant_isTheta_bookGrowth[complete]
-
FABL.exercise9_3_uniformLpNorm_lower_bound[complete]
-
FABL.levelThreeBookNormGrowth[complete]
-
FABL.levelThreeBookGrowth_fourthRoot_eq_normGrowth[complete]
-
FABL.levelThreeFactorialConstant_fourthRoot_isTheta_normGrowth[complete]
-
FABL.DisjointBlockChoices[complete] -
FABL.DisjointBlockChoices.blocks[complete] -
FABL.DisjointBlockChoices.blocks_length[complete] -
FABL.DisjointBlockChoices.blocks_card[complete] -
FABL.DisjointBlockChoices.blocks_subset[complete] -
FABL.DisjointBlockChoices.blocks_pairwiseDisjoint[complete] -
FABL.DisjointBlockChoices.ext_of_blocks_eq[complete] -
FABL.SixDisjointBlockChoice[complete] -
FABL.disjointBlockChoicesFintype[complete] -
FABL.SixDisjointBlockChoice.block[complete] -
FABL.SixDisjointBlockChoice.block_card[complete] -
FABL.SixDisjointBlockChoice.block_pairwiseDisjoint[complete] -
FABL.natCard_powersetCardSubtype[complete] -
FABL.natCard_disjointBlockChoices[complete] -
FABL.natCard_sixDisjointBlockChoice[complete] -
FABL.prod_choose_sub_mul_factorials[complete] -
FABL.sixBlockMultinomial[complete] -
FABL.natCard_sixDisjointBlockChoice_eq_multinomial[complete] -
FABL.k4EdgeEnds[complete] -
FABL.k4IncidentEdges[complete] -
FABL.card_k4IncidentEdges[complete] -
FABL.SixDisjointBlockChoice.incidentSupport[complete] -
FABL.SixDisjointBlockChoice.incidentSupport_card[complete] -
FABL.SixDisjointBlockChoice.eq_of_mem_blocks[complete] -
FABL.tupleSymmDiff_finFour[complete] -
FABL.SixDisjointBlockChoice.tupleSymmDiff_incidentSupport[complete] -
FABL.SixDisjointBlockChoice.block_eq_incidentSupport_inter[complete] -
FABL.levelKPolynomial[complete] -
FABL.fourierCoeff_levelKPolynomial[complete] -
FABL.expect_levelKPolynomial_sq[complete] -
FABL.LevelKParityTuple[complete] -
FABL.SixDisjointBlockChoice.toParityTuple[complete] -
FABL.SixDisjointBlockChoice.toParityTuple_injective[complete] -
FABL.expect_levelKPolynomial_pow_eq_natCard_parityTuple[complete] -
FABL.natCard_le_fourthMoment_levelKPolynomial_of_injective[complete] -
FABL.sixBlockMultinomial_le_fourthMoment_levelKPolynomial[complete] -
FABL.exercise9_3_fourthMoment_lower_bound[complete] -
FABL.exercise9_3_fourthMoment_lower_bound_of_dvd[complete] -
FABL.fixedShiftFactorialRatio[complete] -
FABL.tendsto_fixedShiftFactorialRatio[complete] -
FABL.fixedShiftFactorialRatio_eq_factorial_ratio[complete] -
FABL.sixBlockMultinomial_shift_mul_factorials[complete] -
FABL.choose_three_mul_shift_mul_factorials[complete] -
FABL.exercise9_3_ratio_shift_eq[complete] -
FABL.tendsto_exercise9_3_multinomial_ratio[complete] -
FABL.factorialStirlingApprox[complete] -
FABL.factorial_isEquivalent_factorialStirlingApprox[complete] -
FABL.factorialStirlingApprox_three_ratio_eq[complete] -
FABL.levelThreeFactorialConstant[complete] -
FABL.levelThreeGrowth[complete] -
FABL.levelThreeFactorialConstant_isEquivalent[complete] -
FABL.levelThreeFactorialConstant_isTheta[complete] -
FABL.levelThreeBookGrowth[complete] -
FABL.levelThreeGrowth_eq_nine_mul_bookGrowth[complete] -
FABL.levelThreeFactorialConstant_isTheta_bookGrowth[complete] -
FABL.exercise9_3_uniformLpNorm_lower_bound[complete] -
FABL.levelThreeBookNormGrowth[complete] -
FABL.levelThreeBookGrowth_fourthRoot_eq_normGrowth[complete] -
FABL.levelThreeFactorialConstant_fourthRoot_isTheta_normGrowth[complete]
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.DisjointBlockChoices.{u} {α : Type u} [DecidableEq α] (remaining : Finset α) (d : ℕ) : ℕ → Type u
def FABL.DisjointBlockChoices.{u} {α : Type u} [DecidableEq α] (remaining : Finset α) (d : ℕ) : ℕ → Type u
Sequentially choose `t` disjoint `d`-element blocks from a finite set of remaining points.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.DisjointBlockChoices.blocks.{u_1} {α : Type u_1} [DecidableEq α] {remaining : Finset α} {d : ℕ} (t : ℕ) : FABL.DisjointBlockChoices remaining d t → List (Finset α)
def FABL.DisjointBlockChoices.blocks.{u_1} {α : Type u_1} [DecidableEq α] {remaining : Finset α} {d : ℕ} (t : ℕ) : FABL.DisjointBlockChoices remaining d t → List (Finset α)
The list of blocks encoded by a sequential disjoint-block choice.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.DisjointBlockChoices.blocks_length.{u_1} {α : Type u_1} [DecidableEq α] {remaining : Finset α} {d t : ℕ} (choice : FABL.DisjointBlockChoices remaining d t) : (FABL.DisjointBlockChoices.blocks t choice).length = t
theorem FABL.DisjointBlockChoices.blocks_length.{u_1} {α : Type u_1} [DecidableEq α] {remaining : Finset α} {d t : ℕ} (choice : FABL.DisjointBlockChoices remaining d t) : (FABL.DisjointBlockChoices.blocks t choice).length = t
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.DisjointBlockChoices.blocks_card.{u_1} {α : Type u_1} [DecidableEq α] {remaining : Finset α} {d t : ℕ} (choice : FABL.DisjointBlockChoices remaining d t) {block : Finset α} (hblock : block ∈ FABL.DisjointBlockChoices.blocks t choice) : block.card = d
theorem FABL.DisjointBlockChoices.blocks_card.{u_1} {α : Type u_1} [DecidableEq α] {remaining : Finset α} {d t : ℕ} (choice : FABL.DisjointBlockChoices remaining d t) {block : Finset α} (hblock : block ∈ FABL.DisjointBlockChoices.blocks t choice) : block.card = d
Every chosen block has the requested cardinality.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.DisjointBlockChoices.blocks_subset.{u_1} {α : Type u_1} [DecidableEq α] {remaining : Finset α} {d t : ℕ} (choice : FABL.DisjointBlockChoices remaining d t) {block : Finset α} (hblock : block ∈ FABL.DisjointBlockChoices.blocks t choice) : block ⊆ remaining
theorem FABL.DisjointBlockChoices.blocks_subset.{u_1} {α : Type u_1} [DecidableEq α] {remaining : Finset α} {d t : ℕ} (choice : FABL.DisjointBlockChoices remaining d t) {block : Finset α} (hblock : block ∈ FABL.DisjointBlockChoices.blocks t choice) : block ⊆ remaining
Every chosen block is contained in the initial remaining set.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.DisjointBlockChoices.blocks_pairwiseDisjoint.{u_1} {α : Type u_1} [DecidableEq α] {remaining : Finset α} {d t : ℕ} (choice : FABL.DisjointBlockChoices remaining d t) : List.Pairwise Disjoint (FABL.DisjointBlockChoices.blocks t choice)
theorem FABL.DisjointBlockChoices.blocks_pairwiseDisjoint.{u_1} {α : Type u_1} [DecidableEq α] {remaining : Finset α} {d t : ℕ} (choice : FABL.DisjointBlockChoices remaining d t) : List.Pairwise Disjoint (FABL.DisjointBlockChoices.blocks t choice)
The chosen blocks are pairwise disjoint.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.DisjointBlockChoices.ext_of_blocks_eq.{u} {α : Type u} [DecidableEq α] {remaining : Finset α} {d t : ℕ} (first second : FABL.DisjointBlockChoices remaining d t) (hblocks : FABL.DisjointBlockChoices.blocks t first = FABL.DisjointBlockChoices.blocks t second) : first = second
theorem FABL.DisjointBlockChoices.ext_of_blocks_eq.{u} {α : Type u} [DecidableEq α] {remaining : Finset α} {d t : ℕ} (first second : FABL.DisjointBlockChoices remaining d t) (hblocks : FABL.DisjointBlockChoices.blocks t first = FABL.DisjointBlockChoices.blocks t second) : first = second
A sequential disjoint-block choice is determined by its block list.
-
abbrevdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
abbrev FABL.SixDisjointBlockChoice (n d : ℕ) : Type
abbrev FABL.SixDisjointBlockChoice (n d : ℕ) : Type
Six disjoint `d`-blocks in `[n]`, in their book ordering.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.disjointBlockChoicesFintype.{u} {α : Type u} [DecidableEq α] (remaining : Finset α) (d t : ℕ) : Fintype (FABL.DisjointBlockChoices remaining d t)
def FABL.disjointBlockChoicesFintype.{u} {α : Type u} [DecidableEq α] (remaining : Finset α) (d t : ℕ) : Fintype (FABL.DisjointBlockChoices remaining d t)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.SixDisjointBlockChoice.block {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) (i : Fin 6) : Finset (Fin n)
def FABL.SixDisjointBlockChoice.block {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) (i : Fin 6) : Finset (Fin n)
The `i`th of the six blocks.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.SixDisjointBlockChoice.block_card {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) (i : Fin 6) : (choice.block i).card = d
theorem FABL.SixDisjointBlockChoice.block_card {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) (i : Fin 6) : (choice.block i).card = d
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.SixDisjointBlockChoice.block_pairwiseDisjoint {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) : Pairwise fun i j => Disjoint (choice.block i) (choice.block j)
theorem FABL.SixDisjointBlockChoice.block_pairwiseDisjoint {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) : Pairwise fun i j => Disjoint (choice.block i) (choice.block j)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.natCard_powersetCardSubtype.{u} {α : Type u} (remaining : Finset α) (d : ℕ) : Nat.card ↥(Finset.powersetCard d remaining) = remaining.card.choose d
theorem FABL.natCard_powersetCardSubtype.{u} {α : Type u} (remaining : Finset α) (d : ℕ) : Nat.card ↥(Finset.powersetCard d remaining) = remaining.card.choose d
Cardinality of the type of one `d`-block chosen from `remaining`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.natCard_disjointBlockChoices.{u} {α : Type u} [DecidableEq α] (remaining : Finset α) (d t : ℕ) : Nat.card (FABL.DisjointBlockChoices remaining d t) = ∏ j ∈ Finset.range t, (remaining.card - j * d).choose d
theorem FABL.natCard_disjointBlockChoices.{u} {α : Type u} [DecidableEq α] (remaining : Finset α) (d t : ℕ) : Nat.card (FABL.DisjointBlockChoices remaining d t) = ∏ j ∈ Finset.range t, (remaining.card - j * d).choose d
Exact cardinality of sequential disjoint-block choices.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.natCard_sixDisjointBlockChoice (n d : ℕ) : Nat.card (FABL.SixDisjointBlockChoice n d) = ∏ j ∈ Finset.range 6, (n - j * d).choose d
theorem FABL.natCard_sixDisjointBlockChoice (n d : ℕ) : Nat.card (FABL.SixDisjointBlockChoice n d) = ∏ j ∈ Finset.range 6, (n - j * d).choose d
The six-block choice cardinal is the sequential multinomial product.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.prod_choose_sub_mul_factorials (n d t : ℕ) (hdt : t * d ≤ n) : (∏ j ∈ Finset.range t, (n - j * d).choose d) * d.factorial ^ t * (n - t * d).factorial = n.factorial
theorem FABL.prod_choose_sub_mul_factorials (n d t : ℕ) (hdt : t * d ≤ n) : (∏ j ∈ Finset.range t, (n - j * d).choose d) * d.factorial ^ t * (n - t * d).factorial = n.factorial
Telescoping factorial identity for sequential equal-size block choices.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.sixBlockMultinomial (n d : ℕ) : ℕ
def FABL.sixBlockMultinomial (n d : ℕ) : ℕ
The seven-cell multinomial coefficient used in Exercise 9.3: six cells have size `d`, and the residual cell has size `n-6d`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.natCard_sixDisjointBlockChoice_eq_multinomial (n d : ℕ) (hnd : 6 * d ≤ n) : Nat.card (FABL.SixDisjointBlockChoice n d) = FABL.sixBlockMultinomial n d
theorem FABL.natCard_sixDisjointBlockChoice_eq_multinomial (n d : ℕ) (hnd : 6 * d ≤ n) : Nat.card (FABL.SixDisjointBlockChoice n d) = FABL.sixBlockMultinomial n d
The sequential six-block cardinal equals the book's multinomial coefficient.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.k4EdgeEnds : Fin 6 → Fin 4 × Fin 4
def FABL.k4EdgeEnds : Fin 6 → Fin 4 × Fin 4
The six edges of the complete graph on four labeled vertices, in the order `01,02,03,12,13,23`.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.k4IncidentEdges (v : Fin 4) : Finset (Fin 6)
def FABL.k4IncidentEdges (v : Fin 4) : Finset (Fin 6)
Edges incident to a vertex of `K₄`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_k4IncidentEdges (v : Fin 4) : (FABL.k4IncidentEdges v).card = 3
theorem FABL.card_k4IncidentEdges (v : Fin 4) : (FABL.k4IncidentEdges v).card = 3
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.SixDisjointBlockChoice.incidentSupport {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) (v : Fin 4) : Finset (Fin n)
def FABL.SixDisjointBlockChoice.incidentSupport {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) (v : Fin 4) : Finset (Fin n)
Union of the three blocks labeling edges incident to `v`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.SixDisjointBlockChoice.incidentSupport_card {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) (v : Fin 4) : (choice.incidentSupport v).card = 3 * d
theorem FABL.SixDisjointBlockChoice.incidentSupport_card {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) (v : Fin 4) : (choice.incidentSupport v).card = 3 * d
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.SixDisjointBlockChoice.eq_of_mem_blocks {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) {x : Fin n} {i j : Fin 6} (hi : x ∈ choice.block i) (hj : x ∈ choice.block j) : i = j
theorem FABL.SixDisjointBlockChoice.eq_of_mem_blocks {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) {x : Fin n} {i j : Fin 6} (hi : x ∈ choice.block i) (hj : x ∈ choice.block j) : i = j
A point belongs to at most one of the six disjoint blocks.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.tupleSymmDiff_finFour.{u_1} {α : Type u_1} [DecidableEq α] (sets : Fin 4 → Finset α) : FABL.tupleSymmDiff sets = symmDiff (sets 0) (symmDiff (sets 1) (symmDiff (sets 2) (symmDiff (sets 3) ∅)))
theorem FABL.tupleSymmDiff_finFour.{u_1} {α : Type u_1} [DecidableEq α] (sets : Fin 4 → Finset α) : FABL.tupleSymmDiff sets = symmDiff (sets 0) (symmDiff (sets 1) (symmDiff (sets 2) (symmDiff (sets 3) ∅)))
Expanding a four-tuple's symmetric difference.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.SixDisjointBlockChoice.tupleSymmDiff_incidentSupport {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) : (FABL.tupleSymmDiff fun v => choice.incidentSupport v) = ∅
theorem FABL.SixDisjointBlockChoice.tupleSymmDiff_incidentSupport {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) : (FABL.tupleSymmDiff fun v => choice.incidentSupport v) = ∅
Every block labels one edge and hence occurs in exactly two of the four incident supports; their total symmetric difference is empty.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.SixDisjointBlockChoice.block_eq_incidentSupport_inter {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) (edge : Fin 6) : choice.block edge = choice.incidentSupport (FABL.k4EdgeEnds edge).1 ∩ choice.incidentSupport (FABL.k4EdgeEnds edge).2
theorem FABL.SixDisjointBlockChoice.block_eq_incidentSupport_inter {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) (edge : Fin 6) : choice.block edge = choice.incidentSupport (FABL.k4EdgeEnds edge).1 ∩ choice.incidentSupport (FABL.k4EdgeEnds edge).2
Recover an edge block as the intersection of its two endpoint supports.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.levelKPolynomial {n : ℕ} (k : ℕ) : FABL.SignCube n → ℝ
def FABL.levelKPolynomial {n : ℕ} (k : ℕ) : FABL.SignCube n → ℝ
The sum of all Walsh monomials at level `k`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.fourierCoeff_levelKPolynomial {n : ℕ} (k : ℕ) (T : Finset (Fin n)) : FABL.fourierCoeff (FABL.levelKPolynomial k) T = if T.card = k then 1 else 0
theorem FABL.fourierCoeff_levelKPolynomial {n : ℕ} (k : ℕ) (T : Finset (Fin n)) : FABL.fourierCoeff (FABL.levelKPolynomial k) T = if T.card = k then 1 else 0
Fourier coefficients of the level-`k` monomial sum.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.expect_levelKPolynomial_sq (n k : ℕ) : (Finset.univ.expect fun x => FABL.levelKPolynomial k x ^ 2) = ↑(n.choose k)
theorem FABL.expect_levelKPolynomial_sq (n k : ℕ) : (Finset.univ.expect fun x => FABL.levelKPolynomial k x ^ 2) = ↑(n.choose k)
The second moment of the level-`k` monomial sum is `n choose k`.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.LevelKParityTuple (n k q : ℕ) : Type
def FABL.LevelKParityTuple (n k q : ℕ) : Type
A tuple of level-`k` supports whose total symmetric difference is empty.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.SixDisjointBlockChoice.toParityTuple {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) : FABL.LevelKParityTuple n (3 * d) 4
def FABL.SixDisjointBlockChoice.toParityTuple {n d : ℕ} (choice : FABL.SixDisjointBlockChoice n d) : FABL.LevelKParityTuple n (3 * d) 4
The four level-`3d` supports constructed from six disjoint `d`-blocks.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.SixDisjointBlockChoice.toParityTuple_injective {n d : ℕ} : Function.Injective FABL.SixDisjointBlockChoice.toParityTuple
theorem FABL.SixDisjointBlockChoice.toParityTuple_injective {n d : ℕ} : Function.Injective FABL.SixDisjointBlockChoice.toParityTuple
The six-block construction is injective: every edge block is recovered as the intersection of its endpoint supports.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.expect_levelKPolynomial_pow_eq_natCard_parityTuple (n k q : ℕ) : (Finset.univ.expect fun x => FABL.levelKPolynomial k x ^ q) = ↑(Nat.card (FABL.LevelKParityTuple n k q))
theorem FABL.expect_levelKPolynomial_pow_eq_natCard_parityTuple (n k q : ℕ) : (Finset.univ.expect fun x => FABL.levelKPolynomial k x ^ q) = ↑(Nat.card (FABL.LevelKParityTuple n k q))
The moment of the level-`k` monomial sum counts its parity-zero support tuples.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.natCard_le_fourthMoment_levelKPolynomial_of_injective.{u_1} {W : Type u_1} [Finite W] (n k : ℕ) (encode : W → FABL.LevelKParityTuple n k 4) (hencode : Function.Injective encode) : ↑(Nat.card W) ≤ Finset.univ.expect fun x => FABL.levelKPolynomial k x ^ 4
theorem FABL.natCard_le_fourthMoment_levelKPolynomial_of_injective.{u_1} {W : Type u_1} [Finite W] (n k : ℕ) (encode : W → FABL.LevelKParityTuple n k 4) (hencode : Function.Injective encode) : ↑(Nat.card W) ≤ Finset.univ.expect fun x => FABL.levelKPolynomial k x ^ 4
Any explicitly injected family of parity-zero level-`k` tuples gives a fourth-moment lower bound. Exercise 9.3 uses the family of six disjoint `k/3`-blocks.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.sixBlockMultinomial_le_fourthMoment_levelKPolynomial (n d : ℕ) (hnd : 6 * d ≤ n) : ↑(FABL.sixBlockMultinomial n d) ≤ Finset.univ.expect fun x => FABL.levelKPolynomial (3 * d) x ^ 4
theorem FABL.sixBlockMultinomial_le_fourthMoment_levelKPolynomial (n d : ℕ) (hnd : 6 * d ≤ n) : ↑(FABL.sixBlockMultinomial n d) ≤ Finset.univ.expect fun x => FABL.levelKPolynomial (3 * d) x ^ 4
Exercise 9.3(a), finite combinatorial core: six disjoint `d`-blocks inject into the fourth-moment parity tuples at level `3d`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.exercise9_3_fourthMoment_lower_bound (n d : ℕ) (hnd : 6 * d ≤ n) : ↑(FABL.sixBlockMultinomial n d) / ↑(n.choose (3 * d)) ^ 2 * (Finset.univ.expect fun x => FABL.levelKPolynomial (3 * d) x ^ 2) ^ 2 ≤ Finset.univ.expect fun x => FABL.levelKPolynomial (3 * d) x ^ 4
theorem FABL.exercise9_3_fourthMoment_lower_bound (n d : ℕ) (hnd : 6 * d ≤ n) : ↑(FABL.sixBlockMultinomial n d) / ↑(n.choose (3 * d)) ^ 2 * (Finset.univ.expect fun x => FABL.levelKPolynomial (3 * d) x ^ 2) ^ 2 ≤ Finset.univ.expect fun x => FABL.levelKPolynomial (3 * d) x ^ 4
Exercise 9.3(a) in the book's ratio-times-second-moment-squared form.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.exercise9_3_fourthMoment_lower_bound_of_dvd (n k : ℕ) (_hkpos : 0 < k) (hk : 3 ∣ k) (hn : 2 * k ≤ n) : ↑(FABL.sixBlockMultinomial n (k / 3)) / ↑(n.choose k) ^ 2 * (Finset.univ.expect fun x => FABL.levelKPolynomial k x ^ 2) ^ 2 ≤ Finset.univ.expect fun x => FABL.levelKPolynomial k x ^ 4
theorem FABL.exercise9_3_fourthMoment_lower_bound_of_dvd (n k : ℕ) (_hkpos : 0 < k) (hk : 3 ∣ k) (hn : 2 * k ≤ n) : ↑(FABL.sixBlockMultinomial n (k / 3)) / ↑(n.choose k) ^ 2 * (Finset.univ.expect fun x => FABL.levelKPolynomial k x ^ 2) ^ 2 ≤ Finset.univ.expect fun x => FABL.levelKPolynomial k x ^ 4
Exercise 9.3(a), specialized from the book's hypotheses `3 ∣ k` and `n ≥ 2k`.
-
defdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
def FABL.fixedShiftFactorialRatio (m d : ℕ) : ℝ
def FABL.fixedShiftFactorialRatio (m d : ℕ) : ℝ
The finite shift quotient left after cancelling the two multinomial coefficients in Exercise 9.3(b).
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.tendsto_fixedShiftFactorialRatio (d : ℕ) : Filter.Tendsto (fun m => FABL.fixedShiftFactorialRatio m d) Filter.atTop (nhds 1)
theorem FABL.tendsto_fixedShiftFactorialRatio (d : ℕ) : Filter.Tendsto (fun m => FABL.fixedShiftFactorialRatio m d) Filter.atTop (nhds 1)
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.fixedShiftFactorialRatio_eq_factorial_ratio (m d : ℕ) : FABL.fixedShiftFactorialRatio m d = ↑(m + 3 * d).factorial ^ 2 / (↑(m + 6 * d).factorial * ↑m.factorial)
theorem FABL.fixedShiftFactorialRatio_eq_factorial_ratio (m d : ℕ) : FABL.fixedShiftFactorialRatio m d = ↑(m + 3 * d).factorial ^ 2 / (↑(m + 6 * d).factorial * ↑m.factorial)
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.sixBlockMultinomial_shift_mul_factorials (m d : ℕ) : FABL.sixBlockMultinomial (m + 6 * d) d * d.factorial ^ 6 * m.factorial = (m + 6 * d).factorial
theorem FABL.sixBlockMultinomial_shift_mul_factorials (m d : ℕ) : FABL.sixBlockMultinomial (m + 6 * d) d * d.factorial ^ 6 * m.factorial = (m + 6 * d).factorial
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.choose_three_mul_shift_mul_factorials (m d : ℕ) : (m + 6 * d).choose (3 * d) * (3 * d).factorial * (m + 3 * d).factorial = (m + 6 * d).factorial
theorem FABL.choose_three_mul_shift_mul_factorials (m d : ℕ) : (m + 6 * d).choose (3 * d) * (3 * d).factorial * (m + 3 * d).factorial = (m + 6 * d).factorial
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.exercise9_3_ratio_shift_eq (m d : ℕ) : ↑(FABL.sixBlockMultinomial (m + 6 * d) d) / ↑((m + 6 * d).choose (3 * d)) ^ 2 = ↑(3 * d).factorial ^ 2 / ↑d.factorial ^ 6 * FABL.fixedShiftFactorialRatio m d
theorem FABL.exercise9_3_ratio_shift_eq (m d : ℕ) : ↑(FABL.sixBlockMultinomial (m + 6 * d) d) / ↑((m + 6 * d).choose (3 * d)) ^ 2 = ↑(3 * d).factorial ^ 2 / ↑d.factorial ^ 6 * FABL.fixedShiftFactorialRatio m d
Exercise 9.3(b), exact finite bridge along `n=m+6d`. This is precisely the book's `k=3d`, `n≥2k` regime.
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.tendsto_exercise9_3_multinomial_ratio (d : ℕ) : Filter.Tendsto (fun m => ↑(FABL.sixBlockMultinomial (m + 6 * d) d) / ↑((m + 6 * d).choose (3 * d)) ^ 2) Filter.atTop (nhds (↑(3 * d).factorial ^ 2 / ↑d.factorial ^ 6))
theorem FABL.tendsto_exercise9_3_multinomial_ratio (d : ℕ) : Filter.Tendsto (fun m => ↑(FABL.sixBlockMultinomial (m + 6 * d) d) / ↑((m + 6 * d).choose (3 * d)) ^ 2) Filter.atTop (nhds (↑(3 * d).factorial ^ 2 / ↑d.factorial ^ 6))
Exercise 9.3(b): for fixed `d`, the multinomial ratio converges to the factorial constant claimed in the book.
-
defdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
def FABL.factorialStirlingApprox (n : ℕ) : ℝ
def FABL.factorialStirlingApprox (n : ℕ) : ℝ
The exact comparison function in Mathlib's Stirling equivalence.
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.factorial_isEquivalent_factorialStirlingApprox : Asymptotics.IsEquivalent Filter.atTop (fun n => ↑n.factorial) FABL.factorialStirlingApprox
theorem FABL.factorial_isEquivalent_factorialStirlingApprox : Asymptotics.IsEquivalent Filter.atTop (fun n => ↑n.factorial) FABL.factorialStirlingApprox
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.factorialStirlingApprox_three_ratio_eq (d : ℕ) (hd : 0 < d) : FABL.factorialStirlingApprox (3 * d) ^ 2 / FABL.factorialStirlingApprox d ^ 6 = 3 / (4 * Real.pi ^ 2) * (1 / ↑d ^ 2 * 3 ^ (6 * d))
theorem FABL.factorialStirlingApprox_three_ratio_eq (d : ℕ) (hd : 0 < d) : FABL.factorialStirlingApprox (3 * d) ^ 2 / FABL.factorialStirlingApprox d ^ 6 = 3 / (4 * Real.pi ^ 2) * (1 / ↑d ^ 2 * 3 ^ (6 * d))
The exact cancellation of the Stirling comparison functions for `3d` and `d`. The restriction `d>0` is harmless for the ensuing `atTop` statement.
-
defdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
def FABL.levelThreeFactorialConstant (d : ℕ) : ℝ
def FABL.levelThreeFactorialConstant (d : ℕ) : ℝ
The limiting factorial constant from Exercise 9.3(b).
-
defdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
def FABL.levelThreeGrowth (d : ℕ) : ℝ
def FABL.levelThreeGrowth (d : ℕ) : ℝ
The `d`-parameter growth scale in Exercise 9.3(b).
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.levelThreeFactorialConstant_isEquivalent : Asymptotics.IsEquivalent Filter.atTop FABL.levelThreeFactorialConstant fun d => 3 / (4 * Real.pi ^ 2) * FABL.levelThreeGrowth d
theorem FABL.levelThreeFactorialConstant_isEquivalent : Asymptotics.IsEquivalent Filter.atTop FABL.levelThreeFactorialConstant fun d => 3 / (4 * Real.pi ^ 2) * FABL.levelThreeGrowth d
The stronger Stirling equivalence underlying Exercise 9.3(b), including its nonzero leading constant `3/(4π²)`.
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.levelThreeFactorialConstant_isTheta : FABL.levelThreeFactorialConstant =Θ[Filter.atTop] FABL.levelThreeGrowth
theorem FABL.levelThreeFactorialConstant_isTheta : FABL.levelThreeFactorialConstant =Θ[Filter.atTop] FABL.levelThreeGrowth
Exercise 9.3(b): the limiting multinomial constant is genuinely `Θ(d⁻² 3^(6d))`.
-
defdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
def FABL.levelThreeBookGrowth (d : ℕ) : ℝ
def FABL.levelThreeBookGrowth (d : ℕ) : ℝ
The same growth scale in the book's original `k=3d` notation.
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.levelThreeGrowth_eq_nine_mul_bookGrowth (d : ℕ) : FABL.levelThreeGrowth d = 9 * FABL.levelThreeBookGrowth d
theorem FABL.levelThreeGrowth_eq_nine_mul_bookGrowth (d : ℕ) : FABL.levelThreeGrowth d = 9 * FABL.levelThreeBookGrowth d
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.levelThreeFactorialConstant_isTheta_bookGrowth : FABL.levelThreeFactorialConstant =Θ[Filter.atTop] FABL.levelThreeBookGrowth
theorem FABL.levelThreeFactorialConstant_isTheta_bookGrowth : FABL.levelThreeFactorialConstant =Θ[Filter.atTop] FABL.levelThreeBookGrowth
Exercise 9.3(b), exactly in the book's `Θ(k⁻² 9^k)` parameterization along the divisible subsequence `k=3d`.
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.exercise9_3_uniformLpNorm_lower_bound (n d : ℕ) (hnd : 6 * d ≤ n) : (↑(FABL.sixBlockMultinomial n d) / ↑(n.choose (3 * d)) ^ 2).rpow (1 / 4) * FABL.uniformLpNorm 2 (FABL.levelKPolynomial (3 * d)) ≤ FABL.uniformLpNorm 4 (FABL.levelKPolynomial (3 * d))
theorem FABL.exercise9_3_uniformLpNorm_lower_bound (n d : ℕ) (hnd : 6 * d ≤ n) : (↑(FABL.sixBlockMultinomial n d) / ↑(n.choose (3 * d)) ^ 2).rpow (1 / 4) * FABL.uniformLpNorm 2 (FABL.levelKPolynomial (3 * d)) ≤ FABL.uniformLpNorm 4 (FABL.levelKPolynomial (3 * d))
Exercise 9.3(b), finite norm consequence before taking either asymptotic limit.
-
defdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
def FABL.levelThreeBookNormGrowth (d : ℕ) : ℝ
def FABL.levelThreeBookNormGrowth (d : ℕ) : ℝ
The fourth-root scale in the original `k=3d` notation.
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.levelThreeBookGrowth_fourthRoot_eq_normGrowth (d : ℕ) (hd : 0 < d) : (FABL.levelThreeBookGrowth d).rpow (1 / 4) = FABL.levelThreeBookNormGrowth d
theorem FABL.levelThreeBookGrowth_fourthRoot_eq_normGrowth (d : ℕ) (hd : 0 < d) : (FABL.levelThreeBookGrowth d).rpow (1 / 4) = FABL.levelThreeBookNormGrowth d
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.levelThreeFactorialConstant_fourthRoot_isTheta_normGrowth : (fun d => (FABL.levelThreeFactorialConstant d).rpow (1 / 4)) =Θ[Filter.atTop] FABL.levelThreeBookNormGrowth
theorem FABL.levelThreeFactorialConstant_fourthRoot_isTheta_normGrowth : (fun d => (FABL.levelThreeFactorialConstant d).rpow (1 / 4)) =Θ[Filter.atTop] FABL.levelThreeBookNormGrowth
Exercise 9.3(b), formal fourth-root asymptotic. Combined with `exercise9_3_uniformLpNorm_lower_bound`, this is the book's `‖f‖₄ ≥ Ω(k⁻¹/²(√3)^k)‖f‖₂` family along `k=3d`.
-
FABL.multilinearEvenCoefficients_degreeAtMost[complete] -
FABL.multilinearOddCoefficients_degreeAtMost[complete] -
FABL.productMultilinearPolynomial_eq_const_of_degree_zero[complete] -
FABL.pmfExpectation_independentProductPMF_cons[complete] -
FABL.pmfExpectation_centered_affine_sq[complete] -
FABL.pmfExpectation_centered_affine_fourth[complete] -
FABL.productMultilinearRandomVariable_secondMoment_cons[complete] -
FABL.productMultilinearRandomVariable_fourthMoment_cons[complete] -
FABL.pmfExpectation_sq_mul_sq_sq_le[complete] -
FABL.reasonableProductPolynomial_fourthMoment[complete]
Exercise 9.4. Prove Corollary 9.6 by induction, retaining the exact
\max(B,9)^k constant for independent, nonidentically distributed inputs.
Lean code for Lemma9.7.4●10 theorems
Associated Lean declarations
-
FABL.multilinearEvenCoefficients_degreeAtMost[complete]
-
FABL.multilinearOddCoefficients_degreeAtMost[complete]
-
FABL.productMultilinearPolynomial_eq_const_of_degree_zero[complete]
-
FABL.pmfExpectation_independentProductPMF_cons[complete]
-
FABL.pmfExpectation_centered_affine_sq[complete]
-
FABL.pmfExpectation_centered_affine_fourth[complete]
-
FABL.productMultilinearRandomVariable_secondMoment_cons[complete]
-
FABL.productMultilinearRandomVariable_fourthMoment_cons[complete]
-
FABL.pmfExpectation_sq_mul_sq_sq_le[complete]
-
FABL.reasonableProductPolynomial_fourthMoment[complete]
-
FABL.multilinearEvenCoefficients_degreeAtMost[complete] -
FABL.multilinearOddCoefficients_degreeAtMost[complete] -
FABL.productMultilinearPolynomial_eq_const_of_degree_zero[complete] -
FABL.pmfExpectation_independentProductPMF_cons[complete] -
FABL.pmfExpectation_centered_affine_sq[complete] -
FABL.pmfExpectation_centered_affine_fourth[complete] -
FABL.productMultilinearRandomVariable_secondMoment_cons[complete] -
FABL.productMultilinearRandomVariable_fourthMoment_cons[complete] -
FABL.pmfExpectation_sq_mul_sq_sq_le[complete] -
FABL.reasonableProductPolynomial_fourthMoment[complete]
-
theoremdefined in FABL/Chapter09/ReasonableProductPolynomials.leancomplete
theorem FABL.multilinearEvenCoefficients_degreeAtMost {n : ℕ} {a : Finset (Fin (n + 1)) → ℝ} {k : ℕ} (ha : FABL.MultilinearDegreeAtMost a k) : FABL.MultilinearDegreeAtMost (FABL.multilinearEvenCoefficients a) k
theorem FABL.multilinearEvenCoefficients_degreeAtMost {n : ℕ} {a : Finset (Fin (n + 1)) → ℝ} {k : ℕ} (ha : FABL.MultilinearDegreeAtMost a k) : FABL.MultilinearDegreeAtMost (FABL.multilinearEvenCoefficients a) k
-
theoremdefined in FABL/Chapter09/ReasonableProductPolynomials.leancomplete
theorem FABL.multilinearOddCoefficients_degreeAtMost {n : ℕ} {a : Finset (Fin (n + 1)) → ℝ} {k : ℕ} (ha : FABL.MultilinearDegreeAtMost a (k + 1)) : FABL.MultilinearDegreeAtMost (FABL.multilinearOddCoefficients a) k
theorem FABL.multilinearOddCoefficients_degreeAtMost {n : ℕ} {a : Finset (Fin (n + 1)) → ℝ} {k : ℕ} (ha : FABL.MultilinearDegreeAtMost a (k + 1)) : FABL.MultilinearDegreeAtMost (FABL.multilinearOddCoefficients a) k
-
theoremdefined in FABL/Chapter09/ReasonableProductPolynomials.leancomplete
theorem FABL.productMultilinearPolynomial_eq_const_of_degree_zero {n : ℕ} (a : Finset (Fin n) → ℝ) (ha : FABL.MultilinearDegreeAtMost a 0) (x : Fin n → ℝ) : FABL.productMultilinearPolynomial a x = a ∅
theorem FABL.productMultilinearPolynomial_eq_const_of_degree_zero {n : ℕ} (a : Finset (Fin n) → ℝ) (ha : FABL.MultilinearDegreeAtMost a 0) (x : Fin n → ℝ) : FABL.productMultilinearPolynomial a x = a ∅
A degree-zero coefficient family evaluates to its constant coefficient.
-
theoremdefined in FABL/Chapter09/ReasonableProductPolynomials.leancomplete
theorem FABL.pmfExpectation_independentProductPMF_cons.{u_1} {n : ℕ} {Ω : Fin (n + 1) → Type u_1} [(i : Fin (n + 1)) → Fintype (Ω i)] (p : (i : Fin (n + 1)) → PMF (Ω i)) (f : ((i : Fin (n + 1)) → Ω i) → ℝ) : FABL.pmfExpectation (FABL.independentProductPMF p) f = FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun x => FABL.pmfExpectation (p 0) fun z => f (Fin.cons z x)
theorem FABL.pmfExpectation_independentProductPMF_cons.{u_1} {n : ℕ} {Ω : Fin (n + 1) → Type u_1} [(i : Fin (n + 1)) → Fintype (Ω i)] (p : (i : Fin (n + 1)) → PMF (Ω i)) (f : ((i : Fin (n + 1)) → Ω i) → ℝ) : FABL.pmfExpectation (FABL.independentProductPMF p) f = FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun x => FABL.pmfExpectation (p 0) fun z => f (Fin.cons z x)
Fubini for an independent finite product, with the first coordinate integrated inside. The coordinate sample types may differ.
-
theoremdefined in FABL/Chapter09/ReasonableProductPolynomials.leancomplete
theorem FABL.pmfExpectation_centered_affine_sq.{u_1} {Ω : Type u_1} [Fintype Ω] (p : PMF Ω) (X : Ω → ℝ) (d e : ℝ) (hmean : FABL.pmfExpectation p X = 0) : (FABL.pmfExpectation p fun z => (X z * d + e) ^ 2) = (FABL.pmfExpectation p fun z => X z ^ 2) * d ^ 2 + e ^ 2
theorem FABL.pmfExpectation_centered_affine_sq.{u_1} {Ω : Type u_1} [Fintype Ω] (p : PMF Ω) (X : Ω → ℝ) (d e : ℝ) (hmean : FABL.pmfExpectation p X = 0) : (FABL.pmfExpectation p fun z => (X z * d + e) ^ 2) = (FABL.pmfExpectation p fun z => X z ^ 2) * d ^ 2 + e ^ 2
The second moment of an affine function of a centered finite random variable.
-
theoremdefined in FABL/Chapter09/ReasonableProductPolynomials.leancomplete
theorem FABL.pmfExpectation_centered_affine_fourth.{u_1} {Ω : Type u_1} [Fintype Ω] (p : PMF Ω) (X : Ω → ℝ) (d e : ℝ) (hmean : FABL.pmfExpectation p X = 0) (hthird : (FABL.pmfExpectation p fun z => X z ^ 3) = 0) : (FABL.pmfExpectation p fun z => (X z * d + e) ^ 4) = (FABL.pmfExpectation p fun z => X z ^ 4) * d ^ 4 + (6 * FABL.pmfExpectation p fun z => X z ^ 2) * d ^ 2 * e ^ 2 + e ^ 4
theorem FABL.pmfExpectation_centered_affine_fourth.{u_1} {Ω : Type u_1} [Fintype Ω] (p : PMF Ω) (X : Ω → ℝ) (d e : ℝ) (hmean : FABL.pmfExpectation p X = 0) (hthird : (FABL.pmfExpectation p fun z => X z ^ 3) = 0) : (FABL.pmfExpectation p fun z => (X z * d + e) ^ 4) = (FABL.pmfExpectation p fun z => X z ^ 4) * d ^ 4 + (6 * FABL.pmfExpectation p fun z => X z ^ 2) * d ^ 2 * e ^ 2 + e ^ 4
The fourth moment of an affine function when the first and third moments vanish.
-
theoremdefined in FABL/Chapter09/ReasonableProductPolynomials.leancomplete
theorem FABL.productMultilinearRandomVariable_secondMoment_cons.{u_1} {n : ℕ} {Ω : Fin (n + 1) → Type u_1} [(i : Fin (n + 1)) → Fintype (Ω i)] (p : (i : Fin (n + 1)) → PMF (Ω i)) (X : (i : Fin (n + 1)) → Ω i → ℝ) (a : Finset (Fin (n + 1)) → ℝ) (hmean : FABL.pmfExpectation (p 0) (X 0) = 0) : (FABL.pmfExpectation (FABL.independentProductPMF p) fun ω => FABL.productMultilinearRandomVariable a X ω ^ 2) = ((FABL.pmfExpectation (p 0) fun z => X 0 z ^ 2) * FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun ω => FABL.productMultilinearRandomVariable (FABL.multilinearOddCoefficients a) (fun i => X i.succ) ω ^ 2) + FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun ω => FABL.productMultilinearRandomVariable (FABL.multilinearEvenCoefficients a) (fun i => X i.succ) ω ^ 2
theorem FABL.productMultilinearRandomVariable_secondMoment_cons.{u_1} {n : ℕ} {Ω : Fin (n + 1) → Type u_1} [(i : Fin (n + 1)) → Fintype (Ω i)] (p : (i : Fin (n + 1)) → PMF (Ω i)) (X : (i : Fin (n + 1)) → Ω i → ℝ) (a : Finset (Fin (n + 1)) → ℝ) (hmean : FABL.pmfExpectation (p 0) (X 0) = 0) : (FABL.pmfExpectation (FABL.independentProductPMF p) fun ω => FABL.productMultilinearRandomVariable a X ω ^ 2) = ((FABL.pmfExpectation (p 0) fun z => X 0 z ^ 2) * FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun ω => FABL.productMultilinearRandomVariable (FABL.multilinearOddCoefficients a) (fun i => X i.succ) ω ^ 2) + FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun ω => FABL.productMultilinearRandomVariable (FABL.multilinearEvenCoefficients a) (fun i => X i.succ) ω ^ 2
Equation (9.2) for a general centered first coordinate and arbitrary independent finite tail.
-
theoremdefined in FABL/Chapter09/ReasonableProductPolynomials.leancomplete
theorem FABL.productMultilinearRandomVariable_fourthMoment_cons.{u_1} {n : ℕ} {Ω : Fin (n + 1) → Type u_1} [(i : Fin (n + 1)) → Fintype (Ω i)] (p : (i : Fin (n + 1)) → PMF (Ω i)) (X : (i : Fin (n + 1)) → Ω i → ℝ) (a : Finset (Fin (n + 1)) → ℝ) (hmean : FABL.pmfExpectation (p 0) (X 0) = 0) (hthird : (FABL.pmfExpectation (p 0) fun z => X 0 z ^ 3) = 0) : (FABL.pmfExpectation (FABL.independentProductPMF p) fun ω => FABL.productMultilinearRandomVariable a X ω ^ 4) = (((FABL.pmfExpectation (p 0) fun z => X 0 z ^ 4) * FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun ω => FABL.productMultilinearRandomVariable (FABL.multilinearOddCoefficients a) (fun i => X i.succ) ω ^ 4) + (6 * FABL.pmfExpectation (p 0) fun z => X 0 z ^ 2) * FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun ω => FABL.productMultilinearRandomVariable (FABL.multilinearOddCoefficients a) (fun i => X i.succ) ω ^ 2 * FABL.productMultilinearRandomVariable (FABL.multilinearEvenCoefficients a) (fun i => X i.succ) ω ^ 2) + FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun ω => FABL.productMultilinearRandomVariable (FABL.multilinearEvenCoefficients a) (fun i => X i.succ) ω ^ 4
theorem FABL.productMultilinearRandomVariable_fourthMoment_cons.{u_1} {n : ℕ} {Ω : Fin (n + 1) → Type u_1} [(i : Fin (n + 1)) → Fintype (Ω i)] (p : (i : Fin (n + 1)) → PMF (Ω i)) (X : (i : Fin (n + 1)) → Ω i → ℝ) (a : Finset (Fin (n + 1)) → ℝ) (hmean : FABL.pmfExpectation (p 0) (X 0) = 0) (hthird : (FABL.pmfExpectation (p 0) fun z => X 0 z ^ 3) = 0) : (FABL.pmfExpectation (FABL.independentProductPMF p) fun ω => FABL.productMultilinearRandomVariable a X ω ^ 4) = (((FABL.pmfExpectation (p 0) fun z => X 0 z ^ 4) * FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun ω => FABL.productMultilinearRandomVariable (FABL.multilinearOddCoefficients a) (fun i => X i.succ) ω ^ 4) + (6 * FABL.pmfExpectation (p 0) fun z => X 0 z ^ 2) * FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun ω => FABL.productMultilinearRandomVariable (FABL.multilinearOddCoefficients a) (fun i => X i.succ) ω ^ 2 * FABL.productMultilinearRandomVariable (FABL.multilinearEvenCoefficients a) (fun i => X i.succ) ω ^ 2) + FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.succ) fun ω => FABL.productMultilinearRandomVariable (FABL.multilinearEvenCoefficients a) (fun i => X i.succ) ω ^ 4
Equation (9.1) for a general first coordinate whose first and third moments vanish.
-
theoremdefined in FABL/Chapter09/ReasonableProductPolynomials.leancomplete
theorem FABL.pmfExpectation_sq_mul_sq_sq_le.{u_1} {Ω : Type u_1} [Fintype Ω] (p : PMF Ω) (d e : Ω → ℝ) : (FABL.pmfExpectation p fun x => d x ^ 2 * e x ^ 2) ^ 2 ≤ (FABL.pmfExpectation p fun x => d x ^ 4) * FABL.pmfExpectation p fun x => e x ^ 4
theorem FABL.pmfExpectation_sq_mul_sq_sq_le.{u_1} {Ω : Type u_1} [Fintype Ω] (p : PMF Ω) (d e : Ω → ℝ) : (FABL.pmfExpectation p fun x => d x ^ 2 * e x ^ 2) ^ 2 ≤ (FABL.pmfExpectation p fun x => d x ^ 4) * FABL.pmfExpectation p fun x => e x ^ 4
Cauchy--Schwarz in the exact fourth-moment form needed by Bonami's induction.
-
theoremdefined in FABL/Chapter09/ReasonableProductPolynomials.leancomplete
theorem FABL.reasonableProductPolynomial_fourthMoment.{u_1} {n : ℕ} {Ω : Fin n → Type u_1} [(i : Fin n) → Fintype (Ω i)] (p : (i : Fin n) → PMF (Ω i)) (X : (i : Fin n) → Ω i → ℝ) (B : ℝ) (a : Finset (Fin n) → ℝ) (k : ℕ) (hmean : ∀ (i : Fin n), FABL.pmfExpectation (p i) (X i) = 0) (hthird : ∀ (i : Fin n), (FABL.pmfExpectation (p i) fun z => X i z ^ 3) = 0) (hreasonable : ∀ (i : Fin n), FABL.IsReasonable (p i) B (X i)) (hdegree : FABL.MultilinearDegreeAtMost a k) : (FABL.pmfExpectation (FABL.independentProductPMF p) fun ω => FABL.productMultilinearRandomVariable a X ω ^ 4) ≤ max B 9 ^ k * (FABL.pmfExpectation (FABL.independentProductPMF p) fun ω => FABL.productMultilinearRandomVariable a X ω ^ 2) ^ 2
theorem FABL.reasonableProductPolynomial_fourthMoment.{u_1} {n : ℕ} {Ω : Fin n → Type u_1} [(i : Fin n) → Fintype (Ω i)] (p : (i : Fin n) → PMF (Ω i)) (X : (i : Fin n) → Ω i → ℝ) (B : ℝ) (a : Finset (Fin n) → ℝ) (k : ℕ) (hmean : ∀ (i : Fin n), FABL.pmfExpectation (p i) (X i) = 0) (hthird : ∀ (i : Fin n), (FABL.pmfExpectation (p i) fun z => X i z ^ 3) = 0) (hreasonable : ∀ (i : Fin n), FABL.IsReasonable (p i) B (X i)) (hdegree : FABL.MultilinearDegreeAtMost a k) : (FABL.pmfExpectation (FABL.independentProductPMF p) fun ω => FABL.productMultilinearRandomVariable a X ω ^ 4) ≤ max B 9 ^ k * (FABL.pmfExpectation (FABL.independentProductPMF p) fun ω => FABL.productMultilinearRandomVariable a X ω ^ 2) ^ 2
Exercise 9.4 / Corollary 9.6 in fourth-moment form for independent finite random variables with possibly different sample types and laws.
Exercise 9.5. If 0\le\delta\le1/1600, |f|=1, and
|\ell^2-1|>39\sqrt\delta,
prove
|f-\ell|^2\ge169\delta.
Lean code for Lemma9.7.5●1 theorem
Associated Lean declarations
-
FABL.exercise9_5[complete]
-
FABL.exercise9_5[complete]
-
theoremdefined in FABL/Chapter02/FKN.leancomplete
theorem FABL.exercise9_5 (s t δ : ℝ) (hs : s ^ 2 = 1) (hδ₀ : 0 ≤ δ) (hδ : δ ≤ 1 / 1600) (hfar : 1521 * δ < (t ^ 2 - 1) ^ 2) : 169 * δ ≤ (s - t) ^ 2
theorem FABL.exercise9_5 (s t δ : ℝ) (hs : s ^ 2 = 1) (hδ₀ : 0 ≤ δ) (hδ : δ ≤ 1 / 1600) (hfar : 1521 * δ < (t ^ 2 - 1) ^ 2) : 169 * δ ≤ (s - t) ^ 2
O'Donnell, Exercise 9.5 with the constants used in the FKN proof.
In the Section 9.1 proof of FKN, if
\operatorname{Var}[\ell^2]>6400\delta, then
\frac1{144}
\le\Pr[|\ell^2-(1-\delta)|>40\sqrt\delta]
\le\Pr[|\ell^2-1|>39\sqrt\delta].
\tag{9.3}
Lean code for Lemma9.7.6●1 theorem
Associated Lean declarations
-
theoremdefined in FABL/Chapter02/FKN.leancomplete
theorem FABL.one_div_144_le_uniformProbability_four_mul_sq_ge_secondMoment.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (g : Ω → ℝ) (hsecond : 0 < Finset.univ.expect fun x => g x ^ 2) (hfourth : (Finset.univ.expect fun x => g x ^ 4) ≤ 81 * (Finset.univ.expect fun x => g x ^ 2) ^ 2) : 1 / 144 ≤ FABL.uniformProbability fun x => (Finset.univ.expect fun y => g y ^ 2) ≤ 4 * g x ^ 2
theorem FABL.one_div_144_le_uniformProbability_four_mul_sq_ge_secondMoment.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (g : Ω → ℝ) (hsecond : 0 < Finset.univ.expect fun x => g x ^ 2) (hfourth : (Finset.univ.expect fun x => g x ^ 4) ≤ 81 * (Finset.univ.expect fun x => g x ^ 2) ^ 2) : 1 / 144 ≤ FABL.uniformProbability fun x => (Finset.univ.expect fun y => g y ^ 2) ≤ 4 * g x ^ 2
The finite Paley--Zygmund estimate used by FKN. A fourth-moment constant of `81` gives probability at least `1/144` of reaching one half of the root second moment.
-
FABL.pmfTensorPower[complete] -
FABL.exercise9_6_tensorPower_moment[complete] -
FABL.exercise9_6_scaledNoise_decomposition[complete] -
FABL.exercise9_6_scaledNoise_norm_le_sum[complete] -
FABL.exercise9_6_sum_le_inv_mul_norm[complete] -
FABL.exercise9_6_scaledNoise_norm_le_inv[complete] -
FABL.exercise9_6_twoFour_conclusion[complete]
Exercise 9.6. Reconstruct (2,4) hypercontractivity from Bonami.
First prove, for \delta>0,
\|T_{(1-\delta)/\sqrt3}f\|_4
\le\sum_{k\ge0}(1-\delta)^k\|f^{=k}\|_2
\le\delta^{-1}\|f\|_2.
For tensor powers g^{\oplus d}, prove
\|T_\rho(g^{\oplus d})\|_p=\|T_\rho g\|_p^d.
Let d\to\infty to remove \delta^{-1}, then let
\delta\to0^+ to obtain the sharp (2,4) theorem.
Lean code for Lemma9.7.7●7 declarations
Associated Lean declarations
-
FABL.pmfTensorPower[complete]
-
FABL.exercise9_6_tensorPower_moment[complete]
-
FABL.exercise9_6_scaledNoise_decomposition[complete]
-
FABL.exercise9_6_scaledNoise_norm_le_sum[complete]
-
FABL.exercise9_6_sum_le_inv_mul_norm[complete]
-
FABL.exercise9_6_scaledNoise_norm_le_inv[complete]
-
FABL.exercise9_6_twoFour_conclusion[complete]
-
FABL.pmfTensorPower[complete] -
FABL.exercise9_6_tensorPower_moment[complete] -
FABL.exercise9_6_scaledNoise_decomposition[complete] -
FABL.exercise9_6_scaledNoise_norm_le_sum[complete] -
FABL.exercise9_6_sum_le_inv_mul_norm[complete] -
FABL.exercise9_6_scaledNoise_norm_le_inv[complete] -
FABL.exercise9_6_twoFour_conclusion[complete]
-
defdefined in FABL/Chapter09/SmallSetExpansion.leancomplete
def FABL.pmfTensorPower.{u_1} {Ω : Type u_1} (d : ℕ) (g : Ω → ℝ) (x : Fin d → Ω) : ℝ
def FABL.pmfTensorPower.{u_1} {Ω : Type u_1} (d : ℕ) (g : Ω → ℝ) (x : Fin d → Ω) : ℝ
The tensor power used in Exercise 9.6(b), represented on its canonical product domain.
-
theoremdefined in FABL/Chapter09/SmallSetExpansion.leancomplete
theorem FABL.exercise9_6_tensorPower_moment.{u_1} {Ω : Type u_1} [Fintype Ω] (p : PMF Ω) (d m : ℕ) (g : Ω → ℝ) : (FABL.pmfExpectation (FABL.independentProductPMF fun x => p) fun x => FABL.pmfTensorPower d g x ^ m) = (FABL.pmfExpectation p fun x => g x ^ m) ^ d
theorem FABL.exercise9_6_tensorPower_moment.{u_1} {Ω : Type u_1} [Fintype Ω] (p : PMF Ω) (d m : ℕ) (g : Ω → ℝ) : (FABL.pmfExpectation (FABL.independentProductPMF fun x => p) fun x => FABL.pmfTensorPower d g x ^ m) = (FABL.pmfExpectation p fun x => g x ^ m) ^ d
Exercise 9.6(b), moment form: moments of a tensor power factor exactly under an independent product law. Taking the relevant roots gives the book's `Lᵖ` multiplicativity; `m = 2,4` are the two cases used by the power trick.
-
theoremdefined in FABL/Chapter09/SmallSetExpansion.leancomplete
theorem FABL.exercise9_6_scaledNoise_decomposition {n : ℕ} (δ : ℝ) (f : FABL.SignCube n → ℝ) (x : FABL.SignCube n) : (FABL.noiseOperator ((1 - δ) * FABL.twoFourNoiseRoot)) f x = ∑ k ∈ Finset.range (n + 1), (1 - δ) ^ k * (FABL.noiseOperator FABL.twoFourNoiseRoot) (FABL.degreePart k f) x
theorem FABL.exercise9_6_scaledNoise_decomposition {n : ℕ} (δ : ℝ) (f : FABL.SignCube n → ℝ) (x : FABL.SignCube n) : (FABL.noiseOperator ((1 - δ) * FABL.twoFourNoiseRoot)) f x = ∑ k ∈ Finset.range (n + 1), (1 - δ) ^ k * (FABL.noiseOperator FABL.twoFourNoiseRoot) (FABL.degreePart k f) x
Exercise 9.6(a), algebraic decomposition: scaling the one-third noise parameter inserts the geometric factor `(1-δ)ᵏ` on the `k`-th homogeneous component.
-
theoremdefined in FABL/Chapter09/SmallSetExpansion.leancomplete
theorem FABL.exercise9_6_scaledNoise_norm_le_sum {n : ℕ} (δ : ℝ) (hδ : δ ∈ Set.Ioc 0 1) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 4 ((FABL.noiseOperator ((1 - δ) * FABL.twoFourNoiseRoot)) f) ≤ ∑ k ∈ Finset.range (n + 1), (1 - δ) ^ k * FABL.uniformLpNorm 2 (FABL.degreePart k f)
theorem FABL.exercise9_6_scaledNoise_norm_le_sum {n : ℕ} (δ : ℝ) (hδ : δ ∈ Set.Ioc 0 1) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 4 ((FABL.noiseOperator ((1 - δ) * FABL.twoFourNoiseRoot)) f) ≤ ∑ k ∈ Finset.range (n + 1), (1 - δ) ^ k * FABL.uniformLpNorm 2 (FABL.degreePart k f)
Exercise 9.6(a), first inequality: Bonami on each homogeneous component followed by Minkowski's inequality.
-
theoremdefined in FABL/Chapter09/SmallSetExpansion.leancomplete
theorem FABL.exercise9_6_sum_le_inv_mul_norm {n : ℕ} (δ : ℝ) (hδ : δ ∈ Set.Ioc 0 1) (f : FABL.SignCube n → ℝ) : ∑ k ∈ Finset.range (n + 1), (1 - δ) ^ k * FABL.uniformLpNorm 2 (FABL.degreePart k f) ≤ δ⁻¹ * FABL.uniformLpNorm 2 f
theorem FABL.exercise9_6_sum_le_inv_mul_norm {n : ℕ} (δ : ℝ) (hδ : δ ∈ Set.Ioc 0 1) (f : FABL.SignCube n → ℝ) : ∑ k ∈ Finset.range (n + 1), (1 - δ) ^ k * FABL.uniformLpNorm 2 (FABL.degreePart k f) ≤ δ⁻¹ * FABL.uniformLpNorm 2 f
Exercise 9.6(a), second inequality.
-
theoremdefined in FABL/Chapter09/SmallSetExpansion.leancomplete
theorem FABL.exercise9_6_scaledNoise_norm_le_inv {n : ℕ} (δ : ℝ) (hδ : δ ∈ Set.Ioc 0 1) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 4 ((FABL.noiseOperator ((1 - δ) * FABL.twoFourNoiseRoot)) f) ≤ δ⁻¹ * FABL.uniformLpNorm 2 f
theorem FABL.exercise9_6_scaledNoise_norm_le_inv {n : ℕ} (δ : ℝ) (hδ : δ ∈ Set.Ioc 0 1) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 4 ((FABL.noiseOperator ((1 - δ) * FABL.twoFourNoiseRoot)) f) ≤ δ⁻¹ * FABL.uniformLpNorm 2 f
Exercise 9.6(a), combined sharp geometric-sum form.
-
theoremdefined in FABL/Chapter09/SmallSetExpansion.leancomplete
theorem FABL.exercise9_6_twoFour_conclusion {n : ℕ} (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 4 ((FABL.noiseOperator FABL.twoFourNoiseRoot) f) ≤ FABL.uniformLpNorm 2 f
theorem FABL.exercise9_6_twoFour_conclusion {n : ℕ} (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 4 ((FABL.noiseOperator FABL.twoFourNoiseRoot) f) ≤ FABL.uniformLpNorm 2 f
Exercise 9.6(d): the Bonami route and the direct induction close at the same sharp `(2,4)` statement. The production theorem is `twoFourHypercontractivity`; this alias is the book-facing exercise conclusion.
-
FABL.noiseOperator_nonneg[complete] -
FABL.abs_noiseOperator_le_noiseOperator_abs[complete] -
FABL.uniformLpNorm_four_mono_abs[complete] -
FABL.exercise9_7_twoFour_nonnegative_reduction[complete] -
FABL.uniformLpNorm_abs[complete] -
FABL.exercise9_7_nonnegative_reduction[complete]
Exercise 9.7. To prove an inequality
\|T_\rho f\|_q\le\|f\|_p, it is enough to prove it for nonnegative
functions f.
Lean code for Lemma9.7.8●6 theorems
Associated Lean declarations
-
FABL.noiseOperator_nonneg[complete]
-
FABL.abs_noiseOperator_le_noiseOperator_abs[complete]
-
FABL.uniformLpNorm_four_mono_abs[complete]
-
FABL.exercise9_7_twoFour_nonnegative_reduction[complete]
-
FABL.uniformLpNorm_abs[complete]
-
FABL.exercise9_7_nonnegative_reduction[complete]
-
FABL.noiseOperator_nonneg[complete] -
FABL.abs_noiseOperator_le_noiseOperator_abs[complete] -
FABL.uniformLpNorm_four_mono_abs[complete] -
FABL.exercise9_7_twoFour_nonnegative_reduction[complete] -
FABL.uniformLpNorm_abs[complete] -
FABL.exercise9_7_nonnegative_reduction[complete]
-
theoremdefined in FABL/Chapter09/SmallSetExpansion.leancomplete
theorem FABL.noiseOperator_nonneg {n : ℕ} (ρ : ℝ) (hρ : ρ ∈ Set.Icc (-1) 1) (f : FABL.SignCube n → ℝ) (hf : ∀ (x : FABL.SignCube n), 0 ≤ f x) (x : FABL.SignCube n) : 0 ≤ (FABL.noiseOperator ρ) f x
theorem FABL.noiseOperator_nonneg {n : ℕ} (ρ : ℝ) (hρ : ρ ∈ Set.Icc (-1) 1) (f : FABL.SignCube n → ℝ) (hf : ∀ (x : FABL.SignCube n), 0 ≤ f x) (x : FABL.SignCube n) : 0 ≤ (FABL.noiseOperator ρ) f x
Exercise 9.7's pointwise input: a noise operator applied to a nonnegative function remains nonnegative.
-
theoremdefined in FABL/Chapter09/SmallSetExpansion.leancomplete
theorem FABL.abs_noiseOperator_le_noiseOperator_abs {n : ℕ} (ρ : ℝ) (hρ : ρ ∈ Set.Icc (-1) 1) (f : FABL.SignCube n → ℝ) (x : FABL.SignCube n) : |(FABL.noiseOperator ρ) f x| ≤ (FABL.noiseOperator ρ) (fun y => |f y|) x
theorem FABL.abs_noiseOperator_le_noiseOperator_abs {n : ℕ} (ρ : ℝ) (hρ : ρ ∈ Set.Icc (-1) 1) (f : FABL.SignCube n → ℝ) (x : FABL.SignCube n) : |(FABL.noiseOperator ρ) f x| ≤ (FABL.noiseOperator ρ) (fun y => |f y|) x
Exercise 2.34, used in Exercise 9.7: taking absolute values before applying noise can only increase the result.
-
theoremdefined in FABL/Chapter09/SmallSetExpansion.leancomplete
theorem FABL.uniformLpNorm_four_mono_abs.{u_1} {Ω : Type u_1} [Fintype Ω] (f g : Ω → ℝ) (hfg : ∀ (x : Ω), |f x| ≤ g x) : FABL.uniformLpNorm 4 f ≤ FABL.uniformLpNorm 4 g
theorem FABL.uniformLpNorm_four_mono_abs.{u_1} {Ω : Type u_1} [Fintype Ω] (f g : Ω → ℝ) (hfg : ∀ (x : Ω), |f x| ≤ g x) : FABL.uniformLpNorm 4 f ≤ FABL.uniformLpNorm 4 g
Monotonicity of the normalized `L⁴` quantity under pointwise absolute-value domination.
-
theoremdefined in FABL/Chapter09/SmallSetExpansion.leancomplete
theorem FABL.exercise9_7_twoFour_nonnegative_reduction {n : ℕ} (h_nonnegative : ∀ (f : FABL.SignCube n → ℝ), (∀ (x : FABL.SignCube n), 0 ≤ f x) → FABL.uniformLpNorm 4 ((FABL.noiseOperator FABL.twoFourNoiseRoot) f) ≤ FABL.uniformLpNorm 2 f) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 4 ((FABL.noiseOperator FABL.twoFourNoiseRoot) f) ≤ FABL.uniformLpNorm 2 f
theorem FABL.exercise9_7_twoFour_nonnegative_reduction {n : ℕ} (h_nonnegative : ∀ (f : FABL.SignCube n → ℝ), (∀ (x : FABL.SignCube n), 0 ≤ f x) → FABL.uniformLpNorm 4 ((FABL.noiseOperator FABL.twoFourNoiseRoot) f) ≤ FABL.uniformLpNorm 2 f) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 4 ((FABL.noiseOperator FABL.twoFourNoiseRoot) f) ≤ FABL.uniformLpNorm 2 f
Exercise 9.7 for the `(2,4)` special case: proving the theorem for nonnegative functions suffices for all real-valued functions.
-
theoremdefined in FABL/Chapter09/NonnegativeReduction.leancomplete
theorem FABL.uniformLpNorm_abs.{u_1} {Ω : Type u_1} [Fintype Ω] (p : ℝ) (f : Ω → ℝ) : (FABL.uniformLpNorm p fun x => |f x|) = FABL.uniformLpNorm p f
theorem FABL.uniformLpNorm_abs.{u_1} {Ω : Type u_1} [Fintype Ω] (p : ℝ) (f : Ω → ℝ) : (FABL.uniformLpNorm p fun x => |f x|) = FABL.uniformLpNorm p f
Taking pointwise absolute values does not change a positive finite uniform `L^p` norm.
-
theoremdefined in FABL/Chapter09/NonnegativeReduction.leancomplete
theorem FABL.exercise9_7_nonnegative_reduction {n : ℕ} (p q rho : ℝ) (_hp : 0 < p) (hq : 0 < q) (hrho : rho ∈ Set.Icc (-1) 1) (h_nonnegative : ∀ (g : FABL.SignCube n → ℝ), (∀ (x : FABL.SignCube n), 0 ≤ g x) → FABL.uniformLpNorm q ((FABL.noiseOperator rho) g) ≤ FABL.uniformLpNorm p g) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm q ((FABL.noiseOperator rho) f) ≤ FABL.uniformLpNorm p f
theorem FABL.exercise9_7_nonnegative_reduction {n : ℕ} (p q rho : ℝ) (_hp : 0 < p) (hq : 0 < q) (hrho : rho ∈ Set.Icc (-1) 1) (h_nonnegative : ∀ (g : FABL.SignCube n → ℝ), (∀ (x : FABL.SignCube n), 0 ≤ g x) → FABL.uniformLpNorm q ((FABL.noiseOperator rho) g) ≤ FABL.uniformLpNorm p g) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm q ((FABL.noiseOperator rho) f) ≤ FABL.uniformLpNorm p f
Exercise 9.7 for arbitrary positive finite exponents: it is enough to prove a noise-operator norm inequality on nonnegative functions.
-
FABL.degreeTruncation[complete] -
FABL.fourierCoeff_degreeTruncation[complete] -
FABL.fourierDegree_degreeTruncation_le[complete] -
FABL.degreeTruncation_selfAdjoint[complete] -
FABL.uniformLpNorm_two_degreeTruncation_le[complete] -
FABL.degreeTruncation_norm_le_of_two_le[complete] -
FABL.degreeTruncation_norm_le_two_of_two_le[complete] -
FABL.degreeTruncation_norm_le_of_one_lt_le_two[complete]
Exercise 9.8. For every 1<q<\infty, prove that degree truncation is a
bounded operator. If q\ge2, prove
\|f^{\le k}\|_q\le(\sqrt{q-1})^k\|f\|_q;
if 1<q\le2, prove
\|f^{\le k}\|_q\le(1/\sqrt{q-1})^k\|f\|_q.
Lean code for Lemma9.7.9●8 declarations
Associated Lean declarations
-
FABL.degreeTruncation[complete]
-
FABL.fourierCoeff_degreeTruncation[complete]
-
FABL.fourierDegree_degreeTruncation_le[complete]
-
FABL.degreeTruncation_selfAdjoint[complete]
-
FABL.uniformLpNorm_two_degreeTruncation_le[complete]
-
FABL.degreeTruncation_norm_le_of_two_le[complete]
-
FABL.degreeTruncation_norm_le_two_of_two_le[complete]
-
FABL.degreeTruncation_norm_le_of_one_lt_le_two[complete]
-
FABL.degreeTruncation[complete] -
FABL.fourierCoeff_degreeTruncation[complete] -
FABL.fourierDegree_degreeTruncation_le[complete] -
FABL.degreeTruncation_selfAdjoint[complete] -
FABL.uniformLpNorm_two_degreeTruncation_le[complete] -
FABL.degreeTruncation_norm_le_of_two_le[complete] -
FABL.degreeTruncation_norm_le_two_of_two_le[complete] -
FABL.degreeTruncation_norm_le_of_one_lt_le_two[complete]
-
defdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
def FABL.degreeTruncation {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) : FABL.SignCube n → ℝ
def FABL.degreeTruncation {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) : FABL.SignCube n → ℝ
Fourier projection through degree `k`.
-
theoremdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
theorem FABL.fourierCoeff_degreeTruncation {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) (T : Finset (Fin n)) : FABL.fourierCoeff (FABL.degreeTruncation k f) T = if T.card ≤ k then FABL.fourierCoeff f T else 0
theorem FABL.fourierCoeff_degreeTruncation {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) (T : Finset (Fin n)) : FABL.fourierCoeff (FABL.degreeTruncation k f) T = if T.card ≤ k then FABL.fourierCoeff f T else 0
Degree truncation retains exactly the coefficients through level `k`.
-
theoremdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
theorem FABL.fourierDegree_degreeTruncation_le {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) : FABL.fourierDegree (FABL.degreeTruncation k f) ≤ k
theorem FABL.fourierDegree_degreeTruncation_le {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) : FABL.fourierDegree (FABL.degreeTruncation k f) ≤ k
The Fourier degree of a truncation is at most its cutoff.
-
theoremdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
theorem FABL.degreeTruncation_selfAdjoint {n : ℕ} (k : ℕ) (f g : FABL.SignCube n → ℝ) : FABL.uniformInner (FABL.degreeTruncation k f) g = FABL.uniformInner f (FABL.degreeTruncation k g)
theorem FABL.degreeTruncation_selfAdjoint {n : ℕ} (k : ℕ) (f g : FABL.SignCube n → ℝ) : FABL.uniformInner (FABL.degreeTruncation k f) g = FABL.uniformInner f (FABL.degreeTruncation k g)
Degree truncation is self-adjoint under the uniform inner product.
-
theoremdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
theorem FABL.uniformLpNorm_two_degreeTruncation_le {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 2 (FABL.degreeTruncation k f) ≤ FABL.uniformLpNorm 2 f
theorem FABL.uniformLpNorm_two_degreeTruncation_le {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 2 (FABL.degreeTruncation k f) ≤ FABL.uniformLpNorm 2 f
Orthogonal degree truncation contracts `L²`.
-
theoremdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
theorem FABL.degreeTruncation_norm_le_of_two_le {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) (q : ℝ) (hq : 2 ≤ q) : FABL.uniformLpNorm q (FABL.degreeTruncation k f) ≤ √(q - 1) ^ k * FABL.uniformLpNorm q f
theorem FABL.degreeTruncation_norm_le_of_two_le {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) (q : ℝ) (hq : 2 ≤ q) : FABL.uniformLpNorm q (FABL.degreeTruncation k f) ≤ √(q - 1) ^ k * FABL.uniformLpNorm q f
Exercise 9.8(a): degree truncation on `L^q`, `q ≥ 2`.
-
theoremdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
theorem FABL.degreeTruncation_norm_le_two_of_two_le {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) (q : ℝ) (hq : 2 ≤ q) : FABL.uniformLpNorm q (FABL.degreeTruncation k f) ≤ √(q - 1) ^ k * FABL.uniformLpNorm 2 f
theorem FABL.degreeTruncation_norm_le_two_of_two_le {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) (q : ℝ) (hq : 2 ≤ q) : FABL.uniformLpNorm q (FABL.degreeTruncation k f) ≤ √(q - 1) ^ k * FABL.uniformLpNorm 2 f
The stronger `L²`-to-`L^q` form of Exercise 9.8(a).
-
theoremdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
theorem FABL.degreeTruncation_norm_le_of_one_lt_le_two {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) (q : ℝ) (hq1 : 1 < q) (hq2 : q ≤ 2) : FABL.uniformLpNorm q (FABL.degreeTruncation k f) ≤ (1 / √(q - 1)) ^ k * FABL.uniformLpNorm q f
theorem FABL.degreeTruncation_norm_le_of_one_lt_le_two {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) (q : ℝ) (hq1 : 1 < q) (hq2 : q ≤ 2) : FABL.uniformLpNorm q (FABL.degreeTruncation k f) ≤ (1 / √(q - 1)) ^ k * FABL.uniformLpNorm q f
Exercise 9.8(b): degree truncation on `L^q`, `1 < q ≤ 2`.
Exercise 9.9. If X is (p,q,\rho)-hypercontractive, prove that
cX is also (p,q,\rho)-hypercontractive for every c\in\mathbb R,
and prove the necessary bound
\rho\le\frac{\|X\|_p}{\|X\|_q}.
Lean code for Lemma9.7.10●3 theorems
Associated Lean declarations
-
theoremdefined in FABL/Chapter09/OneBitHypercontractivity.leancomplete
theorem FABL.IsHypercontractiveRandomVariable.const_mul.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] {p q : ENNReal} {ρ c : ℝ} {X : Ω → ℝ} (hX : FABL.IsHypercontractiveRandomVariable p q ρ X) : FABL.IsHypercontractiveRandomVariable p q ρ fun x => c * X x
theorem FABL.IsHypercontractiveRandomVariable.const_mul.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] {p q : ENNReal} {ρ c : ℝ} {X : Ω → ℝ} (hX : FABL.IsHypercontractiveRandomVariable p q ρ X) : FABL.IsHypercontractiveRandomVariable p q ρ fun x => c * X x
Exercise 9.9(a): multiplying a hypercontractive random variable by a scalar preserves the property.
-
theoremdefined in FABL/Chapter09/OneBitHypercontractivity.leancomplete
theorem FABL.IsHypercontractiveRandomVariable.rho_mul_norm_le.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] {p q : ENNReal} (hq : q ≠ 0) {ρ : ℝ} (hρ : 0 ≤ ρ) {X : Ω → ℝ} (hX : FABL.IsHypercontractiveRandomVariable p q ρ X) : ρ * FABL.uniformLpNormENNReal q X ≤ FABL.uniformLpNormENNReal p X
theorem FABL.IsHypercontractiveRandomVariable.rho_mul_norm_le.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] {p q : ENNReal} (hq : q ≠ 0) {ρ : ℝ} (hρ : 0 ≤ ρ) {X : Ω → ℝ} (hX : FABL.IsHypercontractiveRandomVariable p q ρ X) : ρ * FABL.uniformLpNormENNReal q X ≤ FABL.uniformLpNormENNReal p X
Exercise 9.9(b), before division: hypercontractivity forces `ρ ‖X‖_q ≤ ‖X‖_p`.
-
theoremdefined in FABL/Chapter09/OneBitHypercontractivity.leancomplete
theorem FABL.IsHypercontractiveRandomVariable.rho_le_norm_ratio.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] {p q : ENNReal} (hq : q ≠ 0) {ρ : ℝ} (hρ : 0 ≤ ρ) {X : Ω → ℝ} (hX : FABL.IsHypercontractiveRandomVariable p q ρ X) (hXq : 0 < FABL.uniformLpNormENNReal q X) : ρ ≤ FABL.uniformLpNormENNReal p X / FABL.uniformLpNormENNReal q X
theorem FABL.IsHypercontractiveRandomVariable.rho_le_norm_ratio.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] {p q : ENNReal} (hq : q ≠ 0) {ρ : ℝ} (hρ : 0 ≤ ρ) {X : Ω → ℝ} (hX : FABL.IsHypercontractiveRandomVariable p q ρ X) (hXq : 0 < FABL.uniformLpNormENNReal q X) : ρ ≤ FABL.uniformLpNormENNReal p X / FABL.uniformLpNormENNReal q X
Exercise 9.9(b), ratio form for a nonzero `L^q` norm.
-
FABL.affineMoment[complete] -
FABL.affineMomentDeriv[complete] -
FABL.affineMomentDeriv2[complete] -
FABL.hypercontractiveMomentGap[complete] -
FABL.hypercontractiveMomentGapDeriv[complete] -
FABL.IsHypercontractiveRandomVariable.mean_eq_zero[complete] -
FABL.IsHypercontractiveRandomVariable.rho_sq_bound[complete] -
FABL.IsHypercontractiveRandomVariable.rho_le_sqrt_ratio[complete] -
FABL.zeroVariable_one_two_half_hypercontractive[complete] -
FABL.exercise9_10_nonzero_hypothesis_necessary[complete]
Exercise 9.10 (corrected). If X is (p,q,\rho)-hypercontractive with
\rho>0, then
\mathbb E[X]=0.
If moreover X\not\equiv0, then
\rho\le\sqrt{\frac{p-1}{q-1}}.
The nonzero hypothesis is necessary for the second assertion: the identically
zero random variable is (1,2,1/2)-hypercontractive but violates the printed
bound.
Lean code for Lemma9.7.11●10 declarations
Associated Lean declarations
-
FABL.affineMoment[complete]
-
FABL.affineMomentDeriv[complete]
-
FABL.affineMomentDeriv2[complete]
-
FABL.hypercontractiveMomentGap[complete]
-
FABL.hypercontractiveMomentGapDeriv[complete]
-
FABL.IsHypercontractiveRandomVariable.mean_eq_zero[complete]
-
FABL.IsHypercontractiveRandomVariable.rho_sq_bound[complete]
-
FABL.IsHypercontractiveRandomVariable.rho_le_sqrt_ratio[complete]
-
FABL.zeroVariable_one_two_half_hypercontractive[complete]
-
FABL.exercise9_10_nonzero_hypothesis_necessary[complete]
-
FABL.affineMoment[complete] -
FABL.affineMomentDeriv[complete] -
FABL.affineMomentDeriv2[complete] -
FABL.hypercontractiveMomentGap[complete] -
FABL.hypercontractiveMomentGapDeriv[complete] -
FABL.IsHypercontractiveRandomVariable.mean_eq_zero[complete] -
FABL.IsHypercontractiveRandomVariable.rho_sq_bound[complete] -
FABL.IsHypercontractiveRandomVariable.rho_le_sqrt_ratio[complete] -
FABL.zeroVariable_one_two_half_hypercontractive[complete] -
FABL.exercise9_10_nonzero_hypothesis_necessary[complete]
-
defdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
def FABL.affineMoment.{u_1} {Ω : Type u_1} [Fintype Ω] (r c : ℝ) (X : Ω → ℝ) (t : ℝ) : ℝ
def FABL.affineMoment.{u_1} {Ω : Type u_1} [Fintype Ω] (r c : ℝ) (X : Ω → ℝ) (t : ℝ) : ℝ
The real `r`-moment of the affine perturbation `1 + c t X`.
-
defdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
def FABL.affineMomentDeriv.{u_1} {Ω : Type u_1} [Fintype Ω] (r c : ℝ) (X : Ω → ℝ) (t : ℝ) : ℝ
def FABL.affineMomentDeriv.{u_1} {Ω : Type u_1} [Fintype Ω] (r c : ℝ) (X : Ω → ℝ) (t : ℝ) : ℝ
The pointwise first-derivative expression for `affineMoment`.
-
defdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
def FABL.affineMomentDeriv2.{u_1} {Ω : Type u_1} [Fintype Ω] (r c : ℝ) (X : Ω → ℝ) (t : ℝ) : ℝ
def FABL.affineMomentDeriv2.{u_1} {Ω : Type u_1} [Fintype Ω] (r c : ℝ) (X : Ω → ℝ) (t : ℝ) : ℝ
The pointwise second-derivative expression for `affineMoment`.
-
defdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
def FABL.hypercontractiveMomentGap.{u_1} {Ω : Type u_1} [Fintype Ω] (p q rho : ℝ) (X : Ω → ℝ) (t : ℝ) : ℝ
def FABL.hypercontractiveMomentGap.{u_1} {Ω : Type u_1} [Fintype Ω] (p q rho : ℝ) (X : Ω → ℝ) (t : ℝ) : ℝ
The cross-powered moment gap whose nonnegativity is equivalent locally to the defining hypercontractive norm comparison.
-
defdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
def FABL.hypercontractiveMomentGapDeriv.{u_1} {Ω : Type u_1} [Fintype Ω] (p q rho : ℝ) (X : Ω → ℝ) (t : ℝ) : ℝ
def FABL.hypercontractiveMomentGapDeriv.{u_1} {Ω : Type u_1} [Fintype Ω] (p q rho : ℝ) (X : Ω → ℝ) (t : ℝ) : ℝ
The first-derivative expression for `hypercontractiveMomentGap`.
-
theoremdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
theorem FABL.IsHypercontractiveRandomVariable.mean_eq_zero.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (p q : NNReal) (hp : 0 < ↑p) (hq : 0 < ↑q) {rho : ℝ} (hrho : rho < 1) (X : Ω → ℝ) (hX : FABL.IsHypercontractiveRandomVariable (↑p) (↑q) rho X) : (Finset.univ.expect fun x => X x) = 0
theorem FABL.IsHypercontractiveRandomVariable.mean_eq_zero.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (p q : NNReal) (hp : 0 < ↑p) (hq : 0 < ↑q) {rho : ℝ} (hrho : rho < 1) (X : Ω → ℝ) (hX : FABL.IsHypercontractiveRandomVariable (↑p) (↑q) rho X) : (Finset.univ.expect fun x => X x) = 0
Exercise 9.10(a), finite-uniform form: positive-exponent hypercontractivity with `rho < 1` forces the random variable to have mean zero.
-
theoremdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
theorem FABL.IsHypercontractiveRandomVariable.rho_sq_bound.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (p q : NNReal) (hp : 0 < ↑p) (hq : 0 < ↑q) {rho : ℝ} (hrho : rho < 1) (X : Ω → ℝ) (hX : FABL.IsHypercontractiveRandomVariable (↑p) (↑q) rho X) (hX2 : 0 < Finset.univ.expect fun x => X x ^ 2) : (↑q - 1) * rho ^ 2 ≤ ↑p - 1
theorem FABL.IsHypercontractiveRandomVariable.rho_sq_bound.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (p q : NNReal) (hp : 0 < ↑p) (hq : 0 < ↑q) {rho : ℝ} (hrho : rho < 1) (X : Ω → ℝ) (hX : FABL.IsHypercontractiveRandomVariable (↑p) (↑q) rho X) (hX2 : 0 < Finset.univ.expect fun x => X x ^ 2) : (↑q - 1) * rho ^ 2 ≤ ↑p - 1
Exercise 9.10(b), corrected finite-uniform squared form for a nonzero random variable.
-
theoremdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
theorem FABL.IsHypercontractiveRandomVariable.rho_le_sqrt_ratio.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (p q : NNReal) (hp1 : 1 ≤ ↑p) (hq1 : 1 < ↑q) {rho : ℝ} (hrho1 : rho < 1) (X : Ω → ℝ) (hX : FABL.IsHypercontractiveRandomVariable (↑p) (↑q) rho X) (hX2 : 0 < Finset.univ.expect fun x => X x ^ 2) : rho ≤ √((↑p - 1) / (↑q - 1))
theorem FABL.IsHypercontractiveRandomVariable.rho_le_sqrt_ratio.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (p q : NNReal) (hp1 : 1 ≤ ↑p) (hq1 : 1 < ↑q) {rho : ℝ} (hrho1 : rho < 1) (X : Ω → ℝ) (hX : FABL.IsHypercontractiveRandomVariable (↑p) (↑q) rho X) (hX2 : 0 < Finset.univ.expect fun x => X x ^ 2) : rho ≤ √((↑p - 1) / (↑q - 1))
Exercise 9.10(b), corrected finite-uniform ratio form for a nonzero random variable.
-
theoremdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
theorem FABL.zeroVariable_one_two_half_hypercontractive : FABL.IsHypercontractiveRandomVariable 1 2 (1 / 2) fun x => 0
theorem FABL.zeroVariable_one_two_half_hypercontractive : FABL.IsHypercontractiveRandomVariable 1 2 (1 / 2) fun x => 0
The zero random variable is `(1,2,1/2)`-hypercontractive, showing that Exercise 9.10(b) requires a nonzero hypothesis.
-
theoremdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
theorem FABL.exercise9_10_nonzero_hypothesis_necessary : ¬1 / 2 ≤ √((1 - 1) / (2 - 1))
theorem FABL.exercise9_10_nonzero_hypothesis_necessary : ¬1 / 2 ≤ √((1 - 1) / (2 - 1))
The zero-variable example violates the printed bound in Exercise 9.10(b).
-
FABL.abs_expect_le_uniformLpNorm[complete] -
FABL.uniformLpNorm_add_le[complete] -
FABL.meanZero_qq_hypercontractive_real[complete] -
FABL.meanZero_qq_hypercontractive[complete] -
FABL.IsHypercontractiveRandomVariable.mono_rho_of_meanZero[complete]
Exercise 9.11. If \mathbb E[X]=0, prove that X is
(q,q,0)-hypercontractive and then (q,q,\rho)-hypercontractive for
every 0\le\rho<1. Deduce monotonicity of hypercontractivity under
decreasing \rho.
Lean code for Lemma9.7.12●5 theorems
Associated Lean declarations
-
FABL.abs_expect_le_uniformLpNorm[complete]
-
FABL.uniformLpNorm_add_le[complete]
-
FABL.meanZero_qq_hypercontractive_real[complete]
-
FABL.meanZero_qq_hypercontractive[complete]
-
FABL.IsHypercontractiveRandomVariable.mono_rho_of_meanZero[complete]
-
FABL.abs_expect_le_uniformLpNorm[complete] -
FABL.uniformLpNorm_add_le[complete] -
FABL.meanZero_qq_hypercontractive_real[complete] -
FABL.meanZero_qq_hypercontractive[complete] -
FABL.IsHypercontractiveRandomVariable.mono_rho_of_meanZero[complete]
-
theoremdefined in FABL/Chapter09/OneBitHypercontractivity.leancomplete
theorem FABL.abs_expect_le_uniformLpNorm.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (q : ℝ) (hq : 1 ≤ q) (f : Ω → ℝ) : |Finset.univ.expect fun x => f x| ≤ FABL.uniformLpNorm q f
theorem FABL.abs_expect_le_uniformLpNorm.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (q : ℝ) (hq : 1 ≤ q) (f : Ω → ℝ) : |Finset.univ.expect fun x => f x| ≤ FABL.uniformLpNorm q f
The absolute uniform expectation is bounded by every `L^q` norm with `q ≥ 1`.
-
theoremdefined in FABL/Chapter09/OneBitHypercontractivity.leancomplete
theorem FABL.uniformLpNorm_add_le.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (q : ℝ) (hq : 1 ≤ q) (f g : Ω → ℝ) : (FABL.uniformLpNorm q fun x => f x + g x) ≤ FABL.uniformLpNorm q f + FABL.uniformLpNorm q g
theorem FABL.uniformLpNorm_add_le.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (q : ℝ) (hq : 1 ≤ q) (f g : Ω → ℝ) : (FABL.uniformLpNorm q fun x => f x + g x) ≤ FABL.uniformLpNorm q f + FABL.uniformLpNorm q g
Minkowski's inequality for normalized finite-uniform `L^q` norms.
-
theoremdefined in FABL/Chapter09/OneBitHypercontractivity.leancomplete
theorem FABL.meanZero_qq_hypercontractive_real.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (q : ℝ) (hq : 1 ≤ q) (ρ : ℝ) (hρ0 : 0 ≤ ρ) (hρ1 : ρ ≤ 1) (a b : ℝ) : (FABL.uniformLpNorm q fun x => a + ρ * b * X x) ≤ FABL.uniformLpNorm q fun x => a + b * X x
theorem FABL.meanZero_qq_hypercontractive_real.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (q : ℝ) (hq : 1 ≤ q) (ρ : ℝ) (hρ0 : 0 ≤ ρ) (hρ1 : ρ ≤ 1) (a b : ℝ) : (FABL.uniformLpNorm q fun x => a + ρ * b * X x) ≤ FABL.uniformLpNorm q fun x => a + b * X x
Exercise 9.11(a,b), finite-uniform form: a mean-zero variable is `(q,q,ρ)`-hypercontractive for every `q ≥ 1` and `0 ≤ ρ ≤ 1`.
-
theoremdefined in FABL/Chapter09/OneBitHypercontractivity.leancomplete
theorem FABL.meanZero_qq_hypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (q : NNReal) (hq : 1 ≤ ↑q) (ρ : ℝ) (hρ0 : 0 ≤ ρ) (hρ1 : ρ ≤ 1) : FABL.IsHypercontractiveRandomVariable (↑q) (↑q) ρ X
theorem FABL.meanZero_qq_hypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (q : NNReal) (hq : 1 ≤ ↑q) (ρ : ℝ) (hρ0 : 0 ≤ ρ) (hρ1 : ρ ≤ 1) : FABL.IsHypercontractiveRandomVariable (↑q) (↑q) ρ X
Exercise 9.11(a,b) in Definition 9.13's finite-exponent interface.
-
theoremdefined in FABL/Chapter09/OneBitHypercontractivity.leancomplete
theorem FABL.IsHypercontractiveRandomVariable.mono_rho_of_meanZero.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] {p q : NNReal} {X : Ω → ℝ} {rho rho' : ℝ} (hX : FABL.IsHypercontractiveRandomVariable (↑p) (↑q) rho X) (hmean : (Finset.univ.expect fun x => X x) = 0) (hp : 1 ≤ ↑p) (hrho : 0 < rho) (hrho'0 : 0 ≤ rho') (hrho' : rho' ≤ rho) : FABL.IsHypercontractiveRandomVariable (↑p) (↑q) rho' X
theorem FABL.IsHypercontractiveRandomVariable.mono_rho_of_meanZero.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] {p q : NNReal} {X : Ω → ℝ} {rho rho' : ℝ} (hX : FABL.IsHypercontractiveRandomVariable (↑p) (↑q) rho X) (hmean : (Finset.univ.expect fun x => X x) = 0) (hp : 1 ≤ ↑p) (hrho : 0 < rho) (hrho'0 : 0 ≤ rho') (hrho' : rho' ≤ rho) : FABL.IsHypercontractiveRandomVariable (↑p) (↑q) rho' X
Exercise 9.11(c): for a mean-zero finite variable, hypercontractivity is monotone when the correlation is decreased.
-
FABL.uniformLpNorm_two_sub_const_sq[complete] -
FABL.translated_fourthMoment_le[complete] -
FABL.translated_anticoncentration_normalized[complete] -
FABL.translated_anticoncentration_exact[complete] -
FABL.translated_anticoncentration[complete] -
FABL.expect_sq_pos_of_uniformLpNorm_two_pos[complete] -
FABL.translated_anticoncentration_exact_of_hypercontractive[complete] -
FABL.translated_anticoncentration_of_hypercontractive[complete]
Exercise 9.12. If nonconstant X is
(2,4,\rho)-hypercontractive, prove for every \theta\in\mathbb R and
0<t<1,
\Pr[|X-\theta|>t\|X\|_2]
\ge(1-t^2)^2\rho^4.
After normalizing \|X\|_2=1 and putting Y=(X-\theta)^2, establish
\mathbb E[Y]=1+\theta^2,
\qquad
\mathbb E[Y^2]\le(\rho^{-2}+\theta^2)^2,
and the sharper intermediate bound
\Pr[|X-\theta|>t]
\ge
\left(
\frac{\rho^2(1-t^2)+\rho^2\theta^2}
{1+\rho^2\theta^2}
\right)^2.
Lean code for Lemma9.7.13●8 theorems
Associated Lean declarations
-
FABL.uniformLpNorm_two_sub_const_sq[complete]
-
FABL.translated_fourthMoment_le[complete]
-
FABL.translated_anticoncentration_normalized[complete]
-
FABL.translated_anticoncentration_exact[complete]
-
FABL.translated_anticoncentration[complete]
-
FABL.expect_sq_pos_of_uniformLpNorm_two_pos[complete]
-
FABL.translated_anticoncentration_exact_of_hypercontractive[complete]
-
FABL.translated_anticoncentration_of_hypercontractive[complete]
-
FABL.uniformLpNorm_two_sub_const_sq[complete] -
FABL.translated_fourthMoment_le[complete] -
FABL.translated_anticoncentration_normalized[complete] -
FABL.translated_anticoncentration_exact[complete] -
FABL.translated_anticoncentration[complete] -
FABL.expect_sq_pos_of_uniformLpNorm_two_pos[complete] -
FABL.translated_anticoncentration_exact_of_hypercontractive[complete] -
FABL.translated_anticoncentration_of_hypercontractive[complete]
-
theoremdefined in FABL/Chapter09/HypercontractiveAnticoncentration.leancomplete
theorem FABL.uniformLpNorm_two_sub_const_sq.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (theta : ℝ) : (FABL.uniformLpNorm 2 fun x => X x - theta) ^ 2 = FABL.uniformLpNorm 2 X ^ 2 + theta ^ 2
theorem FABL.uniformLpNorm_two_sub_const_sq.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (theta : ℝ) : (FABL.uniformLpNorm 2 fun x => X x - theta) ^ 2 = FABL.uniformLpNorm 2 X ^ 2 + theta ^ 2
Exact second moment after translating a mean-zero finite-uniform random variable.
-
theoremdefined in FABL/Chapter09/HypercontractiveAnticoncentration.leancomplete
theorem FABL.translated_fourthMoment_le.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (hnorm : FABL.uniformLpNorm 2 X = 1) (rho : ℝ) (hrho : 0 < rho) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta : ℝ) : (Finset.univ.expect fun x => (X x - theta) ^ 4) ≤ ((rho ^ 2)⁻¹ + theta ^ 2) ^ 2
theorem FABL.translated_fourthMoment_le.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (hnorm : FABL.uniformLpNorm 2 X = 1) (rho : ℝ) (hrho : 0 < rho) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta : ℝ) : (Finset.univ.expect fun x => (X x - theta) ^ 4) ≤ ((rho ^ 2)⁻¹ + theta ^ 2) ^ 2
A normalized `(2,4,rho)`-hypercontractive variable has the translated fourth-moment bound used in Exercise 9.12.
-
theoremdefined in FABL/Chapter09/HypercontractiveAnticoncentration.leancomplete
theorem FABL.translated_anticoncentration_normalized.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (hnorm : FABL.uniformLpNorm 2 X = 1) (rho : ℝ) (hrho : 0 < rho) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta t : ℝ) (ht0 : 0 < t) (ht1 : t < 1) : ((rho ^ 2 * (1 - t ^ 2) + rho ^ 2 * theta ^ 2) / (1 + rho ^ 2 * theta ^ 2)) ^ 2 ≤ FABL.uniformProbability fun x => t < |X x - theta|
theorem FABL.translated_anticoncentration_normalized.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (hnorm : FABL.uniformLpNorm 2 X = 1) (rho : ℝ) (hrho : 0 < rho) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta t : ℝ) (ht0 : 0 < t) (ht1 : t < 1) : ((rho ^ 2 * (1 - t ^ 2) + rho ^ 2 * theta ^ 2) / (1 + rho ^ 2 * theta ^ 2)) ^ 2 ≤ FABL.uniformProbability fun x => t < |X x - theta|
The exact Paley--Zygmund lower bound before the final simplification in Exercise 9.12.
-
theoremdefined in FABL/Chapter09/HypercontractiveAnticoncentration.leancomplete
theorem FABL.translated_anticoncentration_exact.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (hL : 0 < FABL.uniformLpNorm 2 X) (rho : ℝ) (hrho : 0 < rho) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta t : ℝ) (ht0 : 0 < t) (ht1 : t < 1) : ((rho ^ 2 * (1 - t ^ 2) + rho ^ 2 * (theta / FABL.uniformLpNorm 2 X) ^ 2) / (1 + rho ^ 2 * (theta / FABL.uniformLpNorm 2 X) ^ 2)) ^ 2 ≤ FABL.uniformProbability fun x => t * FABL.uniformLpNorm 2 X < |X x - theta|
theorem FABL.translated_anticoncentration_exact.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (hL : 0 < FABL.uniformLpNorm 2 X) (rho : ℝ) (hrho : 0 < rho) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta t : ℝ) (ht0 : 0 < t) (ht1 : t < 1) : ((rho ^ 2 * (1 - t ^ 2) + rho ^ 2 * (theta / FABL.uniformLpNorm 2 X) ^ 2) / (1 + rho ^ 2 * (theta / FABL.uniformLpNorm 2 X) ^ 2)) ^ 2 ≤ FABL.uniformProbability fun x => t * FABL.uniformLpNorm 2 X < |X x - theta|
Exercise 9.12 before its final simplification, without the normalization `‖X‖₂ = 1`.
-
theoremdefined in FABL/Chapter09/HypercontractiveAnticoncentration.leancomplete
theorem FABL.translated_anticoncentration.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (hL : 0 < FABL.uniformLpNorm 2 X) (rho : ℝ) (hrho : 0 < rho) (hrho1 : rho ≤ 1) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta t : ℝ) (ht0 : 0 < t) (ht1 : t < 1) : (1 - t ^ 2) ^ 2 * rho ^ 4 ≤ FABL.uniformProbability fun x => t * FABL.uniformLpNorm 2 X < |X x - theta|
theorem FABL.translated_anticoncentration.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hmean : (Finset.univ.expect fun x => X x) = 0) (hL : 0 < FABL.uniformLpNorm 2 X) (rho : ℝ) (hrho : 0 < rho) (hrho1 : rho ≤ 1) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta t : ℝ) (ht0 : 0 < t) (ht1 : t < 1) : (1 - t ^ 2) ^ 2 * rho ^ 4 ≤ FABL.uniformProbability fun x => t * FABL.uniformLpNorm 2 X < |X x - theta|
Exercise 9.12's displayed translation anticoncentration bound.
-
theoremdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
theorem FABL.expect_sq_pos_of_uniformLpNorm_two_pos.{u_1} {Ω : Type u_1} [Fintype Ω] (X : Ω → ℝ) (hX : 0 < FABL.uniformLpNorm 2 X) : 0 < Finset.univ.expect fun x => X x ^ 2
theorem FABL.expect_sq_pos_of_uniformLpNorm_two_pos.{u_1} {Ω : Type u_1} [Fintype Ω] (X : Ω → ℝ) (hX : 0 < FABL.uniformLpNorm 2 X) : 0 < Finset.univ.expect fun x => X x ^ 2
Positivity of the uniform `L²` norm is equivalent to positivity of the second moment in the direction needed by Exercise 9.12.
-
theoremdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
theorem FABL.translated_anticoncentration_exact_of_hypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hL : 0 < FABL.uniformLpNorm 2 X) (rho : ℝ) (hrho : 0 < rho) (hrhoLT : rho < 1) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta t : ℝ) (ht0 : 0 < t) (ht1 : t < 1) : ((rho ^ 2 * (1 - t ^ 2) + rho ^ 2 * (theta / FABL.uniformLpNorm 2 X) ^ 2) / (1 + rho ^ 2 * (theta / FABL.uniformLpNorm 2 X) ^ 2)) ^ 2 ≤ FABL.uniformProbability fun x => t * FABL.uniformLpNorm 2 X < |X x - theta|
theorem FABL.translated_anticoncentration_exact_of_hypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hL : 0 < FABL.uniformLpNorm 2 X) (rho : ℝ) (hrho : 0 < rho) (hrhoLT : rho < 1) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta t : ℝ) (ht0 : 0 < t) (ht1 : t < 1) : ((rho ^ 2 * (1 - t ^ 2) + rho ^ 2 * (theta / FABL.uniformLpNorm 2 X) ^ 2) / (1 + rho ^ 2 * (theta / FABL.uniformLpNorm 2 X) ^ 2)) ^ 2 ≤ FABL.uniformProbability fun x => t * FABL.uniformLpNorm 2 X < |X x - theta|
Exercise 9.12's sharp intermediate bound, with mean zero derived from the stated hypercontractivity hypothesis.
-
theoremdefined in FABL/Chapter09/HypercontractiveNecessity.leancomplete
theorem FABL.translated_anticoncentration_of_hypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hL : 0 < FABL.uniformLpNorm 2 X) (rho : ℝ) (hrho : 0 < rho) (hrhoLT : rho < 1) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta t : ℝ) (ht0 : 0 < t) (ht1 : t < 1) : (1 - t ^ 2) ^ 2 * rho ^ 4 ≤ FABL.uniformProbability fun x => t * FABL.uniformLpNorm 2 X < |X x - theta|
theorem FABL.translated_anticoncentration_of_hypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (X : Ω → ℝ) (hL : 0 < FABL.uniformLpNorm 2 X) (rho : ℝ) (hrho : 0 < rho) (hrhoLT : rho < 1) (hX : FABL.IsHypercontractiveRandomVariable 2 4 rho X) (theta t : ℝ) (ht0 : 0 < t) (ht1 : t < 1) : (1 - t ^ 2) ^ 2 * rho ^ 4 ≤ FABL.uniformProbability fun x => t * FABL.uniformLpNorm 2 X < |X x - theta|
Exercise 9.12's displayed translation-anticoncentration bound, with no additional mean-zero hypothesis.
Exercise 9.13. Let
f:\{-1,1\}^n\to[m] be unbiased, so each output has probability
1/m. If (x,y) is \rho-correlated, prove
\Pr[f(x)=f(y)]
\le(1/m)^{(1-\rho)/(1+\rho)}.
Lean code for Lemma9.7.14●1 theorem
Associated Lean declarations
-
FABL.unbiasedLabel_collisionProbability[complete]
-
FABL.unbiasedLabel_collisionProbability[complete]
-
theoremdefined in FABL/Chapter09/HypercontractiveApplications.leancomplete
theorem FABL.unbiasedLabel_collisionProbability {n : ℕ} (m : ℕ) [NeZero m] (label : FABL.SignCube n → Fin m) (ρ : ℝ) (hρ : ρ ∈ Set.Icc 0 1) (hunbiased : ∀ (j : Fin m), (FABL.uniformProbability fun x => label x = j) = 1 / ↑m) : (FABL.pmfEventProbability (FABL.correlatedPairPMF ρ ⋯) fun xy => label xy.1 = label xy.2) ≤ (1 / ↑m) ^ ((1 - ρ) / (1 + ρ))
theorem FABL.unbiasedLabel_collisionProbability {n : ℕ} (m : ℕ) [NeZero m] (label : FABL.SignCube n → Fin m) (ρ : ℝ) (hρ : ρ ∈ Set.Icc 0 1) (hunbiased : ∀ (j : Fin m), (FABL.uniformProbability fun x => label x = j) = 1 / ↑m) : (FABL.pmfEventProbability (FABL.correlatedPairPMF ρ ⋯) fun xy => label xy.1 = label xy.2) ≤ (1 / ↑m) ^ ((1 - ρ) / (1 + ρ))
Exercise 9.13: collision probability of an unbiased finite-valued function.
Exercise 9.14. If \deg(f)\le k and 1\le p<2, prove
\|f\|_2\le(1/\sqrt{p-1})^k\|f\|_p.
Also prove the strict numerical comparison
e^{2/p-1}<1/\sqrt{p-1}.
Lean code for Lemma9.7.15●4 theorems
Associated Lean declarations
-
theoremdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
theorem FABL.degreeTruncation_eq_self_of_fourierDegree_le {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) (hdegree : FABL.fourierDegree f ≤ k) : FABL.degreeTruncation k f = f
theorem FABL.degreeTruncation_eq_self_of_fourierDegree_le {n : ℕ} (k : ℕ) (f : FABL.SignCube n → ℝ) (hdegree : FABL.fourierDegree f ≤ k) : FABL.degreeTruncation k f = f
A function of Fourier degree at most `k` is fixed by degree truncation at `k`.
-
theoremdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
theorem FABL.lowDegree_uniformLpNorm_two_le_weak {n : ℕ} (p : ℝ) (hp1 : 1 < p) (hp2 : p < 2) (f : FABL.SignCube n → ℝ) (k : ℕ) (hdegree : FABL.fourierDegree f ≤ k) : FABL.uniformLpNorm 2 f ≤ (1 / √(p - 1)) ^ k * FABL.uniformLpNorm p f
theorem FABL.lowDegree_uniformLpNorm_two_le_weak {n : ℕ} (p : ℝ) (hp1 : 1 < p) (hp2 : p < 2) (f : FABL.SignCube n → ℝ) (k : ℕ) (hdegree : FABL.fourierDegree f ≤ k) : FABL.uniformLpNorm 2 f ≤ (1 / √(p - 1)) ^ k * FABL.uniformLpNorm p f
Exercise 9.14's weak low-degree estimate. The real-valued formulation starts at `p > 1`; at `p = 1` the displayed constant is infinite rather than a real number.
-
theoremdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
theorem FABL.two_mul_one_sub_div_one_add_lt_neg_log (x : ℝ) (hx0 : 0 < x) (hx1 : x < 1) : 2 * (1 - x) / (1 + x) < -Real.log x
theorem FABL.two_mul_one_sub_div_one_add_lt_neg_log (x : ℝ) (hx0 : 0 < x) (hx1 : x < 1) : 2 * (1 - x) / (1 + x) < -Real.log x
The strict logarithmic estimate behind the comparison in Exercise 9.14.
-
theoremdefined in FABL/Chapter09/HypercontractivityExercises.leancomplete
theorem FABL.exp_two_div_sub_one_lt_inv_sqrt_sub_one (p : ℝ) (hp1 : 1 < p) (hp2 : p < 2) : Real.exp (2 / p - 1) < 1 / √(p - 1)
theorem FABL.exp_two_div_sub_one_lt_inv_sqrt_sub_one (p : ℝ) (hp1 : 1 < p) (hp2 : p < 2) : Real.exp (2 / p - 1) < 1 / √(p - 1)
Exercise 9.14: the sharp exponential constant is strictly better than the weak degree-truncation constant for every `1 < p < 2`.
-
FABL.uniformLpNorm_rpow[complete] -
FABL.uniformLpNorm_abs_rpow[complete] -
FABL.uniformLpNorm_two_interpolation_sq[complete] -
FABL.lowDegree_two_le_interpolation_constant[complete] -
FABL.interpolation_constant_le_exp[complete]
Exercise 9.15. Complete the proof of the general p form of
Theorem 9.22, retaining the factor
(e^{2/p-1})^k for every 1\le p\le2.
Lean code for Lemma9.7.16●5 theorems
Associated Lean declarations
-
FABL.uniformLpNorm_rpow[complete]
-
FABL.uniformLpNorm_abs_rpow[complete]
-
FABL.uniformLpNorm_two_interpolation_sq[complete]
-
FABL.lowDegree_two_le_interpolation_constant[complete]
-
FABL.interpolation_constant_le_exp[complete]
-
FABL.uniformLpNorm_rpow[complete] -
FABL.uniformLpNorm_abs_rpow[complete] -
FABL.uniformLpNorm_two_interpolation_sq[complete] -
FABL.lowDegree_two_le_interpolation_constant[complete] -
FABL.interpolation_constant_le_exp[complete]
-
theoremdefined in FABL/Chapter09/HypercontractiveApplications.leancomplete
theorem FABL.uniformLpNorm_rpow.{u_1} {Ω : Type u_1} [Fintype Ω] (q : ℝ) (hq : 0 < q) (f : Ω → ℝ) : FABL.uniformLpNorm q f ^ q = Finset.univ.expect fun x => |f x| ^ q
theorem FABL.uniformLpNorm_rpow.{u_1} {Ω : Type u_1} [Fintype Ω] (q : ℝ) (hq : 0 < q) (f : Ω → ℝ) : FABL.uniformLpNorm q f ^ q = Finset.univ.expect fun x => |f x| ^ q
Raising a positive-exponent uniform norm back to its exponent gives the corresponding moment.
-
theoremdefined in FABL/Chapter09/HypercontractiveApplications.leancomplete
theorem FABL.uniformLpNorm_abs_rpow.{u_1} {Ω : Type u_1} [Fintype Ω] (p c : ℝ) (hp : 0 < p) (hc : 0 < c) (f : Ω → ℝ) : (FABL.uniformLpNorm (p / c) fun x => |f x| ^ c) = FABL.uniformLpNorm p f ^ c
theorem FABL.uniformLpNorm_abs_rpow.{u_1} {Ω : Type u_1} [Fintype Ω] (p c : ℝ) (hp : 0 < p) (hc : 0 < c) (f : Ω → ℝ) : (FABL.uniformLpNorm (p / c) fun x => |f x| ^ c) = FABL.uniformLpNorm p f ^ c
Scaling the power inside an absolute-value function rescales its norm exponent.
-
theoremdefined in FABL/Chapter09/HypercontractiveApplications.leancomplete
theorem FABL.uniformLpNorm_two_interpolation_sq.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (p q θ : ℝ) (hp : 0 < p) (hq : 0 < q) (hθ0 : 0 < θ) (hθ1 : θ < 1) (hrelation : 1 / 2 = θ / p + (1 - θ) / q) (f : Ω → ℝ) : FABL.uniformLpNorm 2 f ^ 2 ≤ FABL.uniformLpNorm p f ^ (2 * θ) * FABL.uniformLpNorm q f ^ (2 * (1 - θ))
theorem FABL.uniformLpNorm_two_interpolation_sq.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (p q θ : ℝ) (hp : 0 < p) (hq : 0 < q) (hθ0 : 0 < θ) (hθ1 : θ < 1) (hrelation : 1 / 2 = θ / p + (1 - θ) / q) (f : Ω → ℝ) : FABL.uniformLpNorm 2 f ^ 2 ≤ FABL.uniformLpNorm p f ^ (2 * θ) * FABL.uniformLpNorm q f ^ (2 * (1 - θ))
Log-convexity of finite uniform norms, specialized to interpolation through `L²`.
-
theoremdefined in FABL/Chapter09/HypercontractiveApplications.leancomplete
theorem FABL.lowDegree_two_le_interpolation_constant {n : ℕ} (f : FABL.SignCube n → ℝ) (k : ℕ) (hdegree : FABL.fourierDegree f ≤ k) (p : ℝ) (hp1 : 1 ≤ p) (hp2 : p < 2) (ε : ℝ) (hε : 0 < ε) : FABL.uniformLpNorm 2 f ≤ (1 + ε) ^ ((2 / p - 1) * ↑k * (1 / ε + 1 / 2)) * FABL.uniformLpNorm p f
theorem FABL.lowDegree_two_le_interpolation_constant {n : ℕ} (f : FABL.SignCube n → ℝ) (k : ℕ) (hdegree : FABL.fourierDegree f ≤ k) (p : ℝ) (hp1 : 1 ≤ p) (hp2 : p < 2) (ε : ℝ) (hε : 0 < ε) : FABL.uniformLpNorm 2 f ≤ (1 + ε) ^ ((2 / p - 1) * ↑k * (1 / ε + 1 / 2)) * FABL.uniformLpNorm p f
The interpolation estimate in the proof of Theorem 9.22, before sending `ε` to zero.
-
theoremdefined in FABL/Chapter09/HypercontractiveApplications.leancomplete
theorem FABL.interpolation_constant_le_exp (c ε : ℝ) (hc : 0 ≤ c) (hε : 0 < ε) : (1 + ε) ^ (c * (1 / ε + 1 / 2)) ≤ Real.exp (c * (1 + ε / 2))
theorem FABL.interpolation_constant_le_exp (c ε : ℝ) (hc : 0 ≤ c) (hε : 0 < ε) : (1 + ε) ^ (c * (1 / ε + 1 / 2)) ≤ Real.exp (c * (1 + ε / 2))
The pre-limit interpolation constant is bounded by an elementary exponential expression.
-
FABL.expect_snoc[complete] -
FABL.pmfExpectation_independentProductPMF_succ[complete] -
FABL.lastEvenPart[complete] -
FABL.lastOddPart[complete] -
FABL.lastCoordinate_reconstruct[complete] -
FABL.noiseOperator_snoc[complete] -
FABL.lastFiberLpNorm[complete] -
FABL.uniformLpNorm_eq_lastFiberLpNorm[complete] -
FABL.uniformLpNorm_le_of_abs_le[complete] -
FABL.uniformLpNorm_two_lastParts_sq[complete] -
FABL.uniformLpNorm_sqrt_sq[complete] -
FABL.oneBit_twoQ_sharp_of_two_le[complete] -
FABL.uniformLpNorm_sq[complete] -
FABL.uniformLpNorm_const[complete] -
FABL.twoQHypercontractivity_lastCoordinate_step[complete] -
FABL.twoQHypercontractivity_by_lastCoordinate[complete]
Exercise 9.16. Give a direct induction on the dimension deriving the
full n-bit (2,q) theorem from the one-bit theorem. For the
decomposition into the last coordinate, establish the complete iterated
L^q-norm chain in the book and conclude
\left\|T_{1/\sqrt{q-1}}f\right\|_q\le\|f\|_2.
Lean code for Lemma9.7.17●16 declarations
Associated Lean declarations
-
FABL.expect_snoc[complete]
-
FABL.pmfExpectation_independentProductPMF_succ[complete]
-
FABL.lastEvenPart[complete]
-
FABL.lastOddPart[complete]
-
FABL.lastCoordinate_reconstruct[complete]
-
FABL.noiseOperator_snoc[complete]
-
FABL.lastFiberLpNorm[complete]
-
FABL.uniformLpNorm_eq_lastFiberLpNorm[complete]
-
FABL.uniformLpNorm_le_of_abs_le[complete]
-
FABL.uniformLpNorm_two_lastParts_sq[complete]
-
FABL.uniformLpNorm_sqrt_sq[complete]
-
FABL.oneBit_twoQ_sharp_of_two_le[complete]
-
FABL.uniformLpNorm_sq[complete]
-
FABL.uniformLpNorm_const[complete]
-
FABL.twoQHypercontractivity_lastCoordinate_step[complete]
-
FABL.twoQHypercontractivity_by_lastCoordinate[complete]
-
FABL.expect_snoc[complete] -
FABL.pmfExpectation_independentProductPMF_succ[complete] -
FABL.lastEvenPart[complete] -
FABL.lastOddPart[complete] -
FABL.lastCoordinate_reconstruct[complete] -
FABL.noiseOperator_snoc[complete] -
FABL.lastFiberLpNorm[complete] -
FABL.uniformLpNorm_eq_lastFiberLpNorm[complete] -
FABL.uniformLpNorm_le_of_abs_le[complete] -
FABL.uniformLpNorm_two_lastParts_sq[complete] -
FABL.uniformLpNorm_sqrt_sq[complete] -
FABL.oneBit_twoQ_sharp_of_two_le[complete] -
FABL.uniformLpNorm_sq[complete] -
FABL.uniformLpNorm_const[complete] -
FABL.twoQHypercontractivity_lastCoordinate_step[complete] -
FABL.twoQHypercontractivity_by_lastCoordinate[complete]
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.expect_snoc {n : ℕ} (f : FABL.SignCube (n + 1) → ℝ) : (Finset.univ.expect fun z => f z) = Finset.univ.expect fun x => Finset.univ.expect fun a => f (Fin.snoc x a)
theorem FABL.expect_snoc {n : ℕ} (f : FABL.SignCube (n + 1) → ℝ) : (Finset.univ.expect fun z => f z) = Finset.univ.expect fun x => Finset.univ.expect fun a => f (Fin.snoc x a)
Uniform expectation splits into the first `n` signs and the last sign.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.pmfExpectation_independentProductPMF_succ.{u_1} {Ω : Type u_1} [Fintype Ω] (n : ℕ) (p : Fin (n + 1) → PMF Ω) (f : (Fin (n + 1) → Ω) → ℝ) : FABL.pmfExpectation (FABL.independentProductPMF p) f = FABL.pmfExpectation (p (Fin.last n)) fun a => FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.castSucc) fun x => f (Fin.snoc x a)
theorem FABL.pmfExpectation_independentProductPMF_succ.{u_1} {Ω : Type u_1} [Fintype Ω] (n : ℕ) (p : Fin (n + 1) → PMF Ω) (f : (Fin (n + 1) → Ω) → ℝ) : FABL.pmfExpectation (FABL.independentProductPMF p) f = FABL.pmfExpectation (p (Fin.last n)) fun a => FABL.pmfExpectation (FABL.independentProductPMF fun i => p i.castSucc) fun x => f (Fin.snoc x a)
A finite independent-product expectation splits off its last coordinate.
-
defdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
def FABL.lastEvenPart {n : ℕ} (f : FABL.SignCube (n + 1) → ℝ) : FABL.SignCube n → ℝ
def FABL.lastEvenPart {n : ℕ} (f : FABL.SignCube (n + 1) → ℝ) : FABL.SignCube n → ℝ
The part of a function even in its last coordinate.
-
defdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
def FABL.lastOddPart {n : ℕ} (f : FABL.SignCube (n + 1) → ℝ) : FABL.SignCube n → ℝ
def FABL.lastOddPart {n : ℕ} (f : FABL.SignCube (n + 1) → ℝ) : FABL.SignCube n → ℝ
The derivative of a function in its last coordinate.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.lastCoordinate_reconstruct {n : ℕ} (f : FABL.SignCube (n + 1) → ℝ) (x : FABL.SignCube n) (a : FABL.Sign) : f (Fin.snoc x a) = FABL.lastEvenPart f x + FABL.lastOddPart f x * FABL.signValue a
theorem FABL.lastCoordinate_reconstruct {n : ℕ} (f : FABL.SignCube (n + 1) → ℝ) (x : FABL.SignCube n) (a : FABL.Sign) : f (Fin.snoc x a) = FABL.lastEvenPart f x + FABL.lastOddPart f x * FABL.signValue a
Reconstruction from the last-coordinate even part and derivative.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.noiseOperator_snoc {n : ℕ} (ρ : ℝ) (hρ : ρ ∈ Set.Icc (-1) 1) (f : FABL.SignCube (n + 1) → ℝ) (x : FABL.SignCube n) (a : FABL.Sign) : (FABL.noiseOperator ρ) f (Fin.snoc x a) = (FABL.noiseOperator ρ) (FABL.lastEvenPart f) x + ρ * FABL.signValue a * (FABL.noiseOperator ρ) (FABL.lastOddPart f) x
theorem FABL.noiseOperator_snoc {n : ℕ} (ρ : ℝ) (hρ : ρ ∈ Set.Icc (-1) 1) (f : FABL.SignCube (n + 1) → ℝ) (x : FABL.SignCube n) (a : FABL.Sign) : (FABL.noiseOperator ρ) f (Fin.snoc x a) = (FABL.noiseOperator ρ) (FABL.lastEvenPart f) x + ρ * FABL.signValue a * (FABL.noiseOperator ρ) (FABL.lastOddPart f) x
Product noise respects the last-coordinate even/derivative decomposition.
-
defdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
def FABL.lastFiberLpNorm {n : ℕ} (q : ℝ) (f : FABL.SignCube (n + 1) → ℝ) : FABL.SignCube n → ℝ
def FABL.lastFiberLpNorm {n : ℕ} (q : ℝ) (f : FABL.SignCube (n + 1) → ℝ) : FABL.SignCube n → ℝ
The `L^q` norm of the fiber obtained by fixing the first `n` signs.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.uniformLpNorm_eq_lastFiberLpNorm {n : ℕ} (q : ℝ) (hq : 0 < q) (f : FABL.SignCube (n + 1) → ℝ) : FABL.uniformLpNorm q f = FABL.uniformLpNorm q (FABL.lastFiberLpNorm q f)
theorem FABL.uniformLpNorm_eq_lastFiberLpNorm {n : ℕ} (q : ℝ) (hq : 0 < q) (f : FABL.SignCube (n + 1) → ℝ) : FABL.uniformLpNorm q f = FABL.uniformLpNorm q (FABL.lastFiberLpNorm q f)
Fubini for equal exponents: the cube `L^q` norm is the `L^q` norm of its last-coordinate fiber norms.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.uniformLpNorm_le_of_abs_le.{u_1} {Ω : Type u_1} [Fintype Ω] (q : ℝ) (hq : 0 < q) (f g : Ω → ℝ) (hfg : ∀ (x : Ω), |f x| ≤ |g x|) : FABL.uniformLpNorm q f ≤ FABL.uniformLpNorm q g
theorem FABL.uniformLpNorm_le_of_abs_le.{u_1} {Ω : Type u_1} [Fintype Ω] (q : ℝ) (hq : 0 < q) (f g : Ω → ℝ) (hfg : ∀ (x : Ω), |f x| ≤ |g x|) : FABL.uniformLpNorm q f ≤ FABL.uniformLpNorm q g
Pointwise domination of absolute values implies domination of every positive finite uniform `L^q` norm.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.uniformLpNorm_two_lastParts_sq {n : ℕ} (f : FABL.SignCube (n + 1) → ℝ) : FABL.uniformLpNorm 2 f ^ 2 = FABL.uniformLpNorm 2 (FABL.lastEvenPart f) ^ 2 + FABL.uniformLpNorm 2 (FABL.lastOddPart f) ^ 2
theorem FABL.uniformLpNorm_two_lastParts_sq {n : ℕ} (f : FABL.SignCube (n + 1) → ℝ) : FABL.uniformLpNorm 2 f ^ 2 = FABL.uniformLpNorm 2 (FABL.lastEvenPart f) ^ 2 + FABL.uniformLpNorm 2 (FABL.lastOddPart f) ^ 2
Parseval in the last-coordinate even/derivative decomposition.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.uniformLpNorm_sqrt_sq.{u_1} {Ω : Type u_1} [Fintype Ω] (q : ℝ) (hq : 0 < q) (H : Ω → ℝ) (hH : ∀ (x : Ω), 0 ≤ H x) : (FABL.uniformLpNorm q fun x => √(H x)) ^ 2 = FABL.uniformLpNorm (q / 2) H
theorem FABL.uniformLpNorm_sqrt_sq.{u_1} {Ω : Type u_1} [Fintype Ω] (q : ℝ) (hq : 0 < q) (H : Ω → ℝ) (hH : ∀ (x : Ω), 0 ≤ H x) : (FABL.uniformLpNorm q fun x => √(H x)) ^ 2 = FABL.uniformLpNorm (q / 2) H
The square of the `L^q` norm of a pointwise square root is the `L^(q/2)` norm of the underlying nonnegative function.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.oneBit_twoQ_sharp_of_two_le (q : ℝ) (hq : 2 ≤ q) (a b : ℝ) : (FABL.uniformLpNorm q fun x => a + 1 / √(q - 1) * b * FABL.signValue x) ≤ √(a ^ 2 + b ^ 2)
theorem FABL.oneBit_twoQ_sharp_of_two_le (q : ℝ) (hq : 2 ≤ q) (a b : ℝ) : (FABL.uniformLpNorm q fun x => a + 1 / √(q - 1) * b * FABL.signValue x) ≤ √(a ^ 2 + b ^ 2)
The one-bit `(2,q)` endpoint, including `q = 2`.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.uniformLpNorm_sq.{u_1} {Ω : Type u_1} [Fintype Ω] (q : ℝ) (hq : 0 < q) (f : Ω → ℝ) : (FABL.uniformLpNorm (q / 2) fun x => f x ^ 2) = FABL.uniformLpNorm q f ^ 2
theorem FABL.uniformLpNorm_sq.{u_1} {Ω : Type u_1} [Fintype Ω] (q : ℝ) (hq : 0 < q) (f : Ω → ℝ) : (FABL.uniformLpNorm (q / 2) fun x => f x ^ 2) = FABL.uniformLpNorm q f ^ 2
Squaring a function changes its norm exponent from `q` to `q/2`.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.uniformLpNorm_const.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (q : ℝ) (hq : 0 < q) (c : ℝ) : (FABL.uniformLpNorm q fun x => c) = |c|
theorem FABL.uniformLpNorm_const.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (q : ℝ) (hq : 0 < q) (c : ℝ) : (FABL.uniformLpNorm q fun x => c) = |c|
The positive finite-exponent norm of a constant on a nonempty finite space.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.twoQHypercontractivity_lastCoordinate_step {n : ℕ} (q : ℝ) (hq : 2 ≤ q) (f : FABL.SignCube (n + 1) → ℝ) (hEven : FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(q - 1))) (FABL.lastEvenPart f)) ≤ FABL.uniformLpNorm 2 (FABL.lastEvenPart f)) (hOdd : FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(q - 1))) (FABL.lastOddPart f)) ≤ FABL.uniformLpNorm 2 (FABL.lastOddPart f)) : FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(q - 1))) f) ≤ FABL.uniformLpNorm 2 f
theorem FABL.twoQHypercontractivity_lastCoordinate_step {n : ℕ} (q : ℝ) (hq : 2 ≤ q) (f : FABL.SignCube (n + 1) → ℝ) (hEven : FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(q - 1))) (FABL.lastEvenPart f)) ≤ FABL.uniformLpNorm 2 (FABL.lastEvenPart f)) (hOdd : FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(q - 1))) (FABL.lastOddPart f)) ≤ FABL.uniformLpNorm 2 (FABL.lastOddPart f)) : FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(q - 1))) f) ≤ FABL.uniformLpNorm 2 f
The complete last-coordinate norm chain in Exercise 9.16. The two hypotheses are exactly the induction hypotheses for the even part and the last derivative.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.twoQHypercontractivity_by_lastCoordinate (q : ℝ) (hq : 2 ≤ q) (m : ℕ) (f : FABL.SignCube m → ℝ) : FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(q - 1))) f) ≤ FABL.uniformLpNorm 2 f
theorem FABL.twoQHypercontractivity_by_lastCoordinate (q : ℝ) (hq : 2 ≤ q) (m : ℕ) (f : FABL.SignCube m → ℝ) : FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(q - 1))) f) ≤ FABL.uniformLpNorm 2 f
Exercise 9.16: the `n`-bit `(2,q)` theorem proved directly by induction on the last-coordinate derivative decomposition.
-
FABL.IsHypercontractiveRandomVariable.comp[complete] -
FABL.uniformLpNorm_noiseOperator_le[complete] -
FABL.uniformLpNorm_noiseOperator_mono[complete] -
FABL.hypercontractivity_sharp_across_two[complete] -
FABL.hypercontractivity_across_two[complete]
Exercise 9.17. Use
T_\rho T_\sigma=T_{\rho\sigma} to deduce the full Hypercontractivity
Theorem in the range p<2<q from the (p,2) and (2,q) special
cases.
Lean code for Lemma9.7.18●5 theorems
Associated Lean declarations
-
FABL.IsHypercontractiveRandomVariable.comp[complete]
-
FABL.uniformLpNorm_noiseOperator_le[complete]
-
FABL.uniformLpNorm_noiseOperator_mono[complete]
-
FABL.hypercontractivity_sharp_across_two[complete]
-
FABL.hypercontractivity_across_two[complete]
-
FABL.IsHypercontractiveRandomVariable.comp[complete] -
FABL.uniformLpNorm_noiseOperator_le[complete] -
FABL.uniformLpNorm_noiseOperator_mono[complete] -
FABL.hypercontractivity_sharp_across_two[complete] -
FABL.hypercontractivity_across_two[complete]
-
theoremdefined in FABL/Chapter09/OneBitHypercontractivity.leancomplete
theorem FABL.IsHypercontractiveRandomVariable.comp.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] {p r q : ENNReal} {σ ρ : ℝ} {X : Ω → ℝ} (hpr : FABL.IsHypercontractiveRandomVariable p r σ X) (hrq : FABL.IsHypercontractiveRandomVariable r q ρ X) : FABL.IsHypercontractiveRandomVariable p q (ρ * σ) X
theorem FABL.IsHypercontractiveRandomVariable.comp.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] {p r q : ENNReal} {σ ρ : ℝ} {X : Ω → ℝ} (hpr : FABL.IsHypercontractiveRandomVariable p r σ X) (hrq : FABL.IsHypercontractiveRandomVariable r q ρ X) : FABL.IsHypercontractiveRandomVariable p q (ρ * σ) X
The affine one-bit form of the noise-semigroup composition used in Exercise 9.17.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.uniformLpNorm_noiseOperator_le {n : ℕ} (ρ : ℝ) (hρ : ρ ∈ Set.Icc 0 1) (p : ℝ) (hp : 1 ≤ p) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm p ((FABL.noiseOperator ρ) f) ≤ FABL.uniformLpNorm p f
theorem FABL.uniformLpNorm_noiseOperator_le {n : ℕ} (ρ : ℝ) (hρ : ρ ∈ Set.Icc 0 1) (p : ℝ) (hp : 1 ≤ p) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm p ((FABL.noiseOperator ρ) f) ≤ FABL.uniformLpNorm p f
The canonical Boolean-cube noise operator contracts every finite `L^p` norm for `p ≥ 1`.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.uniformLpNorm_noiseOperator_mono {n : ℕ} (ρ σ : ℝ) (hρ : ρ ∈ Set.Icc 0 1) (hσ : σ ∈ Set.Icc 0 1) (hρσ : ρ ≤ σ) (p : ℝ) (hp : 1 ≤ p) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm p ((FABL.noiseOperator ρ) f) ≤ FABL.uniformLpNorm p ((FABL.noiseOperator σ) f)
theorem FABL.uniformLpNorm_noiseOperator_mono {n : ℕ} (ρ σ : ℝ) (hρ : ρ ∈ Set.Icc 0 1) (hσ : σ ∈ Set.Icc 0 1) (hρσ : ρ ≤ σ) (p : ℝ) (hp : 1 ≤ p) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm p ((FABL.noiseOperator ρ) f) ≤ FABL.uniformLpNorm p ((FABL.noiseOperator σ) f)
Increasing a nonnegative noise parameter can only increase a finite `L^p` norm.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.hypercontractivity_sharp_across_two {n : ℕ} (p q : ℝ) (hp1 : 1 ≤ p) (hp2 : p ≤ 2) (hq : 2 ≤ q) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm q ((FABL.noiseOperator √((p - 1) / (q - 1))) f) ≤ FABL.uniformLpNorm p f
theorem FABL.hypercontractivity_sharp_across_two {n : ℕ} (p q : ℝ) (hp1 : 1 ≤ p) (hp2 : p ≤ 2) (hq : 2 ≤ q) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm q ((FABL.noiseOperator √((p - 1) / (q - 1))) f) ≤ FABL.uniformLpNorm p f
Exercise 9.17 at the sharp correlation, obtained by composing the two special cases.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.hypercontractivity_across_two {n : ℕ} (p q ρ : ℝ) (hp1 : 1 ≤ p) (hp2 : p ≤ 2) (hq : 2 ≤ q) (hρ0 : 0 ≤ ρ) (hρ : ρ ≤ √((p - 1) / (q - 1))) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm q ((FABL.noiseOperator ρ) f) ≤ FABL.uniformLpNorm p f
theorem FABL.hypercontractivity_across_two {n : ℕ} (p q ρ : ℝ) (hp1 : 1 ≤ p) (hp2 : p ≤ 2) (hq : 2 ≤ q) (hρ0 : 0 ≤ ρ) (hρ : ρ ≤ √((p - 1) / (q - 1))) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm q ((FABL.noiseOperator ρ) f) ≤ FABL.uniformLpNorm p f
Exercise 9.17 in its full `p ≤ 2 ≤ q` range, including every smaller nonnegative correlation.
Exercise 9.18. If f is \{0,1\}-valued with mean \alpha, prove
for 0<\rho\le1
W^1[f]
\le\rho^{-1}
\left(\alpha^{2/(1+\rho)}-\alpha^2\right).
Letting \rho\to0^+, deduce
W^1[f]\le2\alpha^2\ln(1/\alpha).
Lean code for Lemma9.7.19●2 theorems
Associated Lean declarations
-
theoremdefined in FABL/Chapter09/HypercontractiveApplications.leancomplete
theorem FABL.rho_mul_fourierWeightAtLevel_one_le_stability_sub_mean_sq {n : ℕ} (f : FABL.SignCube n → ℝ) (ρ : ℝ) (hρ : ρ ∈ Set.Ioc 0 1) : ρ * FABL.fourierWeightAtLevel 1 f ≤ FABL.noiseStability ρ ⋯ f - FABL.mean f ^ 2
theorem FABL.rho_mul_fourierWeightAtLevel_one_le_stability_sub_mean_sq {n : ℕ} (f : FABL.SignCube n → ℝ) (ρ : ℝ) (hρ : ρ ∈ Set.Ioc 0 1) : ρ * FABL.fourierWeightAtLevel 1 f ≤ FABL.noiseStability ρ ⋯ f - FABL.mean f ^ 2
Exercise 9.18's spectral first step.
-
theoremdefined in FABL/Chapter09/HypercontractiveApplications.leancomplete
theorem FABL.levelOneInequality_parameterized {n : ℕ} (f : FABL.SignCube n → ℝ) (α ρ : ℝ) (hvalues : ∀ (x : FABL.SignCube n), f x = 0 ∨ f x = 1) (hmean : FABL.mean f = α) (hρ : ρ ∈ Set.Ioc 0 1) : FABL.fourierWeightAtLevel 1 f ≤ ρ⁻¹ * (α ^ (2 / (1 + ρ)) - α ^ 2)
theorem FABL.levelOneInequality_parameterized {n : ℕ} (f : FABL.SignCube n → ℝ) (α ρ : ℝ) (hvalues : ∀ (x : FABL.SignCube n), f x = 0 ∨ f x = 1) (hmean : FABL.mean f = α) (hρ : ρ ∈ Set.Ioc 0 1) : FABL.fourierWeightAtLevel 1 f ≤ ρ⁻¹ * (α ^ (2 / (1 + ρ)) - α ^ 2)
Exercise 9.18's parameterized level-one bound.
-
FABL.log_four_lt_seven_fifths[complete] -
FABL.exercise9_19_exponent_bound[complete] -
FABL.exercise9_19_quantitative[complete] -
FABL.rpow_twentyone_twentieth_isLittleO[complete] -
FABL.exercise9_19_uniform_littleO[complete]
Exercise 9.19. As \alpha\to0, prove
W^{\le k}[f]=o(\alpha)
uniformly whenever
k\le.373\ln(1/\alpha).
Lean code for Lemma9.7.20●5 theorems
Associated Lean declarations
-
FABL.log_four_lt_seven_fifths[complete]
-
FABL.exercise9_19_exponent_bound[complete]
-
FABL.exercise9_19_quantitative[complete]
-
FABL.rpow_twentyone_twentieth_isLittleO[complete]
-
FABL.exercise9_19_uniform_littleO[complete]
-
FABL.log_four_lt_seven_fifths[complete] -
FABL.exercise9_19_exponent_bound[complete] -
FABL.exercise9_19_quantitative[complete] -
FABL.rpow_twentyone_twentieth_isLittleO[complete] -
FABL.exercise9_19_uniform_littleO[complete]
-
theoremdefined in FABL/Chapter09/LevelWeightAsymptotics.leancomplete
theorem FABL.log_four_lt_seven_fifths : Real.log 4 < 7 / 5
theorem FABL.log_four_lt_seven_fifths : Real.log 4 < 7 / 5
A convenient rigorous upper bound for `log 4`.
-
theoremdefined in FABL/Chapter09/LevelWeightAsymptotics.leancomplete
theorem FABL.exercise9_19_exponent_bound : 21 / 20 ≤ 8 / 5 - 373 / 1000 * Real.log 4
theorem FABL.exercise9_19_exponent_bound : 21 / 20 ≤ 8 / 5 - 373 / 1000 * Real.log 4
The `.373` cutoff leaves a uniform exponent gap of at least `1/20`.
-
theoremdefined in FABL/Chapter09/LevelWeightAsymptotics.leancomplete
theorem FABL.exercise9_19_quantitative {n : ℕ} (f : FABL.SignCube n → ℝ) (α : ℝ) (hα0 : 0 < α) (hα1 : α ≤ 1) (hvalues : ∀ (x : FABL.SignCube n), f x = 0 ∨ f x = 1) (hmean : FABL.mean f = α) (k : ℕ) (hk : ↑k ≤ 373 / 1000 * Real.log (1 / α)) : FABL.fourierWeightAtMost k f ≤ α ^ (21 / 20)
theorem FABL.exercise9_19_quantitative {n : ℕ} (f : FABL.SignCube n → ℝ) (α : ℝ) (hα0 : 0 < α) (hα1 : α ≤ 1) (hvalues : ∀ (x : FABL.SignCube n), f x = 0 ∨ f x = 1) (hmean : FABL.mean f = α) (k : ℕ) (hk : ↑k ≤ 373 / 1000 * Real.log (1 / α)) : FABL.fourierWeightAtMost k f ≤ α ^ (21 / 20)
Exercise 9.19's quantitative bound, uniform in the dimension, Boolean function, and admissible degree: `W^{≤k}[f] ≤ α^(21/20)`. -
theoremdefined in FABL/Chapter09/LevelWeightAsymptotics.leancomplete
theorem FABL.rpow_twentyone_twentieth_isLittleO : (fun α => α ^ (21 / 20)) =o[nhdsWithin 0 (Set.Ioi 0)] fun α => α
theorem FABL.rpow_twentyone_twentieth_isLittleO : (fun α => α ^ (21 / 20)) =o[nhdsWithin 0 (Set.Ioi 0)] fun α => α
The scalar majorant in Exercise 9.19 is little-oh of `α` as `α → 0⁺`.
-
theoremdefined in FABL/Chapter09/LevelWeightAsymptotics.leancomplete
theorem FABL.exercise9_19_uniform_littleO (ε : ℝ) : ε > 0 → ∀ᶠ (α : ℝ) in nhdsWithin 0 (Set.Ioi 0), α ≤ 1 → ∀ (n : ℕ) (f : FABL.SignCube n → ℝ) (k : ℕ), (∀ (x : FABL.SignCube n), f x = 0 ∨ f x = 1) → FABL.mean f = α → ↑k ≤ 373 / 1000 * Real.log (1 / α) → FABL.fourierWeightAtMost k f ≤ ε * α
theorem FABL.exercise9_19_uniform_littleO (ε : ℝ) : ε > 0 → ∀ᶠ (α : ℝ) in nhdsWithin 0 (Set.Ioi 0), α ≤ 1 → ∀ (n : ℕ) (f : FABL.SignCube n → ℝ) (k : ℕ), (∀ (x : FABL.SignCube n), f x = 0 ∨ f x = 1) → FABL.mean f = α → ↑k ≤ 373 / 1000 * Real.log (1 / α) → FABL.fourierWeightAtMost k f ≤ ε * α
Exercise 9.19 in explicit uniform little-oh form: for every multiplier `ε`, the same neighborhood of zero works simultaneously for every dimension, indicator function, and degree satisfying the book's `.373 log (1/α)` cutoff.
-
FABL.kklNormalizedRademacherSum[complete] -
FABL.truncateUnit[complete] -
FABL.truncatedNormalizedRademacherSum[complete] -
FABL.normalizedRademacherSum_secondMoment[complete] -
FABL.normalizedRademacherSum_fourthMoment_le_three[complete] -
FABL.mean_truncatedNormalizedRademacherSum[complete] -
FABL.variance_truncatedNormalizedRademacherSum_ge[complete] -
FABL.abs_truncateUnit_le_one[complete] -
FABL.influence_truncatedNormalizedRademacherSum_le[complete] -
FABL.truncatedNormalizedRademacherSum_violates_boolean_kkl_scale[complete]
Exercise 9.20. For
f(x)=\operatorname{trunc}_{[-1,1]}
\left(\frac{x_1+\cdots+x_n}{\sqrt n}\right),
prove that \operatorname{Var}[f]\ge\Omega(1) while every coordinate
influence is too small for the Boolean-valued KKL conclusion. Thus KKL
fails for general functions with range [-1,1].
Lean code for Lemma9.7.21●10 declarations
Associated Lean declarations
-
FABL.kklNormalizedRademacherSum[complete]
-
FABL.truncateUnit[complete]
-
FABL.truncatedNormalizedRademacherSum[complete]
-
FABL.normalizedRademacherSum_secondMoment[complete]
-
FABL.normalizedRademacherSum_fourthMoment_le_three[complete]
-
FABL.mean_truncatedNormalizedRademacherSum[complete]
-
FABL.variance_truncatedNormalizedRademacherSum_ge[complete]
-
FABL.abs_truncateUnit_le_one[complete]
-
FABL.influence_truncatedNormalizedRademacherSum_le[complete]
-
FABL.truncatedNormalizedRademacherSum_violates_boolean_kkl_scale[complete]
-
FABL.kklNormalizedRademacherSum[complete] -
FABL.truncateUnit[complete] -
FABL.truncatedNormalizedRademacherSum[complete] -
FABL.normalizedRademacherSum_secondMoment[complete] -
FABL.normalizedRademacherSum_fourthMoment_le_three[complete] -
FABL.mean_truncatedNormalizedRademacherSum[complete] -
FABL.variance_truncatedNormalizedRademacherSum_ge[complete] -
FABL.abs_truncateUnit_le_one[complete] -
FABL.influence_truncatedNormalizedRademacherSum_le[complete] -
FABL.truncatedNormalizedRademacherSum_violates_boolean_kkl_scale[complete]
-
defdefined in FABL/Chapter09/KKLCounterexample.leancomplete
def FABL.kklNormalizedRademacherSum (n : ℕ) : FABL.SignCube n → ℝ
def FABL.kklNormalizedRademacherSum (n : ℕ) : FABL.SignCube n → ℝ
The normalized sum of `n` independent uniform signs.
-
defdefined in FABL/Chapter09/KKLCounterexample.leancomplete
def FABL.truncateUnit (z : ℝ) : ℝ
def FABL.truncateUnit (z : ℝ) : ℝ
Projection to the interval `[-1,1]`.
-
defdefined in FABL/Chapter09/KKLCounterexample.leancomplete
def FABL.truncatedNormalizedRademacherSum (n : ℕ) : FABL.SignCube n → ℝ
def FABL.truncatedNormalizedRademacherSum (n : ℕ) : FABL.SignCube n → ℝ
Exercise 9.20's real-valued function.
-
theoremdefined in FABL/Chapter09/KKLCounterexample.leancomplete
theorem FABL.normalizedRademacherSum_secondMoment (n : ℕ) (hn : 0 < n) : (Finset.univ.expect fun x => FABL.kklNormalizedRademacherSum n x ^ 2) = 1
theorem FABL.normalizedRademacherSum_secondMoment (n : ℕ) (hn : 0 < n) : (Finset.univ.expect fun x => FABL.kklNormalizedRademacherSum n x ^ 2) = 1
-
theoremdefined in FABL/Chapter09/KKLCounterexample.leancomplete
theorem FABL.normalizedRademacherSum_fourthMoment_le_three (n : ℕ) (hn : 0 < n) : (Finset.univ.expect fun x => FABL.kklNormalizedRademacherSum n x ^ 4) ≤ 3
theorem FABL.normalizedRademacherSum_fourthMoment_le_three (n : ℕ) (hn : 0 < n) : (Finset.univ.expect fun x => FABL.kklNormalizedRademacherSum n x ^ 4) ≤ 3
-
theoremdefined in FABL/Chapter09/KKLCounterexample.leancomplete
theorem FABL.mean_truncatedNormalizedRademacherSum (n : ℕ) : FABL.mean (FABL.truncatedNormalizedRademacherSum n) = 0
theorem FABL.mean_truncatedNormalizedRademacherSum (n : ℕ) : FABL.mean (FABL.truncatedNormalizedRademacherSum n) = 0
-
theoremdefined in FABL/Chapter09/KKLCounterexample.leancomplete
theorem FABL.variance_truncatedNormalizedRademacherSum_ge (n : ℕ) (hn : 0 < n) : 1 / 24 ≤ FABL.variance (FABL.truncatedNormalizedRademacherSum n)
theorem FABL.variance_truncatedNormalizedRademacherSum_ge (n : ℕ) (hn : 0 < n) : 1 / 24 ≤ FABL.variance (FABL.truncatedNormalizedRademacherSum n)
Exercise 9.20's dimension-free variance lower bound.
-
theoremdefined in FABL/Chapter09/KKLCounterexample.leancomplete
theorem FABL.abs_truncateUnit_le_one (z : ℝ) : |FABL.truncateUnit z| ≤ 1
theorem FABL.abs_truncateUnit_le_one (z : ℝ) : |FABL.truncateUnit z| ≤ 1
-
theoremdefined in FABL/Chapter09/KKLCounterexample.leancomplete
theorem FABL.influence_truncatedNormalizedRademacherSum_le (n : ℕ) (hn : 0 < n) (i : Fin n) : FABL.influence (FABL.truncatedNormalizedRademacherSum n) i ≤ 1 / ↑n
theorem FABL.influence_truncatedNormalizedRademacherSum_le (n : ℕ) (hn : 0 < n) (i : Fin n) : FABL.influence (FABL.truncatedNormalizedRademacherSum n) i ≤ 1 / ↑n
Every coordinate influence in the real-valued KKL counterexample is at most `1/n`.
-
theoremdefined in FABL/Chapter09/KKLCounterexample.leancomplete
theorem FABL.truncatedNormalizedRademacherSum_violates_boolean_kkl_scale (n : ℕ) (hn : 0 < n) (hlog : 2400 < Real.log ↑n) (i : Fin n) : FABL.influence (FABL.truncatedNormalizedRademacherSum n) i < FABL.variance (FABL.truncatedNormalizedRademacherSum n) * Real.log ↑n / (100 * ↑n)
theorem FABL.truncatedNormalizedRademacherSum_violates_boolean_kkl_scale (n : ℕ) (hn : 0 < n) (hlog : 2400 < Real.log ↑n) (i : Fin n) : FABL.influence (FABL.truncatedNormalizedRademacherSum n) i < FABL.variance (FABL.truncatedNormalizedRademacherSum n) * Real.log ↑n / (100 * ↑n)
For sufficiently large dimension, the Boolean KKL lower bound would exceed every coordinate influence of this bounded real-valued function.
-
FABL.PositiveInfluenceBound[complete] -
FABL.learningConsequencesInternalError[complete] -
FABL.learningConsequencesInternalError_pos[complete] -
FABL.learningConsequencesDegree[complete] -
FABL.learningConsequencesThreshold[complete] -
FABL.learningConsequencesThreshold_pos[complete] -
FABL.learningConsequencesCoordinateCap[complete] -
FABL.learningConsequencesFamilyBound[complete] -
FABL.learningConsequencesFamilyBound_pos[complete] -
FABL.learningConsequencesTargetFamily[complete] -
FABL.fourierWeightOutside_lowDegreeSubsets_influential_le_add[complete] -
FABL.sqrt_learningConsequencesThreshold[complete] -
FABL.spectrum_concentrated_up_to_learningConsequencesDegree[complete] -
FABL.learningConsequencesTargetFamily_spectrum_concentrated[complete] -
FABL.card_influentialCoordinates_learningConsequencesThreshold_le[complete] -
FABL.card_learningConsequencesTargetFamily_le[complete] -
FABL.boundedInfluenceQueryLearningProgram[complete] -
FABL.boundedInfluenceQueryLearningProgram_failureProbability_le_one_tenth[complete] -
FABL.boundedInfluenceQueryLearningProgram_queries_le[complete] -
FABL.boundedInfluenceQueryLearningProgram_work_le[complete] -
FABL.singletonFourierFamily[complete] -
FABL.singleton_mem_singletonFourierFamily[complete] -
FABL.card_singletonFourierFamily[complete] -
FABL.singletonInfluenceAccuracy[complete] -
FABL.singletonInfluenceAccuracy_value[complete] -
FABL.singletonInfluenceAccuracy_le_quarter_threshold[complete] -
FABL.singletonInfluenceConfidence[complete] -
FABL.singletonInfluenceSampleCount[complete] -
FABL.empiricalInfluentialCoordinatesUncapped[complete] -
FABL.empiricalInfluentialCoordinates[complete] -
FABL.card_empiricalInfluentialCoordinates_le[complete] -
FABL.empiricalInfluentialCoordinatesFromInputs[complete] -
FABL.monotoneInfluenceSelectionProgram[complete] -
FABL.monotoneInfluenceSelectionProgram_cost_eq[complete] -
FABL.card_lowDegreeSubsets_empiricalInfluentialCoordinates_le[complete] -
FABL.card_halfThresholdInfluentialCoordinates_le[complete] -
FABL.fourierCoeff_singleton_eq_booleanInfluence_of_monotone[complete] -
FABL.influentialCoordinates_subset_empiricalInfluentialCoordinates_of_no_bad[complete] -
FABL.monotoneSelectionBad[complete] -
FABL.monotoneInfluenceSelectionProgram_failureProbability_le_one_twentieth[complete] -
FABL.boundedFamilyCoefficientAccuracy[complete] -
FABL.boundedFamilyCoefficientConfidence[complete] -
FABL.boundedFamilySampleCount[complete] -
FABL.boundedFiniteFamilyFourierEstimatorProgram[complete] -
FABL.boundedFamilyCoefficientAccuracy_le_finiteFamilyCoefficientAccuracy[complete] -
FABL.relativeHammingDist_boundedFiniteFamilyOutput_le_of_no_bad[complete] -
FABL.boundedFiniteFamilyFourierEstimatorProgram_failureProbability_le_one_twentieth[complete] -
FABL.boundedFiniteFamilyFourierEstimatorProgram_cost_eq[complete] -
FABL.boundedFiniteFamilyFourierEstimatorProgram_cost_le[complete] -
FABL.monotoneSelectedFourierFamily[complete] -
FABL.monotoneSelectedFourierFamily_nonempty[complete] -
FABL.card_monotoneSelectedFourierFamily_le[complete] -
FABL.monotoneBoundedInfluenceSecondStage[complete] -
FABL.monotoneBoundedInfluenceRandomExampleProgram[complete] -
FABL.monotoneSelectedFourierFamily_spectrum_concentrated[complete] -
FABL.monotoneBoundedInfluenceRandomExampleProgram_failureProbability_le_one_tenth[complete] -
FABL.monotoneBoundedInfluenceRandomExampleBudget[complete] -
FABL.monotoneBoundedInfluenceWorkBudget[complete] -
FABL.monotoneBoundedInfluenceRandomExampleProgram_cost_le[complete] -
FABL.FiniteDecisionTree.leafCount_mapOutput[complete] -
FABL.FiniteDecisionTree.mapOutput_signValue_computes[complete] -
FABL.totalInfluence_le_sqrt_logb_leafCount_of_monotone[complete] -
FABL.FiniteDecisionTree.exists_computingTree_leafCount_eq_deterministicSize[complete] -
FABL.totalInfluence_le_sqrt_logb_deterministicSize_of_monotone[complete] -
FABL.decisionTreeSizeInfluenceBound[complete] -
FABL.totalInfluence_le_decisionTreeSizeInfluenceBound[complete] -
FABL.monotoneDecisionTreeSizeRandomExampleProgram[complete] -
FABL.monotoneDecisionTreeSizeRandomExampleProgram_failureProbability_le_one_tenth[complete] -
FABL.monotoneDecisionTreeSizeRandomExampleProgram_cost_le[complete] -
FABL.LearningConsequencesSubsqrtRegime[complete] -
FABL.learningConsequencesDegreeCoefficient[complete] -
FABL.learningConsequencesCoordinateCoefficient[complete] -
FABL.learningConsequencesFamilyExponent[complete] -
FABL.nat_succ_le_two_pow[complete] -
FABL.nat_self_le_two_pow[complete] -
FABL.two_pow_clog_le_two_mul[complete] -
FABL.learningConsequencesDegree_le_subsqrt[complete] -
FABL.sqrt_add_one_sq_le_two_mul_add_one[complete] -
FABL.learningConsequencesCoordinateRatio_le_two_pow[complete] -
FABL.learningConsequencesCoordinateCap_add_one_le_two_pow[complete] -
FABL.learningConsequencesFamilyBound_le_fixed_power[complete] -
FABL.learningConsequencesFamilyConstant[complete] -
FABL.learningConsequencesQueryExponent[complete] -
FABL.learningConsequencesWorkExponent[complete] -
FABL.learningConsequencesQueryConstant[complete] -
FABL.learningConsequencesWorkConstant[complete] -
FABL.learningConsequencesFamilyBound_add_one_le_fixed_power[complete] -
FABL.one_div_accuracy_pow_le[complete] -
FABL.kmResourceExpression_le_fixed_power[complete] -
FABL.boundedInfluenceQueryBudget_le_fixed_power[complete] -
FABL.boundedInfluenceWorkBudget_le_fixed_power[complete] -
FABL.boundedFamilyCoefficientFailureBits_eq[complete] -
FABL.boundedFamilySampleCount_cast_le[complete] -
FABL.learningConsequencesSecondStageSampleConstant[complete] -
FABL.learningConsequencesSecondStageSampleExponent[complete] -
FABL.cubicSampleExpression_le_fixed_power[complete] -
FABL.boundedFamilySampleCount_le_fixed_power[complete] -
FABL.learningConsequencesSingletonExponentCoefficient[complete] -
FABL.one_div_learningConsequencesThreshold_sq_le_expression[complete] -
FABL.learningConsequencesSingletonExpression_le_two_pow[complete] -
FABL.one_div_learningConsequencesThreshold_sq_le_two_pow[complete] -
FABL.one_div_singletonInfluenceAccuracy_sq_le[complete] -
FABL.singletonInfluenceFailureBits_eq[complete] -
FABL.singletonInfluenceSampleCount_cast_le_subsqrt[complete] -
FABL.learningConsequencesSingletonSampleConstant[complete] -
FABL.learningConsequencesSingletonSampleExponent[complete] -
FABL.two_pow_mul_sqrt_clog_add_one_le_fixed_power[complete] -
FABL.singletonInfluenceSampleCount_le_fixed_power[complete] -
FABL.learningConsequencesRandomExampleExponent[complete] -
FABL.learningConsequencesRandomExampleConstant[complete] -
FABL.learningConsequencesRandomExampleWorkExponent[complete] -
FABL.learningConsequencesRandomExampleWorkConstant[complete] -
FABL.monotoneBoundedInfluenceRandomExampleBudget_le_fixed_power[complete] -
FABL.monotoneBoundedInfluenceWorkBudget_le_fixed_power[complete] -
FABL.monotoneBoundedInfluenceRandomExampleProgram_cost_le_fixed_power[complete] -
FABL.decisionTreeSizeInfluenceBound_subsqrtRegime[complete] -
FABL.decisionTreeSizeFamilyBound_le_fixed_power[complete] -
FABL.monotoneDecisionTreeSizeRandomExampleProgram_cost_le_fixed_power[complete]
Exercise 9.21. Prove the following learning consequences:
-
every Boolean class satisfying
\mathbf I[f]\le O(\sqrt{\log n})is query-learnable to a fixed constant error in\operatorname{poly}(n)time; -
its monotone subclass is learnable from random examples;
-
monotone functions with decision-tree size
\operatorname{poly}(n)are learnable from random examples.
Lean code for Theorem9.7.22●118 declarations
Associated Lean declarations
-
FABL.PositiveInfluenceBound[complete]
-
FABL.learningConsequencesInternalError[complete]
-
FABL.learningConsequencesInternalError_pos[complete]
-
FABL.learningConsequencesDegree[complete]
-
FABL.learningConsequencesThreshold[complete]
-
FABL.learningConsequencesThreshold_pos[complete]
-
FABL.learningConsequencesCoordinateCap[complete]
-
FABL.learningConsequencesFamilyBound[complete]
-
FABL.learningConsequencesFamilyBound_pos[complete]
-
FABL.learningConsequencesTargetFamily[complete]
-
FABL.fourierWeightOutside_lowDegreeSubsets_influential_le_add[complete]
-
FABL.sqrt_learningConsequencesThreshold[complete]
-
FABL.spectrum_concentrated_up_to_learningConsequencesDegree[complete]
-
FABL.learningConsequencesTargetFamily_spectrum_concentrated[complete]
-
FABL.card_influentialCoordinates_learningConsequencesThreshold_le[complete]
-
FABL.card_learningConsequencesTargetFamily_le[complete]
-
FABL.boundedInfluenceQueryLearningProgram[complete]
-
FABL.boundedInfluenceQueryLearningProgram_failureProbability_le_one_tenth[complete]
-
FABL.boundedInfluenceQueryLearningProgram_queries_le[complete]
-
FABL.boundedInfluenceQueryLearningProgram_work_le[complete]
-
FABL.singletonFourierFamily[complete]
-
FABL.singleton_mem_singletonFourierFamily[complete]
-
FABL.card_singletonFourierFamily[complete]
-
FABL.singletonInfluenceAccuracy[complete]
-
FABL.singletonInfluenceAccuracy_value[complete]
-
FABL.singletonInfluenceAccuracy_le_quarter_threshold[complete]
-
FABL.singletonInfluenceConfidence[complete]
-
FABL.singletonInfluenceSampleCount[complete]
-
FABL.empiricalInfluentialCoordinatesUncapped[complete]
-
FABL.empiricalInfluentialCoordinates[complete]
-
FABL.card_empiricalInfluentialCoordinates_le[complete]
-
FABL.empiricalInfluentialCoordinatesFromInputs[complete]
-
FABL.monotoneInfluenceSelectionProgram[complete]
-
FABL.monotoneInfluenceSelectionProgram_cost_eq[complete]
-
FABL.card_lowDegreeSubsets_empiricalInfluentialCoordinates_le[complete]
-
FABL.card_halfThresholdInfluentialCoordinates_le[complete]
-
FABL.fourierCoeff_singleton_eq_booleanInfluence_of_monotone[complete]
-
FABL.influentialCoordinates_subset_empiricalInfluentialCoordinates_of_no_bad[complete]
-
FABL.monotoneSelectionBad[complete]
-
FABL.monotoneInfluenceSelectionProgram_failureProbability_le_one_twentieth[complete]
-
FABL.boundedFamilyCoefficientAccuracy[complete]
-
FABL.boundedFamilyCoefficientConfidence[complete]
-
FABL.boundedFamilySampleCount[complete]
-
FABL.boundedFiniteFamilyFourierEstimatorProgram[complete]
-
FABL.boundedFamilyCoefficientAccuracy_le_finiteFamilyCoefficientAccuracy[complete]
-
FABL.relativeHammingDist_boundedFiniteFamilyOutput_le_of_no_bad[complete]
-
FABL.boundedFiniteFamilyFourierEstimatorProgram_failureProbability_le_one_twentieth[complete]
-
FABL.boundedFiniteFamilyFourierEstimatorProgram_cost_eq[complete]
-
FABL.boundedFiniteFamilyFourierEstimatorProgram_cost_le[complete]
-
FABL.monotoneSelectedFourierFamily[complete]
-
FABL.monotoneSelectedFourierFamily_nonempty[complete]
-
FABL.card_monotoneSelectedFourierFamily_le[complete]
-
FABL.monotoneBoundedInfluenceSecondStage[complete]
-
FABL.monotoneBoundedInfluenceRandomExampleProgram[complete]
-
FABL.monotoneSelectedFourierFamily_spectrum_concentrated[complete]
-
FABL.monotoneBoundedInfluenceRandomExampleProgram_failureProbability_le_one_tenth[complete]
-
FABL.monotoneBoundedInfluenceRandomExampleBudget[complete]
-
FABL.monotoneBoundedInfluenceWorkBudget[complete]
-
FABL.monotoneBoundedInfluenceRandomExampleProgram_cost_le[complete]
-
FABL.FiniteDecisionTree.leafCount_mapOutput[complete]
-
FABL.FiniteDecisionTree.mapOutput_signValue_computes[complete]
-
FABL.totalInfluence_le_sqrt_logb_leafCount_of_monotone[complete]
-
FABL.FiniteDecisionTree.exists_computingTree_leafCount_eq_deterministicSize[complete]
-
FABL.totalInfluence_le_sqrt_logb_deterministicSize_of_monotone[complete]
-
FABL.decisionTreeSizeInfluenceBound[complete]
-
FABL.totalInfluence_le_decisionTreeSizeInfluenceBound[complete]
-
FABL.monotoneDecisionTreeSizeRandomExampleProgram[complete]
-
FABL.monotoneDecisionTreeSizeRandomExampleProgram_failureProbability_le_one_tenth[complete]
-
FABL.monotoneDecisionTreeSizeRandomExampleProgram_cost_le[complete]
-
FABL.LearningConsequencesSubsqrtRegime[complete]
-
FABL.learningConsequencesDegreeCoefficient[complete]
-
FABL.learningConsequencesCoordinateCoefficient[complete]
-
FABL.learningConsequencesFamilyExponent[complete]
-
FABL.nat_succ_le_two_pow[complete]
-
FABL.nat_self_le_two_pow[complete]
-
FABL.two_pow_clog_le_two_mul[complete]
-
FABL.learningConsequencesDegree_le_subsqrt[complete]
-
FABL.sqrt_add_one_sq_le_two_mul_add_one[complete]
-
FABL.learningConsequencesCoordinateRatio_le_two_pow[complete]
-
FABL.learningConsequencesCoordinateCap_add_one_le_two_pow[complete]
-
FABL.learningConsequencesFamilyBound_le_fixed_power[complete]
-
FABL.learningConsequencesFamilyConstant[complete]
-
FABL.learningConsequencesQueryExponent[complete]
-
FABL.learningConsequencesWorkExponent[complete]
-
FABL.learningConsequencesQueryConstant[complete]
-
FABL.learningConsequencesWorkConstant[complete]
-
FABL.learningConsequencesFamilyBound_add_one_le_fixed_power[complete]
-
FABL.one_div_accuracy_pow_le[complete]
-
FABL.kmResourceExpression_le_fixed_power[complete]
-
FABL.boundedInfluenceQueryBudget_le_fixed_power[complete]
-
FABL.boundedInfluenceWorkBudget_le_fixed_power[complete]
-
FABL.boundedFamilyCoefficientFailureBits_eq[complete]
-
FABL.boundedFamilySampleCount_cast_le[complete]
-
FABL.learningConsequencesSecondStageSampleConstant[complete]
-
FABL.learningConsequencesSecondStageSampleExponent[complete]
-
FABL.cubicSampleExpression_le_fixed_power[complete]
-
FABL.boundedFamilySampleCount_le_fixed_power[complete]
-
FABL.learningConsequencesSingletonExponentCoefficient[complete]
-
FABL.one_div_learningConsequencesThreshold_sq_le_expression[complete]
-
FABL.learningConsequencesSingletonExpression_le_two_pow[complete]
-
FABL.one_div_learningConsequencesThreshold_sq_le_two_pow[complete]
-
FABL.one_div_singletonInfluenceAccuracy_sq_le[complete]
-
FABL.singletonInfluenceFailureBits_eq[complete]
-
FABL.singletonInfluenceSampleCount_cast_le_subsqrt[complete]
-
FABL.learningConsequencesSingletonSampleConstant[complete]
-
FABL.learningConsequencesSingletonSampleExponent[complete]
-
FABL.two_pow_mul_sqrt_clog_add_one_le_fixed_power[complete]
-
FABL.singletonInfluenceSampleCount_le_fixed_power[complete]
-
FABL.learningConsequencesRandomExampleExponent[complete]
-
FABL.learningConsequencesRandomExampleConstant[complete]
-
FABL.learningConsequencesRandomExampleWorkExponent[complete]
-
FABL.learningConsequencesRandomExampleWorkConstant[complete]
-
FABL.monotoneBoundedInfluenceRandomExampleBudget_le_fixed_power[complete]
-
FABL.monotoneBoundedInfluenceWorkBudget_le_fixed_power[complete]
-
FABL.monotoneBoundedInfluenceRandomExampleProgram_cost_le_fixed_power[complete]
-
FABL.decisionTreeSizeInfluenceBound_subsqrtRegime[complete]
-
FABL.decisionTreeSizeFamilyBound_le_fixed_power[complete]
-
FABL.monotoneDecisionTreeSizeRandomExampleProgram_cost_le_fixed_power[complete]
-
FABL.PositiveInfluenceBound[complete] -
FABL.learningConsequencesInternalError[complete] -
FABL.learningConsequencesInternalError_pos[complete] -
FABL.learningConsequencesDegree[complete] -
FABL.learningConsequencesThreshold[complete] -
FABL.learningConsequencesThreshold_pos[complete] -
FABL.learningConsequencesCoordinateCap[complete] -
FABL.learningConsequencesFamilyBound[complete] -
FABL.learningConsequencesFamilyBound_pos[complete] -
FABL.learningConsequencesTargetFamily[complete] -
FABL.fourierWeightOutside_lowDegreeSubsets_influential_le_add[complete] -
FABL.sqrt_learningConsequencesThreshold[complete] -
FABL.spectrum_concentrated_up_to_learningConsequencesDegree[complete] -
FABL.learningConsequencesTargetFamily_spectrum_concentrated[complete] -
FABL.card_influentialCoordinates_learningConsequencesThreshold_le[complete] -
FABL.card_learningConsequencesTargetFamily_le[complete] -
FABL.boundedInfluenceQueryLearningProgram[complete] -
FABL.boundedInfluenceQueryLearningProgram_failureProbability_le_one_tenth[complete] -
FABL.boundedInfluenceQueryLearningProgram_queries_le[complete] -
FABL.boundedInfluenceQueryLearningProgram_work_le[complete] -
FABL.singletonFourierFamily[complete] -
FABL.singleton_mem_singletonFourierFamily[complete] -
FABL.card_singletonFourierFamily[complete] -
FABL.singletonInfluenceAccuracy[complete] -
FABL.singletonInfluenceAccuracy_value[complete] -
FABL.singletonInfluenceAccuracy_le_quarter_threshold[complete] -
FABL.singletonInfluenceConfidence[complete] -
FABL.singletonInfluenceSampleCount[complete] -
FABL.empiricalInfluentialCoordinatesUncapped[complete] -
FABL.empiricalInfluentialCoordinates[complete] -
FABL.card_empiricalInfluentialCoordinates_le[complete] -
FABL.empiricalInfluentialCoordinatesFromInputs[complete] -
FABL.monotoneInfluenceSelectionProgram[complete] -
FABL.monotoneInfluenceSelectionProgram_cost_eq[complete] -
FABL.card_lowDegreeSubsets_empiricalInfluentialCoordinates_le[complete] -
FABL.card_halfThresholdInfluentialCoordinates_le[complete] -
FABL.fourierCoeff_singleton_eq_booleanInfluence_of_monotone[complete] -
FABL.influentialCoordinates_subset_empiricalInfluentialCoordinates_of_no_bad[complete] -
FABL.monotoneSelectionBad[complete] -
FABL.monotoneInfluenceSelectionProgram_failureProbability_le_one_twentieth[complete] -
FABL.boundedFamilyCoefficientAccuracy[complete] -
FABL.boundedFamilyCoefficientConfidence[complete] -
FABL.boundedFamilySampleCount[complete] -
FABL.boundedFiniteFamilyFourierEstimatorProgram[complete] -
FABL.boundedFamilyCoefficientAccuracy_le_finiteFamilyCoefficientAccuracy[complete] -
FABL.relativeHammingDist_boundedFiniteFamilyOutput_le_of_no_bad[complete] -
FABL.boundedFiniteFamilyFourierEstimatorProgram_failureProbability_le_one_twentieth[complete] -
FABL.boundedFiniteFamilyFourierEstimatorProgram_cost_eq[complete] -
FABL.boundedFiniteFamilyFourierEstimatorProgram_cost_le[complete] -
FABL.monotoneSelectedFourierFamily[complete] -
FABL.monotoneSelectedFourierFamily_nonempty[complete] -
FABL.card_monotoneSelectedFourierFamily_le[complete] -
FABL.monotoneBoundedInfluenceSecondStage[complete] -
FABL.monotoneBoundedInfluenceRandomExampleProgram[complete] -
FABL.monotoneSelectedFourierFamily_spectrum_concentrated[complete] -
FABL.monotoneBoundedInfluenceRandomExampleProgram_failureProbability_le_one_tenth[complete] -
FABL.monotoneBoundedInfluenceRandomExampleBudget[complete] -
FABL.monotoneBoundedInfluenceWorkBudget[complete] -
FABL.monotoneBoundedInfluenceRandomExampleProgram_cost_le[complete] -
FABL.FiniteDecisionTree.leafCount_mapOutput[complete] -
FABL.FiniteDecisionTree.mapOutput_signValue_computes[complete] -
FABL.totalInfluence_le_sqrt_logb_leafCount_of_monotone[complete] -
FABL.FiniteDecisionTree.exists_computingTree_leafCount_eq_deterministicSize[complete] -
FABL.totalInfluence_le_sqrt_logb_deterministicSize_of_monotone[complete] -
FABL.decisionTreeSizeInfluenceBound[complete] -
FABL.totalInfluence_le_decisionTreeSizeInfluenceBound[complete] -
FABL.monotoneDecisionTreeSizeRandomExampleProgram[complete] -
FABL.monotoneDecisionTreeSizeRandomExampleProgram_failureProbability_le_one_tenth[complete] -
FABL.monotoneDecisionTreeSizeRandomExampleProgram_cost_le[complete] -
FABL.LearningConsequencesSubsqrtRegime[complete] -
FABL.learningConsequencesDegreeCoefficient[complete] -
FABL.learningConsequencesCoordinateCoefficient[complete] -
FABL.learningConsequencesFamilyExponent[complete] -
FABL.nat_succ_le_two_pow[complete] -
FABL.nat_self_le_two_pow[complete] -
FABL.two_pow_clog_le_two_mul[complete] -
FABL.learningConsequencesDegree_le_subsqrt[complete] -
FABL.sqrt_add_one_sq_le_two_mul_add_one[complete] -
FABL.learningConsequencesCoordinateRatio_le_two_pow[complete] -
FABL.learningConsequencesCoordinateCap_add_one_le_two_pow[complete] -
FABL.learningConsequencesFamilyBound_le_fixed_power[complete] -
FABL.learningConsequencesFamilyConstant[complete] -
FABL.learningConsequencesQueryExponent[complete] -
FABL.learningConsequencesWorkExponent[complete] -
FABL.learningConsequencesQueryConstant[complete] -
FABL.learningConsequencesWorkConstant[complete] -
FABL.learningConsequencesFamilyBound_add_one_le_fixed_power[complete] -
FABL.one_div_accuracy_pow_le[complete] -
FABL.kmResourceExpression_le_fixed_power[complete] -
FABL.boundedInfluenceQueryBudget_le_fixed_power[complete] -
FABL.boundedInfluenceWorkBudget_le_fixed_power[complete] -
FABL.boundedFamilyCoefficientFailureBits_eq[complete] -
FABL.boundedFamilySampleCount_cast_le[complete] -
FABL.learningConsequencesSecondStageSampleConstant[complete] -
FABL.learningConsequencesSecondStageSampleExponent[complete] -
FABL.cubicSampleExpression_le_fixed_power[complete] -
FABL.boundedFamilySampleCount_le_fixed_power[complete] -
FABL.learningConsequencesSingletonExponentCoefficient[complete] -
FABL.one_div_learningConsequencesThreshold_sq_le_expression[complete] -
FABL.learningConsequencesSingletonExpression_le_two_pow[complete] -
FABL.one_div_learningConsequencesThreshold_sq_le_two_pow[complete] -
FABL.one_div_singletonInfluenceAccuracy_sq_le[complete] -
FABL.singletonInfluenceFailureBits_eq[complete] -
FABL.singletonInfluenceSampleCount_cast_le_subsqrt[complete] -
FABL.learningConsequencesSingletonSampleConstant[complete] -
FABL.learningConsequencesSingletonSampleExponent[complete] -
FABL.two_pow_mul_sqrt_clog_add_one_le_fixed_power[complete] -
FABL.singletonInfluenceSampleCount_le_fixed_power[complete] -
FABL.learningConsequencesRandomExampleExponent[complete] -
FABL.learningConsequencesRandomExampleConstant[complete] -
FABL.learningConsequencesRandomExampleWorkExponent[complete] -
FABL.learningConsequencesRandomExampleWorkConstant[complete] -
FABL.monotoneBoundedInfluenceRandomExampleBudget_le_fixed_power[complete] -
FABL.monotoneBoundedInfluenceWorkBudget_le_fixed_power[complete] -
FABL.monotoneBoundedInfluenceRandomExampleProgram_cost_le_fixed_power[complete] -
FABL.decisionTreeSizeInfluenceBound_subsqrtRegime[complete] -
FABL.decisionTreeSizeFamilyBound_le_fixed_power[complete] -
FABL.monotoneDecisionTreeSizeRandomExampleProgram_cost_le_fixed_power[complete]
-
abbrevdefined in FABL/Chapter09/LearningConsequences.leancomplete
abbrev FABL.PositiveInfluenceBound : Type
abbrev FABL.PositiveInfluenceBound : Type
A positive rational upper bound for total influence. Rational input makes the scheduler finitely representable; its coercion to `ℝ` is the mathematical influence bound.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.learningConsequencesInternalError (ε : ↑FABL.PositiveLearningParameter) : ℚ
def FABL.learningConsequencesInternalError (ε : ↑FABL.PositiveLearningParameter) : ℚ
The internal Fourier-tail error is one eighth of the requested classification error.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.learningConsequencesInternalError_pos (ε : ↑FABL.PositiveLearningParameter) : 0 < FABL.learningConsequencesInternalError ε
theorem FABL.learningConsequencesInternalError_pos (ε : ↑FABL.PositiveLearningParameter) : 0 < FABL.learningConsequencesInternalError ε
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.learningConsequencesDegree (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
def FABL.learningConsequencesDegree (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
The target-independent integral cutoff `ceil(8t/ε)`.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.learningConsequencesThreshold (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℚ
def FABL.learningConsequencesThreshold (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℚ
The target-independent influential-coordinate threshold `(ε/8)^2 t^(-2) 9^(-k)`.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.learningConsequencesThreshold_pos (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : 0 < FABL.learningConsequencesThreshold t ε
theorem FABL.learningConsequencesThreshold_pos (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : 0 < FABL.learningConsequencesThreshold t ε
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.learningConsequencesCoordinateCap (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
def FABL.learningConsequencesCoordinateCap (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
A uniform cardinal cap for every coordinate set used by either learner. The factor two also accommodates the possible false positives in the sample-only monotone learner.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.learningConsequencesFamilyBound (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
def FABL.learningConsequencesFamilyBound (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
Uniform size bound for all degree-at-most-`k` families supported on a capped coordinate set.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.learningConsequencesFamilyBound_pos (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : 0 < FABL.learningConsequencesFamilyBound t ε
theorem FABL.learningConsequencesFamilyBound_pos (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : 0 < FABL.learningConsequencesFamilyBound t ε
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.learningConsequencesTargetFamily {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : Finset (Finset (Fin n))
def FABL.learningConsequencesTargetFamily {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : Finset (Finset (Fin n))
The finite family appearing in the proof for a particular target. It is a proof witness; the KM program below sees only the public numerical bound, not this target-dependent family.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.fourierWeightOutside_lowDegreeSubsets_influential_le_add {n : ℕ} (target : FABL.BooleanFunction n) (τ : ℝ) (k : ℕ) : FABL.fourierWeightOutside target.toReal ↑(FABL.lowDegreeSubsets (FABL.influentialCoordinates target τ) k) ≤ FABL.lowDegreeOutsideInfluentialMass target τ k + FABL.fourierWeightAbove k target.toReal
theorem FABL.fourierWeightOutside_lowDegreeSubsets_influential_le_add {n : ℕ} (target : FABL.BooleanFunction n) (τ : ℝ) (k : ℕ) : FABL.fourierWeightOutside target.toReal ↑(FABL.lowDegreeSubsets (FABL.influentialCoordinates target τ) k) ≤ FABL.lowDegreeOutsideInfluentialMass target τ k + FABL.fourierWeightAbove k target.toReal
Fourier mass outside low-degree subsets of the threshold-influential coordinates is bounded by the low-degree noninfluential mass plus the high-degree tail.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.sqrt_learningConsequencesThreshold (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : √↑(FABL.learningConsequencesThreshold t ε) = ↑(FABL.learningConsequencesInternalError ε) / ↑↑t * (1 / 3) ^ FABL.learningConsequencesDegree t ε
theorem FABL.sqrt_learningConsequencesThreshold (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : √↑(FABL.learningConsequencesThreshold t ε) = ↑(FABL.learningConsequencesInternalError ε) / ↑↑t * (1 / 3) ^ FABL.learningConsequencesDegree t ε
The square root of the public threshold has the cancellation form used by Theorem 9.28.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.spectrum_concentrated_up_to_learningConsequencesDegree {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : FABL.IsFourierSpectrumConcentratedUpTo target.toReal ↑(FABL.learningConsequencesInternalError ε) ↑(FABL.learningConsequencesDegree t ε)
theorem FABL.spectrum_concentrated_up_to_learningConsequencesDegree {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : FABL.IsFourierSpectrumConcentratedUpTo target.toReal ↑(FABL.learningConsequencesInternalError ε) ↑(FABL.learningConsequencesDegree t ε)
The public degree cutoff leaves at most `ε/8` Fourier mass above it whenever `I[f] ≤ t`.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.learningConsequencesTargetFamily_spectrum_concentrated {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : FABL.IsFourierSpectrumConcentratedOn target.toReal (↑↑ε / 4) ↑(FABL.learningConsequencesTargetFamily target t ε)
theorem FABL.learningConsequencesTargetFamily_spectrum_concentrated {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : FABL.IsFourierSpectrumConcentratedOn target.toReal (↑↑ε / 4) ↑(FABL.learningConsequencesTargetFamily target t ε)
The target-dependent proof family carries all but `ε/4` of the Fourier mass.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.card_influentialCoordinates_learningConsequencesThreshold_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : (FABL.influentialCoordinates target ↑(FABL.learningConsequencesThreshold t ε)).card ≤ FABL.learningConsequencesCoordinateCap t ε
theorem FABL.card_influentialCoordinates_learningConsequencesThreshold_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : (FABL.influentialCoordinates target ↑(FABL.learningConsequencesThreshold t ε)).card ≤ FABL.learningConsequencesCoordinateCap t ε
The threshold-influential coordinate set is bounded by the public coordinate cap.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.card_learningConsequencesTargetFamily_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : (FABL.learningConsequencesTargetFamily target t ε).card ≤ FABL.learningConsequencesFamilyBound t ε
theorem FABL.card_learningConsequencesTargetFamily_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : (FABL.learningConsequencesTargetFamily target t ε).card ≤ FABL.learningConsequencesFamilyBound t ε
The target-dependent witness family satisfies the target-independent KM family bound.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.boundedInfluenceQueryLearningProgram (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : FABL.LearningProgram n FABL.LearningAccess.queries (FABL.SparseFourierHypothesis n)
def FABL.boundedInfluenceQueryLearningProgram (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : FABL.LearningProgram n FABL.LearningAccess.queries (FABL.SparseFourierHypothesis n)
Exercise 9.21(a)'s target-independent membership-query program.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.boundedInfluenceQueryLearningProgram_failureProbability_le_one_tenth {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : ((FABL.boundedInfluenceQueryLearningProgram n t ε).eventProbability target fun outcome => ↑↑ε < FABL.relativeHammingDist target outcome.1.evaluate) ≤ 1 / 10
theorem FABL.boundedInfluenceQueryLearningProgram_failureProbability_le_one_tenth {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : ((FABL.boundedInfluenceQueryLearningProgram n t ε).eventProbability target fun outcome => ↑↑ε < FABL.relativeHammingDist target outcome.1.evaluate) ≤ 1 / 10
Exercise 9.21(a): the membership-query learner fails with probability at most `1/10`.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.boundedInfluenceQueryLearningProgram_queries_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.boundedInfluenceQueryLearningProgram n t ε)).support) : ↑outcome.2.queries ≤ 2 ^ 40 * (↑n + 1) ^ 2 * (↑(FABL.learningConsequencesFamilyBound t ε) + 1) ^ 8 / ↑ε ^ 10
theorem FABL.boundedInfluenceQueryLearningProgram_queries_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.boundedInfluenceQueryLearningProgram n t ε)).support) : ↑outcome.2.queries ≤ 2 ^ 40 * (↑n + 1) ^ 2 * (↑(FABL.learningConsequencesFamilyBound t ε) + 1) ^ 8 / ↑ε ^ 10
Every execution path of the query learner satisfies the explicit KM query bound.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.boundedInfluenceQueryLearningProgram_work_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.boundedInfluenceQueryLearningProgram n t ε)).support) : ↑outcome.2.work ≤ 2 ^ 42 * (↑n + 1) ^ 3 * (↑(FABL.learningConsequencesFamilyBound t ε) + 1) ^ 8 / ↑ε ^ 10
theorem FABL.boundedInfluenceQueryLearningProgram_work_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.boundedInfluenceQueryLearningProgram n t ε)).support) : ↑outcome.2.work ≤ 2 ^ 42 * (↑n + 1) ^ 3 * (↑(FABL.learningConsequencesFamilyBound t ε) + 1) ^ 8 / ↑ε ^ 10
Every execution path of the query learner satisfies the explicit KM charged-work bound.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.singletonFourierFamily (n : ℕ) : Finset (Finset (Fin n))
def FABL.singletonFourierFamily (n : ℕ) : Finset (Finset (Fin n))
The singleton Fourier family used by the first sampling stage.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.singleton_mem_singletonFourierFamily {n : ℕ} (i : Fin n) : {i} ∈ FABL.singletonFourierFamily n
theorem FABL.singleton_mem_singletonFourierFamily {n : ℕ} (i : Fin n) : {i} ∈ FABL.singletonFourierFamily n
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.card_singletonFourierFamily (n : ℕ) : (FABL.singletonFourierFamily n).card = n
theorem FABL.card_singletonFourierFamily (n : ℕ) : (FABL.singletonFourierFamily n).card = n
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.singletonInfluenceAccuracy (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ↑FABL.PositiveLearningParameter
def FABL.singletonInfluenceAccuracy (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ↑FABL.PositiveLearningParameter
Accuracy used to discover influential singleton coefficients. Capping by `1/2` makes this a legal finite scheduler parameter even when the public influence threshold exceeds two.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.singletonInfluenceAccuracy_value (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ↑(FABL.singletonInfluenceAccuracy t ε) = min (FABL.learningConsequencesThreshold t ε / 4) (1 / 2)
theorem FABL.singletonInfluenceAccuracy_value (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ↑(FABL.singletonInfluenceAccuracy t ε) = min (FABL.learningConsequencesThreshold t ε / 4) (1 / 2)
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.singletonInfluenceAccuracy_le_quarter_threshold (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ↑(FABL.singletonInfluenceAccuracy t ε) ≤ FABL.learningConsequencesThreshold t ε / 4
theorem FABL.singletonInfluenceAccuracy_le_quarter_threshold (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ↑(FABL.singletonInfluenceAccuracy t ε) ≤ FABL.learningConsequencesThreshold t ε / 4
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.singletonInfluenceConfidence (n : ℕ) : ↑FABL.PositiveLearningParameter
def FABL.singletonInfluenceConfidence (n : ℕ) : ↑FABL.PositiveLearningParameter
Per-singleton confidence `1/(20(n+1))`; the extra one totalizes dimension zero.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.singletonInfluenceSampleCount (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
def FABL.singletonInfluenceSampleCount (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.empiricalInfluentialCoordinatesUncapped {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (samples : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n × FABL.Sign) : Finset (Fin n)
def FABL.empiricalInfluentialCoordinatesUncapped {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (samples : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n × FABL.Sign) : Finset (Fin n)
Coordinates selected from the empirical singleton Fourier coefficients before enforcing the public cardinal cap.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.empiricalInfluentialCoordinates {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (samples : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n × FABL.Sign) : Finset (Fin n)
def FABL.empiricalInfluentialCoordinates {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (samples : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n × FABL.Sign) : Finset (Fin n)
Hard capping keeps every execution path polynomial. On the simultaneous-accuracy event the cap is proved inactive, so it does not remove any genuinely influential coordinate.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.card_empiricalInfluentialCoordinates_le {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (samples : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n × FABL.Sign) : (FABL.empiricalInfluentialCoordinates t ε samples).card ≤ FABL.learningConsequencesCoordinateCap t ε
theorem FABL.card_empiricalInfluentialCoordinates_le {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (samples : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n × FABL.Sign) : (FABL.empiricalInfluentialCoordinates t ε samples).card ≤ FABL.learningConsequencesCoordinateCap t ε
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.empiricalInfluentialCoordinatesFromInputs {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (sampleInputs : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n) : Finset (Fin n)
def FABL.empiricalInfluentialCoordinatesFromInputs {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (sampleInputs : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n) : Finset (Fin n)
Pure first-stage output after inserting the target labels into a uniform input matrix.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.monotoneInfluenceSelectionProgram (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : FABL.LearningProgram n FABL.LearningAccess.randomExamples (Finset (Fin n))
def FABL.monotoneInfluenceSelectionProgram (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : FABL.LearningProgram n FABL.LearningAccess.randomExamples (Finset (Fin n))
The actual first-stage random-example program. Its work charge covers every empirical coefficient and the final scan of the `n` coordinates.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.monotoneInfluenceSelectionProgram_cost_eq {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (outcome : Finset (Fin n) × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.monotoneInfluenceSelectionProgram n t ε)).support) : outcome.2 = { randomExamples := n * FABL.singletonInfluenceSampleCount n t ε, queries := 0, work := n * FABL.singletonInfluenceSampleCount n t ε + n * FABL.singletonInfluenceSampleCount n t ε * (n + 1) + n }
theorem FABL.monotoneInfluenceSelectionProgram_cost_eq {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (outcome : Finset (Fin n) × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.monotoneInfluenceSelectionProgram n t ε)).support) : outcome.2 = { randomExamples := n * FABL.singletonInfluenceSampleCount n t ε, queries := 0, work := n * FABL.singletonInfluenceSampleCount n t ε + n * FABL.singletonInfluenceSampleCount n t ε * (n + 1) + n }
Exact pathwise first-stage cost.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.card_lowDegreeSubsets_empiricalInfluentialCoordinates_le {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (samples : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n × FABL.Sign) : (FABL.lowDegreeSubsets (FABL.empiricalInfluentialCoordinates t ε samples) (FABL.learningConsequencesDegree t ε)).card ≤ FABL.learningConsequencesFamilyBound t ε
theorem FABL.card_lowDegreeSubsets_empiricalInfluentialCoordinates_le {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (samples : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n × FABL.Sign) : (FABL.lowDegreeSubsets (FABL.empiricalInfluentialCoordinates t ε samples) (FABL.learningConsequencesDegree t ε)).card ≤ FABL.learningConsequencesFamilyBound t ε
Every selected coordinate set, including those produced on statistically bad matrices, gives a low-degree family below the target-independent family bound.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.card_halfThresholdInfluentialCoordinates_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : (FABL.influentialCoordinates target (↑(FABL.learningConsequencesThreshold t ε) / 2)).card ≤ FABL.learningConsequencesCoordinateCap t ε
theorem FABL.card_halfThresholdInfluentialCoordinates_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : (FABL.influentialCoordinates target (↑(FABL.learningConsequencesThreshold t ε) / 2)).card ≤ FABL.learningConsequencesCoordinateCap t ε
Coordinates with influence at least half the public threshold satisfy the same public cap.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.fourierCoeff_singleton_eq_booleanInfluence_of_monotone {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (i : Fin n) : FABL.fourierCoeff target.toReal {i} = FABL.booleanInfluence target i
theorem FABL.fourierCoeff_singleton_eq_booleanInfluence_of_monotone {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (i : Fin n) : FABL.fourierCoeff target.toReal {i} = FABL.booleanInfluence target i
For monotone Boolean targets the singleton Fourier coefficient is the Boolean influence.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.influentialCoordinates_subset_empiricalInfluentialCoordinates_of_no_bad {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) (sampleInputs : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n) (hgood : ∀ (S : ↥(FABL.singletonFourierFamily n)), sampleInputs ∉ FABL.finiteFamilyCoefficientBadSetWithParameters target (FABL.singletonFourierFamily n) (FABL.singletonInfluenceAccuracy t ε) (FABL.singletonInfluenceConfidence n) S) : FABL.influentialCoordinates target ↑(FABL.learningConsequencesThreshold t ε) ⊆ FABL.empiricalInfluentialCoordinatesFromInputs target t ε sampleInputs
theorem FABL.influentialCoordinates_subset_empiricalInfluentialCoordinates_of_no_bad {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) (sampleInputs : ↥(FABL.singletonFourierFamily n) → Fin (FABL.singletonInfluenceSampleCount n t ε) → FABL.SignCube n) (hgood : ∀ (S : ↥(FABL.singletonFourierFamily n)), sampleInputs ∉ FABL.finiteFamilyCoefficientBadSetWithParameters target (FABL.singletonFourierFamily n) (FABL.singletonInfluenceAccuracy t ε) (FABL.singletonInfluenceConfidence n) S) : FABL.influentialCoordinates target ↑(FABL.learningConsequencesThreshold t ε) ⊆ FABL.empiricalInfluentialCoordinatesFromInputs target t ε sampleInputs
Simultaneous singleton accuracy implies both required properties of the data-dependent set: all threshold-influential coordinates are retained, and the public cap is inactive.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.monotoneSelectionBad {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (J : Finset (Fin n)) : Prop
def FABL.monotoneSelectionBad {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (J : Finset (Fin n)) : Prop
A selected set is bad if it misses a genuinely influential coordinate or exceeds the public cap. The latter disjunct is impossible for the actual first-stage output but makes the generic bind continuation theorem uniformly resource-bounded.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.monotoneInfluenceSelectionProgram_failureProbability_le_one_twentieth {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : ((FABL.monotoneInfluenceSelectionProgram n t ε).eventProbability target fun outcome => FABL.monotoneSelectionBad target t ε outcome.1) ≤ 1 / 20
theorem FABL.monotoneInfluenceSelectionProgram_failureProbability_le_one_twentieth {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : ((FABL.monotoneInfluenceSelectionProgram n t ε).eventProbability target fun outcome => FABL.monotoneSelectionBad target t ε outcome.1) ≤ 1 / 20
The first-stage discovery failure probability is at most `1/20`.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.boundedFamilyCoefficientAccuracy (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) : ↑FABL.PositiveLearningParameter
def FABL.boundedFamilyCoefficientAccuracy (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) : ↑FABL.PositiveLearningParameter
A family-size-independent coefficient accuracy, valid for every nonempty family of size at most `M`.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.boundedFamilyCoefficientConfidence (M : ℕ) (hM : 0 < M) : ↑FABL.PositiveLearningParameter
def FABL.boundedFamilyCoefficientConfidence (M : ℕ) (hM : 0 < M) : ↑FABL.PositiveLearningParameter
A family-size-independent confidence allocation with total budget `1/20`.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.boundedFamilySampleCount (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) : ℕ
def FABL.boundedFamilySampleCount (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) : ℕ
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.boundedFiniteFamilyFourierEstimatorProgram {n : ℕ} (𝓕 : Finset (Finset (Fin n))) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) : FABL.LearningProgram n FABL.LearningAccess.randomExamples (FABL.SparseFourierHypothesis n)
def FABL.boundedFiniteFamilyFourierEstimatorProgram {n : ℕ} (𝓕 : Finset (Finset (Fin n))) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) : FABL.LearningProgram n FABL.LearningAccess.randomExamples (FABL.SparseFourierHypothesis n)
The random-example estimator for an arbitrary dynamically selected family, scheduled only from its public cardinal bound.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.boundedFamilyCoefficientAccuracy_le_finiteFamilyCoefficientAccuracy {n : ℕ} (𝓕 : Finset (Finset (Fin n))) (h𝓕 : 𝓕.Nonempty) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) (hcard : 𝓕.card ≤ M) : ↑(FABL.boundedFamilyCoefficientAccuracy ε M hM) ≤ ↑(FABL.finiteFamilyCoefficientAccuracy 𝓕 h𝓕 ε)
theorem FABL.boundedFamilyCoefficientAccuracy_le_finiteFamilyCoefficientAccuracy {n : ℕ} (𝓕 : Finset (Finset (Fin n))) (h𝓕 : 𝓕.Nonempty) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) (hcard : 𝓕.card ≤ M) : ↑(FABL.boundedFamilyCoefficientAccuracy ε M hM) ≤ ↑(FABL.finiteFamilyCoefficientAccuracy 𝓕 h𝓕 ε)
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.relativeHammingDist_boundedFiniteFamilyOutput_le_of_no_bad {n : ℕ} (target : FABL.BooleanFunction n) (𝓕 : Finset (Finset (Fin n))) (h𝓕 : 𝓕.Nonempty) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) (hcard : 𝓕.card ≤ M) (sampleInputs : ↥𝓕 → Fin (FABL.boundedFamilySampleCount ε M hM) → FABL.SignCube n) (hconcentration : FABL.IsFourierSpectrumConcentratedOn target.toReal (↑↑ε / 2) ↑𝓕) (hgood : ∀ (S : ↥𝓕), sampleInputs ∉ FABL.finiteFamilyCoefficientBadSetWithParameters target 𝓕 (FABL.boundedFamilyCoefficientAccuracy ε M hM) (FABL.boundedFamilyCoefficientConfidence M hM) S) : FABL.relativeHammingDist target (FABL.finiteFamilyFourierEstimatorOutput target 𝓕 (FABL.boundedFamilySampleCount ε M hM) sampleInputs).evaluate ≤ ↑↑ε
theorem FABL.relativeHammingDist_boundedFiniteFamilyOutput_le_of_no_bad {n : ℕ} (target : FABL.BooleanFunction n) (𝓕 : Finset (Finset (Fin n))) (h𝓕 : 𝓕.Nonempty) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) (hcard : 𝓕.card ≤ M) (sampleInputs : ↥𝓕 → Fin (FABL.boundedFamilySampleCount ε M hM) → FABL.SignCube n) (hconcentration : FABL.IsFourierSpectrumConcentratedOn target.toReal (↑↑ε / 2) ↑𝓕) (hgood : ∀ (S : ↥𝓕), sampleInputs ∉ FABL.finiteFamilyCoefficientBadSetWithParameters target 𝓕 (FABL.boundedFamilyCoefficientAccuracy ε M hM) (FABL.boundedFamilyCoefficientConfidence M hM) S) : FABL.relativeHammingDist target (FABL.finiteFamilyFourierEstimatorOutput target 𝓕 (FABL.boundedFamilySampleCount ε M hM) sampleInputs).evaluate ≤ ↑↑ε
Outside all parameterized coefficient-bad events, the bounded-family output is `ε`-accurate whenever its family carries all but `ε/2` Fourier mass.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.boundedFiniteFamilyFourierEstimatorProgram_failureProbability_le_one_twentieth {n : ℕ} (target : FABL.BooleanFunction n) (𝓕 : Finset (Finset (Fin n))) (h𝓕 : 𝓕.Nonempty) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) (hcard : 𝓕.card ≤ M) (hconcentration : FABL.IsFourierSpectrumConcentratedOn target.toReal (↑↑ε / 2) ↑𝓕) : ((FABL.boundedFiniteFamilyFourierEstimatorProgram 𝓕 ε M hM).eventProbability target fun outcome => ↑↑ε < FABL.relativeHammingDist target outcome.1.evaluate) ≤ 1 / 20
theorem FABL.boundedFiniteFamilyFourierEstimatorProgram_failureProbability_le_one_twentieth {n : ℕ} (target : FABL.BooleanFunction n) (𝓕 : Finset (Finset (Fin n))) (h𝓕 : 𝓕.Nonempty) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) (hcard : 𝓕.card ≤ M) (hconcentration : FABL.IsFourierSpectrumConcentratedOn target.toReal (↑↑ε / 2) ↑𝓕) : ((FABL.boundedFiniteFamilyFourierEstimatorProgram 𝓕 ε M hM).eventProbability target fun outcome => ↑↑ε < FABL.relativeHammingDist target outcome.1.evaluate) ≤ 1 / 20
The bounded-family second stage has failure probability at most `1/20`.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.boundedFiniteFamilyFourierEstimatorProgram_cost_eq {n : ℕ} (target : FABL.BooleanFunction n) (𝓕 : Finset (Finset (Fin n))) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.boundedFiniteFamilyFourierEstimatorProgram 𝓕 ε M hM)).support) : outcome.2 = { randomExamples := 𝓕.card * FABL.boundedFamilySampleCount ε M hM, queries := 0, work := 𝓕.card * FABL.boundedFamilySampleCount ε M hM + 𝓕.card * FABL.boundedFamilySampleCount ε M hM * (n + 1) }
theorem FABL.boundedFiniteFamilyFourierEstimatorProgram_cost_eq {n : ℕ} (target : FABL.BooleanFunction n) (𝓕 : Finset (Finset (Fin n))) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.boundedFiniteFamilyFourierEstimatorProgram 𝓕 ε M hM)).support) : outcome.2 = { randomExamples := 𝓕.card * FABL.boundedFamilySampleCount ε M hM, queries := 0, work := 𝓕.card * FABL.boundedFamilySampleCount ε M hM + 𝓕.card * FABL.boundedFamilySampleCount ε M hM * (n + 1) }
Exact cost of the bounded-family estimator.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.boundedFiniteFamilyFourierEstimatorProgram_cost_le {n : ℕ} (target : FABL.BooleanFunction n) (𝓕 : Finset (Finset (Fin n))) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) (hcard : 𝓕.card ≤ M) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.boundedFiniteFamilyFourierEstimatorProgram 𝓕 ε M hM)).support) : outcome.2.randomExamples ≤ M * FABL.boundedFamilySampleCount ε M hM ∧ outcome.2.queries = 0 ∧ outcome.2.work ≤ M * FABL.boundedFamilySampleCount ε M hM * (n + 2)
theorem FABL.boundedFiniteFamilyFourierEstimatorProgram_cost_le {n : ℕ} (target : FABL.BooleanFunction n) (𝓕 : Finset (Finset (Fin n))) (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) (hcard : 𝓕.card ≤ M) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.boundedFiniteFamilyFourierEstimatorProgram 𝓕 ε M hM)).support) : outcome.2.randomExamples ≤ M * FABL.boundedFamilySampleCount ε M hM ∧ outcome.2.queries = 0 ∧ outcome.2.work ≤ M * FABL.boundedFamilySampleCount ε M hM * (n + 2)
Componentwise path bounds for every bounded-family execution.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.monotoneSelectedFourierFamily {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (J : Finset (Fin n)) : Finset (Finset (Fin n))
def FABL.monotoneSelectedFourierFamily {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (J : Finset (Fin n)) : Finset (Finset (Fin n))
The second-stage family selected from a first-stage coordinate set.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.monotoneSelectedFourierFamily_nonempty {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (J : Finset (Fin n)) : (FABL.monotoneSelectedFourierFamily t ε J).Nonempty
theorem FABL.monotoneSelectedFourierFamily_nonempty {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (J : Finset (Fin n)) : (FABL.monotoneSelectedFourierFamily t ε J).Nonempty
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.card_monotoneSelectedFourierFamily_le {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (J : Finset (Fin n)) (hJ : J.card ≤ FABL.learningConsequencesCoordinateCap t ε) : (FABL.monotoneSelectedFourierFamily t ε J).card ≤ FABL.learningConsequencesFamilyBound t ε
theorem FABL.card_monotoneSelectedFourierFamily_le {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (J : Finset (Fin n)) (hJ : J.card ≤ FABL.learningConsequencesCoordinateCap t ε) : (FABL.monotoneSelectedFourierFamily t ε J).card ≤ FABL.learningConsequencesFamilyBound t ε
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.monotoneBoundedInfluenceSecondStage {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (J : Finset (Fin n)) : FABL.LearningProgram n FABL.LearningAccess.randomExamples (FABL.SparseFourierHypothesis n)
def FABL.monotoneBoundedInfluenceSecondStage {n : ℕ} (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (J : Finset (Fin n)) : FABL.LearningProgram n FABL.LearningAccess.randomExamples (FABL.SparseFourierHypothesis n)
The target-independent continuation selected by the empirical coordinate set.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.monotoneBoundedInfluenceRandomExampleProgram (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : FABL.LearningProgram n FABL.LearningAccess.randomExamples (FABL.SparseFourierHypothesis n)
def FABL.monotoneBoundedInfluenceRandomExampleProgram (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : FABL.LearningProgram n FABL.LearningAccess.randomExamples (FABL.SparseFourierHypothesis n)
Exercise 9.21(b)'s actual target-independent random-example learner.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.monotoneSelectedFourierFamily_spectrum_concentrated {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) (J : Finset (Fin n)) (hJ : FABL.influentialCoordinates target ↑(FABL.learningConsequencesThreshold t ε) ⊆ J) : FABL.IsFourierSpectrumConcentratedOn target.toReal (↑↑ε / 2) ↑(FABL.monotoneSelectedFourierFamily t ε J)
theorem FABL.monotoneSelectedFourierFamily_spectrum_concentrated {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) (J : Finset (Fin n)) (hJ : FABL.influentialCoordinates target ↑(FABL.learningConsequencesThreshold t ε) ⊆ J) : FABL.IsFourierSpectrumConcentratedOn target.toReal (↑↑ε / 2) ↑(FABL.monotoneSelectedFourierFamily t ε J)
A successful first-stage set gives a concentrating second-stage family.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.monotoneBoundedInfluenceRandomExampleProgram_failureProbability_le_one_tenth {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : ((FABL.monotoneBoundedInfluenceRandomExampleProgram n t ε).eventProbability target fun outcome => ↑↑ε < FABL.relativeHammingDist target outcome.1.evaluate) ≤ 1 / 10
theorem FABL.monotoneBoundedInfluenceRandomExampleProgram_failureProbability_le_one_tenth {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (hI : FABL.totalInfluence target.toReal ≤ ↑↑t) : ((FABL.monotoneBoundedInfluenceRandomExampleProgram n t ε).eventProbability target fun outcome => ↑↑ε < FABL.relativeHammingDist target outcome.1.evaluate) ≤ 1 / 10
The complete monotone random-example learner fails with probability at most `1/10`.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.monotoneBoundedInfluenceRandomExampleBudget (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
def FABL.monotoneBoundedInfluenceRandomExampleBudget (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
Public pathwise random-example budget for the full two-stage learner.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.monotoneBoundedInfluenceWorkBudget (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
def FABL.monotoneBoundedInfluenceWorkBudget (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) : ℕ
Public pathwise charged-work budget for the full two-stage learner.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.monotoneBoundedInfluenceRandomExampleProgram_cost_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.monotoneBoundedInfluenceRandomExampleProgram n t ε)).support) : outcome.2.randomExamples ≤ FABL.monotoneBoundedInfluenceRandomExampleBudget n t ε ∧ outcome.2.queries = 0 ∧ outcome.2.work ≤ FABL.monotoneBoundedInfluenceWorkBudget n t ε
theorem FABL.monotoneBoundedInfluenceRandomExampleProgram_cost_le {n : ℕ} (target : FABL.BooleanFunction n) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.monotoneBoundedInfluenceRandomExampleProgram n t ε)).support) : outcome.2.randomExamples ≤ FABL.monotoneBoundedInfluenceRandomExampleBudget n t ε ∧ outcome.2.queries = 0 ∧ outcome.2.work ≤ FABL.monotoneBoundedInfluenceWorkBudget n t ε
Every path of the two-stage learner obeys its advertised random-example and work budgets and uses no membership queries.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.FiniteDecisionTree.leafCount_mapOutput.{u_1, u_2, u_3} {Ω : Type u_1} {α : Type u_2} {β : Type u_3} [Fintype Ω] {n : ℕ} {A : Finset (Fin n)} (g : α → β) (T : FABL.FiniteDecisionTree Ω α n A) : (FABL.FiniteDecisionTree.mapOutput g T).leafCount = T.leafCount
theorem FABL.FiniteDecisionTree.leafCount_mapOutput.{u_1, u_2, u_3} {Ω : Type u_1} {α : Type u_2} {β : Type u_3} [Fintype Ω] {n : ℕ} {A : Finset (Fin n)} (g : α → β) (T : FABL.FiniteDecisionTree Ω α n A) : (FABL.FiniteDecisionTree.mapOutput g T).leafCount = T.leafCount
Mapping deterministic-tree leaf labels does not alter its number of leaves.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.FiniteDecisionTree.mapOutput_signValue_computes {n : ℕ} (target : FABL.BooleanFunction n) (T : FABL.FiniteAlphabetDecisionTree FABL.Sign FABL.Sign n) (hT : FABL.FiniteDecisionTree.Computes T target) : (FABL.FiniteDecisionTree.mapOutput FABL.signValue T).Computes target.toReal
theorem FABL.FiniteDecisionTree.mapOutput_signValue_computes {n : ℕ} (target : FABL.BooleanFunction n) (T : FABL.FiniteAlphabetDecisionTree FABL.Sign FABL.Sign n) (hT : FABL.FiniteDecisionTree.Computes T target) : (FABL.FiniteDecisionTree.mapOutput FABL.signValue T).Computes target.toReal
A sign-output computing tree becomes a real-output computing tree without changing its query process.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.totalInfluence_le_sqrt_logb_leafCount_of_monotone {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (T : FABL.FiniteAlphabetDecisionTree FABL.Sign FABL.Sign n) (hT : FABL.FiniteDecisionTree.Computes T target) : FABL.totalInfluence target.toReal ≤ √(Real.logb 2 ↑(FABL.FiniteDecisionTree.leafCount T))
theorem FABL.totalInfluence_le_sqrt_logb_leafCount_of_monotone {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (T : FABL.FiniteAlphabetDecisionTree FABL.Sign FABL.Sign n) (hT : FABL.FiniteDecisionTree.Computes T target) : FABL.totalInfluence target.toReal ≤ √(Real.logb 2 ↑(FABL.FiniteDecisionTree.leafCount T))
OS at `p=1/2`, followed by Exercise 8.43, gives the exact leaf-count influence bridge requested in Exercise 9.21(c).
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.FiniteDecisionTree.exists_computingTree_leafCount_eq_deterministicSize {n : ℕ} (target : FABL.BooleanFunction n) : ∃ T, FABL.FiniteDecisionTree.Computes T target ∧ FABL.FiniteDecisionTree.leafCount T = FABL.FiniteDecisionTree.deterministicSize target
theorem FABL.FiniteDecisionTree.exists_computingTree_leafCount_eq_deterministicSize {n : ℕ} (target : FABL.BooleanFunction n) : ∃ T, FABL.FiniteDecisionTree.Computes T target ∧ FABL.FiniteDecisionTree.leafCount T = FABL.FiniteDecisionTree.deterministicSize target
A minimum-leaf computing tree exists for Chapter 8's sign-cube size definition.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.totalInfluence_le_sqrt_logb_deterministicSize_of_monotone {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) : FABL.totalInfluence target.toReal ≤ √(Real.logb 2 ↑(FABL.FiniteDecisionTree.deterministicSize target))
theorem FABL.totalInfluence_le_sqrt_logb_deterministicSize_of_monotone {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) : FABL.totalInfluence target.toReal ≤ √(Real.logb 2 ↑(FABL.FiniteDecisionTree.deterministicSize target))
Function-level leaf-count form of the OS/entropy bridge.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.decisionTreeSizeInfluenceBound (n d : ℕ) : FABL.PositiveInfluenceBound
def FABL.decisionTreeSizeInfluenceBound (n d : ℕ) : FABL.PositiveInfluenceBound
Integer-valued `O(sqrt(log n))` influence envelope for a class with at most `n^d` leaves.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.totalInfluence_le_decisionTreeSizeInfluenceBound {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (d : ℕ) (hsize : FABL.FiniteDecisionTree.deterministicSize target ≤ n ^ d) : FABL.totalInfluence target.toReal ≤ ↑↑(FABL.decisionTreeSizeInfluenceBound n d)
theorem FABL.totalInfluence_le_decisionTreeSizeInfluenceBound {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (d : ℕ) (hsize : FABL.FiniteDecisionTree.deterministicSize target ≤ n ^ d) : FABL.totalInfluence target.toReal ≤ ↑↑(FABL.decisionTreeSizeInfluenceBound n d)
A monotone function of decision-tree size at most `n^d` lies below the public subsquare-root influence envelope.
-
defdefined in FABL/Chapter09/LearningConsequences.leancomplete
def FABL.monotoneDecisionTreeSizeRandomExampleProgram (n d : ℕ) (ε : ↑FABL.PositiveLearningParameter) : FABL.LearningProgram n FABL.LearningAccess.randomExamples (FABL.SparseFourierHypothesis n)
def FABL.monotoneDecisionTreeSizeRandomExampleProgram (n d : ℕ) (ε : ↑FABL.PositiveLearningParameter) : FABL.LearningProgram n FABL.LearningAccess.randomExamples (FABL.SparseFourierHypothesis n)
Exercise 9.21(c)'s target-independent random-example learner for the class `DTsize(f) ≤ n^d`.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.monotoneDecisionTreeSizeRandomExampleProgram_failureProbability_le_one_tenth {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (d : ℕ) (hsize : FABL.FiniteDecisionTree.deterministicSize target ≤ n ^ d) (ε : ↑FABL.PositiveLearningParameter) : ((FABL.monotoneDecisionTreeSizeRandomExampleProgram n d ε).eventProbability target fun outcome => ↑↑ε < FABL.relativeHammingDist target outcome.1.evaluate) ≤ 1 / 10
theorem FABL.monotoneDecisionTreeSizeRandomExampleProgram_failureProbability_le_one_tenth {n : ℕ} (target : FABL.BooleanFunction n) (htarget : Monotone target) (d : ℕ) (hsize : FABL.FiniteDecisionTree.deterministicSize target ≤ n ^ d) (ε : ↑FABL.PositiveLearningParameter) : ((FABL.monotoneDecisionTreeSizeRandomExampleProgram n d ε).eventProbability target fun outcome => ↑↑ε < FABL.relativeHammingDist target outcome.1.evaluate) ≤ 1 / 10
Exercise 9.21(c): every monotone target of leaf complexity at most `n^d` is learned from random examples with failure probability at most `1/10`.
-
theoremdefined in FABL/Chapter09/LearningConsequences.leancomplete
theorem FABL.monotoneDecisionTreeSizeRandomExampleProgram_cost_le {n : ℕ} (target : FABL.BooleanFunction n) (d : ℕ) (ε : ↑FABL.PositiveLearningParameter) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.monotoneDecisionTreeSizeRandomExampleProgram n d ε)).support) : outcome.2.randomExamples ≤ FABL.monotoneBoundedInfluenceRandomExampleBudget n (FABL.decisionTreeSizeInfluenceBound n d) ε ∧ outcome.2.queries = 0 ∧ outcome.2.work ≤ FABL.monotoneBoundedInfluenceWorkBudget n (FABL.decisionTreeSizeInfluenceBound n d) ε
theorem FABL.monotoneDecisionTreeSizeRandomExampleProgram_cost_le {n : ℕ} (target : FABL.BooleanFunction n) (d : ℕ) (ε : ↑FABL.PositiveLearningParameter) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.monotoneDecisionTreeSizeRandomExampleProgram n d ε)).support) : outcome.2.randomExamples ≤ FABL.monotoneBoundedInfluenceRandomExampleBudget n (FABL.decisionTreeSizeInfluenceBound n d) ε ∧ outcome.2.queries = 0 ∧ outcome.2.work ≤ FABL.monotoneBoundedInfluenceWorkBudget n (FABL.decisionTreeSizeInfluenceBound n d) ε
Exercise 9.21(c) inherits the same pathwise random-example/work resource certificate.
-
structuredefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
structure FABL.LearningConsequencesSubsqrtRegime (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (C Q : ℕ) : Prop
structure FABL.LearningConsequencesSubsqrtRegime (n : ℕ) (t : FABL.PositiveInfluenceBound) (ε : ↑FABL.PositiveLearningParameter) (C Q : ℕ) : Prop
A finite, exact version of the regime `ε` fixed and `t ≤ C sqrt(log n)`. The harmless `+1`s totalize small dimensions; `C` and `Q` are fixed across a concept class.
Fields
dimension_pos : 1 ≤ n
The nontrivial dimension range.
precision_lower : 1 / (↑Q + 1) ≤ ↑ε
Fixed accuracy: `ε ≥ 1/(Q+1)`.
influence_le : ↑t ≤ ↑(C + 1) * (↑(Nat.clog 2 (n + 1)).sqrt + 1)
Subsquare-root influence envelope in binary logarithmic scale.
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesDegreeCoefficient (C Q : ℕ) : ℕ
def FABL.learningConsequencesDegreeCoefficient (C Q : ℕ) : ℕ
Coefficient controlling the public degree cutoff in the subsquare-root regime.
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesCoordinateCoefficient (C Q : ℕ) : ℕ
def FABL.learningConsequencesCoordinateCoefficient (C Q : ℕ) : ℕ
Elementary coefficient controlling the influential-coordinate cap.
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesFamilyExponent (C Q : ℕ) : ℕ
def FABL.learningConsequencesFamilyExponent (C Q : ℕ) : ℕ
Fixed exponent controlling the complete low-degree family.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.nat_succ_le_two_pow (m : ℕ) : m + 1 ≤ 2 ^ m
theorem FABL.nat_succ_le_two_pow (m : ℕ) : m + 1 ≤ 2 ^ m
Every natural number plus one is at most the corresponding power of two.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.nat_self_le_two_pow (m : ℕ) : m ≤ 2 ^ m
theorem FABL.nat_self_le_two_pow (m : ℕ) : m ≤ 2 ^ m
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.two_pow_clog_le_two_mul (x : ℕ) (hx : 1 ≤ x) : 2 ^ Nat.clog 2 x ≤ 2 * x
theorem FABL.two_pow_clog_le_two_mul (x : ℕ) (hx : 1 ≤ x) : 2 ^ Nat.clog 2 x ≤ 2 * x
A binary ceiling power is at most twice its argument.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.learningConsequencesDegree_le_subsqrt {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.learningConsequencesDegree t ε ≤ FABL.learningConsequencesDegreeCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)
theorem FABL.learningConsequencesDegree_le_subsqrt {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.learningConsequencesDegree t ε ≤ FABL.learningConsequencesDegreeCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)
The public degree cutoff is at most a fixed multiple of `sqrt(clog₂(n+1))+1`.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.sqrt_add_one_sq_le_two_mul_add_one (L : ℕ) : (L.sqrt + 1) ^ 2 ≤ 2 * (L + 1)
theorem FABL.sqrt_add_one_sq_le_two_mul_add_one (L : ℕ) : (L.sqrt + 1) ^ 2 ≤ 2 * (L + 1)
The square of `sqrt L + 1` is at most `2(L+1)`.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.learningConsequencesCoordinateRatio_le_two_pow {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : 2 * ↑t / FABL.learningConsequencesThreshold t ε ≤ ↑(2 ^ ((128 * (Q + 1) ^ 2 * (C + 1) ^ 3 + 4 * FABL.learningConsequencesDegreeCoefficient C Q + 3) * ((Nat.clog 2 (n + 1)).sqrt + 1)))
theorem FABL.learningConsequencesCoordinateRatio_le_two_pow {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : 2 * ↑t / FABL.learningConsequencesThreshold t ε ≤ ↑(2 ^ ((128 * (Q + 1) ^ 2 * (C + 1) ^ 3 + 4 * FABL.learningConsequencesDegreeCoefficient C Q + 3) * ((Nat.clog 2 (n + 1)).sqrt + 1)))
Analytic ratio underlying the coordinate cap, bounded by a fixed binary exponential.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.learningConsequencesCoordinateCap_add_one_le_two_pow {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.learningConsequencesCoordinateCap t ε + 1 ≤ 2 ^ (FABL.learningConsequencesCoordinateCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1))
theorem FABL.learningConsequencesCoordinateCap_add_one_le_two_pow {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.learningConsequencesCoordinateCap t ε + 1 ≤ 2 ^ (FABL.learningConsequencesCoordinateCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1))
The coordinate cap plus one is bounded by a fixed exponential in the square-root log scale.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.learningConsequencesFamilyBound_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.learningConsequencesFamilyBound t ε ≤ 2 ^ (2 * FABL.learningConsequencesFamilyExponent C Q) * (n + 1) ^ FABL.learningConsequencesFamilyExponent C Q
theorem FABL.learningConsequencesFamilyBound_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.learningConsequencesFamilyBound t ε ≤ 2 ^ (2 * FABL.learningConsequencesFamilyExponent C Q) * (n + 1) ^ FABL.learningConsequencesFamilyExponent C Q
Exercise 9.21(a)'s small Fourier family is genuinely polynomial in `n` throughout the fixed-accuracy subsquare-root-influence regime.
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesFamilyConstant (C Q : ℕ) : ℕ
def FABL.learningConsequencesFamilyConstant (C Q : ℕ) : ℕ
Multiplicative constant in the fixed-power family bound.
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesQueryExponent (C Q : ℕ) : ℕ
def FABL.learningConsequencesQueryExponent (C Q : ℕ) : ℕ
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesWorkExponent (C Q : ℕ) : ℕ
def FABL.learningConsequencesWorkExponent (C Q : ℕ) : ℕ
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesQueryConstant (C Q : ℕ) : ℕ
def FABL.learningConsequencesQueryConstant (C Q : ℕ) : ℕ
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesWorkConstant (C Q : ℕ) : ℕ
def FABL.learningConsequencesWorkConstant (C Q : ℕ) : ℕ
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.learningConsequencesFamilyBound_add_one_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.learningConsequencesFamilyBound t ε + 1 ≤ (FABL.learningConsequencesFamilyConstant C Q + 1) * (n + 1) ^ FABL.learningConsequencesFamilyExponent C Q
theorem FABL.learningConsequencesFamilyBound_add_one_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.learningConsequencesFamilyBound t ε + 1 ≤ (FABL.learningConsequencesFamilyConstant C Q + 1) * (n + 1) ^ FABL.learningConsequencesFamilyExponent C Q
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.one_div_accuracy_pow_le {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) (r : ℕ) : (1 / ↑ε) ^ r ≤ ↑(Q + 1) ^ r
theorem FABL.one_div_accuracy_pow_le {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) (r : ℕ) : (1 / ↑ε) ^ r ≤ ↑(Q + 1) ^ r
Fixed accuracy gives the reciprocal-power bound used by every scheduler.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.kmResourceExpression_le_fixed_power {n : ℕ} (leading dimensionPower M F E Q : ℕ) (ε : ℚ) (hε : 0 < ε) (hM : M + 1 ≤ (F + 1) * (n + 1) ^ E) (hinv : (1 / ε) ^ 10 ≤ ↑Q ^ 10) : ↑leading * (↑n + 1) ^ dimensionPower * (↑M + 1) ^ 8 / ε ^ 10 ≤ ↑(leading * (F + 1) ^ 8 * Q ^ 10) * (↑n + 1) ^ (8 * E + dimensionPower)
theorem FABL.kmResourceExpression_le_fixed_power {n : ℕ} (leading dimensionPower M F E Q : ℕ) (ε : ℚ) (hε : 0 < ε) (hM : M + 1 ≤ (F + 1) * (n + 1) ^ E) (hinv : (1 / ε) ^ 10 ≤ ↑Q ^ 10) : ↑leading * (↑n + 1) ^ dimensionPower * (↑M + 1) ^ 8 / ε ^ 10 ≤ ↑(leading * (F + 1) ^ 8 * Q ^ 10) * (↑n + 1) ^ (8 * E + dimensionPower)
Generic arithmetic compression used by the two KM fixed-power bounds.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.boundedInfluenceQueryBudget_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : 2 ^ 40 * (↑n + 1) ^ 2 * (↑(FABL.learningConsequencesFamilyBound t ε) + 1) ^ 8 / ↑ε ^ 10 ≤ ↑(FABL.learningConsequencesQueryConstant C Q * (n + 1) ^ FABL.learningConsequencesQueryExponent C Q)
theorem FABL.boundedInfluenceQueryBudget_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : 2 ^ 40 * (↑n + 1) ^ 2 * (↑(FABL.learningConsequencesFamilyBound t ε) + 1) ^ 8 / ↑ε ^ 10 ≤ ↑(FABL.learningConsequencesQueryConstant C Q * (n + 1) ^ FABL.learningConsequencesQueryExponent C Q)
Exercise 9.21(a): the public KM query expression is bounded by a fixed power. Together with `boundedInfluenceQueryLearningProgram_queries_le`, this is a pathwise polynomial certificate.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.boundedInfluenceWorkBudget_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : 2 ^ 42 * (↑n + 1) ^ 3 * (↑(FABL.learningConsequencesFamilyBound t ε) + 1) ^ 8 / ↑ε ^ 10 ≤ ↑(FABL.learningConsequencesWorkConstant C Q * (n + 1) ^ FABL.learningConsequencesWorkExponent C Q)
theorem FABL.boundedInfluenceWorkBudget_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : 2 ^ 42 * (↑n + 1) ^ 3 * (↑(FABL.learningConsequencesFamilyBound t ε) + 1) ^ 8 / ↑ε ^ 10 ≤ ↑(FABL.learningConsequencesWorkConstant C Q * (n + 1) ^ FABL.learningConsequencesWorkExponent C Q)
Exercise 9.21(a): the public KM charged-work expression is bounded by a fixed power.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.boundedFamilyCoefficientFailureBits_eq (M : ℕ) (hM : 0 < M) : FABL.fourierEstimatorFailureBits (FABL.boundedFamilyCoefficientConfidence M hM) = Nat.clog 2 (40 * M)
theorem FABL.boundedFamilyCoefficientFailureBits_eq (M : ℕ) (hM : 0 < M) : FABL.fourierEstimatorFailureBits (FABL.boundedFamilyCoefficientConfidence M hM) = Nat.clog 2 (40 * M)
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.boundedFamilySampleCount_cast_le (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) : ↑(FABL.boundedFamilySampleCount ε M hM) ≤ 640 * ↑M ^ 3 / ↑ε ^ 2
theorem FABL.boundedFamilySampleCount_cast_le (ε : ↑FABL.PositiveLearningParameter) (M : ℕ) (hM : 0 < M) : ↑(FABL.boundedFamilySampleCount ε M hM) ≤ 640 * ↑M ^ 3 / ↑ε ^ 2
The global second-stage scheduler is cubic in its public family bound.
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesSecondStageSampleConstant (C Q : ℕ) : ℕ
def FABL.learningConsequencesSecondStageSampleConstant (C Q : ℕ) : ℕ
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesSecondStageSampleExponent (C Q : ℕ) : ℕ
def FABL.learningConsequencesSecondStageSampleExponent (C Q : ℕ) : ℕ
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.cubicSampleExpression_le_fixed_power (n M A E Q : ℕ) (ε : ℚ) (hε : 0 < ε) (hM : M ≤ A * (n + 1) ^ E) (hinv : (1 / ε) ^ 2 ≤ ↑Q ^ 2) : 640 * ↑M ^ 3 / ε ^ 2 ≤ ↑(640 * A ^ 3 * Q ^ 2) * (↑n + 1) ^ (3 * E)
theorem FABL.cubicSampleExpression_le_fixed_power (n M A E Q : ℕ) (ε : ℚ) (hε : 0 < ε) (hM : M ≤ A * (n + 1) ^ E) (hinv : (1 / ε) ^ 2 ≤ ↑Q ^ 2) : 640 * ↑M ^ 3 / ε ^ 2 ≤ ↑(640 * A ^ 3 * Q ^ 2) * (↑n + 1) ^ (3 * E)
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.boundedFamilySampleCount_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.boundedFamilySampleCount ε (FABL.learningConsequencesFamilyBound t ε) ⋯ ≤ FABL.learningConsequencesSecondStageSampleConstant C Q * (n + 1) ^ FABL.learningConsequencesSecondStageSampleExponent C Q
theorem FABL.boundedFamilySampleCount_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.boundedFamilySampleCount ε (FABL.learningConsequencesFamilyBound t ε) ⋯ ≤ FABL.learningConsequencesSecondStageSampleConstant C Q * (n + 1) ^ FABL.learningConsequencesSecondStageSampleExponent C Q
In the subsquare-root regime the dynamically scheduled second-stage row count is bounded by a fixed power of `n+1`.
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesSingletonExponentCoefficient (C Q : ℕ) : ℕ
def FABL.learningConsequencesSingletonExponentCoefficient (C Q : ℕ) : ℕ
Exponent coefficient controlling the singleton-discovery scheduler.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.one_div_learningConsequencesThreshold_sq_le_expression {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : (1 / FABL.learningConsequencesThreshold t ε) ^ 2 ≤ ↑((8 * (C + 1) * (Q + 1)) ^ 4 * ((Nat.clog 2 (n + 1)).sqrt + 1) ^ 4 * 9 ^ (2 * FABL.learningConsequencesDegreeCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)))
theorem FABL.one_div_learningConsequencesThreshold_sq_le_expression {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : (1 / FABL.learningConsequencesThreshold t ε) ^ 2 ≤ ↑((8 * (C + 1) * (Q + 1)) ^ 4 * ((Nat.clog 2 (n + 1)).sqrt + 1) ^ 4 * 9 ^ (2 * FABL.learningConsequencesDegreeCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)))
First half of the singleton-threshold estimate, retaining an elementary finite expression.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.learningConsequencesSingletonExpression_le_two_pow (n C Q : ℕ) : (8 * (C + 1) * (Q + 1)) ^ 4 * ((Nat.clog 2 (n + 1)).sqrt + 1) ^ 4 * 9 ^ (2 * FABL.learningConsequencesDegreeCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)) ≤ 2 ^ (FABL.learningConsequencesSingletonExponentCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1))
theorem FABL.learningConsequencesSingletonExpression_le_two_pow (n C Q : ℕ) : (8 * (C + 1) * (Q + 1)) ^ 4 * ((Nat.clog 2 (n + 1)).sqrt + 1) ^ 4 * 9 ^ (2 * FABL.learningConsequencesDegreeCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)) ≤ 2 ^ (FABL.learningConsequencesSingletonExponentCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1))
The elementary singleton expression is bounded by the advertised binary exponential.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.one_div_learningConsequencesThreshold_sq_le_two_pow {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : (1 / FABL.learningConsequencesThreshold t ε) ^ 2 ≤ ↑(2 ^ (FABL.learningConsequencesSingletonExponentCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)))
theorem FABL.one_div_learningConsequencesThreshold_sq_le_two_pow {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : (1 / FABL.learningConsequencesThreshold t ε) ^ 2 ≤ ↑(2 ^ (FABL.learningConsequencesSingletonExponentCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)))
The reciprocal square of the influential-coordinate threshold is exponentially bounded in `sqrt(clog₂(n+1))+1`, hence polynomially bounded in `n`.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.one_div_singletonInfluenceAccuracy_sq_le {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : (1 / ↑(FABL.singletonInfluenceAccuracy t ε)) ^ 2 ≤ ↑(16 * 2 ^ (FABL.learningConsequencesSingletonExponentCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)))
theorem FABL.one_div_singletonInfluenceAccuracy_sq_le {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : (1 / ↑(FABL.singletonInfluenceAccuracy t ε)) ^ 2 ≤ ↑(16 * 2 ^ (FABL.learningConsequencesSingletonExponentCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)))
The capped singleton accuracy has polynomially bounded reciprocal square.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.singletonInfluenceFailureBits_eq (n : ℕ) : FABL.fourierEstimatorFailureBits (FABL.singletonInfluenceConfidence n) = Nat.clog 2 (40 * (n + 1))
theorem FABL.singletonInfluenceFailureBits_eq (n : ℕ) : FABL.fourierEstimatorFailureBits (FABL.singletonInfluenceConfidence n) = Nat.clog 2 (40 * (n + 1))
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.singletonInfluenceSampleCount_cast_le_subsqrt {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : ↑(FABL.singletonInfluenceSampleCount n t ε) ≤ 2560 * (↑n + 1) * ↑(2 ^ (FABL.learningConsequencesSingletonExponentCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)))
theorem FABL.singletonInfluenceSampleCount_cast_le_subsqrt {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : ↑(FABL.singletonInfluenceSampleCount n t ε) ≤ 2560 * (↑n + 1) * ↑(2 ^ (FABL.learningConsequencesSingletonExponentCoefficient C Q * ((Nat.clog 2 (n + 1)).sqrt + 1)))
Explicit polynomial row bound for the first-stage singleton estimates.
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesSingletonSampleConstant (C Q : ℕ) : ℕ
def FABL.learningConsequencesSingletonSampleConstant (C Q : ℕ) : ℕ
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesSingletonSampleExponent (C Q : ℕ) : ℕ
def FABL.learningConsequencesSingletonSampleExponent (C Q : ℕ) : ℕ
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.two_pow_mul_sqrt_clog_add_one_le_fixed_power (n H : ℕ) : 2 ^ (H * ((Nat.clog 2 (n + 1)).sqrt + 1)) ≤ 2 ^ (2 * H) * (n + 1) ^ H
theorem FABL.two_pow_mul_sqrt_clog_add_one_le_fixed_power (n H : ℕ) : 2 ^ (H * ((Nat.clog 2 (n + 1)).sqrt + 1)) ≤ 2 ^ (2 * H) * (n + 1) ^ H
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.singletonInfluenceSampleCount_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.singletonInfluenceSampleCount n t ε ≤ FABL.learningConsequencesSingletonSampleConstant C Q * (n + 1) ^ FABL.learningConsequencesSingletonSampleExponent C Q
theorem FABL.singletonInfluenceSampleCount_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.singletonInfluenceSampleCount n t ε ≤ FABL.learningConsequencesSingletonSampleConstant C Q * (n + 1) ^ FABL.learningConsequencesSingletonSampleExponent C Q
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesRandomExampleExponent (C Q : ℕ) : ℕ
def FABL.learningConsequencesRandomExampleExponent (C Q : ℕ) : ℕ
Fixed exponent for the complete two-stage random-example budget.
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesRandomExampleConstant (C Q : ℕ) : ℕ
def FABL.learningConsequencesRandomExampleConstant (C Q : ℕ) : ℕ
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesRandomExampleWorkExponent (C Q : ℕ) : ℕ
def FABL.learningConsequencesRandomExampleWorkExponent (C Q : ℕ) : ℕ
-
defdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
def FABL.learningConsequencesRandomExampleWorkConstant (C Q : ℕ) : ℕ
def FABL.learningConsequencesRandomExampleWorkConstant (C Q : ℕ) : ℕ
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.monotoneBoundedInfluenceRandomExampleBudget_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.monotoneBoundedInfluenceRandomExampleBudget n t ε ≤ FABL.learningConsequencesRandomExampleConstant C Q * (n + 1) ^ FABL.learningConsequencesRandomExampleExponent C Q
theorem FABL.monotoneBoundedInfluenceRandomExampleBudget_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.monotoneBoundedInfluenceRandomExampleBudget n t ε ≤ FABL.learningConsequencesRandomExampleConstant C Q * (n + 1) ^ FABL.learningConsequencesRandomExampleExponent C Q
Exercise 9.21(b): the public two-stage random-example budget is bounded by one fixed power of the ambient dimension.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.monotoneBoundedInfluenceWorkBudget_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.monotoneBoundedInfluenceWorkBudget n t ε ≤ FABL.learningConsequencesRandomExampleWorkConstant C Q * (n + 1) ^ FABL.learningConsequencesRandomExampleWorkExponent C Q
theorem FABL.monotoneBoundedInfluenceWorkBudget_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) : FABL.monotoneBoundedInfluenceWorkBudget n t ε ≤ FABL.learningConsequencesRandomExampleWorkConstant C Q * (n + 1) ^ FABL.learningConsequencesRandomExampleWorkExponent C Q
Exercise 9.21(b): the charged local-work budget is likewise bounded by a fixed power.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.monotoneBoundedInfluenceRandomExampleProgram_cost_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) (target : FABL.BooleanFunction n) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.monotoneBoundedInfluenceRandomExampleProgram n t ε)).support) : outcome.2.randomExamples ≤ FABL.learningConsequencesRandomExampleConstant C Q * (n + 1) ^ FABL.learningConsequencesRandomExampleExponent C Q ∧ outcome.2.queries = 0 ∧ outcome.2.work ≤ FABL.learningConsequencesRandomExampleWorkConstant C Q * (n + 1) ^ FABL.learningConsequencesRandomExampleWorkExponent C Q
theorem FABL.monotoneBoundedInfluenceRandomExampleProgram_cost_le_fixed_power {n C Q : ℕ} {t : FABL.PositiveInfluenceBound} {ε : ↑FABL.PositiveLearningParameter} (hregime : FABL.LearningConsequencesSubsqrtRegime n t ε C Q) (target : FABL.BooleanFunction n) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.monotoneBoundedInfluenceRandomExampleProgram n t ε)).support) : outcome.2.randomExamples ≤ FABL.learningConsequencesRandomExampleConstant C Q * (n + 1) ^ FABL.learningConsequencesRandomExampleExponent C Q ∧ outcome.2.queries = 0 ∧ outcome.2.work ≤ FABL.learningConsequencesRandomExampleWorkConstant C Q * (n + 1) ^ FABL.learningConsequencesRandomExampleWorkExponent C Q
Exercise 9.21(b)'s complete pathwise fixed-power certificate.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.decisionTreeSizeInfluenceBound_subsqrtRegime (n d Q : ℕ) (ε : ↑FABL.PositiveLearningParameter) (hn : 1 ≤ n) (hprecision : 1 / (↑Q + 1) ≤ ↑ε) : FABL.LearningConsequencesSubsqrtRegime n (FABL.decisionTreeSizeInfluenceBound n d) ε (d + 1) Q
theorem FABL.decisionTreeSizeInfluenceBound_subsqrtRegime (n d Q : ℕ) (ε : ↑FABL.PositiveLearningParameter) (hn : 1 ≤ n) (hprecision : 1 / (↑Q + 1) ≤ ↑ε) : FABL.LearningConsequencesSubsqrtRegime n (FABL.decisionTreeSizeInfluenceBound n d) ε (d + 1) Q
The decision-tree-size influence envelope belongs to the subsquare-root regime with the fixed class exponent `C=d+1`.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.decisionTreeSizeFamilyBound_le_fixed_power (n d Q : ℕ) (ε : ↑FABL.PositiveLearningParameter) (hn : 1 ≤ n) (hprecision : 1 / (↑Q + 1) ≤ ↑ε) : FABL.learningConsequencesFamilyBound (FABL.decisionTreeSizeInfluenceBound n d) ε ≤ FABL.learningConsequencesFamilyConstant (d + 1) Q * (n + 1) ^ FABL.learningConsequencesFamilyExponent (d + 1) Q
theorem FABL.decisionTreeSizeFamilyBound_le_fixed_power (n d Q : ℕ) (ε : ↑FABL.PositiveLearningParameter) (hn : 1 ≤ n) (hprecision : 1 / (↑Q + 1) ≤ ↑ε) : FABL.learningConsequencesFamilyBound (FABL.decisionTreeSizeInfluenceBound n d) ε ≤ FABL.learningConsequencesFamilyConstant (d + 1) Q * (n + 1) ^ FABL.learningConsequencesFamilyExponent (d + 1) Q
Exercise 9.21(c): for fixed leaf exponent `d` and fixed accuracy, the public family bound is an explicit fixed power of the dimension.
-
theoremdefined in FABL/Chapter09/LearningConsequencesResources.leancomplete
theorem FABL.monotoneDecisionTreeSizeRandomExampleProgram_cost_le_fixed_power {n : ℕ} (target : FABL.BooleanFunction n) (d Q : ℕ) (ε : ↑FABL.PositiveLearningParameter) (hn : 1 ≤ n) (hprecision : 1 / (↑Q + 1) ≤ ↑ε) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.monotoneDecisionTreeSizeRandomExampleProgram n d ε)).support) : outcome.2.randomExamples ≤ FABL.learningConsequencesRandomExampleConstant (d + 1) Q * (n + 1) ^ FABL.learningConsequencesRandomExampleExponent (d + 1) Q ∧ outcome.2.queries = 0 ∧ outcome.2.work ≤ FABL.learningConsequencesRandomExampleWorkConstant (d + 1) Q * (n + 1) ^ FABL.learningConsequencesRandomExampleWorkExponent (d + 1) Q
theorem FABL.monotoneDecisionTreeSizeRandomExampleProgram_cost_le_fixed_power {n : ℕ} (target : FABL.BooleanFunction n) (d Q : ℕ) (ε : ↑FABL.PositiveLearningParameter) (hn : 1 ≤ n) (hprecision : 1 / (↑Q + 1) ≤ ↑ε) (outcome : FABL.SparseFourierHypothesis n × FABL.LearningCost) (houtcome : outcome ∈ (FABL.LearningProgram.runWithCost target (FABL.monotoneDecisionTreeSizeRandomExampleProgram n d ε)).support) : outcome.2.randomExamples ≤ FABL.learningConsequencesRandomExampleConstant (d + 1) Q * (n + 1) ^ FABL.learningConsequencesRandomExampleExponent (d + 1) Q ∧ outcome.2.queries = 0 ∧ outcome.2.work ≤ FABL.learningConsequencesRandomExampleWorkConstant (d + 1) Q * (n + 1) ^ FABL.learningConsequencesRandomExampleWorkExponent (d + 1) Q
Exercise 9.21(c)'s final pathwise fixed-power random-example/work certificate.
-
FABL.rpow_sq_eq_sq_rpow[complete] -
FABL.noiseRpow_pow_sq[complete] -
FABL.weighted_geometric_sum_le[complete] -
FABL.noiseOperator_two_interpolation[complete] -
FABL.noiseOperator_q_interpolation[complete]
Exercise 9.22. If q\ge2, 0\le\lambda\le1, and
\rho^\lambda\le1/\sqrt{q-1},
prove the interpolation estimate
\|T_\rho f\|_q
\le\|T_\rho f\|_2^{1-\lambda}\|f\|_2^\lambda.
Lean code for Lemma9.7.23●5 theorems
Associated Lean declarations
-
FABL.rpow_sq_eq_sq_rpow[complete]
-
FABL.noiseRpow_pow_sq[complete]
-
FABL.weighted_geometric_sum_le[complete]
-
FABL.noiseOperator_two_interpolation[complete]
-
FABL.noiseOperator_q_interpolation[complete]
-
FABL.rpow_sq_eq_sq_rpow[complete] -
FABL.noiseRpow_pow_sq[complete] -
FABL.weighted_geometric_sum_le[complete] -
FABL.noiseOperator_two_interpolation[complete] -
FABL.noiseOperator_q_interpolation[complete]
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.rpow_sq_eq_sq_rpow (x t : ℝ) (hx : 0 ≤ x) : x.rpow t ^ 2 = (x ^ 2).rpow t
theorem FABL.rpow_sq_eq_sq_rpow (x t : ℝ) (hx : 0 ≤ x) : x.rpow t ^ 2 = (x ^ 2).rpow t
A nonnegative real power commutes with squaring.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.noiseRpow_pow_sq (ρ lam : ℝ) (hρ : 0 ≤ ρ) (k : ℕ) : (ρ.rpow (1 - lam) ^ k) ^ 2 = ((ρ ^ k) ^ 2).rpow (1 - lam)
theorem FABL.noiseRpow_pow_sq (ρ lam : ℝ) (hρ : 0 ≤ ρ) (k : ℕ) : (ρ.rpow (1 - lam) ^ k) ^ 2 = ((ρ ^ k) ^ 2).rpow (1 - lam)
The coefficient identity used when interpolating the `L²` noise multiplier.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.weighted_geometric_sum_le.{u_1} {ι : Type u_1} (s : Finset ι) (w a : ι → ℝ) (hw : ∀ (i : ι), 0 ≤ w i) (ha : ∀ (i : ι), 0 ≤ a i) (lam : ℝ) (hlam0 : 0 < lam) (hlam1 : lam < 1) : ∑ i ∈ s, w i * (a i).rpow (1 - lam) ≤ (∑ i ∈ s, w i).rpow lam * (∑ i ∈ s, w i * a i).rpow (1 - lam)
theorem FABL.weighted_geometric_sum_le.{u_1} {ι : Type u_1} (s : Finset ι) (w a : ι → ℝ) (hw : ∀ (i : ι), 0 ≤ w i) (ha : ∀ (i : ι), 0 ≤ a i) (lam : ℝ) (hlam0 : 0 < lam) (hlam1 : lam < 1) : ∑ i ∈ s, w i * (a i).rpow (1 - lam) ≤ (∑ i ∈ s, w i).rpow lam * (∑ i ∈ s, w i * a i).rpow (1 - lam)
Finite weighted Hölder in the geometric-interpolation form used in Exercise 9.22.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.noiseOperator_two_interpolation {n : ℕ} (ρ lam : ℝ) (hρ : ρ ∈ Set.Icc 0 1) (hlam : lam ∈ Set.Icc 0 1) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 2 ((FABL.noiseOperator (ρ.rpow (1 - lam))) f) ≤ (FABL.uniformLpNorm 2 ((FABL.noiseOperator ρ) f)).rpow (1 - lam) * (FABL.uniformLpNorm 2 f).rpow lam
theorem FABL.noiseOperator_two_interpolation {n : ℕ} (ρ lam : ℝ) (hρ : ρ ∈ Set.Icc 0 1) (hlam : lam ∈ Set.Icc 0 1) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 2 ((FABL.noiseOperator (ρ.rpow (1 - lam))) f) ≤ (FABL.uniformLpNorm 2 ((FABL.noiseOperator ρ) f)).rpow (1 - lam) * (FABL.uniformLpNorm 2 f).rpow lam
Fourier log-convexity of the `L²` norm along the noise semigroup.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.noiseOperator_q_interpolation {n : ℕ} (q ρ lam : ℝ) (hq : 2 ≤ q) (hρ : ρ ∈ Set.Icc 0 1) (hlam : lam ∈ Set.Icc 0 1) (hparameter : ρ.rpow lam ≤ 1 / √(q - 1)) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm q ((FABL.noiseOperator ρ) f) ≤ (FABL.uniformLpNorm 2 ((FABL.noiseOperator ρ) f)).rpow (1 - lam) * (FABL.uniformLpNorm 2 f).rpow lam
theorem FABL.noiseOperator_q_interpolation {n : ℕ} (q ρ lam : ℝ) (hq : 2 ≤ q) (hρ : ρ ∈ Set.Icc 0 1) (hlam : lam ∈ Set.Icc 0 1) (hparameter : ρ.rpow lam ≤ 1 / √(q - 1)) (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm q ((FABL.noiseOperator ρ) f) ≤ (FABL.uniformLpNorm 2 ((FABL.noiseOperator ρ) f)).rpow (1 - lam) * (FABL.uniformLpNorm 2 f).rpow lam
Exercise 9.22: interpolation between `T_ρ f` and `f`, followed by the sharp `(2,q)` theorem.
-
FABL.one_sub_le_inv_sqrt_one_add_two_mul[complete] -
FABL.abs_noiseOperator_le_one[complete] -
FABL.bounded_noise_qMoment_le[complete]
Exercise 9.23. If f takes values in [-1,1],
0\le\epsilon\le1, and q\ge2+2\epsilon, prove
\|T_{1-\epsilon}f\|_q^q
\le\|T_{1/\sqrt{1+2\epsilon}}f\|_q^q
\le(\|f\|_2^2)^{1+\epsilon}.
Lean code for Lemma9.7.24●3 theorems
Associated Lean declarations
-
FABL.one_sub_le_inv_sqrt_one_add_two_mul[complete]
-
FABL.abs_noiseOperator_le_one[complete]
-
FABL.bounded_noise_qMoment_le[complete]
-
FABL.one_sub_le_inv_sqrt_one_add_two_mul[complete] -
FABL.abs_noiseOperator_le_one[complete] -
FABL.bounded_noise_qMoment_le[complete]
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.one_sub_le_inv_sqrt_one_add_two_mul (ε : ℝ) (hε : ε ∈ Set.Icc 0 1) : 1 - ε ≤ 1 / √(1 + 2 * ε)
theorem FABL.one_sub_le_inv_sqrt_one_add_two_mul (ε : ℝ) (hε : ε ∈ Set.Icc 0 1) : 1 - ε ≤ 1 / √(1 + 2 * ε)
Numerical comparison used in Exercise 9.23.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.abs_noiseOperator_le_one {n : ℕ} (ρ : ℝ) (hρ : ρ ∈ Set.Icc 0 1) (f : FABL.SignCube n → ℝ) (hf : ∀ (x : FABL.SignCube n), |f x| ≤ 1) (x : FABL.SignCube n) : |(FABL.noiseOperator ρ) f x| ≤ 1
theorem FABL.abs_noiseOperator_le_one {n : ℕ} (ρ : ℝ) (hρ : ρ ∈ Set.Icc 0 1) (f : FABL.SignCube n → ℝ) (hf : ∀ (x : FABL.SignCube n), |f x| ≤ 1) (x : FABL.SignCube n) : |(FABL.noiseOperator ρ) f x| ≤ 1
Noise preserves a pointwise `[-1,1]` bound.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.bounded_noise_qMoment_le {n : ℕ} (f : FABL.SignCube n → ℝ) (hf : ∀ (x : FABL.SignCube n), |f x| ≤ 1) (ε q : ℝ) (hε : ε ∈ Set.Icc 0 1) (hq : 2 + 2 * ε ≤ q) : FABL.uniformLpNorm q ((FABL.noiseOperator (1 - ε)) f) ^ q ≤ FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(1 + 2 * ε))) f) ^ q ∧ FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(1 + 2 * ε))) f) ^ q ≤ (FABL.uniformLpNorm 2 f ^ 2) ^ (1 + ε)
theorem FABL.bounded_noise_qMoment_le {n : ℕ} (f : FABL.SignCube n → ℝ) (hf : ∀ (x : FABL.SignCube n), |f x| ≤ 1) (ε q : ℝ) (hε : ε ∈ Set.Icc 0 1) (hq : 2 + 2 * ε ≤ q) : FABL.uniformLpNorm q ((FABL.noiseOperator (1 - ε)) f) ^ q ≤ FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(1 + 2 * ε))) f) ^ q ∧ FABL.uniformLpNorm q ((FABL.noiseOperator (1 / √(1 + 2 * ε))) f) ^ q ≤ (FABL.uniformLpNorm 2 f ^ 2) ^ (1 + ε)
Exercise 9.23: the two-step `q`th-moment estimate for bounded functions.
-
FABL.positiveCorrelation[complete] -
FABL.correlationResidualVariance[complete] -
FABL.correlationResidualVariance_pos[complete] -
FABL.correlationResidualVariance_ne_zero[complete] -
FABL.correlatedGaussianDensity[complete] -
FABL.correlatedGaussianDensity_nonneg[complete] -
FABL.correlatedGaussianDensity_pos[complete] -
FABL.integral_Ioi_centered_mul_gaussianPDFReal[complete] -
FABL.correlatedGaussianDensity_formula[complete] -
FABL.correlatedGaussianDensity_comm[complete] -
FABL.integral_Ioi_second_centered_mul_correlatedGaussianDensity[complete] -
FABL.integral_Ioi_first_centered_mul_correlatedGaussianDensity[complete] -
FABL.gaussian_weighted_quadrant_integral_eq_variance_sq_mul_density[complete] -
FABL.variance_sq_mul_correlatedGaussianDensity_diagonal[complete] -
FABL.gaussian_weighted_quadrant_integral[complete] -
FABL.gaussianQuadrantAtThreshold[complete] -
FABL.gaussianQuadrantAtThreshold_eq_measure[complete] -
FABL.gaussianQuadrantAtThreshold_le_tail_rpow[complete] -
FABL.gaussianConditionalSlope[complete] -
FABL.gaussianConditionalSlope_pos[complete] -
FABL.sqrt_residual_mul_gaussianConditionalSlope[complete] -
FABL.gaussianQuadrantAtThreshold_ge_rectangle[complete] -
FABL.standardGaussian_measureReal_Ioo_eq_integral[complete] -
FABL.standardGaussianDensity_antitone_of_nonneg[complete] -
FABL.density_endpoint_div_le_standardGaussian_interval[complete] -
FABL.exp_neg_three_halves_mul_density_le_shifted_density[complete] -
FABL.exp_neg_three_halves_mul_density_div_le_standardGaussian_interval[complete] -
FABL.gaussianConditionalSlope_sq[complete] -
FABL.one_add_gaussianConditionalSlope_sq[complete] -
FABL.gaussianQuadrantAtThreshold_lower_mills[complete] -
FABL.standardGaussianDensity_mul_slope_density[complete] -
FABL.gaussianConditionalSlope_div_large_denominator_le[complete] -
FABL.gaussianQuadrantLowerConstant[complete] -
FABL.gaussianQuadrantLowerConstant_pos[complete] -
FABL.gaussianQuadrantAtThreshold_lower_exp_div_sq[complete] -
FABL.HasSoftPowerAtZero[complete] -
FABL.tendsto_log_standardGaussianUpperTail_div_sq[complete] -
FABL.tendsto_log_div_sq_atTop[complete] -
FABL.tendsto_const_div_sq_atTop[complete] -
FABL.log_gaussianQuadrantLowerScale[complete] -
FABL.tendsto_log_gaussianQuadrantLowerScale_div_tailLog[complete] -
FABL.tendsto_log_gaussianQuadrantAtThreshold_div_tailLog[complete] -
FABL.gaussianQuadrantProbability_hasSoftPower[complete] -
FABL.normalized_mills_power_eq_exp_div_sq[complete] -
FABL.gaussianQuadrantPolylogConstant[complete] -
FABL.gaussianQuadrantPolylogConstant_pos[complete] -
FABL.gaussianQuadrantAtThreshold_lower_tail_rpow_div_quantilePower[complete] -
FABL.eventually_gaussianQuadrantProbability_polylog_bounds[complete] -
FABL.gaussianBadTailAtThreshold[complete] -
FABL.tendsto_shift_div_correlation_atTop[complete] -
FABL.tendsto_shift_div_correlation_sq_div_sq[complete] -
FABL.tendsto_log_gaussianBadTail_div_sq[complete] -
FABL.tendsto_log_gaussianBadTail_div_tailLog[complete] -
FABL.gaussianBadTailProbability[complete] -
FABL.gaussianBadTailProbability_hasSoftPower[complete] -
FABL.mainPower_lt_badTailPower[complete] -
FABL.gaussianBadTailProbability_isLittleO_mainPower[complete]
Exercise 9.24. Fix 0<\rho<1. If \Lambda_\rho(\mu) is the
upper-right quadrant probability of two standard Gaussians with correlation
\rho and equal threshold chosen to give one-dimensional tail \mu, prove
\Lambda_\rho(\mu)
=\widetilde\Theta
\left(\mu^{2/(1+\rho)}\right)
\qquad(\mu\to0).
Establish the integration identity
\int_t^\infty\!\int_t^\infty
(z_2-\rho z_1)(z_1-\rho t)\phi_\rho(z_1,z_2)
\,dz_1dz_2
=\frac{(1-\rho^2)^{3/2}}{2\pi}
e^{-t^2/(1+\rho)},
\tag{9.17}
and prove that
\Pr[z_1>(t-1)/\rho]=\widetilde\Theta(\mu^{1/\rho^2}) is asymptotically
smaller than \mu^{2/(1+\rho)}.
Lean code for Lemma9.7.25●57 declarations
Associated Lean declarations
-
FABL.positiveCorrelation[complete]
-
FABL.correlationResidualVariance[complete]
-
FABL.correlationResidualVariance_pos[complete]
-
FABL.correlationResidualVariance_ne_zero[complete]
-
FABL.correlatedGaussianDensity[complete]
-
FABL.correlatedGaussianDensity_nonneg[complete]
-
FABL.correlatedGaussianDensity_pos[complete]
-
FABL.integral_Ioi_centered_mul_gaussianPDFReal[complete]
-
FABL.correlatedGaussianDensity_formula[complete]
-
FABL.correlatedGaussianDensity_comm[complete]
-
FABL.integral_Ioi_second_centered_mul_correlatedGaussianDensity[complete]
-
FABL.integral_Ioi_first_centered_mul_correlatedGaussianDensity[complete]
-
FABL.gaussian_weighted_quadrant_integral_eq_variance_sq_mul_density[complete]
-
FABL.variance_sq_mul_correlatedGaussianDensity_diagonal[complete]
-
FABL.gaussian_weighted_quadrant_integral[complete]
-
FABL.gaussianQuadrantAtThreshold[complete]
-
FABL.gaussianQuadrantAtThreshold_eq_measure[complete]
-
FABL.gaussianQuadrantAtThreshold_le_tail_rpow[complete]
-
FABL.gaussianConditionalSlope[complete]
-
FABL.gaussianConditionalSlope_pos[complete]
-
FABL.sqrt_residual_mul_gaussianConditionalSlope[complete]
-
FABL.gaussianQuadrantAtThreshold_ge_rectangle[complete]
-
FABL.standardGaussian_measureReal_Ioo_eq_integral[complete]
-
FABL.standardGaussianDensity_antitone_of_nonneg[complete]
-
FABL.density_endpoint_div_le_standardGaussian_interval[complete]
-
FABL.exp_neg_three_halves_mul_density_le_shifted_density[complete]
-
FABL.exp_neg_three_halves_mul_density_div_le_standardGaussian_interval[complete]
-
FABL.gaussianConditionalSlope_sq[complete]
-
FABL.one_add_gaussianConditionalSlope_sq[complete]
-
FABL.gaussianQuadrantAtThreshold_lower_mills[complete]
-
FABL.standardGaussianDensity_mul_slope_density[complete]
-
FABL.gaussianConditionalSlope_div_large_denominator_le[complete]
-
FABL.gaussianQuadrantLowerConstant[complete]
-
FABL.gaussianQuadrantLowerConstant_pos[complete]
-
FABL.gaussianQuadrantAtThreshold_lower_exp_div_sq[complete]
-
FABL.HasSoftPowerAtZero[complete]
-
FABL.tendsto_log_standardGaussianUpperTail_div_sq[complete]
-
FABL.tendsto_log_div_sq_atTop[complete]
-
FABL.tendsto_const_div_sq_atTop[complete]
-
FABL.log_gaussianQuadrantLowerScale[complete]
-
FABL.tendsto_log_gaussianQuadrantLowerScale_div_tailLog[complete]
-
FABL.tendsto_log_gaussianQuadrantAtThreshold_div_tailLog[complete]
-
FABL.gaussianQuadrantProbability_hasSoftPower[complete]
-
FABL.normalized_mills_power_eq_exp_div_sq[complete]
-
FABL.gaussianQuadrantPolylogConstant[complete]
-
FABL.gaussianQuadrantPolylogConstant_pos[complete]
-
FABL.gaussianQuadrantAtThreshold_lower_tail_rpow_div_quantilePower[complete]
-
FABL.eventually_gaussianQuadrantProbability_polylog_bounds[complete]
-
FABL.gaussianBadTailAtThreshold[complete]
-
FABL.tendsto_shift_div_correlation_atTop[complete]
-
FABL.tendsto_shift_div_correlation_sq_div_sq[complete]
-
FABL.tendsto_log_gaussianBadTail_div_sq[complete]
-
FABL.tendsto_log_gaussianBadTail_div_tailLog[complete]
-
FABL.gaussianBadTailProbability[complete]
-
FABL.gaussianBadTailProbability_hasSoftPower[complete]
-
FABL.mainPower_lt_badTailPower[complete]
-
FABL.gaussianBadTailProbability_isLittleO_mainPower[complete]
-
FABL.positiveCorrelation[complete] -
FABL.correlationResidualVariance[complete] -
FABL.correlationResidualVariance_pos[complete] -
FABL.correlationResidualVariance_ne_zero[complete] -
FABL.correlatedGaussianDensity[complete] -
FABL.correlatedGaussianDensity_nonneg[complete] -
FABL.correlatedGaussianDensity_pos[complete] -
FABL.integral_Ioi_centered_mul_gaussianPDFReal[complete] -
FABL.correlatedGaussianDensity_formula[complete] -
FABL.correlatedGaussianDensity_comm[complete] -
FABL.integral_Ioi_second_centered_mul_correlatedGaussianDensity[complete] -
FABL.integral_Ioi_first_centered_mul_correlatedGaussianDensity[complete] -
FABL.gaussian_weighted_quadrant_integral_eq_variance_sq_mul_density[complete] -
FABL.variance_sq_mul_correlatedGaussianDensity_diagonal[complete] -
FABL.gaussian_weighted_quadrant_integral[complete] -
FABL.gaussianQuadrantAtThreshold[complete] -
FABL.gaussianQuadrantAtThreshold_eq_measure[complete] -
FABL.gaussianQuadrantAtThreshold_le_tail_rpow[complete] -
FABL.gaussianConditionalSlope[complete] -
FABL.gaussianConditionalSlope_pos[complete] -
FABL.sqrt_residual_mul_gaussianConditionalSlope[complete] -
FABL.gaussianQuadrantAtThreshold_ge_rectangle[complete] -
FABL.standardGaussian_measureReal_Ioo_eq_integral[complete] -
FABL.standardGaussianDensity_antitone_of_nonneg[complete] -
FABL.density_endpoint_div_le_standardGaussian_interval[complete] -
FABL.exp_neg_three_halves_mul_density_le_shifted_density[complete] -
FABL.exp_neg_three_halves_mul_density_div_le_standardGaussian_interval[complete] -
FABL.gaussianConditionalSlope_sq[complete] -
FABL.one_add_gaussianConditionalSlope_sq[complete] -
FABL.gaussianQuadrantAtThreshold_lower_mills[complete] -
FABL.standardGaussianDensity_mul_slope_density[complete] -
FABL.gaussianConditionalSlope_div_large_denominator_le[complete] -
FABL.gaussianQuadrantLowerConstant[complete] -
FABL.gaussianQuadrantLowerConstant_pos[complete] -
FABL.gaussianQuadrantAtThreshold_lower_exp_div_sq[complete] -
FABL.HasSoftPowerAtZero[complete] -
FABL.tendsto_log_standardGaussianUpperTail_div_sq[complete] -
FABL.tendsto_log_div_sq_atTop[complete] -
FABL.tendsto_const_div_sq_atTop[complete] -
FABL.log_gaussianQuadrantLowerScale[complete] -
FABL.tendsto_log_gaussianQuadrantLowerScale_div_tailLog[complete] -
FABL.tendsto_log_gaussianQuadrantAtThreshold_div_tailLog[complete] -
FABL.gaussianQuadrantProbability_hasSoftPower[complete] -
FABL.normalized_mills_power_eq_exp_div_sq[complete] -
FABL.gaussianQuadrantPolylogConstant[complete] -
FABL.gaussianQuadrantPolylogConstant_pos[complete] -
FABL.gaussianQuadrantAtThreshold_lower_tail_rpow_div_quantilePower[complete] -
FABL.eventually_gaussianQuadrantProbability_polylog_bounds[complete] -
FABL.gaussianBadTailAtThreshold[complete] -
FABL.tendsto_shift_div_correlation_atTop[complete] -
FABL.tendsto_shift_div_correlation_sq_div_sq[complete] -
FABL.tendsto_log_gaussianBadTail_div_sq[complete] -
FABL.tendsto_log_gaussianBadTail_div_tailLog[complete] -
FABL.gaussianBadTailProbability[complete] -
FABL.gaussianBadTailProbability_hasSoftPower[complete] -
FABL.mainPower_lt_badTailPower[complete] -
FABL.gaussianBadTailProbability_isLittleO_mainPower[complete]
-
defdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
def FABL.positiveCorrelation (ρ : ↑(Set.Ioo 0 1)) : ↑(Set.Ioo (-1) 1)
def FABL.positiveCorrelation (ρ : ↑(Set.Ioo 0 1)) : ↑(Set.Ioo (-1) 1)
Regard a positive correlation as an element of the full open correlation interval.
-
defdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
def FABL.correlationResidualVariance (ρ : ↑(Set.Ioo 0 1)) : NNReal
def FABL.correlationResidualVariance (ρ : ↑(Set.Ioo 0 1)) : NNReal
Conditional variance `1-ρ²` of the second coordinate given the first.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.correlationResidualVariance_pos (ρ : ↑(Set.Ioo 0 1)) : 0 < ↑(FABL.correlationResidualVariance ρ)
theorem FABL.correlationResidualVariance_pos (ρ : ↑(Set.Ioo 0 1)) : 0 < ↑(FABL.correlationResidualVariance ρ)
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.correlationResidualVariance_ne_zero (ρ : ↑(Set.Ioo 0 1)) : FABL.correlationResidualVariance ρ ≠ 0
theorem FABL.correlationResidualVariance_ne_zero (ρ : ↑(Set.Ioo 0 1)) : FABL.correlationResidualVariance ρ ≠ 0
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.integral_Ioi_centered_mul_gaussianPDFReal (μ t : ℝ) {v : NNReal} (hv : 0 < ↑v) : ∫ (x : ℝ) in Set.Ioi t, (x - μ) * ProbabilityTheory.gaussianPDFReal μ v x = ↑v * ProbabilityTheory.gaussianPDFReal μ v t
theorem FABL.integral_Ioi_centered_mul_gaussianPDFReal (μ t : ℝ) {v : NNReal} (hv : 0 < ↑v) : ∫ (x : ℝ) in Set.Ioi t, (x - μ) * ProbabilityTheory.gaussianPDFReal μ v x = ↑v * ProbabilityTheory.gaussianPDFReal μ v t
First centered moment of a positive-variance Gaussian upper tail.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussian_weighted_quadrant_integral_eq_variance_sq_mul_density (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : ∫ (z₁ : ℝ) (z₂ : ℝ) in Set.Ioi t, (z₂ - ↑ρ * z₁) * (z₁ - ↑ρ * t) * FABL.correlatedGaussianDensity ρ z₁ z₂ = (1 - ↑ρ ^ 2) ^ 2 * FABL.correlatedGaussianDensity ρ t t
theorem FABL.gaussian_weighted_quadrant_integral_eq_variance_sq_mul_density (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : ∫ (z₁ : ℝ) (z₂ : ℝ) in Set.Ioi t, (z₂ - ↑ρ * z₁) * (z₁ - ↑ρ * t) * FABL.correlatedGaussianDensity ρ z₁ z₂ = (1 - ↑ρ ^ 2) ^ 2 * FABL.correlatedGaussianDensity ρ t t
The weighted double tail integral in equation (9.17), before evaluating the density at the corner.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussian_weighted_quadrant_integral (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : ∫ (z₁ : ℝ) (z₂ : ℝ) in Set.Ioi t, (z₂ - ↑ρ * z₁) * (z₁ - ↑ρ * t) * FABL.correlatedGaussianDensity ρ z₁ z₂ = √(1 - ↑ρ ^ 2) ^ 3 / (2 * Real.pi) * Real.exp (-t ^ 2 / (1 + ↑ρ))
theorem FABL.gaussian_weighted_quadrant_integral (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : ∫ (z₁ : ℝ) (z₂ : ℝ) in Set.Ioi t, (z₂ - ↑ρ * z₁) * (z₁ - ↑ρ * t) * FABL.correlatedGaussianDensity ρ z₁ z₂ = √(1 - ↑ρ ^ 2) ^ 3 / (2 * Real.pi) * Real.exp (-t ^ 2 / (1 + ↑ρ))
Exercise 9.24(b), equation (9.17).
-
defdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
def FABL.gaussianQuadrantAtThreshold (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : ℝ
def FABL.gaussianQuadrantAtThreshold (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : ℝ
Common-threshold bivariate Gaussian upper-tail probability.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianQuadrantAtThreshold_eq_measure (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : FABL.gaussianQuadrantAtThreshold ρ t = (↑(FABL.correlatedGaussianMeasure ↑ρ)).real (FABL.gaussianUpperRightQuadrant t)
theorem FABL.gaussianQuadrantAtThreshold_eq_measure (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : FABL.gaussianQuadrantAtThreshold ρ t = (↑(FABL.correlatedGaussianMeasure ↑ρ)).real (FABL.gaussianUpperRightQuadrant t)
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianQuadrantAtThreshold_le_tail_rpow (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : FABL.gaussianQuadrantAtThreshold ρ t ≤ FABL.standardGaussianUpperTail t ^ (2 / (1 + ↑ρ))
theorem FABL.gaussianQuadrantAtThreshold_le_tail_rpow (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : FABL.gaussianQuadrantAtThreshold ρ t ≤ FABL.standardGaussianUpperTail t ^ (2 / (1 + ↑ρ))
The Gaussian limit of Small-Set Expansion gives the sharp power upper bound.
-
defdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
def FABL.gaussianConditionalSlope (ρ : ↑(Set.Ioo 0 1)) : ℝ
def FABL.gaussianConditionalSlope (ρ : ↑(Set.Ioo 0 1)) : ℝ
Conditional threshold slope `(1-ρ)/sqrt(1-ρ²)`.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianConditionalSlope_pos (ρ : ↑(Set.Ioo 0 1)) : 0 < FABL.gaussianConditionalSlope ρ
theorem FABL.gaussianConditionalSlope_pos (ρ : ↑(Set.Ioo 0 1)) : 0 < FABL.gaussianConditionalSlope ρ
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.sqrt_residual_mul_gaussianConditionalSlope (ρ : ↑(Set.Ioo 0 1)) : √(1 - ↑ρ ^ 2) * FABL.gaussianConditionalSlope ρ = 1 - ↑ρ
theorem FABL.sqrt_residual_mul_gaussianConditionalSlope (ρ : ↑(Set.Ioo 0 1)) : √(1 - ↑ρ ^ 2) * FABL.gaussianConditionalSlope ρ = 1 - ↑ρ
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianQuadrantAtThreshold_ge_rectangle (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : (ProbabilityTheory.gaussianReal 0 1).real (Set.Ioo t (t + 1 / t)) * FABL.standardGaussianUpperTail (FABL.gaussianConditionalSlope ρ * t) ≤ FABL.gaussianQuadrantAtThreshold ρ t
theorem FABL.gaussianQuadrantAtThreshold_ge_rectangle (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : (ProbabilityTheory.gaussianReal 0 1).real (Set.Ioo t (t + 1 / t)) * FABL.standardGaussianUpperTail (FABL.gaussianConditionalSlope ρ * t) ≤ FABL.gaussianQuadrantAtThreshold ρ t
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.standardGaussian_measureReal_Ioo_eq_integral (a b : ℝ) : (ProbabilityTheory.gaussianReal 0 1).real (Set.Ioo a b) = ∫ (x : ℝ) in Set.Ioo a b, ProbabilityTheory.gaussianPDFReal 0 1 x
theorem FABL.standardGaussian_measureReal_Ioo_eq_integral (a b : ℝ) : (ProbabilityTheory.gaussianReal 0 1).real (Set.Ioo a b) = ∫ (x : ℝ) in Set.Ioo a b, ProbabilityTheory.gaussianPDFReal 0 1 x
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.standardGaussianDensity_antitone_of_nonneg {x y : ℝ} (hx : 0 ≤ x) (hxy : x ≤ y) : ProbabilityTheory.gaussianPDFReal 0 1 y ≤ ProbabilityTheory.gaussianPDFReal 0 1 x
theorem FABL.standardGaussianDensity_antitone_of_nonneg {x y : ℝ} (hx : 0 ≤ x) (hxy : x ≤ y) : ProbabilityTheory.gaussianPDFReal 0 1 y ≤ ProbabilityTheory.gaussianPDFReal 0 1 x
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.density_endpoint_div_le_standardGaussian_interval {t : ℝ} (ht : 0 < t) : ProbabilityTheory.gaussianPDFReal 0 1 (t + 1 / t) / t ≤ (ProbabilityTheory.gaussianReal 0 1).real (Set.Ioo t (t + 1 / t))
theorem FABL.density_endpoint_div_le_standardGaussian_interval {t : ℝ} (ht : 0 < t) : ProbabilityTheory.gaussianPDFReal 0 1 (t + 1 / t) / t ≤ (ProbabilityTheory.gaussianReal 0 1).real (Set.Ioo t (t + 1 / t))
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.exp_neg_three_halves_mul_density_le_shifted_density {t : ℝ} (ht : 1 ≤ t) : Real.exp (-3 / 2) * ProbabilityTheory.gaussianPDFReal 0 1 t ≤ ProbabilityTheory.gaussianPDFReal 0 1 (t + 1 / t)
theorem FABL.exp_neg_three_halves_mul_density_le_shifted_density {t : ℝ} (ht : 1 ≤ t) : Real.exp (-3 / 2) * ProbabilityTheory.gaussianPDFReal 0 1 t ≤ ProbabilityTheory.gaussianPDFReal 0 1 (t + 1 / t)
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.exp_neg_three_halves_mul_density_div_le_standardGaussian_interval {t : ℝ} (ht : 1 ≤ t) : Real.exp (-3 / 2) * ProbabilityTheory.gaussianPDFReal 0 1 t / t ≤ (ProbabilityTheory.gaussianReal 0 1).real (Set.Ioo t (t + 1 / t))
theorem FABL.exp_neg_three_halves_mul_density_div_le_standardGaussian_interval {t : ℝ} (ht : 1 ≤ t) : Real.exp (-3 / 2) * ProbabilityTheory.gaussianPDFReal 0 1 t / t ≤ (ProbabilityTheory.gaussianReal 0 1).real (Set.Ioo t (t + 1 / t))
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianConditionalSlope_sq (ρ : ↑(Set.Ioo 0 1)) : FABL.gaussianConditionalSlope ρ ^ 2 = (1 - ↑ρ) / (1 + ↑ρ)
theorem FABL.gaussianConditionalSlope_sq (ρ : ↑(Set.Ioo 0 1)) : FABL.gaussianConditionalSlope ρ ^ 2 = (1 - ↑ρ) / (1 + ↑ρ)
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.one_add_gaussianConditionalSlope_sq (ρ : ↑(Set.Ioo 0 1)) : 1 + FABL.gaussianConditionalSlope ρ ^ 2 = 2 / (1 + ↑ρ)
theorem FABL.one_add_gaussianConditionalSlope_sq (ρ : ↑(Set.Ioo 0 1)) : 1 + FABL.gaussianConditionalSlope ρ ^ 2 = 2 / (1 + ↑ρ)
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianQuadrantAtThreshold_lower_mills (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 1 ≤ t) : Real.exp (-3 / 2) * ProbabilityTheory.gaussianPDFReal 0 1 t / t * (FABL.gaussianConditionalSlope ρ * t / (1 + (FABL.gaussianConditionalSlope ρ * t) ^ 2) * ProbabilityTheory.gaussianPDFReal 0 1 (FABL.gaussianConditionalSlope ρ * t)) ≤ FABL.gaussianQuadrantAtThreshold ρ t
theorem FABL.gaussianQuadrantAtThreshold_lower_mills (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 1 ≤ t) : Real.exp (-3 / 2) * ProbabilityTheory.gaussianPDFReal 0 1 t / t * (FABL.gaussianConditionalSlope ρ * t / (1 + (FABL.gaussianConditionalSlope ρ * t) ^ 2) * ProbabilityTheory.gaussianPDFReal 0 1 (FABL.gaussianConditionalSlope ρ * t)) ≤ FABL.gaussianQuadrantAtThreshold ρ t
A fully explicit lower bound obtained from the source rectangle and both elementary Mills bounds.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.standardGaussianDensity_mul_slope_density (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : ProbabilityTheory.gaussianPDFReal 0 1 t * ProbabilityTheory.gaussianPDFReal 0 1 (FABL.gaussianConditionalSlope ρ * t) = (2 * Real.pi)⁻¹ * Real.exp (-t ^ 2 / (1 + ↑ρ))
theorem FABL.standardGaussianDensity_mul_slope_density (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : ProbabilityTheory.gaussianPDFReal 0 1 t * ProbabilityTheory.gaussianPDFReal 0 1 (FABL.gaussianConditionalSlope ρ * t) = (2 * Real.pi)⁻¹ * Real.exp (-t ^ 2 / (1 + ↑ρ))
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianConditionalSlope_div_large_denominator_le (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 1 ≤ t) : FABL.gaussianConditionalSlope ρ / ((1 + FABL.gaussianConditionalSlope ρ ^ 2) * t ^ 2) ≤ FABL.gaussianConditionalSlope ρ / (1 + FABL.gaussianConditionalSlope ρ ^ 2 * t ^ 2)
theorem FABL.gaussianConditionalSlope_div_large_denominator_le (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 1 ≤ t) : FABL.gaussianConditionalSlope ρ / ((1 + FABL.gaussianConditionalSlope ρ ^ 2) * t ^ 2) ≤ FABL.gaussianConditionalSlope ρ / (1 + FABL.gaussianConditionalSlope ρ ^ 2 * t ^ 2)
-
defdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
def FABL.gaussianQuadrantLowerConstant (ρ : ↑(Set.Ioo 0 1)) : ℝ
def FABL.gaussianQuadrantLowerConstant (ρ : ↑(Set.Ioo 0 1)) : ℝ
Positive constant in the explicit lower polylogarithmic-factor bound.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianQuadrantLowerConstant_pos (ρ : ↑(Set.Ioo 0 1)) : 0 < FABL.gaussianQuadrantLowerConstant ρ
theorem FABL.gaussianQuadrantLowerConstant_pos (ρ : ↑(Set.Ioo 0 1)) : 0 < FABL.gaussianQuadrantLowerConstant ρ
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianQuadrantAtThreshold_lower_exp_div_sq (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 1 ≤ t) : FABL.gaussianQuadrantLowerConstant ρ * Real.exp (-t ^ 2 / (1 + ↑ρ)) / t ^ 2 ≤ FABL.gaussianQuadrantAtThreshold ρ t
theorem FABL.gaussianQuadrantAtThreshold_lower_exp_div_sq (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 1 ≤ t) : FABL.gaussianQuadrantLowerConstant ρ * Real.exp (-t ^ 2 / (1 + ↑ρ)) / t ^ 2 ≤ FABL.gaussianQuadrantAtThreshold ρ t
Threshold-domain lower bound. The `t⁻²` loss becomes a power of `log (1/μ)` after substituting the Gaussian upper quantile.
-
defdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
def FABL.HasSoftPowerAtZero (F : ↑(Set.Ioo 0 1) → ℝ) (a : ℝ) : Prop
def FABL.HasSoftPowerAtZero (F : ↑(Set.Ioo 0 1) → ℝ) (a : ℝ) : Prop
A positive function has soft power-law exponent `a` at zero when its logarithm divided by the logarithm of the small parameter tends to `a`. This is the precise meaning of the book's `\widetilde Θ(μ^a)` notation.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.tendsto_log_standardGaussianUpperTail_div_sq : Filter.Tendsto (fun t => Real.log (FABL.standardGaussianUpperTail t) / t ^ 2) Filter.atTop (nhds (-1 / 2))
theorem FABL.tendsto_log_standardGaussianUpperTail_div_sq : Filter.Tendsto (fun t => Real.log (FABL.standardGaussianUpperTail t) / t ^ 2) Filter.atTop (nhds (-1 / 2))
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.tendsto_log_div_sq_atTop : Filter.Tendsto (fun t => Real.log t / t ^ 2) Filter.atTop (nhds 0)
theorem FABL.tendsto_log_div_sq_atTop : Filter.Tendsto (fun t => Real.log t / t ^ 2) Filter.atTop (nhds 0)
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.tendsto_const_div_sq_atTop (c : ℝ) : Filter.Tendsto (fun t => c / t ^ 2) Filter.atTop (nhds 0)
theorem FABL.tendsto_const_div_sq_atTop (c : ℝ) : Filter.Tendsto (fun t => c / t ^ 2) Filter.atTop (nhds 0)
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.log_gaussianQuadrantLowerScale (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 0 < t) : Real.log (FABL.gaussianQuadrantLowerConstant ρ * Real.exp (-t ^ 2 / (1 + ↑ρ)) / t ^ 2) = Real.log (FABL.gaussianQuadrantLowerConstant ρ) - t ^ 2 / (1 + ↑ρ) - 2 * Real.log t
theorem FABL.log_gaussianQuadrantLowerScale (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 0 < t) : Real.log (FABL.gaussianQuadrantLowerConstant ρ * Real.exp (-t ^ 2 / (1 + ↑ρ)) / t ^ 2) = Real.log (FABL.gaussianQuadrantLowerConstant ρ) - t ^ 2 / (1 + ↑ρ) - 2 * Real.log t
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.tendsto_log_gaussianQuadrantLowerScale_div_tailLog (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => Real.log (FABL.gaussianQuadrantLowerConstant ρ * Real.exp (-t ^ 2 / (1 + ↑ρ)) / t ^ 2) / Real.log (FABL.standardGaussianUpperTail t)) Filter.atTop (nhds (2 / (1 + ↑ρ)))
theorem FABL.tendsto_log_gaussianQuadrantLowerScale_div_tailLog (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => Real.log (FABL.gaussianQuadrantLowerConstant ρ * Real.exp (-t ^ 2 / (1 + ↑ρ)) / t ^ 2) / Real.log (FABL.standardGaussianUpperTail t)) Filter.atTop (nhds (2 / (1 + ↑ρ)))
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.tendsto_log_gaussianQuadrantAtThreshold_div_tailLog (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => Real.log (FABL.gaussianQuadrantAtThreshold ρ t) / Real.log (FABL.standardGaussianUpperTail t)) Filter.atTop (nhds (2 / (1 + ↑ρ)))
theorem FABL.tendsto_log_gaussianQuadrantAtThreshold_div_tailLog (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => Real.log (FABL.gaussianQuadrantAtThreshold ρ t) / Real.log (FABL.standardGaussianUpperTail t)) Filter.atTop (nhds (2 / (1 + ↑ρ)))
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianQuadrantProbability_hasSoftPower (ρ : ↑(Set.Ioo 0 1)) : FABL.HasSoftPowerAtZero (FABL.gaussianQuadrantProbability (FABL.positiveCorrelation ρ)) (2 / (1 + ↑ρ))
theorem FABL.gaussianQuadrantProbability_hasSoftPower (ρ : ↑(Set.Ioo 0 1)) : FABL.HasSoftPowerAtZero (FABL.gaussianQuadrantProbability (FABL.positiveCorrelation ρ)) (2 / (1 + ↑ρ))
Exercise 9.24's main soft-power conclusion: `Λρ(μ) = \widetilde Θ(μ^(2/(1+ρ)))` as `μ → 0⁺`.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.normalized_mills_power_eq_exp_div_sq (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 0 < t) : √(2 * Real.pi) ^ (2 / (1 + ↑ρ)) * (ProbabilityTheory.gaussianPDFReal 0 1 t / t) ^ (2 / (1 + ↑ρ)) / t ^ (2 - 2 / (1 + ↑ρ)) = Real.exp (-t ^ 2 / (1 + ↑ρ)) / t ^ 2
theorem FABL.normalized_mills_power_eq_exp_div_sq (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 0 < t) : √(2 * Real.pi) ^ (2 / (1 + ↑ρ)) * (ProbabilityTheory.gaussianPDFReal 0 1 t / t) ^ (2 / (1 + ↑ρ)) / t ^ (2 - 2 / (1 + ↑ρ)) = Real.exp (-t ^ 2 / (1 + ↑ρ)) / t ^ 2
Exact normalization turning the Mills upper scale into the exponential scale used in the lower bound.
-
defdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
def FABL.gaussianQuadrantPolylogConstant (ρ : ↑(Set.Ioo 0 1)) : ℝ
def FABL.gaussianQuadrantPolylogConstant (ρ : ↑(Set.Ioo 0 1)) : ℝ
Constant in the `μ`-domain polylogarithmic lower bound.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianQuadrantPolylogConstant_pos (ρ : ↑(Set.Ioo 0 1)) : 0 < FABL.gaussianQuadrantPolylogConstant ρ
theorem FABL.gaussianQuadrantPolylogConstant_pos (ρ : ↑(Set.Ioo 0 1)) : 0 < FABL.gaussianQuadrantPolylogConstant ρ
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianQuadrantAtThreshold_lower_tail_rpow_div_quantilePower (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 1 ≤ t) : FABL.gaussianQuadrantPolylogConstant ρ * FABL.standardGaussianUpperTail t ^ (2 / (1 + ↑ρ)) / t ^ (2 - 2 / (1 + ↑ρ)) ≤ FABL.gaussianQuadrantAtThreshold ρ t
theorem FABL.gaussianQuadrantAtThreshold_lower_tail_rpow_div_quantilePower (ρ : ↑(Set.Ioo 0 1)) {t : ℝ} (ht : 1 ≤ t) : FABL.gaussianQuadrantPolylogConstant ρ * FABL.standardGaussianUpperTail t ^ (2 / (1 + ↑ρ)) / t ^ (2 - 2 / (1 + ↑ρ)) ≤ FABL.gaussianQuadrantAtThreshold ρ t
Explicit lower polylog-factor bound in threshold coordinates.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.eventually_gaussianQuadrantProbability_polylog_bounds (ρ : ↑(Set.Ioo 0 1)) : ∀ᶠ (μ : ↑(Set.Ioo 0 1)) in Filter.atBot, FABL.gaussianQuadrantPolylogConstant ρ * ↑μ ^ (2 / (1 + ↑ρ)) / FABL.standardGaussianUpperQuantile μ ^ (2 - 2 / (1 + ↑ρ)) ≤ FABL.gaussianQuadrantProbability (FABL.positiveCorrelation ρ) μ ∧ FABL.gaussianQuadrantProbability (FABL.positiveCorrelation ρ) μ ≤ ↑μ ^ (2 / (1 + ↑ρ))
theorem FABL.eventually_gaussianQuadrantProbability_polylog_bounds (ρ : ↑(Set.Ioo 0 1)) : ∀ᶠ (μ : ↑(Set.Ioo 0 1)) in Filter.atBot, FABL.gaussianQuadrantPolylogConstant ρ * ↑μ ^ (2 / (1 + ↑ρ)) / FABL.standardGaussianUpperQuantile μ ^ (2 - 2 / (1 + ↑ρ)) ≤ FABL.gaussianQuadrantProbability (FABL.positiveCorrelation ρ) μ ∧ FABL.gaussianQuadrantProbability (FABL.positiveCorrelation ρ) μ ≤ ↑μ ^ (2 / (1 + ↑ρ))
Exercise 9.24's two-sided `μ`-scale bounds. The only loss from the sharp power is the explicit quantile power, hence a power of `log (1/μ)`.
-
defdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
def FABL.gaussianBadTailAtThreshold (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : ℝ
def FABL.gaussianBadTailAtThreshold (ρ : ↑(Set.Ioo 0 1)) (t : ℝ) : ℝ
The exceptional tail from Exercise 9.24(c), in threshold coordinates.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.tendsto_shift_div_correlation_atTop (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => (t - 1) / ↑ρ) Filter.atTop Filter.atTop
theorem FABL.tendsto_shift_div_correlation_atTop (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => (t - 1) / ↑ρ) Filter.atTop Filter.atTop
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.tendsto_shift_div_correlation_sq_div_sq (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => ((t - 1) / ↑ρ) ^ 2 / t ^ 2) Filter.atTop (nhds (1 / ↑ρ ^ 2))
theorem FABL.tendsto_shift_div_correlation_sq_div_sq (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => ((t - 1) / ↑ρ) ^ 2 / t ^ 2) Filter.atTop (nhds (1 / ↑ρ ^ 2))
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.tendsto_log_gaussianBadTail_div_sq (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => Real.log (FABL.gaussianBadTailAtThreshold ρ t) / t ^ 2) Filter.atTop (nhds (-(1 / (2 * ↑ρ ^ 2))))
theorem FABL.tendsto_log_gaussianBadTail_div_sq (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => Real.log (FABL.gaussianBadTailAtThreshold ρ t) / t ^ 2) Filter.atTop (nhds (-(1 / (2 * ↑ρ ^ 2))))
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.tendsto_log_gaussianBadTail_div_tailLog (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => Real.log (FABL.gaussianBadTailAtThreshold ρ t) / Real.log (FABL.standardGaussianUpperTail t)) Filter.atTop (nhds (1 / ↑ρ ^ 2))
theorem FABL.tendsto_log_gaussianBadTail_div_tailLog (ρ : ↑(Set.Ioo 0 1)) : Filter.Tendsto (fun t => Real.log (FABL.gaussianBadTailAtThreshold ρ t) / Real.log (FABL.standardGaussianUpperTail t)) Filter.atTop (nhds (1 / ↑ρ ^ 2))
-
defdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
def FABL.gaussianBadTailProbability (ρ μ : ↑(Set.Ioo 0 1)) : ℝ
def FABL.gaussianBadTailProbability (ρ μ : ↑(Set.Ioo 0 1)) : ℝ
Exceptional-tail probability as a function of the one-dimensional mass `μ`.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianBadTailProbability_hasSoftPower (ρ : ↑(Set.Ioo 0 1)) : FABL.HasSoftPowerAtZero (FABL.gaussianBadTailProbability ρ) (1 / ↑ρ ^ 2)
theorem FABL.gaussianBadTailProbability_hasSoftPower (ρ : ↑(Set.Ioo 0 1)) : FABL.HasSoftPowerAtZero (FABL.gaussianBadTailProbability ρ) (1 / ↑ρ ^ 2)
Exercise 9.24(c): the exceptional tail has soft exponent `1/ρ²`.
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.mainPower_lt_badTailPower (ρ : ↑(Set.Ioo 0 1)) : 2 / (1 + ↑ρ) < 1 / ↑ρ ^ 2
theorem FABL.mainPower_lt_badTailPower (ρ : ↑(Set.Ioo 0 1)) : 2 / (1 + ↑ρ) < 1 / ↑ρ ^ 2
-
theoremdefined in FABL/Chapter09/GaussianQuadrantAsymptotics.leancomplete
theorem FABL.gaussianBadTailProbability_isLittleO_mainPower (ρ : ↑(Set.Ioo 0 1)) : FABL.gaussianBadTailProbability ρ =o[Filter.atBot] fun μ => ↑μ ^ (2 / (1 + ↑ρ))
theorem FABL.gaussianBadTailProbability_isLittleO_mainPower (ρ : ↑(Set.Ioo 0 1)) : FABL.gaussianBadTailProbability ρ =o[Filter.atBot] fun μ => ↑μ ^ (2 / (1 + ↑ρ))
Exercise 9.24(c): the exceptional tail is little-o of the main `μ^(2/(1+ρ))` scale.
-
FABL.CoalitionCanAttain[complete] -
FABL.coalitionSuccessProbability[complete] -
FABL.coalitionalInfluenceToward[complete] -
FABL.coalitionalInfluence[complete] -
FABL.coalitionCanAttain_current[complete] -
FABL.uniformProbability_mono[complete] -
FABL.coalitionalInfluenceToward_nonneg[complete] -
FABL.coalitionalInfluence_mem_Icc[complete] -
FABL.coalitionalInfluence_eq_toward_add_toward[complete] -
FABL.coalitionCanAttain_one_iff_bribe_one[complete] -
FABL.coalitionCanAttain_neg_one_iff_bribe_neg_one[complete] -
FABL.coalitionalInfluenceToward_one_eq_mean_change[complete] -
FABL.coalitionalInfluenceToward_neg_one_eq_mean_change[complete] -
FABL.coalitionCanAttain_singleton_iff[complete] -
FABL.coalitionCanAttain_singleton_both_iff_isPivotal[complete] -
FABL.coalitionalInfluence_singleton[complete] -
FABL.coalitionalInfluenceToward_singleton[complete] -
FABL.exercise9_25_singleton_equalities[complete] -
FABL.coalitionalInfluence_parity_univ[complete] -
FABL.mean_toReal_mono[complete] -
FABL.mean_bribeFunction_mono_set_one[complete] -
FABL.mean_bribeFunction_mono_set_neg_one[complete] -
FABL.proposition9_27_fixed_coalition[complete] -
FABL.coalitionalInfluenceToward_le_complement_probability[complete] -
FABL.tribesBlockEmbedding[complete] -
FABL.tribesBlockCoordinates[complete] -
FABL.card_tribesBlockCoordinates[complete] -
FABL.mem_tribesBlockCoordinates[complete] -
FABL.bribeFunction_tribes_block_neg_one[complete] -
FABL.coalitionalInfluenceToward_tribes_block_neg_one[complete] -
FABL.criticalTribes_towardTrue_max_exact[complete] -
FABL.criticalTribes_towardTrue_excess_isBigO[complete] -
FABL.criticalTribes_towardTrue_omega_iff_deficit_omega[complete] -
FABL.uniformProbability_all_neg_one_on_finset[complete] -
FABL.tribesRestCoordinates[complete] -
FABL.mem_tribesBlockCoordinates_self[complete] -
FABL.card_tribesRestCoordinates[complete] -
FABL.tribesRestTrue_iff_all_neg_on_restCoordinates[complete] -
FABL.uniformProbability_tribesRestTrue[complete] -
FABL.bribeInput_flipCoordinate_of_not_mem[complete] -
FABL.isPivotal_bribeFunction_tribes_imp_restTrue[complete] -
FABL.booleanInfluence_bribeFunction_tribes_le[complete] -
FABL.two_mul_inv_two_pow_eq_inv_pred_pow[complete] -
FABL.mean_bribeFunction_tribes_one_sub_mean_le[complete] -
FABL.coalitionalInfluenceToward_tribes_one_le_card_mul_inv_pow[complete] -
FABL.coalitionalInfluenceToward_criticalTribes_one_le[complete] -
FABL.tendsto_tribesCriticalPowerRelativeError_zero[complete] -
FABL.eventually_inv_two_pow_le_two_mul_log_dimension_div_dimension[complete] -
FABL.eventually_coalitionalInfluenceToward_criticalTribes_one_le_log_bound[complete] -
FABL.coalitionalInfluence_criticalTribes_le_half_add_succ_card_mul_inv_pow[complete] -
FABL.criticalTribesCoalitionConstant[complete] -
FABL.criticalTribesCoalitionConstant_pos[complete] -
FABL.tendsto_log_tribesCriticalDimension_div_dimension_zero[complete] -
FABL.eventually_criticalTribes_coalitionalInfluence_le_fiftyOnePercent[complete] -
FABL.majorityCoalitionSplitEquiv[complete] -
FABL.majorityHeadEmbedding[complete] -
FABL.majorityHeadCoalition[complete] -
FABL.card_majorityHeadCoalition[complete] -
FABL.mem_majorityHeadCoalition_left[complete] -
FABL.not_mem_majorityHeadCoalition_right[complete] -
FABL.mem_majorityHeadCoalition_castAdd[complete] -
FABL.not_mem_majorityHeadCoalition_natAdd[complete] -
FABL.expect_majorityCoalitionSplit_tail[complete] -
FABL.majorityAfterHeadBribe[complete] -
FABL.bribeFunction_majority_head_apply[complete] -
FABL.mean_bribeFunction_majority_head[complete] -
FABL.thresholdSign_nat_add_sign_sum_eq_one_iff[complete] -
FABL.thresholdSign_sign_sum_sub_nat_eq_one_iff[complete] -
FABL.majorityPlusBribeThreshold[complete] -
FABL.majorityMinusBribeThreshold[complete] -
FABL.majorityAfterHeadBribe_one_indicator[complete] -
FABL.majorityAfterHeadBribe_neg_one_one_indicator[complete] -
FABL.positiveBias_bribeFunction_majority_head[complete] -
FABL.positiveBias_bribeFunction_majority_head_one[complete] -
FABL.positiveBias_bribeFunction_majority_head_neg_one[complete] -
FABL.positiveBias_majority_eq_hammingUpperTail[complete] -
FABL.coalitionalInfluenceToward_one_eq_positiveBias_change[complete] -
FABL.coalitionalInfluenceToward_neg_one_eq_positiveBias_change[complete] -
FABL.coalitionalInfluenceToward_majority_head_one[complete] -
FABL.coalitionalInfluenceToward_majority_head_neg_one[complete] -
FABL.abs_expect_hammingUpperTailIndicator_dimension_le[complete] -
FABL.majority_head_directed_influence_finite_error[complete] -
FABL.tendsto_expect_hammingUpperTailIndicator_of_tendsto[complete] -
FABL.majorityCoalitionGaussianLimit[complete] -
FABL.standardGaussianUpperTail_zero[complete] -
FABL.tendsto_majorityPlusBribeThreshold[complete] -
FABL.tendsto_majorityMinusBribeThreshold[complete] -
FABL.tendsto_majorityBaselineThreshold[complete] -
FABL.tendsto_majority_head_directed_influences[complete] -
FABL.tendsto_majority_head_total_coalitionalInfluence[complete] -
FABL.tendsto_majority_outside_ratio_of_total_ratio[complete] -
FABL.tendsto_majority_head_directed_influences_totalDimension[complete] -
FABL.tendsto_majority_head_total_coalitionalInfluence_totalDimension[complete] -
FABL.tendsto_majority_head_total_coalitionalInfluence_zero_of_subsqrt[complete] -
FABL.tendsto_expect_hammingUpperTailIndicator_of_tail_tendsto[complete] -
FABL.tendsto_majority_outside_ratio_atTop_of_total_ratio_atTop[complete] -
FABL.tendsto_majority_head_total_coalitionalInfluence_one_of_omega_sqrt[complete] -
FABL.coalitionTransportPerm[complete] -
FABL.mem_coalitionTransportPerm_iff[complete] -
FABL.bribeInput_permuteInput_coalitionTransport[complete] -
FABL.mean_bribeFunction_majority_eq_of_card[complete] -
FABL.coalitionalInfluenceToward_majority_eq_of_card[complete] -
FABL.coalitionalInfluence_majority_eq_of_card[complete] -
FABL.tendsto_majority_arbitraryCoalition_total[complete] -
FABL.tendsto_majority_arbitraryCoalition_directed[complete] -
FABL.tendsto_majority_arbitraryCoalition_zero_of_subsqrt[complete] -
FABL.tendsto_majority_arbitraryCoalition_one_of_omega_sqrt[complete] -
FABL.two_pow_sub_two_le_tribesCriticalSize[complete] -
FABL.width_le_clog_tribesCriticalDimension[complete] -
FABL.criticalTribes_towardTrue_max_clog_exact[complete]
Exercise 9.25. For J\subseteq[n] and
\bar J=[n]\setminus J, define coalitional influence by
\widetilde{\operatorname{Inf}}_J[f]
=\Pr_{z\sim\{-1,1\}^{\bar J}}
[f_{\bar J\mid z}\text{ is nonconstant}],
and influence toward b\in\{-1,1\} by
\widetilde{\operatorname{Inf}}_J^b[f]
=\Pr[f_{\bar J\mid z}\text{ can attain }b]-\Pr[f=b].
Prove:
-
for a singleton
J=\{i\},\operatorname{Inf}_i[f] =\widetilde{\operatorname{Inf}}_J[f] =2\widetilde{\operatorname{Inf}}_J^{+}[f] =2\widetilde{\operatorname{Inf}}_J^{-}[f]; -
0\le\widetilde{\operatorname{Inf}}_J[f]\le1and\widetilde{\operatorname{Inf}}_J =\widetilde{\operatorname{Inf}}_J^+ +\widetilde{\operatorname{Inf}}_J^-; -
for monotone
f, the toward-binfluence is the bias change obtained by fixing all coordinates ofJtob; -
every nonempty coalition has influence
1on parity; -
if
|J|=t\sqrt n, Majority has toward influences\Phi(t)-1/2\pm o(1)and total influence2\Phi(t)-1\pm o(1); -
for critical Tribes, write
\operatorname{deficit}_w=(1-2^{-w})^{s_w}-1/2. Forw\ge4the book's coalition cap is represented exactly by|J|\le\operatorname{clog}_2(n_w); its toward-True maximum is1/2+\operatorname{deficit}_w, attained by one complete width-wtribe. Moreover0\le\operatorname{deficit}_w=O(\log n_w/n_w); the printed matching\Thetalower bound would require the additional condition\log n_w/n_w=O(\operatorname{deficit}_w), which Proposition 4.12 does not supply for the critical integer rounding. The toward-False influence is at most2|J|\log n_w/n_weventually, and the explicit universal constantc=1/800ensures|J|\le cn_w/\log n_wgives total coalitional influence at most.51.
Lean code for Definition9.7.26●110 declarations
Associated Lean declarations
-
FABL.CoalitionCanAttain[complete]
-
FABL.coalitionSuccessProbability[complete]
-
FABL.coalitionalInfluenceToward[complete]
-
FABL.coalitionalInfluence[complete]
-
FABL.coalitionCanAttain_current[complete]
-
FABL.uniformProbability_mono[complete]
-
FABL.coalitionalInfluenceToward_nonneg[complete]
-
FABL.coalitionalInfluence_mem_Icc[complete]
-
FABL.coalitionalInfluence_eq_toward_add_toward[complete]
-
FABL.coalitionCanAttain_one_iff_bribe_one[complete]
-
FABL.coalitionCanAttain_neg_one_iff_bribe_neg_one[complete]
-
FABL.coalitionalInfluenceToward_one_eq_mean_change[complete]
-
FABL.coalitionalInfluenceToward_neg_one_eq_mean_change[complete]
-
FABL.coalitionCanAttain_singleton_iff[complete]
-
FABL.coalitionCanAttain_singleton_both_iff_isPivotal[complete]
-
FABL.coalitionalInfluence_singleton[complete]
-
FABL.coalitionalInfluenceToward_singleton[complete]
-
FABL.exercise9_25_singleton_equalities[complete]
-
FABL.coalitionalInfluence_parity_univ[complete]
-
FABL.mean_toReal_mono[complete]
-
FABL.mean_bribeFunction_mono_set_one[complete]
-
FABL.mean_bribeFunction_mono_set_neg_one[complete]
-
FABL.proposition9_27_fixed_coalition[complete]
-
FABL.coalitionalInfluenceToward_le_complement_probability[complete]
-
FABL.tribesBlockEmbedding[complete]
-
FABL.tribesBlockCoordinates[complete]
-
FABL.card_tribesBlockCoordinates[complete]
-
FABL.mem_tribesBlockCoordinates[complete]
-
FABL.bribeFunction_tribes_block_neg_one[complete]
-
FABL.coalitionalInfluenceToward_tribes_block_neg_one[complete]
-
FABL.criticalTribes_towardTrue_max_exact[complete]
-
FABL.criticalTribes_towardTrue_excess_isBigO[complete]
-
FABL.criticalTribes_towardTrue_omega_iff_deficit_omega[complete]
-
FABL.uniformProbability_all_neg_one_on_finset[complete]
-
FABL.tribesRestCoordinates[complete]
-
FABL.mem_tribesBlockCoordinates_self[complete]
-
FABL.card_tribesRestCoordinates[complete]
-
FABL.tribesRestTrue_iff_all_neg_on_restCoordinates[complete]
-
FABL.uniformProbability_tribesRestTrue[complete]
-
FABL.bribeInput_flipCoordinate_of_not_mem[complete]
-
FABL.isPivotal_bribeFunction_tribes_imp_restTrue[complete]
-
FABL.booleanInfluence_bribeFunction_tribes_le[complete]
-
FABL.two_mul_inv_two_pow_eq_inv_pred_pow[complete]
-
FABL.mean_bribeFunction_tribes_one_sub_mean_le[complete]
-
FABL.coalitionalInfluenceToward_tribes_one_le_card_mul_inv_pow[complete]
-
FABL.coalitionalInfluenceToward_criticalTribes_one_le[complete]
-
FABL.tendsto_tribesCriticalPowerRelativeError_zero[complete]
-
FABL.eventually_inv_two_pow_le_two_mul_log_dimension_div_dimension[complete]
-
FABL.eventually_coalitionalInfluenceToward_criticalTribes_one_le_log_bound[complete]
-
FABL.coalitionalInfluence_criticalTribes_le_half_add_succ_card_mul_inv_pow[complete]
-
FABL.criticalTribesCoalitionConstant[complete]
-
FABL.criticalTribesCoalitionConstant_pos[complete]
-
FABL.tendsto_log_tribesCriticalDimension_div_dimension_zero[complete]
-
FABL.eventually_criticalTribes_coalitionalInfluence_le_fiftyOnePercent[complete]
-
FABL.majorityCoalitionSplitEquiv[complete]
-
FABL.majorityHeadEmbedding[complete]
-
FABL.majorityHeadCoalition[complete]
-
FABL.card_majorityHeadCoalition[complete]
-
FABL.mem_majorityHeadCoalition_left[complete]
-
FABL.not_mem_majorityHeadCoalition_right[complete]
-
FABL.mem_majorityHeadCoalition_castAdd[complete]
-
FABL.not_mem_majorityHeadCoalition_natAdd[complete]
-
FABL.expect_majorityCoalitionSplit_tail[complete]
-
FABL.majorityAfterHeadBribe[complete]
-
FABL.bribeFunction_majority_head_apply[complete]
-
FABL.mean_bribeFunction_majority_head[complete]
-
FABL.thresholdSign_nat_add_sign_sum_eq_one_iff[complete]
-
FABL.thresholdSign_sign_sum_sub_nat_eq_one_iff[complete]
-
FABL.majorityPlusBribeThreshold[complete]
-
FABL.majorityMinusBribeThreshold[complete]
-
FABL.majorityAfterHeadBribe_one_indicator[complete]
-
FABL.majorityAfterHeadBribe_neg_one_one_indicator[complete]
-
FABL.positiveBias_bribeFunction_majority_head[complete]
-
FABL.positiveBias_bribeFunction_majority_head_one[complete]
-
FABL.positiveBias_bribeFunction_majority_head_neg_one[complete]
-
FABL.positiveBias_majority_eq_hammingUpperTail[complete]
-
FABL.coalitionalInfluenceToward_one_eq_positiveBias_change[complete]
-
FABL.coalitionalInfluenceToward_neg_one_eq_positiveBias_change[complete]
-
FABL.coalitionalInfluenceToward_majority_head_one[complete]
-
FABL.coalitionalInfluenceToward_majority_head_neg_one[complete]
-
FABL.abs_expect_hammingUpperTailIndicator_dimension_le[complete]
-
FABL.majority_head_directed_influence_finite_error[complete]
-
FABL.tendsto_expect_hammingUpperTailIndicator_of_tendsto[complete]
-
FABL.majorityCoalitionGaussianLimit[complete]
-
FABL.standardGaussianUpperTail_zero[complete]
-
FABL.tendsto_majorityPlusBribeThreshold[complete]
-
FABL.tendsto_majorityMinusBribeThreshold[complete]
-
FABL.tendsto_majorityBaselineThreshold[complete]
-
FABL.tendsto_majority_head_directed_influences[complete]
-
FABL.tendsto_majority_head_total_coalitionalInfluence[complete]
-
FABL.tendsto_majority_outside_ratio_of_total_ratio[complete]
-
FABL.tendsto_majority_head_directed_influences_totalDimension[complete]
-
FABL.tendsto_majority_head_total_coalitionalInfluence_totalDimension[complete]
-
FABL.tendsto_majority_head_total_coalitionalInfluence_zero_of_subsqrt[complete]
-
FABL.tendsto_expect_hammingUpperTailIndicator_of_tail_tendsto[complete]
-
FABL.tendsto_majority_outside_ratio_atTop_of_total_ratio_atTop[complete]
-
FABL.tendsto_majority_head_total_coalitionalInfluence_one_of_omega_sqrt[complete]
-
FABL.coalitionTransportPerm[complete]
-
FABL.mem_coalitionTransportPerm_iff[complete]
-
FABL.bribeInput_permuteInput_coalitionTransport[complete]
-
FABL.mean_bribeFunction_majority_eq_of_card[complete]
-
FABL.coalitionalInfluenceToward_majority_eq_of_card[complete]
-
FABL.coalitionalInfluence_majority_eq_of_card[complete]
-
FABL.tendsto_majority_arbitraryCoalition_total[complete]
-
FABL.tendsto_majority_arbitraryCoalition_directed[complete]
-
FABL.tendsto_majority_arbitraryCoalition_zero_of_subsqrt[complete]
-
FABL.tendsto_majority_arbitraryCoalition_one_of_omega_sqrt[complete]
-
FABL.two_pow_sub_two_le_tribesCriticalSize[complete]
-
FABL.width_le_clog_tribesCriticalDimension[complete]
-
FABL.criticalTribes_towardTrue_max_clog_exact[complete]
-
FABL.CoalitionCanAttain[complete] -
FABL.coalitionSuccessProbability[complete] -
FABL.coalitionalInfluenceToward[complete] -
FABL.coalitionalInfluence[complete] -
FABL.coalitionCanAttain_current[complete] -
FABL.uniformProbability_mono[complete] -
FABL.coalitionalInfluenceToward_nonneg[complete] -
FABL.coalitionalInfluence_mem_Icc[complete] -
FABL.coalitionalInfluence_eq_toward_add_toward[complete] -
FABL.coalitionCanAttain_one_iff_bribe_one[complete] -
FABL.coalitionCanAttain_neg_one_iff_bribe_neg_one[complete] -
FABL.coalitionalInfluenceToward_one_eq_mean_change[complete] -
FABL.coalitionalInfluenceToward_neg_one_eq_mean_change[complete] -
FABL.coalitionCanAttain_singleton_iff[complete] -
FABL.coalitionCanAttain_singleton_both_iff_isPivotal[complete] -
FABL.coalitionalInfluence_singleton[complete] -
FABL.coalitionalInfluenceToward_singleton[complete] -
FABL.exercise9_25_singleton_equalities[complete] -
FABL.coalitionalInfluence_parity_univ[complete] -
FABL.mean_toReal_mono[complete] -
FABL.mean_bribeFunction_mono_set_one[complete] -
FABL.mean_bribeFunction_mono_set_neg_one[complete] -
FABL.proposition9_27_fixed_coalition[complete] -
FABL.coalitionalInfluenceToward_le_complement_probability[complete] -
FABL.tribesBlockEmbedding[complete] -
FABL.tribesBlockCoordinates[complete] -
FABL.card_tribesBlockCoordinates[complete] -
FABL.mem_tribesBlockCoordinates[complete] -
FABL.bribeFunction_tribes_block_neg_one[complete] -
FABL.coalitionalInfluenceToward_tribes_block_neg_one[complete] -
FABL.criticalTribes_towardTrue_max_exact[complete] -
FABL.criticalTribes_towardTrue_excess_isBigO[complete] -
FABL.criticalTribes_towardTrue_omega_iff_deficit_omega[complete] -
FABL.uniformProbability_all_neg_one_on_finset[complete] -
FABL.tribesRestCoordinates[complete] -
FABL.mem_tribesBlockCoordinates_self[complete] -
FABL.card_tribesRestCoordinates[complete] -
FABL.tribesRestTrue_iff_all_neg_on_restCoordinates[complete] -
FABL.uniformProbability_tribesRestTrue[complete] -
FABL.bribeInput_flipCoordinate_of_not_mem[complete] -
FABL.isPivotal_bribeFunction_tribes_imp_restTrue[complete] -
FABL.booleanInfluence_bribeFunction_tribes_le[complete] -
FABL.two_mul_inv_two_pow_eq_inv_pred_pow[complete] -
FABL.mean_bribeFunction_tribes_one_sub_mean_le[complete] -
FABL.coalitionalInfluenceToward_tribes_one_le_card_mul_inv_pow[complete] -
FABL.coalitionalInfluenceToward_criticalTribes_one_le[complete] -
FABL.tendsto_tribesCriticalPowerRelativeError_zero[complete] -
FABL.eventually_inv_two_pow_le_two_mul_log_dimension_div_dimension[complete] -
FABL.eventually_coalitionalInfluenceToward_criticalTribes_one_le_log_bound[complete] -
FABL.coalitionalInfluence_criticalTribes_le_half_add_succ_card_mul_inv_pow[complete] -
FABL.criticalTribesCoalitionConstant[complete] -
FABL.criticalTribesCoalitionConstant_pos[complete] -
FABL.tendsto_log_tribesCriticalDimension_div_dimension_zero[complete] -
FABL.eventually_criticalTribes_coalitionalInfluence_le_fiftyOnePercent[complete] -
FABL.majorityCoalitionSplitEquiv[complete] -
FABL.majorityHeadEmbedding[complete] -
FABL.majorityHeadCoalition[complete] -
FABL.card_majorityHeadCoalition[complete] -
FABL.mem_majorityHeadCoalition_left[complete] -
FABL.not_mem_majorityHeadCoalition_right[complete] -
FABL.mem_majorityHeadCoalition_castAdd[complete] -
FABL.not_mem_majorityHeadCoalition_natAdd[complete] -
FABL.expect_majorityCoalitionSplit_tail[complete] -
FABL.majorityAfterHeadBribe[complete] -
FABL.bribeFunction_majority_head_apply[complete] -
FABL.mean_bribeFunction_majority_head[complete] -
FABL.thresholdSign_nat_add_sign_sum_eq_one_iff[complete] -
FABL.thresholdSign_sign_sum_sub_nat_eq_one_iff[complete] -
FABL.majorityPlusBribeThreshold[complete] -
FABL.majorityMinusBribeThreshold[complete] -
FABL.majorityAfterHeadBribe_one_indicator[complete] -
FABL.majorityAfterHeadBribe_neg_one_one_indicator[complete] -
FABL.positiveBias_bribeFunction_majority_head[complete] -
FABL.positiveBias_bribeFunction_majority_head_one[complete] -
FABL.positiveBias_bribeFunction_majority_head_neg_one[complete] -
FABL.positiveBias_majority_eq_hammingUpperTail[complete] -
FABL.coalitionalInfluenceToward_one_eq_positiveBias_change[complete] -
FABL.coalitionalInfluenceToward_neg_one_eq_positiveBias_change[complete] -
FABL.coalitionalInfluenceToward_majority_head_one[complete] -
FABL.coalitionalInfluenceToward_majority_head_neg_one[complete] -
FABL.abs_expect_hammingUpperTailIndicator_dimension_le[complete] -
FABL.majority_head_directed_influence_finite_error[complete] -
FABL.tendsto_expect_hammingUpperTailIndicator_of_tendsto[complete] -
FABL.majorityCoalitionGaussianLimit[complete] -
FABL.standardGaussianUpperTail_zero[complete] -
FABL.tendsto_majorityPlusBribeThreshold[complete] -
FABL.tendsto_majorityMinusBribeThreshold[complete] -
FABL.tendsto_majorityBaselineThreshold[complete] -
FABL.tendsto_majority_head_directed_influences[complete] -
FABL.tendsto_majority_head_total_coalitionalInfluence[complete] -
FABL.tendsto_majority_outside_ratio_of_total_ratio[complete] -
FABL.tendsto_majority_head_directed_influences_totalDimension[complete] -
FABL.tendsto_majority_head_total_coalitionalInfluence_totalDimension[complete] -
FABL.tendsto_majority_head_total_coalitionalInfluence_zero_of_subsqrt[complete] -
FABL.tendsto_expect_hammingUpperTailIndicator_of_tail_tendsto[complete] -
FABL.tendsto_majority_outside_ratio_atTop_of_total_ratio_atTop[complete] -
FABL.tendsto_majority_head_total_coalitionalInfluence_one_of_omega_sqrt[complete] -
FABL.coalitionTransportPerm[complete] -
FABL.mem_coalitionTransportPerm_iff[complete] -
FABL.bribeInput_permuteInput_coalitionTransport[complete] -
FABL.mean_bribeFunction_majority_eq_of_card[complete] -
FABL.coalitionalInfluenceToward_majority_eq_of_card[complete] -
FABL.coalitionalInfluence_majority_eq_of_card[complete] -
FABL.tendsto_majority_arbitraryCoalition_total[complete] -
FABL.tendsto_majority_arbitraryCoalition_directed[complete] -
FABL.tendsto_majority_arbitraryCoalition_zero_of_subsqrt[complete] -
FABL.tendsto_majority_arbitraryCoalition_one_of_omega_sqrt[complete] -
FABL.two_pow_sub_two_le_tribesCriticalSize[complete] -
FABL.width_le_clog_tribesCriticalDimension[complete] -
FABL.criticalTribes_towardTrue_max_clog_exact[complete]
-
defdefined in FABL/Chapter09/KKLBribery.leancomplete
def FABL.CoalitionCanAttain {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) (x : FABL.SignCube n) : Prop
def FABL.CoalitionCanAttain {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) (x : FABL.SignCube n) : Prop
With the coordinates outside `J` fixed as in `x`, the coalition can attain output `b`. The event ignores the sampled values on `J`, so uniform sampling on the full cube is the normalized duplicate of the book's sampling on the complement of `J`.
-
defdefined in FABL/Chapter09/KKLBribery.leancomplete
def FABL.coalitionSuccessProbability {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) : ℝ
def FABL.coalitionSuccessProbability {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) : ℝ
Probability that coalition `J` can force output `b`.
-
defdefined in FABL/Chapter09/KKLBribery.leancomplete
def FABL.coalitionalInfluenceToward {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) : ℝ
def FABL.coalitionalInfluenceToward {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) : ℝ
Exercise 9.25's influence toward `b`.
-
defdefined in FABL/Chapter09/KKLBribery.leancomplete
def FABL.coalitionalInfluence {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) : ℝ
def FABL.coalitionalInfluence {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) : ℝ
Exercise 9.25's total coalitional influence: probability that the restricted function on the coalition is nonconstant.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionCanAttain_current {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (x : FABL.SignCube n) : FABL.CoalitionCanAttain f J (f x) x
theorem FABL.coalitionCanAttain_current {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (x : FABL.SignCube n) : FABL.CoalitionCanAttain f J (f x) x
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.uniformProbability_mono.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (P Q : Ω → Prop) [DecidablePred P] [DecidablePred Q] (hPQ : ∀ (x : Ω), P x → Q x) : FABL.uniformProbability P ≤ FABL.uniformProbability Q
theorem FABL.uniformProbability_mono.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (P Q : Ω → Prop) [DecidablePred P] [DecidablePred Q] (hPQ : ∀ (x : Ω), P x → Q x) : FABL.uniformProbability P ≤ FABL.uniformProbability Q
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluenceToward_nonneg {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) : 0 ≤ FABL.coalitionalInfluenceToward f J b
theorem FABL.coalitionalInfluenceToward_nonneg {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) : 0 ≤ FABL.coalitionalInfluenceToward f J b
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluence_mem_Icc {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) : FABL.coalitionalInfluence f J ∈ Set.Icc 0 1
theorem FABL.coalitionalInfluence_mem_Icc {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) : FABL.coalitionalInfluence f J ∈ Set.Icc 0 1
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluence_eq_toward_add_toward {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) : FABL.coalitionalInfluence f J = FABL.coalitionalInfluenceToward f J 1 + FABL.coalitionalInfluenceToward f J (-1)
theorem FABL.coalitionalInfluence_eq_toward_add_toward {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) : FABL.coalitionalInfluence f J = FABL.coalitionalInfluenceToward f J 1 + FABL.coalitionalInfluenceToward f J (-1)
Exercise 9.25(2): total influence is the sum of the two directed influences.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionCanAttain_one_iff_bribe_one {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) (x : FABL.SignCube n) : FABL.CoalitionCanAttain f J 1 x ↔ FABL.bribeFunction f J 1 x = 1
theorem FABL.coalitionCanAttain_one_iff_bribe_one {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) (x : FABL.SignCube n) : FABL.CoalitionCanAttain f J 1 x ↔ FABL.bribeFunction f J 1 x = 1
For monotone functions, the ability to force `+1` is detected by bribing all coalition coordinates to `+1`.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionCanAttain_neg_one_iff_bribe_neg_one {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) (x : FABL.SignCube n) : FABL.CoalitionCanAttain f J (-1) x ↔ FABL.bribeFunction f J (-1) x = -1
theorem FABL.coalitionCanAttain_neg_one_iff_bribe_neg_one {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) (x : FABL.SignCube n) : FABL.CoalitionCanAttain f J (-1) x ↔ FABL.bribeFunction f J (-1) x = -1
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluenceToward_one_eq_mean_change {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) : FABL.coalitionalInfluenceToward f J 1 = (FABL.mean (FABL.bribeFunction f J 1).toReal - FABL.mean f.toReal) / 2
theorem FABL.coalitionalInfluenceToward_one_eq_mean_change {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) : FABL.coalitionalInfluenceToward f J 1 = (FABL.mean (FABL.bribeFunction f J 1).toReal - FABL.mean f.toReal) / 2
Exercise 9.25(3), `+1` direction: directed coalitional influence is exactly the increase in positive bias, equivalently half the mean increase.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluenceToward_neg_one_eq_mean_change {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) : FABL.coalitionalInfluenceToward f J (-1) = (FABL.mean f.toReal - FABL.mean (FABL.bribeFunction f J (-1)).toReal) / 2
theorem FABL.coalitionalInfluenceToward_neg_one_eq_mean_change {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) : FABL.coalitionalInfluenceToward f J (-1) = (FABL.mean f.toReal - FABL.mean (FABL.bribeFunction f J (-1)).toReal) / 2
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionCanAttain_singleton_iff {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) (b : FABL.Sign) (x : FABL.SignCube n) : FABL.CoalitionCanAttain f {i} b x ↔ f (FABL.setCoordinate x i 1) = b ∨ f (FABL.setCoordinate x i (-1)) = b
theorem FABL.coalitionCanAttain_singleton_iff {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) (b : FABL.Sign) (x : FABL.SignCube n) : FABL.CoalitionCanAttain f {i} b x ↔ f (FABL.setCoordinate x i 1) = b ∨ f (FABL.setCoordinate x i (-1)) = b
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionCanAttain_singleton_both_iff_isPivotal {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) (x : FABL.SignCube n) : FABL.CoalitionCanAttain f {i} 1 x ∧ FABL.CoalitionCanAttain f {i} (-1) x ↔ FABL.IsPivotal f i x
theorem FABL.coalitionCanAttain_singleton_both_iff_isPivotal {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) (x : FABL.SignCube n) : FABL.CoalitionCanAttain f {i} 1 x ∧ FABL.CoalitionCanAttain f {i} (-1) x ↔ FABL.IsPivotal f i x
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluence_singleton {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.coalitionalInfluence f {i} = FABL.booleanInfluence f i
theorem FABL.coalitionalInfluence_singleton {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.coalitionalInfluence f {i} = FABL.booleanInfluence f i
Exercise 9.25(1), first equality.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluenceToward_singleton {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) (b : FABL.Sign) : FABL.coalitionalInfluenceToward f {i} b = FABL.booleanInfluence f i / 2
theorem FABL.coalitionalInfluenceToward_singleton {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) (b : FABL.Sign) : FABL.coalitionalInfluenceToward f {i} b = FABL.booleanInfluence f i / 2
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.exercise9_25_singleton_equalities {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.booleanInfluence f i = FABL.coalitionalInfluence f {i} ∧ FABL.coalitionalInfluence f {i} = 2 * FABL.coalitionalInfluenceToward f {i} 1 ∧ FABL.coalitionalInfluence f {i} = 2 * FABL.coalitionalInfluenceToward f {i} (-1)
theorem FABL.exercise9_25_singleton_equalities {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.booleanInfluence f i = FABL.coalitionalInfluence f {i} ∧ FABL.coalitionalInfluence f {i} = 2 * FABL.coalitionalInfluenceToward f {i} 1 ∧ FABL.coalitionalInfluence f {i} = 2 * FABL.coalitionalInfluenceToward f {i} (-1)
Exercise 9.25(1), all four quantities.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluence_parity_univ {n : ℕ} (J : Finset (Fin n)) (hJ : J.Nonempty) : FABL.coalitionalInfluence (FABL.parityFunction Finset.univ) J = 1
theorem FABL.coalitionalInfluence_parity_univ {n : ℕ} (J : Finset (Fin n)) (hJ : J.Nonempty) : FABL.coalitionalInfluence (FABL.parityFunction Finset.univ) J = 1
Exercise 9.25(4): every nonempty coalition has full influence on parity.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.mean_toReal_mono {n : ℕ} (f g : FABL.BooleanFunction n) (hfg : ∀ (x : FABL.SignCube n), f x ≤ g x) : FABL.mean f.toReal ≤ FABL.mean g.toReal
theorem FABL.mean_toReal_mono {n : ℕ} (f g : FABL.BooleanFunction n) (hfg : ∀ (x : FABL.SignCube n), f x ≤ g x) : FABL.mean f.toReal ≤ FABL.mean g.toReal
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.mean_bribeFunction_mono_set_one {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) {J K : Finset (Fin n)} (hJK : J ⊆ K) : FABL.mean (FABL.bribeFunction f J 1).toReal ≤ FABL.mean (FABL.bribeFunction f K 1).toReal
theorem FABL.mean_bribeFunction_mono_set_one {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) {J K : Finset (Fin n)} (hJK : J ⊆ K) : FABL.mean (FABL.bribeFunction f J 1).toReal ≤ FABL.mean (FABL.bribeFunction f K 1).toReal
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.mean_bribeFunction_mono_set_neg_one {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) {J K : Finset (Fin n)} (hJK : J ⊆ K) : FABL.mean (FABL.bribeFunction f K (-1)).toReal ≤ FABL.mean (FABL.bribeFunction f J (-1)).toReal
theorem FABL.mean_bribeFunction_mono_set_neg_one {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) {J K : Finset (Fin n)} (hJK : J ⊆ K) : FABL.mean (FABL.bribeFunction f K (-1)).toReal ≤ FABL.mean (FABL.bribeFunction f J (-1)).toReal
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.proposition9_27_fixed_coalition {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (hlower : -99 / 100 ≤ FABL.mean f.toReal) (hupper : FABL.mean f.toReal ≤ 99 / 100) : ∃ J, 99 / 100 ≤ FABL.coalitionalInfluence f J ∧ ↑J.card ≤ 20000 * ↑n / Real.log ↑n
theorem FABL.proposition9_27_fixed_coalition {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (hlower : -99 / 100 ≤ FABL.mean f.toReal) (hupper : FABL.mean f.toReal ≤ 99 / 100) : ∃ J, 99 / 100 ≤ FABL.coalitionalInfluence f J ∧ ↑J.card ≤ 20000 * ↑n / Real.log ↑n
The fixed `.99` instance of Exercise 9.27(b): taking the union of the positive and negative bribery sets gives coalitional influence at least `.99`.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.coalitionalInfluenceToward_le_complement_probability {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) : FABL.coalitionalInfluenceToward f J b ≤ 1 - FABL.uniformProbability fun x => f x = b
theorem FABL.coalitionalInfluenceToward_le_complement_probability {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) : FABL.coalitionalInfluenceToward f J b ≤ 1 - FABL.uniformProbability fun x => f x = b
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.tribesBlockEmbedding (w s : ℕ) (i : Fin s) : Fin w ↪ Fin (s * w)
def FABL.tribesBlockEmbedding (w s : ℕ) (i : Fin s) : Fin w ↪ Fin (s * w)
Embedding of one width-`w` tribe into the flat `s*w` coordinate set.
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.tribesBlockCoordinates (w s : ℕ) (i : Fin s) : Finset (Fin (s * w))
def FABL.tribesBlockCoordinates (w s : ℕ) (i : Fin s) : Finset (Fin (s * w))
The coordinate set of one tribe.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.card_tribesBlockCoordinates (w s : ℕ) (i : Fin s) : (FABL.tribesBlockCoordinates w s i).card = w
theorem FABL.card_tribesBlockCoordinates (w s : ℕ) (i : Fin s) : (FABL.tribesBlockCoordinates w s i).card = w
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.mem_tribesBlockCoordinates (w s : ℕ) (i : Fin s) (o : Fin w) : finProdFinEquiv (i, o) ∈ FABL.tribesBlockCoordinates w s i
theorem FABL.mem_tribesBlockCoordinates (w s : ℕ) (i : Fin s) (o : Fin w) : finProdFinEquiv (i, o) ∈ FABL.tribesBlockCoordinates w s i
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.bribeFunction_tribes_block_neg_one (w s : ℕ) (i : Fin s) : FABL.bribeFunction (FABL.tribes w s) (FABL.tribesBlockCoordinates w s i) (-1) = fun x => -1
theorem FABL.bribeFunction_tribes_block_neg_one (w s : ℕ) (i : Fin s) : FABL.bribeFunction (FABL.tribes w s) (FABL.tribesBlockCoordinates w s i) (-1) = fun x => -1
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.coalitionalInfluenceToward_tribes_block_neg_one (w s : ℕ) (i : Fin s) : FABL.coalitionalInfluenceToward (FABL.tribes w s) (FABL.tribesBlockCoordinates w s i) (-1) = (1 - (2 ^ w)⁻¹) ^ s
theorem FABL.coalitionalInfluenceToward_tribes_block_neg_one (w s : ℕ) (i : Fin s) : FABL.coalitionalInfluenceToward (FABL.tribes w s) (FABL.tribesBlockCoordinates w s i) (-1) = (1 - (2 ^ w)⁻¹) ^ s
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.criticalTribes_towardTrue_max_exact (w : ℕ) (hw : 0 < w) : (∀ (J : Finset (Fin (FABL.tribesCriticalDimension w))), J.card ≤ w → FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J (-1) ≤ 1 / 2 + FABL.tribesCriticalProbabilityDeficit w) ∧ ∃ J, J.card = w ∧ FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J (-1) = 1 / 2 + FABL.tribesCriticalProbabilityDeficit w
theorem FABL.criticalTribes_towardTrue_max_exact (w : ℕ) (hw : 0 < w) : (∀ (J : Finset (Fin (FABL.tribesCriticalDimension w))), J.card ≤ w → FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J (-1) ≤ 1 / 2 + FABL.tribesCriticalProbabilityDeficit w) ∧ ∃ J, J.card = w ∧ FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J (-1) = 1 / 2 + FABL.tribesCriticalProbabilityDeficit w
Exact maximal toward-True (`-1`) influence for critical Tribes among coalitions of at most one full tribe.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.criticalTribes_towardTrue_excess_isBigO : (fun w => 1 / 2 + FABL.tribesCriticalProbabilityDeficit w - 1 / 2) =O[Filter.atTop] fun w => Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)
theorem FABL.criticalTribes_towardTrue_excess_isBigO : (fun w => 1 / 2 + FABL.tribesCriticalProbabilityDeficit w - 1 / 2) =O[Filter.atTop] fun w => Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)
The exact critical-Tribes maximum is `1/2` plus a nonnegative `O(log n_w / n_w)` correction.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.criticalTribes_towardTrue_omega_iff_deficit_omega : ((fun w => Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)) =O[Filter.atTop] fun w => 1 / 2 + FABL.tribesCriticalProbabilityDeficit w - 1 / 2) ↔ (fun w => Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)) =O[Filter.atTop] FABL.tribesCriticalProbabilityDeficit
theorem FABL.criticalTribes_towardTrue_omega_iff_deficit_omega : ((fun w => Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)) =O[Filter.atTop] fun w => 1 / 2 + FABL.tribesCriticalProbabilityDeficit w - 1 / 2) ↔ (fun w => Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)) =O[Filter.atTop] FABL.tribesCriticalProbabilityDeficit
The missing reverse `Ω` claim in the printed `Θ` assertion is exactly an `Ω` lower bound on the rounding deficit. Proposition 4.12 supplies no such lower bound, so this equivalence records the precise extra arithmetic condition without making it an assumption.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.uniformProbability_all_neg_one_on_finset {n : ℕ} (J : Finset (Fin n)) : (FABL.uniformProbability fun x => ∀ i ∈ J, x i = -1) = (2 ^ J.card)⁻¹
theorem FABL.uniformProbability_all_neg_one_on_finset {n : ℕ} (J : Finset (Fin n)) : (FABL.uniformProbability fun x => ∀ i ∈ J, x i = -1) = (2 ^ J.card)⁻¹
Uniform probability that every coordinate in `J` is `-1`.
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.tribesRestCoordinates (w s : ℕ) (i : Fin (s * w)) : Finset (Fin (s * w))
def FABL.tribesRestCoordinates (w s : ℕ) (i : Fin (s * w)) : Finset (Fin (s * w))
All coordinates of `i`'s tribe except `i`.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.mem_tribesBlockCoordinates_self (w s : ℕ) (i : Fin (s * w)) : i ∈ FABL.tribesBlockCoordinates w s (FABL.tribesCoord w s i).1
theorem FABL.mem_tribesBlockCoordinates_self (w s : ℕ) (i : Fin (s * w)) : i ∈ FABL.tribesBlockCoordinates w s (FABL.tribesCoord w s i).1
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.card_tribesRestCoordinates (w s : ℕ) (i : Fin (s * w)) : (FABL.tribesRestCoordinates w s i).card = w - 1
theorem FABL.card_tribesRestCoordinates (w s : ℕ) (i : Fin (s * w)) : (FABL.tribesRestCoordinates w s i).card = w - 1
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tribesRestTrue_iff_all_neg_on_restCoordinates (w s : ℕ) (i : Fin (s * w)) (x : FABL.SignCube (s * w)) : FABL.TribesRestTrue w s i x ↔ ∀ j ∈ FABL.tribesRestCoordinates w s i, x j = -1
theorem FABL.tribesRestTrue_iff_all_neg_on_restCoordinates (w s : ℕ) (i : Fin (s * w)) (x : FABL.SignCube (s * w)) : FABL.TribesRestTrue w s i x ↔ ∀ j ∈ FABL.tribesRestCoordinates w s i, x j = -1
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.uniformProbability_tribesRestTrue (w s : ℕ) (i : Fin (s * w)) : FABL.uniformProbability (FABL.TribesRestTrue w s i) = (2 ^ (w - 1))⁻¹
theorem FABL.uniformProbability_tribesRestTrue (w s : ℕ) (i : Fin (s * w)) : FABL.uniformProbability (FABL.TribesRestTrue w s i) = (2 ^ (w - 1))⁻¹
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.bribeInput_flipCoordinate_of_not_mem {n : ℕ} (J : Finset (Fin n)) (i : Fin n) (b : FABL.Sign) (hi : i ∉ J) (x : FABL.SignCube n) : FABL.bribeInput J b (FABL.flipCoordinate x i) = FABL.flipCoordinate (FABL.bribeInput J b x) i
theorem FABL.bribeInput_flipCoordinate_of_not_mem {n : ℕ} (J : Finset (Fin n)) (i : Fin n) (b : FABL.Sign) (hi : i ∉ J) (x : FABL.SignCube n) : FABL.bribeInput J b (FABL.flipCoordinate x i) = FABL.flipCoordinate (FABL.bribeInput J b x) i
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.isPivotal_bribeFunction_tribes_imp_restTrue (w s : ℕ) (J : Finset (Fin (s * w))) (i : Fin (s * w)) (hi : i ∉ J) (x : FABL.SignCube (s * w)) : FABL.IsPivotal (FABL.bribeFunction (FABL.tribes w s) J 1) i x → FABL.TribesRestTrue w s i x
theorem FABL.isPivotal_bribeFunction_tribes_imp_restTrue (w s : ℕ) (J : Finset (Fin (s * w))) (i : Fin (s * w)) (hi : i ∉ J) (x : FABL.SignCube (s * w)) : FABL.IsPivotal (FABL.bribeFunction (FABL.tribes w s) J 1) i x → FABL.TribesRestTrue w s i x
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.booleanInfluence_bribeFunction_tribes_le (w s : ℕ) (J : Finset (Fin (s * w))) (i : Fin (s * w)) : FABL.booleanInfluence (FABL.bribeFunction (FABL.tribes w s) J 1) i ≤ (2 ^ (w - 1))⁻¹
theorem FABL.booleanInfluence_bribeFunction_tribes_le (w s : ℕ) (J : Finset (Fin (s * w))) (i : Fin (s * w)) : FABL.booleanInfluence (FABL.bribeFunction (FABL.tribes w s) J 1) i ≤ (2 ^ (w - 1))⁻¹
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.two_mul_inv_two_pow_eq_inv_pred_pow {w : ℕ} (hw : 0 < w) : 2 * (2 ^ w)⁻¹ = (2 ^ (w - 1))⁻¹
theorem FABL.two_mul_inv_two_pow_eq_inv_pred_pow {w : ℕ} (hw : 0 < w) : 2 * (2 ^ w)⁻¹ = (2 ^ (w - 1))⁻¹
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.mean_bribeFunction_tribes_one_sub_mean_le (w s : ℕ) (hw : 0 < w) (J : Finset (Fin (s * w))) : FABL.mean (FABL.bribeFunction (FABL.tribes w s) J 1).toReal - FABL.mean (FABL.tribes w s).toReal ≤ 2 * ↑J.card * (2 ^ w)⁻¹
theorem FABL.mean_bribeFunction_tribes_one_sub_mean_le (w s : ℕ) (hw : 0 < w) (J : Finset (Fin (s * w))) : FABL.mean (FABL.bribeFunction (FABL.tribes w s) J 1).toReal - FABL.mean (FABL.tribes w s).toReal ≤ 2 * ↑J.card * (2 ^ w)⁻¹
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.coalitionalInfluenceToward_tribes_one_le_card_mul_inv_pow (w s : ℕ) (hw : 0 < w) (J : Finset (Fin (s * w))) : FABL.coalitionalInfluenceToward (FABL.tribes w s) J 1 ≤ ↑J.card * (2 ^ w)⁻¹
theorem FABL.coalitionalInfluenceToward_tribes_one_le_card_mul_inv_pow (w s : ℕ) (hw : 0 < w) (J : Finset (Fin (s * w))) : FABL.coalitionalInfluenceToward (FABL.tribes w s) J 1 ≤ ↑J.card * (2 ^ w)⁻¹
Exercise 9.25(6), toward-False (`+1`) bound for every finite coalition.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.coalitionalInfluenceToward_criticalTribes_one_le (w k : ℕ) (hw : 0 < w) (J : Finset (Fin (FABL.tribesCriticalDimension w))) (hJ : J.card ≤ k) : FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J 1 ≤ ↑k * (2 ^ w)⁻¹
theorem FABL.coalitionalInfluenceToward_criticalTribes_one_le (w k : ℕ) (hw : 0 < w) (J : Finset (Fin (FABL.tribesCriticalDimension w))) (hJ : J.card ≤ k) : FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J 1 ≤ ↑k * (2 ^ w)⁻¹
Book-facing `|J|≤k` specialization of the toward-False bound.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_tribesCriticalPowerRelativeError_zero : Filter.Tendsto FABL.tribesCriticalPowerRelativeError Filter.atTop (nhds 0)
theorem FABL.tendsto_tribesCriticalPowerRelativeError_zero : Filter.Tendsto FABL.tribesCriticalPowerRelativeError Filter.atTop (nhds 0)
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.eventually_inv_two_pow_le_two_mul_log_dimension_div_dimension : ∀ᶠ (w : ℕ) in Filter.atTop, (2 ^ w)⁻¹ ≤ 2 * Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)
theorem FABL.eventually_inv_two_pow_le_two_mul_log_dimension_div_dimension : ∀ᶠ (w : ℕ) in Filter.atTop, (2 ^ w)⁻¹ ≤ 2 * Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)
The critical inverse block size is eventually at most twice `log n_w / n_w`.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.eventually_coalitionalInfluenceToward_criticalTribes_one_le_log_bound : ∀ᶠ (w : ℕ) in Filter.atTop, ∀ (k : ℕ) (J : Finset (Fin (FABL.tribesCriticalDimension w))), J.card ≤ k → FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J 1 ≤ 2 * ↑k * Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)
theorem FABL.eventually_coalitionalInfluenceToward_criticalTribes_one_le_log_bound : ∀ᶠ (w : ℕ) in Filter.atTop, ∀ (k : ℕ) (J : Finset (Fin (FABL.tribesCriticalDimension w))), J.card ≤ k → FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J 1 ≤ 2 * ↑k * Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)
Exercise 9.25(6): the toward-False bound has the claimed `k * O(log n_w / n_w)` form.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.coalitionalInfluence_criticalTribes_le_half_add_succ_card_mul_inv_pow (w : ℕ) (hw : 0 < w) (J : Finset (Fin (FABL.tribesCriticalDimension w))) : FABL.coalitionalInfluence (FABL.tribesCritical w) J ≤ 1 / 2 + (↑J.card + 1) * (2 ^ w)⁻¹
theorem FABL.coalitionalInfluence_criticalTribes_le_half_add_succ_card_mul_inv_pow (w : ℕ) (hw : 0 < w) (J : Finset (Fin (FABL.tribesCriticalDimension w))) : FABL.coalitionalInfluence (FABL.tribesCritical w) J ≤ 1 / 2 + (↑J.card + 1) * (2 ^ w)⁻¹
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.criticalTribesCoalitionConstant : ℝ
def FABL.criticalTribesCoalitionConstant : ℝ
Explicit universal constant used in Exercise 9.25(6).
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.criticalTribesCoalitionConstant_pos : 0 < FABL.criticalTribesCoalitionConstant
theorem FABL.criticalTribesCoalitionConstant_pos : 0 < FABL.criticalTribesCoalitionConstant
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_log_tribesCriticalDimension_div_dimension_zero : Filter.Tendsto (fun w => Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)) Filter.atTop (nhds 0)
theorem FABL.tendsto_log_tribesCriticalDimension_div_dimension_zero : Filter.Tendsto (fun w => Real.log ↑(FABL.tribesCriticalDimension w) / ↑(FABL.tribesCriticalDimension w)) Filter.atTop (nhds 0)
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.eventually_criticalTribes_coalitionalInfluence_le_fiftyOnePercent : ∀ᶠ (w : ℕ) in Filter.atTop, ∀ (J : Finset (Fin (FABL.tribesCriticalDimension w))), ↑J.card ≤ FABL.criticalTribesCoalitionConstant * ↑(FABL.tribesCriticalDimension w) / Real.log ↑(FABL.tribesCriticalDimension w) → FABL.coalitionalInfluence (FABL.tribesCritical w) J ≤ 51 / 100
theorem FABL.eventually_criticalTribes_coalitionalInfluence_le_fiftyOnePercent : ∀ᶠ (w : ℕ) in Filter.atTop, ∀ (J : Finset (Fin (FABL.tribesCriticalDimension w))), ↑J.card ≤ FABL.criticalTribesCoalitionConstant * ↑(FABL.tribesCriticalDimension w) / Real.log ↑(FABL.tribesCriticalDimension w) → FABL.coalitionalInfluence (FABL.tribesCritical w) J ≤ 51 / 100
Exercise 9.25(6), final `.51` consequence with the explicit constant `1/800`.
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.majorityCoalitionSplitEquiv (k m : ℕ) : FABL.SignCube (k + m) ≃ FABL.SignCube k × FABL.SignCube m
def FABL.majorityCoalitionSplitEquiv (k m : ℕ) : FABL.SignCube (k + m) ≃ FABL.SignCube k × FABL.SignCube m
Canonical splitting of a `(k+m)`-cube into coalition and outside coordinates.
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.majorityHeadEmbedding (k m : ℕ) : Fin k ↪ Fin (k + m)
def FABL.majorityHeadEmbedding (k m : ℕ) : Fin k ↪ Fin (k + m)
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.majorityHeadCoalition (k m : ℕ) : Finset (Fin (k + m))
def FABL.majorityHeadCoalition (k m : ℕ) : Finset (Fin (k + m))
The first `k` coordinates, used as the canonical size-`k` coalition.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.card_majorityHeadCoalition (k m : ℕ) : (FABL.majorityHeadCoalition k m).card = k
theorem FABL.card_majorityHeadCoalition (k m : ℕ) : (FABL.majorityHeadCoalition k m).card = k
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.mem_majorityHeadCoalition_left (k m : ℕ) (i : Fin k) : finSumFinEquiv (Sum.inl i) ∈ FABL.majorityHeadCoalition k m
theorem FABL.mem_majorityHeadCoalition_left (k m : ℕ) (i : Fin k) : finSumFinEquiv (Sum.inl i) ∈ FABL.majorityHeadCoalition k m
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.not_mem_majorityHeadCoalition_right (k m : ℕ) (j : Fin m) : finSumFinEquiv (Sum.inr j) ∉ FABL.majorityHeadCoalition k m
theorem FABL.not_mem_majorityHeadCoalition_right (k m : ℕ) (j : Fin m) : finSumFinEquiv (Sum.inr j) ∉ FABL.majorityHeadCoalition k m
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.mem_majorityHeadCoalition_castAdd (k m : ℕ) (i : Fin k) : Fin.castAdd m i ∈ FABL.majorityHeadCoalition k m
theorem FABL.mem_majorityHeadCoalition_castAdd (k m : ℕ) (i : Fin k) : Fin.castAdd m i ∈ FABL.majorityHeadCoalition k m
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.not_mem_majorityHeadCoalition_natAdd (k m : ℕ) (j : Fin m) : Fin.natAdd k j ∉ FABL.majorityHeadCoalition k m
theorem FABL.not_mem_majorityHeadCoalition_natAdd (k m : ℕ) (j : Fin m) : Fin.natAdd k j ∉ FABL.majorityHeadCoalition k m
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.expect_majorityCoalitionSplit_tail (k m : ℕ) (g : FABL.SignCube m → ℝ) : (Finset.univ.expect fun x => g ((FABL.majorityCoalitionSplitEquiv k m) x).2) = Finset.univ.expect fun y => g y
theorem FABL.expect_majorityCoalitionSplit_tail (k m : ℕ) (g : FABL.SignCube m → ℝ) : (Finset.univ.expect fun x => g ((FABL.majorityCoalitionSplitEquiv k m) x).2) = Finset.univ.expect fun y => g y
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.majorityAfterHeadBribe (k m : ℕ) (b : FABL.Sign) : FABL.BooleanFunction m
def FABL.majorityAfterHeadBribe (k m : ℕ) (b : FABL.Sign) : FABL.BooleanFunction m
Majority after fixing the canonical coalition to `b`, expressed only through the outside coordinates.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.bribeFunction_majority_head_apply (k m : ℕ) (b : FABL.Sign) (x : FABL.SignCube (k + m)) : FABL.bribeFunction (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) b x = FABL.majorityAfterHeadBribe k m b ((FABL.majorityCoalitionSplitEquiv k m) x).2
theorem FABL.bribeFunction_majority_head_apply (k m : ℕ) (b : FABL.Sign) (x : FABL.SignCube (k + m)) : FABL.bribeFunction (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) b x = FABL.majorityAfterHeadBribe k m b ((FABL.majorityCoalitionSplitEquiv k m) x).2
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.mean_bribeFunction_majority_head (k m : ℕ) (b : FABL.Sign) : FABL.mean (FABL.bribeFunction (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) b).toReal = FABL.mean (FABL.majorityAfterHeadBribe k m b).toReal
theorem FABL.mean_bribeFunction_majority_head (k m : ℕ) (b : FABL.Sign) : FABL.mean (FABL.bribeFunction (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) b).toReal = FABL.mean (FABL.majorityAfterHeadBribe k m b).toReal
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.thresholdSign_nat_add_sign_sum_eq_one_iff (k m : ℕ) (y : FABL.SignCube m) : FABL.thresholdSign (↑k + ∑ j, FABL.signValue (y j)) = 1 ↔ -(↑k + 1) < ∑ j, ↑(y j)
theorem FABL.thresholdSign_nat_add_sign_sum_eq_one_iff (k m : ℕ) (y : FABL.SignCube m) : FABL.thresholdSign (↑k + ∑ j, FABL.signValue (y j)) = 1 ↔ -(↑k + 1) < ∑ j, ↑(y j)
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.thresholdSign_sign_sum_sub_nat_eq_one_iff (k m : ℕ) (y : FABL.SignCube m) : FABL.thresholdSign (-↑k + ∑ j, FABL.signValue (y j)) = 1 ↔ ↑k - 1 < ∑ j, ↑(y j)
theorem FABL.thresholdSign_sign_sum_sub_nat_eq_one_iff (k m : ℕ) (y : FABL.SignCube m) : FABL.thresholdSign (-↑k + ∑ j, FABL.signValue (y j)) = 1 ↔ ↑k - 1 < ∑ j, ↑(y j)
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.majorityPlusBribeThreshold (k m : ℕ) : ℝ
def FABL.majorityPlusBribeThreshold (k m : ℕ) : ℝ
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.majorityMinusBribeThreshold (k m : ℕ) : ℝ
def FABL.majorityMinusBribeThreshold (k m : ℕ) : ℝ
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.majorityAfterHeadBribe_one_indicator (k m : ℕ) (hm : 0 < m) (y : FABL.SignCube m) : (if FABL.majorityAfterHeadBribe k m 1 y = 1 then 1 else 0) = FABL.hammingUpperTailIndicator (FABL.majorityPlusBribeThreshold k m) m y
theorem FABL.majorityAfterHeadBribe_one_indicator (k m : ℕ) (hm : 0 < m) (y : FABL.SignCube m) : (if FABL.majorityAfterHeadBribe k m 1 y = 1 then 1 else 0) = FABL.hammingUpperTailIndicator (FABL.majorityPlusBribeThreshold k m) m y
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.majorityAfterHeadBribe_neg_one_one_indicator (k m : ℕ) (hm : 0 < m) (y : FABL.SignCube m) : (if FABL.majorityAfterHeadBribe k m (-1) y = 1 then 1 else 0) = FABL.hammingUpperTailIndicator (FABL.majorityMinusBribeThreshold k m) m y
theorem FABL.majorityAfterHeadBribe_neg_one_one_indicator (k m : ℕ) (hm : 0 < m) (y : FABL.SignCube m) : (if FABL.majorityAfterHeadBribe k m (-1) y = 1 then 1 else 0) = FABL.hammingUpperTailIndicator (FABL.majorityMinusBribeThreshold k m) m y
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.positiveBias_bribeFunction_majority_head (k m : ℕ) (b : FABL.Sign) : FABL.positiveBias (FABL.bribeFunction (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) b) = FABL.uniformProbability fun y => FABL.majorityAfterHeadBribe k m b y = 1
theorem FABL.positiveBias_bribeFunction_majority_head (k m : ℕ) (b : FABL.Sign) : FABL.positiveBias (FABL.bribeFunction (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) b) = FABL.uniformProbability fun y => FABL.majorityAfterHeadBribe k m b y = 1
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.positiveBias_bribeFunction_majority_head_one (k m : ℕ) (hm : 0 < m) : FABL.positiveBias (FABL.bribeFunction (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) 1) = Finset.univ.expect fun y => FABL.hammingUpperTailIndicator (FABL.majorityPlusBribeThreshold k m) m y
theorem FABL.positiveBias_bribeFunction_majority_head_one (k m : ℕ) (hm : 0 < m) : FABL.positiveBias (FABL.bribeFunction (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) 1) = Finset.univ.expect fun y => FABL.hammingUpperTailIndicator (FABL.majorityPlusBribeThreshold k m) m y
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.positiveBias_bribeFunction_majority_head_neg_one (k m : ℕ) (hm : 0 < m) : FABL.positiveBias (FABL.bribeFunction (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) (-1)) = Finset.univ.expect fun y => FABL.hammingUpperTailIndicator (FABL.majorityMinusBribeThreshold k m) m y
theorem FABL.positiveBias_bribeFunction_majority_head_neg_one (k m : ℕ) (hm : 0 < m) : FABL.positiveBias (FABL.bribeFunction (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) (-1)) = Finset.univ.expect fun y => FABL.hammingUpperTailIndicator (FABL.majorityMinusBribeThreshold k m) m y
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.positiveBias_majority_eq_hammingUpperTail (n : ℕ) (hn : 0 < n) : FABL.positiveBias (FABL.majority n) = Finset.univ.expect fun y => FABL.hammingUpperTailIndicator (-1 / √↑n) n y
theorem FABL.positiveBias_majority_eq_hammingUpperTail (n : ℕ) (hn : 0 < n) : FABL.positiveBias (FABL.majority n) = Finset.univ.expect fun y => FABL.hammingUpperTailIndicator (-1 / √↑n) n y
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.coalitionalInfluenceToward_one_eq_positiveBias_change {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) : FABL.coalitionalInfluenceToward f J 1 = FABL.positiveBias (FABL.bribeFunction f J 1) - FABL.positiveBias f
theorem FABL.coalitionalInfluenceToward_one_eq_positiveBias_change {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) : FABL.coalitionalInfluenceToward f J 1 = FABL.positiveBias (FABL.bribeFunction f J 1) - FABL.positiveBias f
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.coalitionalInfluenceToward_neg_one_eq_positiveBias_change {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) : FABL.coalitionalInfluenceToward f J (-1) = FABL.positiveBias f - FABL.positiveBias (FABL.bribeFunction f J (-1))
theorem FABL.coalitionalInfluenceToward_neg_one_eq_positiveBias_change {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (J : Finset (Fin n)) : FABL.coalitionalInfluenceToward f J (-1) = FABL.positiveBias f - FABL.positiveBias (FABL.bribeFunction f J (-1))
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.coalitionalInfluenceToward_majority_head_one (k m : ℕ) (hm : 0 < m) : FABL.coalitionalInfluenceToward (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) 1 = (Finset.univ.expect fun y => FABL.hammingUpperTailIndicator (FABL.majorityPlusBribeThreshold k m) m y) - Finset.univ.expect fun x => FABL.hammingUpperTailIndicator (-1 / √(↑k + ↑m)) (k + m) x
theorem FABL.coalitionalInfluenceToward_majority_head_one (k m : ℕ) (hm : 0 < m) : FABL.coalitionalInfluenceToward (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) 1 = (Finset.univ.expect fun y => FABL.hammingUpperTailIndicator (FABL.majorityPlusBribeThreshold k m) m y) - Finset.univ.expect fun x => FABL.hammingUpperTailIndicator (-1 / √(↑k + ↑m)) (k + m) x
Exact finite formula for the canonical Majority coalition's toward-`+1` influence.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.coalitionalInfluenceToward_majority_head_neg_one (k m : ℕ) (hm : 0 < m) : FABL.coalitionalInfluenceToward (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) (-1) = (Finset.univ.expect fun x => FABL.hammingUpperTailIndicator (-1 / √(↑k + ↑m)) (k + m) x) - Finset.univ.expect fun y => FABL.hammingUpperTailIndicator (FABL.majorityMinusBribeThreshold k m) m y
theorem FABL.coalitionalInfluenceToward_majority_head_neg_one (k m : ℕ) (hm : 0 < m) : FABL.coalitionalInfluenceToward (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) (-1) = (Finset.univ.expect fun x => FABL.hammingUpperTailIndicator (-1 / √(↑k + ↑m)) (k + m) x) - Finset.univ.expect fun y => FABL.hammingUpperTailIndicator (FABL.majorityMinusBribeThreshold k m) m y
Exact finite formula for the canonical Majority coalition's toward-`-1` influence.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.abs_expect_hammingUpperTailIndicator_dimension_le (u : ℝ) (n : ℕ) (hn : 0 < n) : |(Finset.univ.expect fun x => FABL.hammingUpperTailIndicator u n x) - FABL.standardGaussianUpperTail u| ≤ 2 * ProbabilityTheory.thirdMomentBerryEsseenConstant * (√↑n)⁻¹
theorem FABL.abs_expect_hammingUpperTailIndicator_dimension_le (u : ℝ) (n : ℕ) (hn : 0 < n) : |(Finset.univ.expect fun x => FABL.hammingUpperTailIndicator u n x) - FABL.standardGaussianUpperTail u| ≤ 2 * ProbabilityTheory.thirdMomentBerryEsseenConstant * (√↑n)⁻¹
Uniform Berry--Esseen estimate at an arbitrary threshold and every positive dimension.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.majority_head_directed_influence_finite_error (k m : ℕ) (hm : 0 < m) : |FABL.coalitionalInfluenceToward (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) 1 - (FABL.standardGaussianUpperTail (FABL.majorityPlusBribeThreshold k m) - FABL.standardGaussianUpperTail (-1 / √(↑k + ↑m)))| ≤ 2 * ProbabilityTheory.thirdMomentBerryEsseenConstant * ((√↑m)⁻¹ + (√(↑k + ↑m))⁻¹) ∧ |FABL.coalitionalInfluenceToward (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) (-1) - (FABL.standardGaussianUpperTail (-1 / √(↑k + ↑m)) - FABL.standardGaussianUpperTail (FABL.majorityMinusBribeThreshold k m))| ≤ 2 * ProbabilityTheory.thirdMomentBerryEsseenConstant * ((√↑m)⁻¹ + (√(↑k + ↑m))⁻¹)
theorem FABL.majority_head_directed_influence_finite_error (k m : ℕ) (hm : 0 < m) : |FABL.coalitionalInfluenceToward (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) 1 - (FABL.standardGaussianUpperTail (FABL.majorityPlusBribeThreshold k m) - FABL.standardGaussianUpperTail (-1 / √(↑k + ↑m)))| ≤ 2 * ProbabilityTheory.thirdMomentBerryEsseenConstant * ((√↑m)⁻¹ + (√(↑k + ↑m))⁻¹) ∧ |FABL.coalitionalInfluenceToward (FABL.majority (k + m)) (FABL.majorityHeadCoalition k m) (-1) - (FABL.standardGaussianUpperTail (-1 / √(↑k + ↑m)) - FABL.standardGaussianUpperTail (FABL.majorityMinusBribeThreshold k m))| ≤ 2 * ProbabilityTheory.thirdMomentBerryEsseenConstant * ((√↑m)⁻¹ + (√(↑k + ↑m))⁻¹)
Explicit finite Berry--Esseen errors for both directed Majority coalitional influences.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_expect_hammingUpperTailIndicator_of_tendsto (d : ℕ → ℕ) (u : ℕ → ℝ) (a : ℝ) (hd : Filter.Tendsto d Filter.atTop Filter.atTop) (hu : Filter.Tendsto u Filter.atTop (nhds a)) : Filter.Tendsto (fun q => Finset.univ.expect fun x => FABL.hammingUpperTailIndicator (u q) (d q) x) Filter.atTop (nhds (FABL.standardGaussianUpperTail a))
theorem FABL.tendsto_expect_hammingUpperTailIndicator_of_tendsto (d : ℕ → ℕ) (u : ℕ → ℝ) (a : ℝ) (hd : Filter.Tendsto d Filter.atTop Filter.atTop) (hu : Filter.Tendsto u Filter.atTop (nhds a)) : Filter.Tendsto (fun q => Finset.univ.expect fun x => FABL.hammingUpperTailIndicator (u q) (d q) x) Filter.atTop (nhds (FABL.standardGaussianUpperTail a))
Moving-threshold CLT with the explicit uniform Berry--Esseen error.
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.majorityCoalitionGaussianLimit (t : ℝ) : ℝ
def FABL.majorityCoalitionGaussianLimit (t : ℝ) : ℝ
The common Gaussian limit for each directed Majority coalitional influence.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.standardGaussianUpperTail_zero : FABL.standardGaussianUpperTail 0 = 1 / 2
theorem FABL.standardGaussianUpperTail_zero : FABL.standardGaussianUpperTail 0 = 1 / 2
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majorityPlusBribeThreshold (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkm : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.majorityPlusBribeThreshold (k q) (m q)) Filter.atTop (nhds (-t))
theorem FABL.tendsto_majorityPlusBribeThreshold (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkm : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.majorityPlusBribeThreshold (k q) (m q)) Filter.atTop (nhds (-t))
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majorityMinusBribeThreshold (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkm : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.majorityMinusBribeThreshold (k q) (m q)) Filter.atTop (nhds t)
theorem FABL.tendsto_majorityMinusBribeThreshold (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkm : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.majorityMinusBribeThreshold (k q) (m q)) Filter.atTop (nhds t)
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majorityBaselineThreshold (k m : ℕ → ℕ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) : Filter.Tendsto (fun q => -1 / √(↑(k q) + ↑(m q))) Filter.atTop (nhds 0)
theorem FABL.tendsto_majorityBaselineThreshold (k m : ℕ → ℕ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) : Filter.Tendsto (fun q => -1 / √(↑(k q) + ↑(m q))) Filter.atTop (nhds 0)
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_head_directed_influences (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkm : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q)) 1) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t)) ∧ Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q)) (-1)) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t))
theorem FABL.tendsto_majority_head_directed_influences (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkm : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q)) 1) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t)) ∧ Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q)) (-1)) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t))
Exercise 9.25(5): both directed influences of the canonical size-`k_q` Majority coalition converge to `Φ(t)-1/2`, represented as `1/2 - upperTail(t)`.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_head_total_coalitionalInfluence (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkm : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q))) Filter.atTop (nhds (2 * FABL.majorityCoalitionGaussianLimit t))
theorem FABL.tendsto_majority_head_total_coalitionalInfluence (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkm : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q))) Filter.atTop (nhds (2 * FABL.majorityCoalitionGaussianLimit t))
Exercise 9.25(5): total Majority coalitional influence has limit `2 Φ(t) - 1`.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_outside_ratio_of_total_ratio (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop (nhds t)
theorem FABL.tendsto_majority_outside_ratio_of_total_ratio (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop (nhds t)
Parameter bridge from the book's total dimension `n=k+m` to the outside-coordinate normalization used by the Berry--Esseen reduction.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_head_directed_influences_totalDimension (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q)) 1) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t)) ∧ Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q)) (-1)) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t))
theorem FABL.tendsto_majority_head_directed_influences_totalDimension (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q)) 1) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t)) ∧ Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q)) (-1)) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t))
Exercise 9.25(5) with the book's normalization `|J_q|/sqrt(k_q+m_q) → t`.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_head_total_coalitionalInfluence_totalDimension (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q))) Filter.atTop (nhds (2 * FABL.majorityCoalitionGaussianLimit t))
theorem FABL.tendsto_majority_head_total_coalitionalInfluence_totalDimension (k m : ℕ → ℕ) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q))) Filter.atTop (nhds (2 * FABL.majorityCoalitionGaussianLimit t))
Exercise 9.25(5), total influence with the book's total-dimension normalization.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_head_total_coalitionalInfluence_zero_of_subsqrt (k m : ℕ → ℕ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds 0)) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q))) Filter.atTop (nhds 0)
theorem FABL.tendsto_majority_head_total_coalitionalInfluence_zero_of_subsqrt (k m : ℕ → ℕ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds 0)) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q))) Filter.atTop (nhds 0)
Exercise 9.25(5), `o(sqrt n)` corollary.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_expect_hammingUpperTailIndicator_of_tail_tendsto (d : ℕ → ℕ) (u : ℕ → ℝ) (L : ℝ) (hd : Filter.Tendsto d Filter.atTop Filter.atTop) (htail : Filter.Tendsto (fun q => FABL.standardGaussianUpperTail (u q)) Filter.atTop (nhds L)) : Filter.Tendsto (fun q => Finset.univ.expect fun x => FABL.hammingUpperTailIndicator (u q) (d q) x) Filter.atTop (nhds L)
theorem FABL.tendsto_expect_hammingUpperTailIndicator_of_tail_tendsto (d : ℕ → ℕ) (u : ℕ → ℝ) (L : ℝ) (hd : Filter.Tendsto d Filter.atTop Filter.atTop) (htail : Filter.Tendsto (fun q => FABL.standardGaussianUpperTail (u q)) Filter.atTop (nhds L)) : Filter.Tendsto (fun q => Finset.univ.expect fun x => FABL.hammingUpperTailIndicator (u q) (d q) x) Filter.atTop (nhds L)
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_outside_ratio_atTop_of_total_ratio_atTop (k m : ℕ → ℕ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop Filter.atTop) : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop Filter.atTop
theorem FABL.tendsto_majority_outside_ratio_atTop_of_total_ratio_atTop (k m : ℕ → ℕ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop Filter.atTop) : Filter.Tendsto (fun q => ↑(k q) / √↑(m q)) Filter.atTop Filter.atTop
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_head_total_coalitionalInfluence_one_of_omega_sqrt (k m : ℕ → ℕ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop Filter.atTop) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q))) Filter.atTop (nhds 1)
theorem FABL.tendsto_majority_head_total_coalitionalInfluence_one_of_omega_sqrt (k m : ℕ → ℕ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop Filter.atTop) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (FABL.majorityHeadCoalition (k q) (m q))) Filter.atTop (nhds 1)
Exercise 9.25(5), `ω(sqrt n)` corollary.
-
defdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
def FABL.coalitionTransportPerm {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) : Equiv.Perm (Fin n)
def FABL.coalitionTransportPerm {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) : Equiv.Perm (Fin n)
A coordinate permutation carrying `A` onto `B`.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.mem_coalitionTransportPerm_iff {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) (i : Fin n) : (FABL.coalitionTransportPerm A B hcard) i ∈ B ↔ i ∈ A
theorem FABL.mem_coalitionTransportPerm_iff {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) (i : Fin n) : (FABL.coalitionTransportPerm A B hcard) i ∈ B ↔ i ∈ A
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.bribeInput_permuteInput_coalitionTransport {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) (b : FABL.Sign) (x : FABL.SignCube n) : FABL.bribeInput A b (FABL.permuteInput (FABL.coalitionTransportPerm A B hcard) x) = FABL.permuteInput (FABL.coalitionTransportPerm A B hcard) (FABL.bribeInput B b x)
theorem FABL.bribeInput_permuteInput_coalitionTransport {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) (b : FABL.Sign) (x : FABL.SignCube n) : FABL.bribeInput A b (FABL.permuteInput (FABL.coalitionTransportPerm A B hcard) x) = FABL.permuteInput (FABL.coalitionTransportPerm A B hcard) (FABL.bribeInput B b x)
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.mean_bribeFunction_majority_eq_of_card {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) (b : FABL.Sign) : FABL.mean (FABL.bribeFunction (FABL.majority n) A b).toReal = FABL.mean (FABL.bribeFunction (FABL.majority n) B b).toReal
theorem FABL.mean_bribeFunction_majority_eq_of_card {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) (b : FABL.Sign) : FABL.mean (FABL.bribeFunction (FABL.majority n) A b).toReal = FABL.mean (FABL.bribeFunction (FABL.majority n) B b).toReal
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.coalitionalInfluenceToward_majority_eq_of_card {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) (b : FABL.Sign) : FABL.coalitionalInfluenceToward (FABL.majority n) A b = FABL.coalitionalInfluenceToward (FABL.majority n) B b
theorem FABL.coalitionalInfluenceToward_majority_eq_of_card {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) (b : FABL.Sign) : FABL.coalitionalInfluenceToward (FABL.majority n) A b = FABL.coalitionalInfluenceToward (FABL.majority n) B b
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.coalitionalInfluence_majority_eq_of_card {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) : FABL.coalitionalInfluence (FABL.majority n) A = FABL.coalitionalInfluence (FABL.majority n) B
theorem FABL.coalitionalInfluence_majority_eq_of_card {n : ℕ} (A B : Finset (Fin n)) (hcard : A.card = B.card) : FABL.coalitionalInfluence (FABL.majority n) A = FABL.coalitionalInfluence (FABL.majority n) B
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_arbitraryCoalition_total (k m : ℕ → ℕ) (J : (q : ℕ) → Finset (Fin (k q + m q))) (hcard : ∀ (q : ℕ), (J q).card = k q) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (J q)) Filter.atTop (nhds (2 * FABL.majorityCoalitionGaussianLimit t))
theorem FABL.tendsto_majority_arbitraryCoalition_total (k m : ℕ → ℕ) (J : (q : ℕ) → Finset (Fin (k q + m q))) (hcard : ∀ (q : ℕ), (J q).card = k q) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (J q)) Filter.atTop (nhds (2 * FABL.majorityCoalitionGaussianLimit t))
Book-parameter corollary for arbitrary coalition sequences.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_arbitraryCoalition_directed (k m : ℕ → ℕ) (J : (q : ℕ) → Finset (Fin (k q + m q))) (hcard : ∀ (q : ℕ), (J q).card = k q) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (J q) 1) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t)) ∧ Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (J q) (-1)) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t))
theorem FABL.tendsto_majority_arbitraryCoalition_directed (k m : ℕ → ℕ) (J : (q : ℕ) → Finset (Fin (k q + m q))) (hcard : ∀ (q : ℕ), (J q).card = k q) (t : ℝ) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds t)) : Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (J q) 1) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t)) ∧ Filter.Tendsto (fun q => FABL.coalitionalInfluenceToward (FABL.majority (k q + m q)) (J q) (-1)) Filter.atTop (nhds (FABL.majorityCoalitionGaussianLimit t))
Directed version of the arbitrary-coalition limit.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_arbitraryCoalition_zero_of_subsqrt (k m : ℕ → ℕ) (J : (q : ℕ) → Finset (Fin (k q + m q))) (hcard : ∀ (q : ℕ), (J q).card = k q) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds 0)) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (J q)) Filter.atTop (nhds 0)
theorem FABL.tendsto_majority_arbitraryCoalition_zero_of_subsqrt (k m : ℕ → ℕ) (J : (q : ℕ) → Finset (Fin (k q + m q))) (hcard : ∀ (q : ℕ), (J q).card = k q) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop (nhds 0)) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (J q)) Filter.atTop (nhds 0)
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.tendsto_majority_arbitraryCoalition_one_of_omega_sqrt (k m : ℕ → ℕ) (J : (q : ℕ) → Finset (Fin (k q + m q))) (hcard : ∀ (q : ℕ), (J q).card = k q) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop Filter.atTop) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (J q)) Filter.atTop (nhds 1)
theorem FABL.tendsto_majority_arbitraryCoalition_one_of_omega_sqrt (k m : ℕ → ℕ) (J : (q : ℕ) → Finset (Fin (k q + m q))) (hcard : ∀ (q : ℕ), (J q).card = k q) (hm : Filter.Tendsto m Filter.atTop Filter.atTop) (hkn : Filter.Tendsto (fun q => ↑(k q) / √(↑(k q) + ↑(m q))) Filter.atTop Filter.atTop) : Filter.Tendsto (fun q => FABL.coalitionalInfluence (FABL.majority (k q + m q)) (J q)) Filter.atTop (nhds 1)
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.two_pow_sub_two_le_tribesCriticalSize (w : ℕ) (hw : 4 ≤ w) : 2 ^ (w - 2) ≤ FABL.tribesCriticalSize w
theorem FABL.two_pow_sub_two_le_tribesCriticalSize (w : ℕ) (hw : 4 ≤ w) : 2 ^ (w - 2) ≤ FABL.tribesCriticalSize w
For every sufficiently large critical-Tribes width, the critical size is already at least `2^(w-2)`. This narrow finite bound is enough to compare the book's logarithmic coalition cap with one complete tribe.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.width_le_clog_tribesCriticalDimension (w : ℕ) (hw : 4 ≤ w) : w ≤ Nat.clog 2 (FABL.tribesCriticalDimension w)
theorem FABL.width_le_clog_tribesCriticalDimension (w : ℕ) (hw : 4 ≤ w) : w ≤ Nat.clog 2 (FABL.tribesCriticalDimension w)
A full critical tribe fits within the book's base-two logarithmic coalition cap.
-
theoremdefined in FABL/Chapter09/CoalitionalInfluenceAsymptotics.leancomplete
theorem FABL.criticalTribes_towardTrue_max_clog_exact (w : ℕ) (hw : 4 ≤ w) : (∀ (J : Finset (Fin (FABL.tribesCriticalDimension w))), J.card ≤ Nat.clog 2 (FABL.tribesCriticalDimension w) → FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J (-1) ≤ 1 / 2 + FABL.tribesCriticalProbabilityDeficit w) ∧ ∃ J, J.card = w ∧ J.card ≤ Nat.clog 2 (FABL.tribesCriticalDimension w) ∧ FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J (-1) = 1 / 2 + FABL.tribesCriticalProbabilityDeficit w
theorem FABL.criticalTribes_towardTrue_max_clog_exact (w : ℕ) (hw : 4 ≤ w) : (∀ (J : Finset (Fin (FABL.tribesCriticalDimension w))), J.card ≤ Nat.clog 2 (FABL.tribesCriticalDimension w) → FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J (-1) ≤ 1 / 2 + FABL.tribesCriticalProbabilityDeficit w) ∧ ∃ J, J.card = w ∧ J.card ≤ Nat.clog 2 (FABL.tribesCriticalDimension w) ∧ FABL.coalitionalInfluenceToward (FABL.tribesCritical w) J (-1) = 1 / 2 + FABL.tribesCriticalProbabilityDeficit w
Exercise 9.25(g), literal logarithmic-cap form: the exact maximum toward True is attained by one full tribe, and every coalition below `clog₂ n_w` obeys the same universal upper bound.
-
FABL.addressingAddressEquiv[complete] -
FABL.addressingInputEquiv[complete] -
FABL.addressingFunction[complete] -
FABL.addressingAddressCoordinate[complete] -
FABL.addressingDataCoordinate[complete] -
FABL.addressingInputEquiv_addressCoordinate[complete] -
FABL.addressingInputEquiv_dataCoordinate[complete] -
FABL.addressingSelectedCoordinate[complete] -
FABL.addressingInputEquiv_first_flip_selected[complete] -
FABL.addressingSelectedCoordinate_flip[complete] -
FABL.addressingFunction_flip_selected[complete] -
FABL.addressingInputEquiv_first_flip_data[complete] -
FABL.addressingFunction_flip_data_of_ne[complete] -
FABL.addressingRelevantCoordinates[complete] -
FABL.isPivotal_addressingFunction_mem_relevant[complete] -
FABL.card_addressingRelevantCoordinates_le[complete] -
FABL.sensitivity_addressingFunction_le[complete] -
FABL.totalInfluence_addressingFunction_le[complete] -
FABL.addressingFlipEquiv[complete] -
FABL.addressingFlipEquiv_apply[complete] -
FABL.eq_addressingFlip_of_dependsOn[complete] -
FABL.addressingErrorIndicator[complete] -
FABL.one_le_addressingErrorIndicator_add_flip[complete] -
FABL.sum_addressingErrorIndicator_flip[complete] -
FABL.two_mul_sum_addressingErrorIndicator_ge_event_card[complete] -
FABL.addressingDataIndicesIn[complete] -
FABL.card_addressingDataIndicesIn_le[complete] -
FABL.card_addressingDataIndicesOutside_ge[complete] -
FABL.uniformProbability_addressingSelectedOutside[complete] -
FABL.uniformProbability_addressingSelectedOutside_ge_half[complete] -
FABL.two_mul_relativeHammingDist_addressing_ge_event[complete] -
FABL.relativeHammingDist_addressing_ge_quarter[complete] -
FABL.not_close_addressing_of_isKJunta[complete] -
FABL.exercise9_26_addressing_witness[complete]
Exercise 9.26. Use the construction of Exercise 4.15 to prove that the
exponential dependence on \mathbf I[f] in Friedgut's Junta Theorem is
necessary up to constants in the exponent.
The formal proof uses the equivalent addressing-function witness: on
m+2^m variables it has total influence at most m+1, while every
2^{m-1}-junta is at least 1/4-far. This proves the same exponential
necessity conclusion without importing an unformalized Exercise 4.15 lemma.
Lean code for Lemma9.7.27●34 declarations
Associated Lean declarations
-
FABL.addressingAddressEquiv[complete]
-
FABL.addressingInputEquiv[complete]
-
FABL.addressingFunction[complete]
-
FABL.addressingAddressCoordinate[complete]
-
FABL.addressingDataCoordinate[complete]
-
FABL.addressingInputEquiv_addressCoordinate[complete]
-
FABL.addressingInputEquiv_dataCoordinate[complete]
-
FABL.addressingSelectedCoordinate[complete]
-
FABL.addressingInputEquiv_first_flip_selected[complete]
-
FABL.addressingSelectedCoordinate_flip[complete]
-
FABL.addressingFunction_flip_selected[complete]
-
FABL.addressingInputEquiv_first_flip_data[complete]
-
FABL.addressingFunction_flip_data_of_ne[complete]
-
FABL.addressingRelevantCoordinates[complete]
-
FABL.isPivotal_addressingFunction_mem_relevant[complete]
-
FABL.card_addressingRelevantCoordinates_le[complete]
-
FABL.sensitivity_addressingFunction_le[complete]
-
FABL.totalInfluence_addressingFunction_le[complete]
-
FABL.addressingFlipEquiv[complete]
-
FABL.addressingFlipEquiv_apply[complete]
-
FABL.eq_addressingFlip_of_dependsOn[complete]
-
FABL.addressingErrorIndicator[complete]
-
FABL.one_le_addressingErrorIndicator_add_flip[complete]
-
FABL.sum_addressingErrorIndicator_flip[complete]
-
FABL.two_mul_sum_addressingErrorIndicator_ge_event_card[complete]
-
FABL.addressingDataIndicesIn[complete]
-
FABL.card_addressingDataIndicesIn_le[complete]
-
FABL.card_addressingDataIndicesOutside_ge[complete]
-
FABL.uniformProbability_addressingSelectedOutside[complete]
-
FABL.uniformProbability_addressingSelectedOutside_ge_half[complete]
-
FABL.two_mul_relativeHammingDist_addressing_ge_event[complete]
-
FABL.relativeHammingDist_addressing_ge_quarter[complete]
-
FABL.not_close_addressing_of_isKJunta[complete]
-
FABL.exercise9_26_addressing_witness[complete]
-
FABL.addressingAddressEquiv[complete] -
FABL.addressingInputEquiv[complete] -
FABL.addressingFunction[complete] -
FABL.addressingAddressCoordinate[complete] -
FABL.addressingDataCoordinate[complete] -
FABL.addressingInputEquiv_addressCoordinate[complete] -
FABL.addressingInputEquiv_dataCoordinate[complete] -
FABL.addressingSelectedCoordinate[complete] -
FABL.addressingInputEquiv_first_flip_selected[complete] -
FABL.addressingSelectedCoordinate_flip[complete] -
FABL.addressingFunction_flip_selected[complete] -
FABL.addressingInputEquiv_first_flip_data[complete] -
FABL.addressingFunction_flip_data_of_ne[complete] -
FABL.addressingRelevantCoordinates[complete] -
FABL.isPivotal_addressingFunction_mem_relevant[complete] -
FABL.card_addressingRelevantCoordinates_le[complete] -
FABL.sensitivity_addressingFunction_le[complete] -
FABL.totalInfluence_addressingFunction_le[complete] -
FABL.addressingFlipEquiv[complete] -
FABL.addressingFlipEquiv_apply[complete] -
FABL.eq_addressingFlip_of_dependsOn[complete] -
FABL.addressingErrorIndicator[complete] -
FABL.one_le_addressingErrorIndicator_add_flip[complete] -
FABL.sum_addressingErrorIndicator_flip[complete] -
FABL.two_mul_sum_addressingErrorIndicator_ge_event_card[complete] -
FABL.addressingDataIndicesIn[complete] -
FABL.card_addressingDataIndicesIn_le[complete] -
FABL.card_addressingDataIndicesOutside_ge[complete] -
FABL.uniformProbability_addressingSelectedOutside[complete] -
FABL.uniformProbability_addressingSelectedOutside_ge_half[complete] -
FABL.two_mul_relativeHammingDist_addressing_ge_event[complete] -
FABL.relativeHammingDist_addressing_ge_quarter[complete] -
FABL.not_close_addressing_of_isKJunta[complete] -
FABL.exercise9_26_addressing_witness[complete]
-
defdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
def FABL.addressingAddressEquiv (m : ℕ) : FABL.SignCube m ≃ Fin (2 ^ m)
def FABL.addressingAddressEquiv (m : ℕ) : FABL.SignCube m ≃ Fin (2 ^ m)
A fixed enumeration of the `2^m` possible address strings.
-
defdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
def FABL.addressingInputEquiv (m : ℕ) : FABL.SignCube (m + 2 ^ m) ≃ FABL.SignCube m × (Fin (2 ^ m) → FABL.Sign)
def FABL.addressingInputEquiv (m : ℕ) : FABL.SignCube (m + 2 ^ m) ≃ FABL.SignCube m × (Fin (2 ^ m) → FABL.Sign)
Split an addressing input into its address and data-table parts.
-
defdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
def FABL.addressingFunction (m : ℕ) : FABL.BooleanFunction (m + 2 ^ m)
def FABL.addressingFunction (m : ℕ) : FABL.BooleanFunction (m + 2 ^ m)
The addressing Boolean function: return the data bit selected by the address.
-
defdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
def FABL.addressingAddressCoordinate (m : ℕ) (i : Fin m) : Fin (m + 2 ^ m)
def FABL.addressingAddressCoordinate (m : ℕ) (i : Fin m) : Fin (m + 2 ^ m)
Embed an address coordinate into the full input.
-
defdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
def FABL.addressingDataCoordinate (m : ℕ) (j : Fin (2 ^ m)) : Fin (m + 2 ^ m)
def FABL.addressingDataCoordinate (m : ℕ) (j : Fin (2 ^ m)) : Fin (m + 2 ^ m)
Embed a data-table coordinate into the full input.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.addressingInputEquiv_addressCoordinate (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) (i : Fin m) : ((FABL.addressingInputEquiv m) x).1 i = x (FABL.addressingAddressCoordinate m i)
theorem FABL.addressingInputEquiv_addressCoordinate (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) (i : Fin m) : ((FABL.addressingInputEquiv m) x).1 i = x (FABL.addressingAddressCoordinate m i)
Coordinate evaluation on the address part of `addressingInputEquiv`.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.addressingInputEquiv_dataCoordinate (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) (j : Fin (2 ^ m)) : ((FABL.addressingInputEquiv m) x).2 j = x (FABL.addressingDataCoordinate m j)
theorem FABL.addressingInputEquiv_dataCoordinate (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) (j : Fin (2 ^ m)) : ((FABL.addressingInputEquiv m) x).2 j = x (FABL.addressingDataCoordinate m j)
Coordinate evaluation on the data part of `addressingInputEquiv`.
-
defdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
def FABL.addressingSelectedCoordinate (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : Fin (m + 2 ^ m)
def FABL.addressingSelectedCoordinate (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : Fin (m + 2 ^ m)
The full coordinate of the data bit selected by an input's address.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.addressingInputEquiv_first_flip_selected (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : ((FABL.addressingInputEquiv m) (FABL.flipCoordinate x (FABL.addressingSelectedCoordinate m x))).1 = ((FABL.addressingInputEquiv m) x).1
theorem FABL.addressingInputEquiv_first_flip_selected (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : ((FABL.addressingInputEquiv m) (FABL.flipCoordinate x (FABL.addressingSelectedCoordinate m x))).1 = ((FABL.addressingInputEquiv m) x).1
Flipping the selected data bit leaves the address part unchanged.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.addressingSelectedCoordinate_flip (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : FABL.addressingSelectedCoordinate m (FABL.flipCoordinate x (FABL.addressingSelectedCoordinate m x)) = FABL.addressingSelectedCoordinate m x
theorem FABL.addressingSelectedCoordinate_flip (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : FABL.addressingSelectedCoordinate m (FABL.flipCoordinate x (FABL.addressingSelectedCoordinate m x)) = FABL.addressingSelectedCoordinate m x
The selected coordinate is unchanged when that data bit is flipped.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.addressingFunction_flip_selected (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : FABL.addressingFunction m (FABL.flipCoordinate x (FABL.addressingSelectedCoordinate m x)) = -FABL.addressingFunction m x
theorem FABL.addressingFunction_flip_selected (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : FABL.addressingFunction m (FABL.flipCoordinate x (FABL.addressingSelectedCoordinate m x)) = -FABL.addressingFunction m x
Flipping the selected data bit negates the addressing function.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.addressingInputEquiv_first_flip_data (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) (j : Fin (2 ^ m)) : ((FABL.addressingInputEquiv m) (FABL.flipCoordinate x (FABL.addressingDataCoordinate m j))).1 = ((FABL.addressingInputEquiv m) x).1
theorem FABL.addressingInputEquiv_first_flip_data (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) (j : Fin (2 ^ m)) : ((FABL.addressingInputEquiv m) (FABL.flipCoordinate x (FABL.addressingDataCoordinate m j))).1 = ((FABL.addressingInputEquiv m) x).1
Flipping any data bit leaves the address part unchanged.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.addressingFunction_flip_data_of_ne (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) (j : Fin (2 ^ m)) (hj : j ≠ (FABL.addressingAddressEquiv m) ((FABL.addressingInputEquiv m) x).1) : FABL.addressingFunction m (FABL.flipCoordinate x (FABL.addressingDataCoordinate m j)) = FABL.addressingFunction m x
theorem FABL.addressingFunction_flip_data_of_ne (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) (j : Fin (2 ^ m)) (hj : j ≠ (FABL.addressingAddressEquiv m) ((FABL.addressingInputEquiv m) x).1) : FABL.addressingFunction m (FABL.flipCoordinate x (FABL.addressingDataCoordinate m j)) = FABL.addressingFunction m x
Flipping a nonselected data bit leaves the addressing output unchanged.
-
defdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
def FABL.addressingRelevantCoordinates (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : Finset (Fin (m + 2 ^ m))
def FABL.addressingRelevantCoordinates (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : Finset (Fin (m + 2 ^ m))
The address coordinates together with the currently selected data coordinate.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.isPivotal_addressingFunction_mem_relevant (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) (i : Fin (m + 2 ^ m)) (hi : FABL.IsPivotal (FABL.addressingFunction m) i x) : i ∈ FABL.addressingRelevantCoordinates m x
theorem FABL.isPivotal_addressingFunction_mem_relevant (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) (i : Fin (m + 2 ^ m)) (hi : FABL.IsPivotal (FABL.addressingFunction m) i x) : i ∈ FABL.addressingRelevantCoordinates m x
Every pivotal addressing coordinate is in the explicit relevant-coordinate set.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.card_addressingRelevantCoordinates_le (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : (FABL.addressingRelevantCoordinates m x).card ≤ m + 1
theorem FABL.card_addressingRelevantCoordinates_le (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : (FABL.addressingRelevantCoordinates m x).card ≤ m + 1
The relevant-coordinate set has at most `m+1` elements.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.sensitivity_addressingFunction_le (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : FABL.sensitivity (FABL.addressingFunction m) x ≤ m + 1
theorem FABL.sensitivity_addressingFunction_le (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : FABL.sensitivity (FABL.addressingFunction m) x ≤ m + 1
Pointwise sensitivity of the addressing function is at most `m+1`.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.totalInfluence_addressingFunction_le (m : ℕ) : FABL.totalInfluence (FABL.addressingFunction m).toReal ≤ ↑m + 1
theorem FABL.totalInfluence_addressingFunction_le (m : ℕ) : FABL.totalInfluence (FABL.addressingFunction m).toReal ≤ ↑m + 1
The addressing function has total influence at most `m+1`.
-
defdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
def FABL.addressingFlipEquiv (m : ℕ) : FABL.SignCube (m + 2 ^ m) ≃ FABL.SignCube (m + 2 ^ m)
def FABL.addressingFlipEquiv (m : ℕ) : FABL.SignCube (m + 2 ^ m) ≃ FABL.SignCube (m + 2 ^ m)
The involution that flips the currently selected data bit.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.addressingFlipEquiv_apply (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : (FABL.addressingFlipEquiv m) x = FABL.flipCoordinate x (FABL.addressingSelectedCoordinate m x)
theorem FABL.addressingFlipEquiv_apply (m : ℕ) (x : FABL.SignCube (m + 2 ^ m)) : (FABL.addressingFlipEquiv m) x = FABL.flipCoordinate x (FABL.addressingSelectedCoordinate m x)
Evaluation rule for `addressingFlipEquiv`.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.eq_addressingFlip_of_dependsOn (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : DependsOn g ↑J) (x : FABL.SignCube (m + 2 ^ m)) (hx : FABL.addressingSelectedCoordinate m x ∉ J) : g ((FABL.addressingFlipEquiv m) x) = g x
theorem FABL.eq_addressingFlip_of_dependsOn (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : DependsOn g ↑J) (x : FABL.SignCube (m + 2 ^ m)) (hx : FABL.addressingSelectedCoordinate m x ∉ J) : g ((FABL.addressingFlipEquiv m) x) = g x
A function depending on `J` is unchanged by the addressing flip whenever the selected data coordinate lies outside `J`.
-
defdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
def FABL.addressingErrorIndicator {N : ℕ} (f g : FABL.BooleanFunction N) (x : FABL.SignCube N) : ℝ
def FABL.addressingErrorIndicator {N : ℕ} (f g : FABL.BooleanFunction N) (x : FABL.SignCube N) : ℝ
Indicator that two Boolean functions disagree at an input.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.one_le_addressingErrorIndicator_add_flip (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : DependsOn g ↑J) (x : FABL.SignCube (m + 2 ^ m)) (hx : FABL.addressingSelectedCoordinate m x ∉ J) : 1 ≤ FABL.addressingErrorIndicator (FABL.addressingFunction m) g x + FABL.addressingErrorIndicator (FABL.addressingFunction m) g ((FABL.addressingFlipEquiv m) x)
theorem FABL.one_le_addressingErrorIndicator_add_flip (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : DependsOn g ↑J) (x : FABL.SignCube (m + 2 ^ m)) (hx : FABL.addressingSelectedCoordinate m x ∉ J) : 1 ≤ FABL.addressingErrorIndicator (FABL.addressingFunction m) g x + FABL.addressingErrorIndicator (FABL.addressingFunction m) g ((FABL.addressingFlipEquiv m) x)
On the selected-outside event, at least one point in an addressing-flip pair is an error.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.sum_addressingErrorIndicator_flip (m : ℕ) (g : FABL.BooleanFunction (m + 2 ^ m)) : ∑ x, FABL.addressingErrorIndicator (FABL.addressingFunction m) g ((FABL.addressingFlipEquiv m) x) = ∑ x, FABL.addressingErrorIndicator (FABL.addressingFunction m) g x
theorem FABL.sum_addressingErrorIndicator_flip (m : ℕ) (g : FABL.BooleanFunction (m + 2 ^ m)) : ∑ x, FABL.addressingErrorIndicator (FABL.addressingFunction m) g ((FABL.addressingFlipEquiv m) x) = ∑ x, FABL.addressingErrorIndicator (FABL.addressingFunction m) g x
The addressing flip preserves the total number of errors.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.two_mul_sum_addressingErrorIndicator_ge_event_card (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : DependsOn g ↑J) : 2 * ∑ x, FABL.addressingErrorIndicator (FABL.addressingFunction m) g x ≥ ↑{x | FABL.addressingSelectedCoordinate m x ∉ J}.card
theorem FABL.two_mul_sum_addressingErrorIndicator_ge_event_card (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : DependsOn g ↑J) : 2 * ∑ x, FABL.addressingErrorIndicator (FABL.addressingFunction m) g x ≥ ↑{x | FABL.addressingSelectedCoordinate m x ∉ J}.card
Pairing by the addressing flip lower-bounds twice the error count by the selected-outside event count.
-
defdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
def FABL.addressingDataIndicesIn (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) : Finset (Fin (2 ^ m))
def FABL.addressingDataIndicesIn (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) : Finset (Fin (2 ^ m))
Data-table indices whose full coordinates belong to `J`.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.card_addressingDataIndicesIn_le (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) : (FABL.addressingDataIndicesIn m J).card ≤ J.card
theorem FABL.card_addressingDataIndicesIn_le (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) : (FABL.addressingDataIndicesIn m J).card ≤ J.card
`J` contains at least as many coordinates as its data-index subset.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.card_addressingDataIndicesOutside_ge (m : ℕ) (hm : 0 < m) (J : Finset (Fin (m + 2 ^ m))) (hJ : J.card ≤ 2 ^ (m - 1)) : {j | FABL.addressingDataCoordinate m j ∉ J}.card ≥ 2 ^ (m - 1)
theorem FABL.card_addressingDataIndicesOutside_ge (m : ℕ) (hm : 0 < m) (J : Finset (Fin (m + 2 ^ m))) (hJ : J.card ≤ 2 ^ (m - 1)) : {j | FABL.addressingDataCoordinate m j ∉ J}.card ≥ 2 ^ (m - 1)
If `J` has at most half the data-table size, at least half the data indices lie outside it.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.uniformProbability_addressingSelectedOutside (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) : (FABL.uniformProbability fun x => FABL.addressingSelectedCoordinate m x ∉ J) = ↑{j | FABL.addressingDataCoordinate m j ∉ J}.card / 2 ^ m
theorem FABL.uniformProbability_addressingSelectedOutside (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) : (FABL.uniformProbability fun x => FABL.addressingSelectedCoordinate m x ∉ J) = ↑{j | FABL.addressingDataCoordinate m j ∉ J}.card / 2 ^ m
Exact probability that the selected addressing coordinate lies outside `J`.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.uniformProbability_addressingSelectedOutside_ge_half (m : ℕ) (hm : 0 < m) (J : Finset (Fin (m + 2 ^ m))) (hJ : J.card ≤ 2 ^ (m - 1)) : 1 / 2 ≤ FABL.uniformProbability fun x => FABL.addressingSelectedCoordinate m x ∉ J
theorem FABL.uniformProbability_addressingSelectedOutside_ge_half (m : ℕ) (hm : 0 < m) (J : Finset (Fin (m + 2 ^ m))) (hJ : J.card ≤ 2 ^ (m - 1)) : 1 / 2 ≤ FABL.uniformProbability fun x => FABL.addressingSelectedCoordinate m x ∉ J
A set of at most `2^(m-1)` coordinates misses the selected data bit with probability at least one half.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.two_mul_relativeHammingDist_addressing_ge_event (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : DependsOn g ↑J) : (FABL.uniformProbability fun x => FABL.addressingSelectedCoordinate m x ∉ J) ≤ 2 * FABL.relativeHammingDist (FABL.addressingFunction m) g
theorem FABL.two_mul_relativeHammingDist_addressing_ge_event (m : ℕ) (J : Finset (Fin (m + 2 ^ m))) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : DependsOn g ↑J) : (FABL.uniformProbability fun x => FABL.addressingSelectedCoordinate m x ∉ J) ≤ 2 * FABL.relativeHammingDist (FABL.addressingFunction m) g
Twice the Hamming distance dominates the selected-outside probability.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.relativeHammingDist_addressing_ge_quarter (m : ℕ) (hm : 0 < m) (J : Finset (Fin (m + 2 ^ m))) (hJ : J.card ≤ 2 ^ (m - 1)) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : DependsOn g ↑J) : 1 / 4 ≤ FABL.relativeHammingDist (FABL.addressingFunction m) g
theorem FABL.relativeHammingDist_addressing_ge_quarter (m : ℕ) (hm : 0 < m) (J : Finset (Fin (m + 2 ^ m))) (hJ : J.card ≤ 2 ^ (m - 1)) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : DependsOn g ↑J) : 1 / 4 ≤ FABL.relativeHammingDist (FABL.addressingFunction m) g
Every function depending on at most half of the data-table coordinates is at least `1/4`-far from addressing.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.not_close_addressing_of_isKJunta (m : ℕ) (hm : 0 < m) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : FABL.IsKJunta g (2 ^ (m - 1))) : 1 / 4 ≤ FABL.relativeHammingDist (FABL.addressingFunction m) g
theorem FABL.not_close_addressing_of_isKJunta (m : ℕ) (hm : 0 < m) (g : FABL.BooleanFunction (m + 2 ^ m)) (hg : FABL.IsKJunta g (2 ^ (m - 1))) : 1 / 4 ≤ FABL.relativeHammingDist (FABL.addressingFunction m) g
No `2^(m-1)`-junta can approximate addressing to error below `1/4`.
-
theoremdefined in FABL/Chapter09/FriedgutNecessity.leancomplete
theorem FABL.exercise9_26_addressing_witness (m : ℕ) (hm : 0 < m) : FABL.totalInfluence (FABL.addressingFunction m).toReal ≤ ↑m + 1 ∧ ∀ (g : FABL.BooleanFunction (m + 2 ^ m)), FABL.IsKJunta g (2 ^ (m - 1)) → 1 / 4 ≤ FABL.relativeHammingDist (FABL.addressingFunction m) g
theorem FABL.exercise9_26_addressing_witness (m : ℕ) (hm : 0 < m) : FABL.totalInfluence (FABL.addressingFunction m).toReal ≤ ↑m + 1 ∧ ∀ (g : FABL.BooleanFunction (m + 2 ^ m)), FABL.IsKJunta g (2 ^ (m - 1)) → 1 / 4 ≤ FABL.relativeHammingDist (FABL.addressingFunction m) g
Exercise 9.26: an explicit family with influence `O(m)` requiring `2^(m-1)` junta coordinates at fixed error.
-
FABL.positiveBias[complete] -
FABL.positiveBias_eq_mean[complete] -
FABL.positiveBias_mem_Icc[complete] -
FABL.variance_eq_four_mul_positiveBias[complete] -
FABL.briberyRate[complete] -
FABL.briberyRate_pos[complete] -
FABL.briberyRate_le_one_half[complete] -
FABL.maximumInfluenceCoordinate_positiveBias_step[complete] -
FABL.briberySetsTo[complete] -
FABL.briberySetsTo_succ[complete] -
FABL.card_briberySetsTo_le[complete] -
FABL.briberySetsTo_stable[complete] -
FABL.maximumInfluenceCoordinate_fresh_of_bias[complete] -
FABL.card_briberySetsTo_eq_of_mean_lt[complete] -
FABL.positiveBias_odds_step[complete] -
FABL.briberySetsTo_odds_invariant[complete] -
FABL.mean_bribeFunction_univ_one_of_positiveBias[complete] -
FABL.mean_briberySetsTo_final_ge_target[complete] -
FABL.mean_lt_target_of_final_card_gt[complete] -
FABL.log_one_add_two_mul_briberyRate_ge[complete] -
FABL.exercise9_27_positive[complete] -
FABL.variance_dualBooleanFunction[complete] -
FABL.exercise9_27_coalition[complete]
Exercise 9.27. Let f be monotone with
\operatorname{Var}[f]\ge\delta>0 and 0<\epsilon<1/2. Prove there
is J with
|J|\le
O\left(\log\frac1{\epsilon\delta}\right)
\frac n{\log n}
such that fixing J to 1 makes the expectation at least
1-\epsilon. Prove also that a coalition of the same size has total
influence at least 1-\epsilon.
Lean code for Theorem9.7.28●23 declarations
Associated Lean declarations
-
FABL.positiveBias[complete]
-
FABL.positiveBias_eq_mean[complete]
-
FABL.positiveBias_mem_Icc[complete]
-
FABL.variance_eq_four_mul_positiveBias[complete]
-
FABL.briberyRate[complete]
-
FABL.briberyRate_pos[complete]
-
FABL.briberyRate_le_one_half[complete]
-
FABL.maximumInfluenceCoordinate_positiveBias_step[complete]
-
FABL.briberySetsTo[complete]
-
FABL.briberySetsTo_succ[complete]
-
FABL.card_briberySetsTo_le[complete]
-
FABL.briberySetsTo_stable[complete]
-
FABL.maximumInfluenceCoordinate_fresh_of_bias[complete]
-
FABL.card_briberySetsTo_eq_of_mean_lt[complete]
-
FABL.positiveBias_odds_step[complete]
-
FABL.briberySetsTo_odds_invariant[complete]
-
FABL.mean_bribeFunction_univ_one_of_positiveBias[complete]
-
FABL.mean_briberySetsTo_final_ge_target[complete]
-
FABL.mean_lt_target_of_final_card_gt[complete]
-
FABL.log_one_add_two_mul_briberyRate_ge[complete]
-
FABL.exercise9_27_positive[complete]
-
FABL.variance_dualBooleanFunction[complete]
-
FABL.exercise9_27_coalition[complete]
-
FABL.positiveBias[complete] -
FABL.positiveBias_eq_mean[complete] -
FABL.positiveBias_mem_Icc[complete] -
FABL.variance_eq_four_mul_positiveBias[complete] -
FABL.briberyRate[complete] -
FABL.briberyRate_pos[complete] -
FABL.briberyRate_le_one_half[complete] -
FABL.maximumInfluenceCoordinate_positiveBias_step[complete] -
FABL.briberySetsTo[complete] -
FABL.briberySetsTo_succ[complete] -
FABL.card_briberySetsTo_le[complete] -
FABL.briberySetsTo_stable[complete] -
FABL.maximumInfluenceCoordinate_fresh_of_bias[complete] -
FABL.card_briberySetsTo_eq_of_mean_lt[complete] -
FABL.positiveBias_odds_step[complete] -
FABL.briberySetsTo_odds_invariant[complete] -
FABL.mean_bribeFunction_univ_one_of_positiveBias[complete] -
FABL.mean_briberySetsTo_final_ge_target[complete] -
FABL.mean_lt_target_of_final_card_gt[complete] -
FABL.log_one_add_two_mul_briberyRate_ge[complete] -
FABL.exercise9_27_positive[complete] -
FABL.variance_dualBooleanFunction[complete] -
FABL.exercise9_27_coalition[complete]
-
defdefined in FABL/Chapter09/KKLBribery.leancomplete
def FABL.positiveBias {n : ℕ} (f : FABL.BooleanFunction n) : ℝ
def FABL.positiveBias {n : ℕ} (f : FABL.BooleanFunction n) : ℝ
Positive-output bias.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.positiveBias_eq_mean {n : ℕ} (f : FABL.BooleanFunction n) : FABL.positiveBias f = (1 + FABL.mean f.toReal) / 2
theorem FABL.positiveBias_eq_mean {n : ℕ} (f : FABL.BooleanFunction n) : FABL.positiveBias f = (1 + FABL.mean f.toReal) / 2
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.positiveBias_mem_Icc {n : ℕ} (f : FABL.BooleanFunction n) : FABL.positiveBias f ∈ Set.Icc 0 1
theorem FABL.positiveBias_mem_Icc {n : ℕ} (f : FABL.BooleanFunction n) : FABL.positiveBias f ∈ Set.Icc 0 1
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.variance_eq_four_mul_positiveBias {n : ℕ} (f : FABL.BooleanFunction n) : FABL.variance f.toReal = 4 * FABL.positiveBias f * (1 - FABL.positiveBias f)
theorem FABL.variance_eq_four_mul_positiveBias {n : ℕ} (f : FABL.BooleanFunction n) : FABL.variance f.toReal = 4 * FABL.positiveBias f * (1 - FABL.positiveBias f)
-
defdefined in FABL/Chapter09/KKLBribery.leancomplete
def FABL.briberyRate (n : ℕ) : ℝ
def FABL.briberyRate (n : ℕ) : ℝ
Dimension-dependent KKL rate.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.briberyRate_pos {n : ℕ} (hn : 2 ≤ n) : 0 < FABL.briberyRate n
theorem FABL.briberyRate_pos {n : ℕ} (hn : 2 ≤ n) : 0 < FABL.briberyRate n
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.briberyRate_le_one_half {n : ℕ} (hn : 2 ≤ n) : FABL.briberyRate n ≤ 1 / 2
theorem FABL.briberyRate_le_one_half {n : ℕ} (hn : 2 ≤ n) : FABL.briberyRate n ≤ 1 / 2
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.maximumInfluenceCoordinate_positiveBias_step {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (hp : 0 < FABL.positiveBias f) (hq : FABL.positiveBias f < 1) : have i := FABL.maximumInfluenceCoordinate f ⋯; FABL.positiveBias f + 2 * FABL.positiveBias f * (1 - FABL.positiveBias f) * FABL.briberyRate n ≤ FABL.positiveBias fun x => f (FABL.setCoordinate x i 1)
theorem FABL.maximumInfluenceCoordinate_positiveBias_step {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (hp : 0 < FABL.positiveBias f) (hq : FABL.positiveBias f < 1) : have i := FABL.maximumInfluenceCoordinate f ⋯; FABL.positiveBias f + 2 * FABL.positiveBias f * (1 - FABL.positiveBias f) * FABL.briberyRate n ≤ FABL.positiveBias fun x => f (FABL.setCoordinate x i 1)
General KKL step in positive-bias form.
-
defdefined in FABL/Chapter09/KKLBribery.leancomplete
def FABL.briberySetsTo {n : ℕ} (f : FABL.BooleanFunction n) (hn : 0 < n) (target : ℝ) : ℕ → Finset (Fin n)
def FABL.briberySetsTo {n : ℕ} (f : FABL.BooleanFunction n) (hn : 0 < n) (target : ℝ) : ℕ → Finset (Fin n)
Greedy bribery sets for an arbitrary target mean.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.briberySetsTo_succ {n : ℕ} (f : FABL.BooleanFunction n) (hn : 0 < n) (target : ℝ) (t : ℕ) : FABL.briberySetsTo f hn target (t + 1) = if FABL.mean (FABL.bribeFunction f (FABL.briberySetsTo f hn target t) 1).toReal < target then insert (FABL.maximumInfluenceCoordinate (FABL.bribeFunction f (FABL.briberySetsTo f hn target t) 1) hn) (FABL.briberySetsTo f hn target t) else FABL.briberySetsTo f hn target t
theorem FABL.briberySetsTo_succ {n : ℕ} (f : FABL.BooleanFunction n) (hn : 0 < n) (target : ℝ) (t : ℕ) : FABL.briberySetsTo f hn target (t + 1) = if FABL.mean (FABL.bribeFunction f (FABL.briberySetsTo f hn target t) 1).toReal < target then insert (FABL.maximumInfluenceCoordinate (FABL.bribeFunction f (FABL.briberySetsTo f hn target t) 1) hn) (FABL.briberySetsTo f hn target t) else FABL.briberySetsTo f hn target t
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.card_briberySetsTo_le {n : ℕ} (f : FABL.BooleanFunction n) (hn : 0 < n) (target : ℝ) (t : ℕ) : (FABL.briberySetsTo f hn target t).card ≤ t
theorem FABL.card_briberySetsTo_le {n : ℕ} (f : FABL.BooleanFunction n) (hn : 0 < n) (target : ℝ) (t : ℕ) : (FABL.briberySetsTo f hn target t).card ≤ t
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.briberySetsTo_stable {n : ℕ} (f : FABL.BooleanFunction n) (hn : 0 < n) (target : ℝ) {t : ℕ} (htarget : target ≤ FABL.mean (FABL.bribeFunction f (FABL.briberySetsTo f hn target t) 1).toReal) (s : ℕ) : FABL.briberySetsTo f hn target (t + s) = FABL.briberySetsTo f hn target t
theorem FABL.briberySetsTo_stable {n : ℕ} (f : FABL.BooleanFunction n) (hn : 0 < n) (target : ℝ) {t : ℕ} (htarget : target ≤ FABL.mean (FABL.bribeFunction f (FABL.briberySetsTo f hn target t) 1).toReal) (s : ℕ) : FABL.briberySetsTo f hn target (t + s) = FABL.briberySetsTo f hn target t
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.maximumInfluenceCoordinate_fresh_of_bias {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (hn : 2 ≤ n) (hp : 0 < FABL.positiveBias (FABL.bribeFunction f J 1)) (hq : FABL.positiveBias (FABL.bribeFunction f J 1) < 1) : FABL.maximumInfluenceCoordinate (FABL.bribeFunction f J 1) ⋯ ∉ J
theorem FABL.maximumInfluenceCoordinate_fresh_of_bias {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (hn : 2 ≤ n) (hp : 0 < FABL.positiveBias (FABL.bribeFunction f J 1)) (hq : FABL.positiveBias (FABL.bribeFunction f J 1) < 1) : FABL.maximumInfluenceCoordinate (FABL.bribeFunction f J 1) ⋯ ∉ J
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.card_briberySetsTo_eq_of_mean_lt {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (target : ℝ) (htarget : target < 1) (hp0 : 0 < FABL.positiveBias f) {t : ℕ} (ht : t ≤ n) (hbelow : FABL.mean (FABL.bribeFunction f (FABL.briberySetsTo f ⋯ target t) 1).toReal < target) : (FABL.briberySetsTo f ⋯ target t).card = t
theorem FABL.card_briberySetsTo_eq_of_mean_lt {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (target : ℝ) (htarget : target < 1) (hp0 : 0 < FABL.positiveBias f) {t : ℕ} (ht : t ≤ n) (hbelow : FABL.mean (FABL.bribeFunction f (FABL.briberySetsTo f ⋯ target t) 1).toReal < target) : (FABL.briberySetsTo f ⋯ target t).card = t
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.positiveBias_odds_step {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (hp : 0 < FABL.positiveBias f) (hq : FABL.positiveBias f < 1) : have i := FABL.maximumInfluenceCoordinate f ⋯; have p' := FABL.positiveBias fun x => f (FABL.setCoordinate x i 1); (1 + 2 * FABL.briberyRate n) * FABL.positiveBias f * (1 - p') ≤ p' * (1 - FABL.positiveBias f)
theorem FABL.positiveBias_odds_step {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (hp : 0 < FABL.positiveBias f) (hq : FABL.positiveBias f < 1) : have i := FABL.maximumInfluenceCoordinate f ⋯; have p' := FABL.positiveBias fun x => f (FABL.setCoordinate x i 1); (1 + 2 * FABL.briberyRate n) * FABL.positiveBias f * (1 - p') ≤ p' * (1 - FABL.positiveBias f)
Cross-multiplied one-step odds growth.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.briberySetsTo_odds_invariant {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (target : ℝ) (htarget : target < 1) (hp0 : 0 < FABL.positiveBias f) (t : ℕ) : (1 + 2 * FABL.briberyRate n) ^ (FABL.briberySetsTo f ⋯ target t).card * FABL.positiveBias f * (1 - FABL.positiveBias (FABL.bribeFunction f (FABL.briberySetsTo f ⋯ target t) 1)) ≤ FABL.positiveBias (FABL.bribeFunction f (FABL.briberySetsTo f ⋯ target t) 1) * (1 - FABL.positiveBias f)
theorem FABL.briberySetsTo_odds_invariant {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (target : ℝ) (htarget : target < 1) (hp0 : 0 < FABL.positiveBias f) (t : ℕ) : (1 + 2 * FABL.briberyRate n) ^ (FABL.briberySetsTo f ⋯ target t).card * FABL.positiveBias f * (1 - FABL.positiveBias (FABL.bribeFunction f (FABL.briberySetsTo f ⋯ target t) 1)) ≤ FABL.positiveBias (FABL.bribeFunction f (FABL.briberySetsTo f ⋯ target t) 1) * (1 - FABL.positiveBias f)
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.mean_bribeFunction_univ_one_of_positiveBias {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hp : 0 < FABL.positiveBias f) : FABL.mean (FABL.bribeFunction f Finset.univ 1).toReal = 1
theorem FABL.mean_bribeFunction_univ_one_of_positiveBias {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hp : 0 < FABL.positiveBias f) : FABL.mean (FABL.bribeFunction f Finset.univ 1).toReal = 1
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.mean_briberySetsTo_final_ge_target {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (target : ℝ) (htarget : target < 1) (hp0 : 0 < FABL.positiveBias f) : target ≤ FABL.mean (FABL.bribeFunction f (FABL.briberySetsTo f ⋯ target n) 1).toReal
theorem FABL.mean_briberySetsTo_final_ge_target {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (target : ℝ) (htarget : target < 1) (hp0 : 0 < FABL.positiveBias f) : target ≤ FABL.mean (FABL.bribeFunction f (FABL.briberySetsTo f ⋯ target n) 1).toReal
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.mean_lt_target_of_final_card_gt {n : ℕ} (f : FABL.BooleanFunction n) (hn : 0 < n) (target : ℝ) {t : ℕ} (htn : t ≤ n) (hcard : t < (FABL.briberySetsTo f hn target n).card) : FABL.mean (FABL.bribeFunction f (FABL.briberySetsTo f hn target t) 1).toReal < target
theorem FABL.mean_lt_target_of_final_card_gt {n : ℕ} (f : FABL.BooleanFunction n) (hn : 0 < n) (target : ℝ) {t : ℕ} (htn : t ≤ n) (hcard : t < (FABL.briberySetsTo f hn target n).card) : FABL.mean (FABL.bribeFunction f (FABL.briberySetsTo f hn target t) 1).toReal < target
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.log_one_add_two_mul_briberyRate_ge {n : ℕ} (hn : 2 ≤ n) : FABL.briberyRate n ≤ Real.log (1 + 2 * FABL.briberyRate n)
theorem FABL.log_one_add_two_mul_briberyRate_ge {n : ℕ} (hn : 2 ≤ n) : FABL.briberyRate n ≤ Real.log (1 + 2 * FABL.briberyRate n)
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.exercise9_27_positive {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (δ ε : ℝ) (hδ : 0 < δ) (hvar : δ ≤ FABL.variance f.toReal) (hε : ε ∈ Set.Ioo 0 (1 / 2)) : ∃ J, 1 - ε ≤ FABL.mean (FABL.bribeFunction f J 1).toReal ∧ ↑J.card ≤ 1 + 100 * ↑n / Real.log ↑n * Real.log (8 / (ε * δ))
theorem FABL.exercise9_27_positive {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (δ ε : ℝ) (hδ : 0 < δ) (hvar : δ ≤ FABL.variance f.toReal) (hε : ε ∈ Set.Ioo 0 (1 / 2)) : ∃ J, 1 - ε ≤ FABL.mean (FABL.bribeFunction f J 1).toReal ∧ ↑J.card ≤ 1 + 100 * ↑n / Real.log ↑n * Real.log (8 / (ε * δ))
Exercise 9.27(a), with an explicit cardinality bound.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.variance_dualBooleanFunction {n : ℕ} (f : FABL.BooleanFunction n) : FABL.variance (FABL.dualBooleanFunction f).toReal = FABL.variance f.toReal
theorem FABL.variance_dualBooleanFunction {n : ℕ} (f : FABL.BooleanFunction n) : FABL.variance (FABL.dualBooleanFunction f).toReal = FABL.variance f.toReal
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.exercise9_27_coalition {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (δ ε : ℝ) (hδ : 0 < δ) (hvar : δ ≤ FABL.variance f.toReal) (hε : ε ∈ Set.Ioo 0 (1 / 2)) : ∃ J, 1 - ε ≤ FABL.coalitionalInfluence f J ∧ ↑J.card ≤ 2 + 200 * ↑n / Real.log ↑n * Real.log (8 / (ε * δ))
theorem FABL.exercise9_27_coalition {n : ℕ} (f : FABL.BooleanFunction n) (hf : Monotone f) (hn : 2 ≤ n) (δ ε : ℝ) (hδ : 0 < δ) (hvar : δ ≤ FABL.variance f.toReal) (hε : ε ∈ Set.Ioo 0 (1 / 2)) : ∃ J, 1 - ε ≤ FABL.coalitionalInfluence f J ∧ ↑J.card ≤ 2 + 200 * ↑n / Real.log ↑n * Real.log (8 / (ε * δ))
Exercise 9.27(b): union of the two directed bribery sets has total coalitional influence at least `1-ε`, with an explicit `O(log(1/(εδ))) · n/log n` bound.
-
FABL.coordinatePolarization[complete] -
FABL.coordinateExpectation_coordinatePolarization_toReal[complete] -
FABL.mean_coordinatePolarization[complete] -
FABL.uniformProbability_coordinatePolarization_eq[complete] -
FABL.setCoordinate_comm_of_ne[complete] -
FABL.isMonotoneInCoordinate_coordinatePolarization_self[complete] -
FABL.isMonotoneInCoordinate_coordinatePolarization[complete] -
FABL.coalitionCanAttain_coordinatePolarization_imp_of_mem[complete] -
FABL.coalitionCanAttain_coordinatePolarization_one_set_one_imp[complete] -
FABL.coalitionCanAttain_coordinatePolarization_one_set_neg_one_imp[complete] -
FABL.coalitionCanAttain_coordinatePolarization_neg_one_set_one_imp[complete] -
FABL.coalitionCanAttain_coordinatePolarization_neg_one_set_neg_one_imp[complete] -
FABL.mean_le_mean_of_pointwise[complete] -
FABL.indicator_pair_le_of_union_inter[complete] -
FABL.indicator_pair_le_of_imp[complete] -
FABL.coalitionSuccessProbability_coordinatePolarization_le[complete] -
FABL.coalitionalInfluenceToward_coordinatePolarization_le[complete] -
FABL.coalitionalInfluence_coordinatePolarization_le[complete] -
FABL.polarizeCoordinates[complete] -
FABL.mean_polarizeCoordinates[complete] -
FABL.coalitionalInfluenceToward_polarizeCoordinates_le[complete] -
FABL.coalitionalInfluence_polarizeCoordinates_le[complete] -
FABL.isMonotoneInCoordinate_polarizeCoordinates[complete] -
FABL.isMonotoneInCoordinate_polarizeCoordinates_of_mem[complete] -
FABL.le_bribeInput_one_of_isMonotoneInCoordinate[complete] -
FABL.monotone_of_isMonotoneInCoordinate[complete] -
FABL.monotonization[complete] -
FABL.mean_monotonization[complete] -
FABL.isMonotoneInCoordinate_monotonization[complete] -
FABL.monotone_monotonization[complete] -
FABL.coalitionalInfluenceToward_monotonization_le[complete] -
FABL.coalitionalInfluence_monotonization_le[complete] -
FABL.variance_monotonization[complete] -
FABL.exercise9_28_coalition[complete]
Exercise 9.28. Define the monotonization f^* of a Boolean function.
Prove that monotonization does not increase either toward-b or total
coalitional influence. Deduce for every Boolean f the existence of a
coalition of the cardinality in Exercise 9.27 whose influence is at least
1-\epsilon.
Lean code for Theorem9.7.29●34 declarations
Associated Lean declarations
-
FABL.coordinatePolarization[complete]
-
FABL.coordinateExpectation_coordinatePolarization_toReal[complete]
-
FABL.mean_coordinatePolarization[complete]
-
FABL.uniformProbability_coordinatePolarization_eq[complete]
-
FABL.setCoordinate_comm_of_ne[complete]
-
FABL.isMonotoneInCoordinate_coordinatePolarization_self[complete]
-
FABL.isMonotoneInCoordinate_coordinatePolarization[complete]
-
FABL.coalitionCanAttain_coordinatePolarization_imp_of_mem[complete]
-
FABL.coalitionCanAttain_coordinatePolarization_one_set_one_imp[complete]
-
FABL.coalitionCanAttain_coordinatePolarization_one_set_neg_one_imp[complete]
-
FABL.coalitionCanAttain_coordinatePolarization_neg_one_set_one_imp[complete]
-
FABL.coalitionCanAttain_coordinatePolarization_neg_one_set_neg_one_imp[complete]
-
FABL.mean_le_mean_of_pointwise[complete]
-
FABL.indicator_pair_le_of_union_inter[complete]
-
FABL.indicator_pair_le_of_imp[complete]
-
FABL.coalitionSuccessProbability_coordinatePolarization_le[complete]
-
FABL.coalitionalInfluenceToward_coordinatePolarization_le[complete]
-
FABL.coalitionalInfluence_coordinatePolarization_le[complete]
-
FABL.polarizeCoordinates[complete]
-
FABL.mean_polarizeCoordinates[complete]
-
FABL.coalitionalInfluenceToward_polarizeCoordinates_le[complete]
-
FABL.coalitionalInfluence_polarizeCoordinates_le[complete]
-
FABL.isMonotoneInCoordinate_polarizeCoordinates[complete]
-
FABL.isMonotoneInCoordinate_polarizeCoordinates_of_mem[complete]
-
FABL.le_bribeInput_one_of_isMonotoneInCoordinate[complete]
-
FABL.monotone_of_isMonotoneInCoordinate[complete]
-
FABL.monotonization[complete]
-
FABL.mean_monotonization[complete]
-
FABL.isMonotoneInCoordinate_monotonization[complete]
-
FABL.monotone_monotonization[complete]
-
FABL.coalitionalInfluenceToward_monotonization_le[complete]
-
FABL.coalitionalInfluence_monotonization_le[complete]
-
FABL.variance_monotonization[complete]
-
FABL.exercise9_28_coalition[complete]
-
FABL.coordinatePolarization[complete] -
FABL.coordinateExpectation_coordinatePolarization_toReal[complete] -
FABL.mean_coordinatePolarization[complete] -
FABL.uniformProbability_coordinatePolarization_eq[complete] -
FABL.setCoordinate_comm_of_ne[complete] -
FABL.isMonotoneInCoordinate_coordinatePolarization_self[complete] -
FABL.isMonotoneInCoordinate_coordinatePolarization[complete] -
FABL.coalitionCanAttain_coordinatePolarization_imp_of_mem[complete] -
FABL.coalitionCanAttain_coordinatePolarization_one_set_one_imp[complete] -
FABL.coalitionCanAttain_coordinatePolarization_one_set_neg_one_imp[complete] -
FABL.coalitionCanAttain_coordinatePolarization_neg_one_set_one_imp[complete] -
FABL.coalitionCanAttain_coordinatePolarization_neg_one_set_neg_one_imp[complete] -
FABL.mean_le_mean_of_pointwise[complete] -
FABL.indicator_pair_le_of_union_inter[complete] -
FABL.indicator_pair_le_of_imp[complete] -
FABL.coalitionSuccessProbability_coordinatePolarization_le[complete] -
FABL.coalitionalInfluenceToward_coordinatePolarization_le[complete] -
FABL.coalitionalInfluence_coordinatePolarization_le[complete] -
FABL.polarizeCoordinates[complete] -
FABL.mean_polarizeCoordinates[complete] -
FABL.coalitionalInfluenceToward_polarizeCoordinates_le[complete] -
FABL.coalitionalInfluence_polarizeCoordinates_le[complete] -
FABL.isMonotoneInCoordinate_polarizeCoordinates[complete] -
FABL.isMonotoneInCoordinate_polarizeCoordinates_of_mem[complete] -
FABL.le_bribeInput_one_of_isMonotoneInCoordinate[complete] -
FABL.monotone_of_isMonotoneInCoordinate[complete] -
FABL.monotonization[complete] -
FABL.mean_monotonization[complete] -
FABL.isMonotoneInCoordinate_monotonization[complete] -
FABL.monotone_monotonization[complete] -
FABL.coalitionalInfluenceToward_monotonization_le[complete] -
FABL.coalitionalInfluence_monotonization_le[complete] -
FABL.variance_monotonization[complete] -
FABL.exercise9_28_coalition[complete]
-
defdefined in FABL/Chapter09/KKLBribery.leancomplete
def FABL.coordinatePolarization {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.BooleanFunction n
def FABL.coordinatePolarization {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.BooleanFunction n
The `i`-polarization from Exercise 2.52: on every edge in direction `i`, place the larger value at its `+1` endpoint and the smaller value at its `-1` endpoint.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coordinateExpectation_coordinatePolarization_toReal {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : (FABL.coordinateExpectation i) (FABL.coordinatePolarization f i).toReal = (FABL.coordinateExpectation i) f.toReal
theorem FABL.coordinateExpectation_coordinatePolarization_toReal {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : (FABL.coordinateExpectation i) (FABL.coordinatePolarization f i).toReal = (FABL.coordinateExpectation i) f.toReal
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.mean_coordinatePolarization {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.mean (FABL.coordinatePolarization f i).toReal = FABL.mean f.toReal
theorem FABL.mean_coordinatePolarization {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.mean (FABL.coordinatePolarization f i).toReal = FABL.mean f.toReal
Exercise 2.52(a), Boolean specialization: a polarization preserves the mean.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.uniformProbability_coordinatePolarization_eq {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) (b : FABL.Sign) : (FABL.uniformProbability fun x => FABL.coordinatePolarization f i x = b) = FABL.uniformProbability fun x => f x = b
theorem FABL.uniformProbability_coordinatePolarization_eq {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) (b : FABL.Sign) : (FABL.uniformProbability fun x => FABL.coordinatePolarization f i x = b) = FABL.uniformProbability fun x => f x = b
Polarization preserves the probability of each Boolean output.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.setCoordinate_comm_of_ne {n : ℕ} (x : FABL.SignCube n) {i j : Fin n} (hij : i ≠ j) (a b : FABL.Sign) : FABL.setCoordinate (FABL.setCoordinate x i a) j b = FABL.setCoordinate (FABL.setCoordinate x j b) i a
theorem FABL.setCoordinate_comm_of_ne {n : ℕ} (x : FABL.SignCube n) {i j : Fin n} (hij : i ≠ j) (a b : FABL.Sign) : FABL.setCoordinate (FABL.setCoordinate x i a) j b = FABL.setCoordinate (FABL.setCoordinate x j b) i a
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.isMonotoneInCoordinate_coordinatePolarization_self {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.IsMonotoneInCoordinate (FABL.coordinatePolarization f i) i
theorem FABL.isMonotoneInCoordinate_coordinatePolarization_self {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.IsMonotoneInCoordinate (FABL.coordinatePolarization f i) i
Exercise 2.52(d): polarization makes the selected direction monotone.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.isMonotoneInCoordinate_coordinatePolarization {n : ℕ} (f : FABL.BooleanFunction n) {i j : Fin n} (hj : FABL.IsMonotoneInCoordinate f j) : FABL.IsMonotoneInCoordinate (FABL.coordinatePolarization f i) j
theorem FABL.isMonotoneInCoordinate_coordinatePolarization {n : ℕ} (f : FABL.BooleanFunction n) {i j : Fin n} (hj : FABL.IsMonotoneInCoordinate f j) : FABL.IsMonotoneInCoordinate (FABL.coordinatePolarization f i) j
Exercise 2.52(d): polarization preserves monotonicity in every direction that was already monotone.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionCanAttain_coordinatePolarization_imp_of_mem {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) (i : Fin n) (hiJ : i ∈ J) (x : FABL.SignCube n) : FABL.CoalitionCanAttain (FABL.coordinatePolarization f i) J b x → FABL.CoalitionCanAttain f J b x
theorem FABL.coalitionCanAttain_coordinatePolarization_imp_of_mem {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) (i : Fin n) (hiJ : i ∈ J) (x : FABL.SignCube n) : FABL.CoalitionCanAttain (FABL.coordinatePolarization f i) J b x → FABL.CoalitionCanAttain f J b x
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionCanAttain_coordinatePolarization_one_set_one_imp {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (i : Fin n) (hiJ : i ∉ J) (x : FABL.SignCube n) : FABL.CoalitionCanAttain (FABL.coordinatePolarization f i) J 1 (FABL.setCoordinate x i 1) → FABL.CoalitionCanAttain f J 1 (FABL.setCoordinate x i 1) ∨ FABL.CoalitionCanAttain f J 1 (FABL.setCoordinate x i (-1))
theorem FABL.coalitionCanAttain_coordinatePolarization_one_set_one_imp {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (i : Fin n) (hiJ : i ∉ J) (x : FABL.SignCube n) : FABL.CoalitionCanAttain (FABL.coordinatePolarization f i) J 1 (FABL.setCoordinate x i 1) → FABL.CoalitionCanAttain f J 1 (FABL.setCoordinate x i 1) ∨ FABL.CoalitionCanAttain f J 1 (FABL.setCoordinate x i (-1))
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionCanAttain_coordinatePolarization_one_set_neg_one_imp {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (i : Fin n) (hiJ : i ∉ J) (x : FABL.SignCube n) : FABL.CoalitionCanAttain (FABL.coordinatePolarization f i) J 1 (FABL.setCoordinate x i (-1)) → FABL.CoalitionCanAttain f J 1 (FABL.setCoordinate x i 1) ∧ FABL.CoalitionCanAttain f J 1 (FABL.setCoordinate x i (-1))
theorem FABL.coalitionCanAttain_coordinatePolarization_one_set_neg_one_imp {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (i : Fin n) (hiJ : i ∉ J) (x : FABL.SignCube n) : FABL.CoalitionCanAttain (FABL.coordinatePolarization f i) J 1 (FABL.setCoordinate x i (-1)) → FABL.CoalitionCanAttain f J 1 (FABL.setCoordinate x i 1) ∧ FABL.CoalitionCanAttain f J 1 (FABL.setCoordinate x i (-1))
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionCanAttain_coordinatePolarization_neg_one_set_one_imp {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (i : Fin n) (hiJ : i ∉ J) (x : FABL.SignCube n) : FABL.CoalitionCanAttain (FABL.coordinatePolarization f i) J (-1) (FABL.setCoordinate x i 1) → FABL.CoalitionCanAttain f J (-1) (FABL.setCoordinate x i 1) ∧ FABL.CoalitionCanAttain f J (-1) (FABL.setCoordinate x i (-1))
theorem FABL.coalitionCanAttain_coordinatePolarization_neg_one_set_one_imp {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (i : Fin n) (hiJ : i ∉ J) (x : FABL.SignCube n) : FABL.CoalitionCanAttain (FABL.coordinatePolarization f i) J (-1) (FABL.setCoordinate x i 1) → FABL.CoalitionCanAttain f J (-1) (FABL.setCoordinate x i 1) ∧ FABL.CoalitionCanAttain f J (-1) (FABL.setCoordinate x i (-1))
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionCanAttain_coordinatePolarization_neg_one_set_neg_one_imp {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (i : Fin n) (hiJ : i ∉ J) (x : FABL.SignCube n) : FABL.CoalitionCanAttain (FABL.coordinatePolarization f i) J (-1) (FABL.setCoordinate x i (-1)) → FABL.CoalitionCanAttain f J (-1) (FABL.setCoordinate x i 1) ∨ FABL.CoalitionCanAttain f J (-1) (FABL.setCoordinate x i (-1))
theorem FABL.coalitionCanAttain_coordinatePolarization_neg_one_set_neg_one_imp {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (i : Fin n) (hiJ : i ∉ J) (x : FABL.SignCube n) : FABL.CoalitionCanAttain (FABL.coordinatePolarization f i) J (-1) (FABL.setCoordinate x i (-1)) → FABL.CoalitionCanAttain f J (-1) (FABL.setCoordinate x i 1) ∨ FABL.CoalitionCanAttain f J (-1) (FABL.setCoordinate x i (-1))
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.mean_le_mean_of_pointwise {n : ℕ} {u v : FABL.SignCube n → ℝ} (huv : ∀ (x : FABL.SignCube n), u x ≤ v x) : FABL.mean u ≤ FABL.mean v
theorem FABL.mean_le_mean_of_pointwise {n : ℕ} {u v : FABL.SignCube n → ℝ} (huv : ∀ (x : FABL.SignCube n), u x ≤ v x) : FABL.mean u ≤ FABL.mean v
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.indicator_pair_le_of_union_inter (Pplus Pminus Aplus Aminus : Prop) [Decidable Pplus] [Decidable Pminus] [Decidable Aplus] [Decidable Aminus] (hplus : Pplus → Aplus ∨ Aminus) (hminus : Pminus → Aplus ∧ Aminus) : ((if Pplus then 1 else 0) + if Pminus then 1 else 0) ≤ (if Aplus then 1 else 0) + if Aminus then 1 else 0
theorem FABL.indicator_pair_le_of_union_inter (Pplus Pminus Aplus Aminus : Prop) [Decidable Pplus] [Decidable Pminus] [Decidable Aplus] [Decidable Aminus] (hplus : Pplus → Aplus ∨ Aminus) (hminus : Pminus → Aplus ∧ Aminus) : ((if Pplus then 1 else 0) + if Pminus then 1 else 0) ≤ (if Aplus then 1 else 0) + if Aminus then 1 else 0
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.indicator_pair_le_of_imp (Pplus Pminus Aplus Aminus : Prop) [Decidable Pplus] [Decidable Pminus] [Decidable Aplus] [Decidable Aminus] (hplus : Pplus → Aplus) (hminus : Pminus → Aminus) : ((if Pplus then 1 else 0) + if Pminus then 1 else 0) ≤ (if Aplus then 1 else 0) + if Aminus then 1 else 0
theorem FABL.indicator_pair_le_of_imp (Pplus Pminus Aplus Aminus : Prop) [Decidable Pplus] [Decidable Pminus] [Decidable Aplus] [Decidable Aminus] (hplus : Pplus → Aplus) (hminus : Pminus → Aminus) : ((if Pplus then 1 else 0) + if Pminus then 1 else 0) ≤ (if Aplus then 1 else 0) + if Aminus then 1 else 0
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionSuccessProbability_coordinatePolarization_le {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) (i : Fin n) : FABL.coalitionSuccessProbability (FABL.coordinatePolarization f i) J b ≤ FABL.coalitionSuccessProbability f J b
theorem FABL.coalitionSuccessProbability_coordinatePolarization_le {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) (i : Fin n) : FABL.coalitionSuccessProbability (FABL.coordinatePolarization f i) J b ≤ FABL.coalitionSuccessProbability f J b
Exercise 9.28(a), the key one-coordinate rearrangement inequality: polarization cannot increase the probability that a fixed coalition can force either prescribed output.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluenceToward_coordinatePolarization_le {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) (i : Fin n) : FABL.coalitionalInfluenceToward (FABL.coordinatePolarization f i) J b ≤ FABL.coalitionalInfluenceToward f J b
theorem FABL.coalitionalInfluenceToward_coordinatePolarization_le {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) (i : Fin n) : FABL.coalitionalInfluenceToward (FABL.coordinatePolarization f i) J b ≤ FABL.coalitionalInfluenceToward f J b
Exercise 9.28(a), directed form: a single polarization does not increase coalition influence toward either output.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluence_coordinatePolarization_le {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (i : Fin n) : FABL.coalitionalInfluence (FABL.coordinatePolarization f i) J ≤ FABL.coalitionalInfluence f J
theorem FABL.coalitionalInfluence_coordinatePolarization_le {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (i : Fin n) : FABL.coalitionalInfluence (FABL.coordinatePolarization f i) J ≤ FABL.coalitionalInfluence f J
Exercise 9.28(a), total form: a single polarization does not increase total coalitional influence.
-
defdefined in FABL/Chapter09/KKLBribery.leancomplete
def FABL.polarizeCoordinates {n : ℕ} : FABL.BooleanFunction n → List (Fin n) → FABL.BooleanFunction n
def FABL.polarizeCoordinates {n : ℕ} : FABL.BooleanFunction n → List (Fin n) → FABL.BooleanFunction n
Apply coordinate polarizations in the order given by a finite list.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.mean_polarizeCoordinates {n : ℕ} (f : FABL.BooleanFunction n) (is : List (Fin n)) : FABL.mean (FABL.polarizeCoordinates f is).toReal = FABL.mean f.toReal
theorem FABL.mean_polarizeCoordinates {n : ℕ} (f : FABL.BooleanFunction n) (is : List (Fin n)) : FABL.mean (FABL.polarizeCoordinates f is).toReal = FABL.mean f.toReal
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluenceToward_polarizeCoordinates_le {n : ℕ} (f : FABL.BooleanFunction n) (is : List (Fin n)) (J : Finset (Fin n)) (b : FABL.Sign) : FABL.coalitionalInfluenceToward (FABL.polarizeCoordinates f is) J b ≤ FABL.coalitionalInfluenceToward f J b
theorem FABL.coalitionalInfluenceToward_polarizeCoordinates_le {n : ℕ} (f : FABL.BooleanFunction n) (is : List (Fin n)) (J : Finset (Fin n)) (b : FABL.Sign) : FABL.coalitionalInfluenceToward (FABL.polarizeCoordinates f is) J b ≤ FABL.coalitionalInfluenceToward f J b
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluence_polarizeCoordinates_le {n : ℕ} (f : FABL.BooleanFunction n) (is : List (Fin n)) (J : Finset (Fin n)) : FABL.coalitionalInfluence (FABL.polarizeCoordinates f is) J ≤ FABL.coalitionalInfluence f J
theorem FABL.coalitionalInfluence_polarizeCoordinates_le {n : ℕ} (f : FABL.BooleanFunction n) (is : List (Fin n)) (J : Finset (Fin n)) : FABL.coalitionalInfluence (FABL.polarizeCoordinates f is) J ≤ FABL.coalitionalInfluence f J
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.isMonotoneInCoordinate_polarizeCoordinates {n : ℕ} (f : FABL.BooleanFunction n) (is : List (Fin n)) (j : Fin n) (hj : FABL.IsMonotoneInCoordinate f j) : FABL.IsMonotoneInCoordinate (FABL.polarizeCoordinates f is) j
theorem FABL.isMonotoneInCoordinate_polarizeCoordinates {n : ℕ} (f : FABL.BooleanFunction n) (is : List (Fin n)) (j : Fin n) (hj : FABL.IsMonotoneInCoordinate f j) : FABL.IsMonotoneInCoordinate (FABL.polarizeCoordinates f is) j
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.isMonotoneInCoordinate_polarizeCoordinates_of_mem {n : ℕ} (f : FABL.BooleanFunction n) (is : List (Fin n)) (j : Fin n) (hj : j ∈ is) : FABL.IsMonotoneInCoordinate (FABL.polarizeCoordinates f is) j
theorem FABL.isMonotoneInCoordinate_polarizeCoordinates_of_mem {n : ℕ} (f : FABL.BooleanFunction n) (is : List (Fin n)) (j : Fin n) (hj : j ∈ is) : FABL.IsMonotoneInCoordinate (FABL.polarizeCoordinates f is) j
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.le_bribeInput_one_of_isMonotoneInCoordinate {n : ℕ} (f : FABL.BooleanFunction n) (hf : ∀ (i : Fin n), FABL.IsMonotoneInCoordinate f i) (J : Finset (Fin n)) (x : FABL.SignCube n) : f x ≤ f (FABL.bribeInput J 1 x)
theorem FABL.le_bribeInput_one_of_isMonotoneInCoordinate {n : ℕ} (f : FABL.BooleanFunction n) (hf : ∀ (i : Fin n), FABL.IsMonotoneInCoordinate f i) (J : Finset (Fin n)) (x : FABL.SignCube n) : f x ≤ f (FABL.bribeInput J 1 x)
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.monotone_of_isMonotoneInCoordinate {n : ℕ} (f : FABL.BooleanFunction n) (hf : ∀ (i : Fin n), FABL.IsMonotoneInCoordinate f i) : Monotone f
theorem FABL.monotone_of_isMonotoneInCoordinate {n : ℕ} (f : FABL.BooleanFunction n) (hf : ∀ (i : Fin n), FABL.IsMonotoneInCoordinate f i) : Monotone f
Coordinatewise monotonicity on every direction is equivalent to monotonicity for the product order; this is the direction needed for the monotonization.
-
defdefined in FABL/Chapter09/KKLBribery.leancomplete
def FABL.monotonization {n : ℕ} (f : FABL.BooleanFunction n) : FABL.BooleanFunction n
def FABL.monotonization {n : ℕ} (f : FABL.BooleanFunction n) : FABL.BooleanFunction n
Exercise 9.28's monotonization `f*`, obtained by polarizing once in each coordinate.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.mean_monotonization {n : ℕ} (f : FABL.BooleanFunction n) : FABL.mean (FABL.monotonization f).toReal = FABL.mean f.toReal
theorem FABL.mean_monotonization {n : ℕ} (f : FABL.BooleanFunction n) : FABL.mean (FABL.monotonization f).toReal = FABL.mean f.toReal
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.isMonotoneInCoordinate_monotonization {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.IsMonotoneInCoordinate (FABL.monotonization f) i
theorem FABL.isMonotoneInCoordinate_monotonization {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) : FABL.IsMonotoneInCoordinate (FABL.monotonization f) i
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.monotone_monotonization {n : ℕ} (f : FABL.BooleanFunction n) : Monotone (FABL.monotonization f)
theorem FABL.monotone_monotonization {n : ℕ} (f : FABL.BooleanFunction n) : Monotone (FABL.monotonization f)
Exercise 9.28: the full polarization is monotone.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluenceToward_monotonization_le {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) : FABL.coalitionalInfluenceToward (FABL.monotonization f) J b ≤ FABL.coalitionalInfluenceToward f J b
theorem FABL.coalitionalInfluenceToward_monotonization_le {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) (b : FABL.Sign) : FABL.coalitionalInfluenceToward (FABL.monotonization f) J b ≤ FABL.coalitionalInfluenceToward f J b
Exercise 9.28(a), directed form for the full monotonization.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.coalitionalInfluence_monotonization_le {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) : FABL.coalitionalInfluence (FABL.monotonization f) J ≤ FABL.coalitionalInfluence f J
theorem FABL.coalitionalInfluence_monotonization_le {n : ℕ} (f : FABL.BooleanFunction n) (J : Finset (Fin n)) : FABL.coalitionalInfluence (FABL.monotonization f) J ≤ FABL.coalitionalInfluence f J
Exercise 9.28(a), total form for the full monotonization.
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.variance_monotonization {n : ℕ} (f : FABL.BooleanFunction n) : FABL.variance (FABL.monotonization f).toReal = FABL.variance f.toReal
theorem FABL.variance_monotonization {n : ℕ} (f : FABL.BooleanFunction n) : FABL.variance (FABL.monotonization f).toReal = FABL.variance f.toReal
-
theoremdefined in FABL/Chapter09/KKLBribery.leancomplete
theorem FABL.exercise9_28_coalition {n : ℕ} (f : FABL.BooleanFunction n) (hn : 2 ≤ n) (δ ε : ℝ) (hδ : 0 < δ) (hvar : δ ≤ FABL.variance f.toReal) (hε : ε ∈ Set.Ioo 0 (1 / 2)) : ∃ J, 1 - ε ≤ FABL.coalitionalInfluence f J ∧ ↑J.card ≤ 2 + 200 * ↑n / Real.log ↑n * Real.log (8 / (ε * δ))
theorem FABL.exercise9_28_coalition {n : ℕ} (f : FABL.BooleanFunction n) (hn : 2 ≤ n) (δ ε : ℝ) (hδ : 0 < δ) (hvar : δ ≤ FABL.variance f.toReal) (hε : ε ∈ Set.Ioo 0 (1 / 2)) : ∃ J, 1 - ε ≤ FABL.coalitionalInfluence f J ∧ ↑J.card ≤ 2 + 200 * ↑n / Real.log ↑n * Real.log (8 / (ε * δ))
Exercise 9.28(b): the general coalition theorem for an arbitrary Boolean function. The explicit bound is inherited unchanged from Exercise 9.27 after monotonization.
Exercise 9.29. Establish the general-variance KKL Edge-Isoperimetric
Theorem. In place of the unbiased spectral step prove
3\sum_{|S|\ge1}(1/3)^{|S|}\widehat f(S)^2
\ge
3\operatorname{Var}[f]
3^{-\mathbf I[f]/\operatorname{Var}[f]}.
-
FABL.variance_mul_rho_rpow_sub_one_le_totalStableInfluence[complete] -
FABL.totalStableInfluence_le_maximumInfluence_rpow_mul[complete] -
FABL.exercise9_30Rho[complete] -
FABL.exercise9_30Rho_mem_Ioc[complete] -
FABL.exercise9_30_exponent_identity[complete] -
FABL.exercise9_30_compact[complete] -
FABL.exercise9_30_rho_form[complete] -
FABL.exercise9_30_parameterized[complete] -
FABL.exercise9_30LogRemainder[complete] -
FABL.exercise9_30LogRemainder_nonneg[complete] -
FABL.exercise9_30_rho_rpow_inv_lower[complete] -
FABL.exercise9_30_refined[complete] -
FABL.exercise9_30KKLError[complete] -
FABL.exercise9_30_asymptotic_bound_of_large[complete] -
FABL.tendsto_exercise9_30KKLError[complete] -
FABL.eventually_exercise9_30_numeric_conditions[complete] -
FABL.eventually_exercise9_30_asymptotic_kkl[complete]
Exercise 9.30. For 0<\delta<1, prove
\operatorname{MaxInf}[f]
\ge
\left(\frac{1+\delta}{1-\delta}\right)^{1/\delta}
\left(\frac1{\widetilde I[f]}\right)^{1/\delta}
\left(\frac{1-\delta}{1+\delta}\right)^{\widetilde I[f]/\delta}.
Deduce a \widetilde\Omega(C^{-\widetilde I[f]}) bound for every
C>e^2. Taking
\delta=1/(2\widetilde I[f]^{1/3}), obtain the refined explicit bound in
the exercise and conclude
\operatorname{MaxInf}[f]
\ge
\frac12\operatorname{Var}[f]
\frac{\ln n}{n}(1-o_n(1)).
Lean code for Lemma9.7.31●17 declarations
Associated Lean declarations
-
FABL.variance_mul_rho_rpow_sub_one_le_totalStableInfluence[complete]
-
FABL.totalStableInfluence_le_maximumInfluence_rpow_mul[complete]
-
FABL.exercise9_30Rho[complete]
-
FABL.exercise9_30Rho_mem_Ioc[complete]
-
FABL.exercise9_30_exponent_identity[complete]
-
FABL.exercise9_30_compact[complete]
-
FABL.exercise9_30_rho_form[complete]
-
FABL.exercise9_30_parameterized[complete]
-
FABL.exercise9_30LogRemainder[complete]
-
FABL.exercise9_30LogRemainder_nonneg[complete]
-
FABL.exercise9_30_rho_rpow_inv_lower[complete]
-
FABL.exercise9_30_refined[complete]
-
FABL.exercise9_30KKLError[complete]
-
FABL.exercise9_30_asymptotic_bound_of_large[complete]
-
FABL.tendsto_exercise9_30KKLError[complete]
-
FABL.eventually_exercise9_30_numeric_conditions[complete]
-
FABL.eventually_exercise9_30_asymptotic_kkl[complete]
-
FABL.variance_mul_rho_rpow_sub_one_le_totalStableInfluence[complete] -
FABL.totalStableInfluence_le_maximumInfluence_rpow_mul[complete] -
FABL.exercise9_30Rho[complete] -
FABL.exercise9_30Rho_mem_Ioc[complete] -
FABL.exercise9_30_exponent_identity[complete] -
FABL.exercise9_30_compact[complete] -
FABL.exercise9_30_rho_form[complete] -
FABL.exercise9_30_parameterized[complete] -
FABL.exercise9_30LogRemainder[complete] -
FABL.exercise9_30LogRemainder_nonneg[complete] -
FABL.exercise9_30_rho_rpow_inv_lower[complete] -
FABL.exercise9_30_refined[complete] -
FABL.exercise9_30KKLError[complete] -
FABL.exercise9_30_asymptotic_bound_of_large[complete] -
FABL.tendsto_exercise9_30KKLError[complete] -
FABL.eventually_exercise9_30_numeric_conditions[complete] -
FABL.eventually_exercise9_30_asymptotic_kkl[complete]
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.variance_mul_rho_rpow_sub_one_le_totalStableInfluence {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) (rho : ℝ) (hrho : rho ∈ Set.Ioc 0 1) : FABL.variance f.toReal * rho ^ (FABL.totalInfluence f.toReal / FABL.variance f.toReal - 1) ≤ FABL.totalStableInfluence rho f.toReal
theorem FABL.variance_mul_rho_rpow_sub_one_le_totalStableInfluence {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) (rho : ℝ) (hrho : rho ∈ Set.Ioc 0 1) : FABL.variance f.toReal * rho ^ (FABL.totalInfluence f.toReal / FABL.variance f.toReal - 1) ≤ FABL.totalStableInfluence rho f.toReal
The general spectral Jensen lower bound used in Exercise 9.30.
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.totalStableInfluence_le_maximumInfluence_rpow_mul {n : ℕ} (f : FABL.BooleanFunction n) (delta rho : ℝ) (hdelta : 0 ≤ delta) (hrho : rho ∈ Set.Icc 0 1) (hexponent : 2 / (1 + rho) = 1 + delta) : FABL.totalStableInfluence rho f.toReal ≤ FABL.maximumInfluence f ^ delta * FABL.totalInfluence f.toReal
theorem FABL.totalStableInfluence_le_maximumInfluence_rpow_mul {n : ℕ} (f : FABL.BooleanFunction n) (delta rho : ℝ) (hdelta : 0 ≤ delta) (hrho : rho ∈ Set.Icc 0 1) (hexponent : 2 / (1 + rho) = 1 + delta) : FABL.totalStableInfluence rho f.toReal ≤ FABL.maximumInfluence f ^ delta * FABL.totalInfluence f.toReal
Corollary 9.25 summed over coordinates and bounded by maximum influence.
-
defdefined in FABL/Chapter09/ImprovedKKL.leancomplete
def FABL.exercise9_30Rho (delta : ℝ) : ℝ
def FABL.exercise9_30Rho (delta : ℝ) : ℝ
The correlation parameter `rho = (1-delta)/(1+delta)` from Exercise 9.30.
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.exercise9_30Rho_mem_Ioc {delta : ℝ} (hdelta : delta ∈ Set.Ioo 0 1) : FABL.exercise9_30Rho delta ∈ Set.Ioc 0 1
theorem FABL.exercise9_30Rho_mem_Ioc {delta : ℝ} (hdelta : delta ∈ Set.Ioo 0 1) : FABL.exercise9_30Rho delta ∈ Set.Ioc 0 1
The Exercise 9.30 correlation lies in `(0,1]`.
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.exercise9_30_exponent_identity {delta : ℝ} (hdelta : delta ∈ Set.Ioo 0 1) : 2 / (1 + FABL.exercise9_30Rho delta) = 1 + delta
theorem FABL.exercise9_30_exponent_identity {delta : ℝ} (hdelta : delta ∈ Set.Ioo 0 1) : 2 / (1 + FABL.exercise9_30Rho delta) = 1 + delta
The chosen correlation makes the stable-influence exponent exactly `1+delta`.
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.exercise9_30_compact {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) (delta : ℝ) (hdelta : delta ∈ Set.Ioo 0 1) : (FABL.exercise9_30Rho delta ^ (FABL.totalInfluence f.toReal / FABL.variance f.toReal - 1) / (FABL.totalInfluence f.toReal / FABL.variance f.toReal)) ^ delta⁻¹ ≤ FABL.maximumInfluence f
theorem FABL.exercise9_30_compact {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) (delta : ℝ) (hdelta : delta ∈ Set.Ioo 0 1) : (FABL.exercise9_30Rho delta ^ (FABL.totalInfluence f.toReal / FABL.variance f.toReal - 1) / (FABL.totalInfluence f.toReal / FABL.variance f.toReal)) ^ delta⁻¹ ≤ FABL.maximumInfluence f
Exercise 9.30(a) in compact normalized form.
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.exercise9_30_rho_form {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) (delta : ℝ) (hdelta : delta ∈ Set.Ioo 0 1) : (FABL.exercise9_30Rho delta)⁻¹ ^ delta⁻¹ * (FABL.totalInfluence f.toReal / FABL.variance f.toReal)⁻¹ ^ delta⁻¹ * FABL.exercise9_30Rho delta ^ (FABL.totalInfluence f.toReal / FABL.variance f.toReal / delta) ≤ FABL.maximumInfluence f
theorem FABL.exercise9_30_rho_form {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) (delta : ℝ) (hdelta : delta ∈ Set.Ioo 0 1) : (FABL.exercise9_30Rho delta)⁻¹ ^ delta⁻¹ * (FABL.totalInfluence f.toReal / FABL.variance f.toReal)⁻¹ ^ delta⁻¹ * FABL.exercise9_30Rho delta ^ (FABL.totalInfluence f.toReal / FABL.variance f.toReal / delta) ≤ FABL.maximumInfluence f
Exercise 9.30(a) with the three normalized factors separated.
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.exercise9_30_parameterized {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) (delta : ℝ) (hdelta : delta ∈ Set.Ioo 0 1) : ((1 + delta) / (1 - delta)) ^ (1 / delta) * (1 / (FABL.totalInfluence f.toReal / FABL.variance f.toReal)) ^ (1 / delta) * ((1 - delta) / (1 + delta)) ^ (FABL.totalInfluence f.toReal / FABL.variance f.toReal / delta) ≤ FABL.maximumInfluence f
theorem FABL.exercise9_30_parameterized {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) (delta : ℝ) (hdelta : delta ∈ Set.Ioo 0 1) : ((1 + delta) / (1 - delta)) ^ (1 / delta) * (1 / (FABL.totalInfluence f.toReal / FABL.variance f.toReal)) ^ (1 / delta) * ((1 - delta) / (1 + delta)) ^ (FABL.totalInfluence f.toReal / FABL.variance f.toReal / delta) ≤ FABL.maximumInfluence f
Exercise 9.30(a), exactly in the displayed book parameterization.
-
defdefined in FABL/Chapter09/ImprovedKKL.leancomplete
def FABL.exercise9_30LogRemainder (delta : ℝ) : ℝ
def FABL.exercise9_30LogRemainder (delta : ℝ) : ℝ
The logarithmic remainder in the elementary estimate used by Exercise 9.30(b).
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.exercise9_30LogRemainder_nonneg {delta : ℝ} (hdelta : delta ∈ Set.Icc 0 (1 / 2)) : 0 ≤ FABL.exercise9_30LogRemainder delta
theorem FABL.exercise9_30LogRemainder_nonneg {delta : ℝ} (hdelta : delta ∈ Set.Icc 0 (1 / 2)) : 0 ≤ FABL.exercise9_30LogRemainder delta
The logarithmic remainder is nonnegative on `[0,1/2]`.
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.exercise9_30_rho_rpow_inv_lower {delta : ℝ} (hdelta : delta ∈ Set.Ioc 0 (1 / 2)) : Real.exp (-2 - delta ^ 2) ≤ FABL.exercise9_30Rho delta ^ delta⁻¹
theorem FABL.exercise9_30_rho_rpow_inv_lower {delta : ℝ} (hdelta : delta ∈ Set.Ioc 0 (1 / 2)) : Real.exp (-2 - delta ^ 2) ≤ FABL.exercise9_30Rho delta ^ delta⁻¹
Exercise 9.30(b)'s hinted estimate `exp (-2-delta^2) ≤ ((1-delta)/(1+delta))^(1/delta)`.
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.exercise9_30_refined {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) : have K := FABL.totalInfluence f.toReal / FABL.variance f.toReal; Real.exp (-2 * K) * Real.exp 2 * K⁻¹ ^ (2 * K ^ (1 / 3)) * Real.exp (-(1 / 4) * K ^ (1 / 3)) ≤ FABL.maximumInfluence f
theorem FABL.exercise9_30_refined {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) : have K := FABL.totalInfluence f.toReal / FABL.variance f.toReal; Real.exp (-2 * K) * Real.exp 2 * K⁻¹ ^ (2 * K ^ (1 / 3)) * Real.exp (-(1 / 4) * K ^ (1 / 3)) ≤ FABL.maximumInfluence f
Exercise 9.30(b)'s refined explicit maximum-influence lower bound.
-
defdefined in FABL/Chapter09/ImprovedKKL.leancomplete
def FABL.exercise9_30KKLError (n : ℕ) : ℝ
def FABL.exercise9_30KKLError (n : ℕ) : ℝ
The explicit error term used for Exercise 9.30(c).
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.exercise9_30_asymptotic_bound_of_large (n : ℕ) (hlog : 1 < Real.log ↑n) (hpower : 96 * Real.log ↑n ^ (5 / 12) ≤ √(Real.log ↑n)) (hexp : Real.log ↑n / 2 ≤ Real.exp (√(Real.log ↑n) / 2)) (f : FABL.BooleanFunction n) : 1 / 2 * FABL.variance f.toReal * Real.log ↑n / ↑n * (1 - FABL.exercise9_30KKLError n) ≤ FABL.maximumInfluence f
theorem FABL.exercise9_30_asymptotic_bound_of_large (n : ℕ) (hlog : 1 < Real.log ↑n) (hpower : 96 * Real.log ↑n ^ (5 / 12) ≤ √(Real.log ↑n)) (hexp : Real.log ↑n / 2 ≤ Real.exp (√(Real.log ↑n) / 2)) (f : FABL.BooleanFunction n) : 1 / 2 * FABL.variance f.toReal * Real.log ↑n / ↑n * (1 - FABL.exercise9_30KKLError n) ≤ FABL.maximumInfluence f
Exercise 9.30(c) under three purely numerical large-dimension conditions. These conditions are independent of the Boolean function and are discharged asymptotically below.
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.tendsto_exercise9_30KKLError : Filter.Tendsto FABL.exercise9_30KKLError Filter.atTop (nhds 0)
theorem FABL.tendsto_exercise9_30KKLError : Filter.Tendsto FABL.exercise9_30KKLError Filter.atTop (nhds 0)
The explicit error in Exercise 9.30(c) tends to zero.
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.eventually_exercise9_30_numeric_conditions : ∀ᶠ (n : ℕ) in Filter.atTop, 1 < Real.log ↑n ∧ 96 * Real.log ↑n ^ (5 / 12) ≤ √(Real.log ↑n) ∧ Real.log ↑n / 2 ≤ Real.exp (√(Real.log ↑n) / 2)
theorem FABL.eventually_exercise9_30_numeric_conditions : ∀ᶠ (n : ℕ) in Filter.atTop, 1 < Real.log ↑n ∧ 96 * Real.log ↑n ^ (5 / 12) ≤ √(Real.log ↑n) ∧ Real.log ↑n / 2 ≤ Real.exp (√(Real.log ↑n) / 2)
The numerical hypotheses of `exercise9_30_asymptotic_bound_of_large` hold eventually.
-
theoremdefined in FABL/Chapter09/ImprovedKKL.leancomplete
theorem FABL.eventually_exercise9_30_asymptotic_kkl : ∀ᶠ (n : ℕ) in Filter.atTop, ∀ (f : FABL.BooleanFunction n), 1 / 2 * FABL.variance f.toReal * Real.log ↑n / ↑n * (1 - FABL.exercise9_30KKLError n) ≤ FABL.maximumInfluence f
theorem FABL.eventually_exercise9_30_asymptotic_kkl : ∀ᶠ (n : ℕ) in Filter.atTop, ∀ (f : FABL.BooleanFunction n), 1 / 2 * FABL.variance f.toReal * Real.log ↑n / ↑n * (1 - FABL.exercise9_30KKLError n) ≤ FABL.maximumInfluence f
Exercise 9.30(c): the sharp asymptotic KKL constant with an explicit `o(1)` error.
-
FABL.improvedFriedgutRho_pos[complete] -
FABL.improvedFriedgutRho_le_one[complete] -
FABL.improvedFriedgutRho_lt_one[complete] -
FABL.improvedFriedgutConstant_eq_inv_rho_sq[complete] -
FABL.two_div_eta_add_one_eq_inv_improvedFriedgutRho[complete] -
FABL.improvedFriedgutGeneralConstant_eq_inv_rho_rpow[complete] -
FABL.lowDegreeCoordinateMass_le_inv_rho_pow_mul_stableInfluence[complete] -
FABL.stableInfluence_improvedFriedgutRho_le[complete] -
FABL.improvedFriedgutThreshold_pos[complete] -
FABL.improvedFriedgutThreshold_rpow[complete] -
FABL.lowDegreeOutsideInfluentialMass_le_improved[complete] -
FABL.lowDegreeOutsideInfluentialMass_improvedThreshold_le[complete] -
FABL.fourierWeightOutside_improvedFriedgutFamily[complete] -
FABL.improvedFriedgutGeneralConstant_pow[complete] -
FABL.improvedFriedgut_generalDenominator_identity[complete] -
FABL.improvedFriedgutThreshold_lower[complete] -
FABL.improvedFriedgut_bookDenominator_identity[complete] -
FABL.improvedFriedgutSmallFamily[complete] -
FABL.fourierWeightOutside_improvedFriedgutSmallFamily_le_add[complete] -
FABL.improvedFriedgut_small_spectrum_concentrated[complete] -
FABL.improvedFriedgut_coordinateJunta_close[complete] -
FABL.improvedFriedgut_exists_close_junta_general[complete] -
FABL.improvedFriedgut_exists_close_junta[complete]
Exercise 9.31. For 0<\eta\le1, establish the improved
influential-coordinate cardinality claim in Remark 9.29 with
C(\eta)=(2/\eta+1)^2.
Lean code for Lemma9.7.32●23 declarations
Associated Lean declarations
-
FABL.improvedFriedgutRho_pos[complete]
-
FABL.improvedFriedgutRho_le_one[complete]
-
FABL.improvedFriedgutRho_lt_one[complete]
-
FABL.improvedFriedgutConstant_eq_inv_rho_sq[complete]
-
FABL.two_div_eta_add_one_eq_inv_improvedFriedgutRho[complete]
-
FABL.improvedFriedgutGeneralConstant_eq_inv_rho_rpow[complete]
-
FABL.lowDegreeCoordinateMass_le_inv_rho_pow_mul_stableInfluence[complete]
-
FABL.stableInfluence_improvedFriedgutRho_le[complete]
-
FABL.improvedFriedgutThreshold_pos[complete]
-
FABL.improvedFriedgutThreshold_rpow[complete]
-
FABL.lowDegreeOutsideInfluentialMass_le_improved[complete]
-
FABL.lowDegreeOutsideInfluentialMass_improvedThreshold_le[complete]
-
FABL.fourierWeightOutside_improvedFriedgutFamily[complete]
-
FABL.improvedFriedgutGeneralConstant_pow[complete]
-
FABL.improvedFriedgut_generalDenominator_identity[complete]
-
FABL.improvedFriedgutThreshold_lower[complete]
-
FABL.improvedFriedgut_bookDenominator_identity[complete]
-
FABL.improvedFriedgutSmallFamily[complete]
-
FABL.fourierWeightOutside_improvedFriedgutSmallFamily_le_add[complete]
-
FABL.improvedFriedgut_small_spectrum_concentrated[complete]
-
FABL.improvedFriedgut_coordinateJunta_close[complete]
-
FABL.improvedFriedgut_exists_close_junta_general[complete]
-
FABL.improvedFriedgut_exists_close_junta[complete]
-
FABL.improvedFriedgutRho_pos[complete] -
FABL.improvedFriedgutRho_le_one[complete] -
FABL.improvedFriedgutRho_lt_one[complete] -
FABL.improvedFriedgutConstant_eq_inv_rho_sq[complete] -
FABL.two_div_eta_add_one_eq_inv_improvedFriedgutRho[complete] -
FABL.improvedFriedgutGeneralConstant_eq_inv_rho_rpow[complete] -
FABL.lowDegreeCoordinateMass_le_inv_rho_pow_mul_stableInfluence[complete] -
FABL.stableInfluence_improvedFriedgutRho_le[complete] -
FABL.improvedFriedgutThreshold_pos[complete] -
FABL.improvedFriedgutThreshold_rpow[complete] -
FABL.lowDegreeOutsideInfluentialMass_le_improved[complete] -
FABL.lowDegreeOutsideInfluentialMass_improvedThreshold_le[complete] -
FABL.fourierWeightOutside_improvedFriedgutFamily[complete] -
FABL.improvedFriedgutGeneralConstant_pow[complete] -
FABL.improvedFriedgut_generalDenominator_identity[complete] -
FABL.improvedFriedgutThreshold_lower[complete] -
FABL.improvedFriedgut_bookDenominator_identity[complete] -
FABL.improvedFriedgutSmallFamily[complete] -
FABL.fourierWeightOutside_improvedFriedgutSmallFamily_le_add[complete] -
FABL.improvedFriedgut_small_spectrum_concentrated[complete] -
FABL.improvedFriedgut_coordinateJunta_close[complete] -
FABL.improvedFriedgut_exists_close_junta_general[complete] -
FABL.improvedFriedgut_exists_close_junta[complete]
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgutRho_pos {eta : ℝ} (heta : 0 < eta) : 0 < FABL.improvedFriedgutRho eta
theorem FABL.improvedFriedgutRho_pos {eta : ℝ} (heta : 0 < eta) : 0 < FABL.improvedFriedgutRho eta
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgutRho_le_one {eta : ℝ} (heta : 0 < eta) : FABL.improvedFriedgutRho eta ≤ 1
theorem FABL.improvedFriedgutRho_le_one {eta : ℝ} (heta : 0 < eta) : FABL.improvedFriedgutRho eta ≤ 1
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgutRho_lt_one {eta : ℝ} (heta : 0 < eta) : FABL.improvedFriedgutRho eta < 1
theorem FABL.improvedFriedgutRho_lt_one {eta : ℝ} (heta : 0 < eta) : FABL.improvedFriedgutRho eta < 1
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgutConstant_eq_inv_rho_sq {eta : ℝ} (heta : 0 < eta) : FABL.improvedFriedgutConstant eta = (FABL.improvedFriedgutRho eta)⁻¹ ^ 2
theorem FABL.improvedFriedgutConstant_eq_inv_rho_sq {eta : ℝ} (heta : 0 < eta) : FABL.improvedFriedgutConstant eta = (FABL.improvedFriedgutRho eta)⁻¹ ^ 2
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.two_div_eta_add_one_eq_inv_improvedFriedgutRho {eta : ℝ} (heta : 0 < eta) : 2 / eta + 1 = (FABL.improvedFriedgutRho eta)⁻¹
theorem FABL.two_div_eta_add_one_eq_inv_improvedFriedgutRho {eta : ℝ} (heta : 0 < eta) : 2 / eta + 1 = (FABL.improvedFriedgutRho eta)⁻¹
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgutGeneralConstant_eq_inv_rho_rpow {eta : ℝ} (heta : 0 < eta) : FABL.improvedFriedgutGeneralConstant eta = (FABL.improvedFriedgutRho eta)⁻¹ ^ (1 + eta)
theorem FABL.improvedFriedgutGeneralConstant_eq_inv_rho_rpow {eta : ℝ} (heta : 0 < eta) : FABL.improvedFriedgutGeneralConstant eta = (FABL.improvedFriedgutRho eta)⁻¹ ^ (1 + eta)
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.lowDegreeCoordinateMass_le_inv_rho_pow_mul_stableInfluence {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) (k : ℕ) {rho : ℝ} (hrhoPos : 0 < rho) (hrhoOne : rho ≤ 1) : FABL.lowDegreeCoordinateMass f i k ≤ rho⁻¹ ^ k * FABL.stableInfluence rho f.toReal i
theorem FABL.lowDegreeCoordinateMass_le_inv_rho_pow_mul_stableInfluence {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) (k : ℕ) {rho : ℝ} (hrhoPos : 0 < rho) (hrhoOne : rho ≤ 1) : FABL.lowDegreeCoordinateMass f i k ≤ rho⁻¹ ^ k * FABL.stableInfluence rho f.toReal i
Low-degree coordinate mass controlled by stable influence at an arbitrary positive correlation. This is the parameterized version of the first estimate in Theorem 9.28.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.stableInfluence_improvedFriedgutRho_le {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) {eta tau : ℝ} (heta : 0 < eta) (_htau : 0 < tau) (hi : FABL.booleanInfluence f i < tau) : FABL.stableInfluence (FABL.improvedFriedgutRho eta) f.toReal i ≤ tau ^ (1 / (1 + eta)) * FABL.booleanInfluence f i
theorem FABL.stableInfluence_improvedFriedgutRho_le {n : ℕ} (f : FABL.BooleanFunction n) (i : Fin n) {eta tau : ℝ} (heta : 0 < eta) (_htau : 0 < tau) (hi : FABL.booleanInfluence f i < tau) : FABL.stableInfluence (FABL.improvedFriedgutRho eta) f.toReal i ≤ tau ^ (1 / (1 + eta)) * FABL.booleanInfluence f i
Corollary 9.25 at the parameter of Remark 9.29, charged against a coordinate threshold.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgutThreshold_pos {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : 0 < FABL.improvedFriedgutThreshold f epsilon eta k
theorem FABL.improvedFriedgutThreshold_pos {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : 0 < FABL.improvedFriedgutThreshold f epsilon eta k
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgutThreshold_rpow {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : FABL.improvedFriedgutThreshold f epsilon eta k ^ (1 / (1 + eta)) = epsilon / FABL.totalInfluence f.toReal * FABL.improvedFriedgutRho eta ^ k
theorem FABL.improvedFriedgutThreshold_rpow {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : FABL.improvedFriedgutThreshold f epsilon eta k ^ (1 / (1 + eta)) = epsilon / FABL.totalInfluence f.toReal * FABL.improvedFriedgutRho eta ^ k
Taking the `1 / (1 + eta)` power of the improved threshold recovers the quantity which cancels the low-degree stable-influence estimate.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.lowDegreeOutsideInfluentialMass_le_improved {n : ℕ} (f : FABL.BooleanFunction n) {eta tau : ℝ} (heta : 0 < eta) (htau : 0 < tau) (k : ℕ) : FABL.lowDegreeOutsideInfluentialMass f tau k ≤ (FABL.improvedFriedgutRho eta)⁻¹ ^ k * tau ^ (1 / (1 + eta)) * FABL.totalInfluence f.toReal
theorem FABL.lowDegreeOutsideInfluentialMass_le_improved {n : ℕ} (f : FABL.BooleanFunction n) {eta tau : ℝ} (heta : 0 < eta) (htau : 0 < tau) (k : ℕ) : FABL.lowDegreeOutsideInfluentialMass f tau k ≤ (FABL.improvedFriedgutRho eta)⁻¹ ^ k * tau ^ (1 / (1 + eta)) * FABL.totalInfluence f.toReal
The improved low-degree mass bound obtained by summing Corollary 9.25 only over noninfluential coordinates.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.lowDegreeOutsideInfluentialMass_improvedThreshold_le {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : FABL.lowDegreeOutsideInfluentialMass f (FABL.improvedFriedgutThreshold f epsilon eta k) k ≤ epsilon
theorem FABL.lowDegreeOutsideInfluentialMass_improvedThreshold_le {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : FABL.lowDegreeOutsideInfluentialMass f (FABL.improvedFriedgutThreshold f epsilon eta k) k ≤ epsilon
At the improved threshold, the low-degree Fourier mass outside the influential set is at most `epsilon`.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.fourierWeightOutside_improvedFriedgutFamily {n : ℕ} (f : FABL.BooleanFunction n) (epsilon eta : ℝ) (k : ℕ) : FABL.fourierWeightOutside f.toReal (FABL.improvedFriedgutFamily f epsilon eta k) = FABL.lowDegreeOutsideInfluentialMass f (FABL.improvedFriedgutThreshold f epsilon eta k) k
theorem FABL.fourierWeightOutside_improvedFriedgutFamily {n : ℕ} (f : FABL.BooleanFunction n) (epsilon eta : ℝ) (k : ℕ) : FABL.fourierWeightOutside f.toReal (FABL.improvedFriedgutFamily f epsilon eta k) = FABL.lowDegreeOutsideInfluentialMass f (FABL.improvedFriedgutThreshold f epsilon eta k) k
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgutGeneralConstant_pow {eta : ℝ} (heta : 0 < eta) (k : ℕ) : FABL.improvedFriedgutGeneralConstant eta ^ k = ((FABL.improvedFriedgutRho eta)⁻¹ ^ k) ^ (1 + eta)
theorem FABL.improvedFriedgutGeneralConstant_pow {eta : ℝ} (heta : 0 < eta) (k : ℕ) : FABL.improvedFriedgutGeneralConstant eta ^ k = ((FABL.improvedFriedgutRho eta)⁻¹ ^ k) ^ (1 + eta)
Commuting the natural and real powers in the all-`eta` constant.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgut_generalDenominator_identity {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : FABL.totalInfluence f.toReal / FABL.improvedFriedgutThreshold f epsilon eta k = FABL.improvedFriedgutGeneralJuntaSizeTerm f epsilon eta k
theorem FABL.improvedFriedgut_generalDenominator_identity {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : FABL.totalInfluence f.toReal / FABL.improvedFriedgutThreshold f epsilon eta k = FABL.improvedFriedgutGeneralJuntaSizeTerm f epsilon eta k
Exact cardinal-quotient identity for every `eta > 0`.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgutThreshold_lower {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (hetaOne : eta ≤ 1) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : (epsilon / FABL.totalInfluence f.toReal) ^ (1 + eta) * (FABL.improvedFriedgutRho eta ^ k) ^ 2 ≤ FABL.improvedFriedgutThreshold f epsilon eta k
theorem FABL.improvedFriedgutThreshold_lower {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (hetaOne : eta ≤ 1) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : (epsilon / FABL.totalInfluence f.toReal) ^ (1 + eta) * (FABL.improvedFriedgutRho eta ^ k) ^ 2 ≤ FABL.improvedFriedgutThreshold f epsilon eta k
In the book-relevant range `eta <= 1`, the improved threshold is bounded below by the quantity whose reciprocal produces `C(eta)^k`.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgut_bookDenominator_identity {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : FABL.totalInfluence f.toReal / ((epsilon / FABL.totalInfluence f.toReal) ^ (1 + eta) * (FABL.improvedFriedgutRho eta ^ k) ^ 2) = FABL.improvedFriedgutJuntaSizeTerm f epsilon eta k
theorem FABL.improvedFriedgut_bookDenominator_identity {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) : FABL.totalInfluence f.toReal / ((epsilon / FABL.totalInfluence f.toReal) ^ (1 + eta) * (FABL.improvedFriedgutRho eta ^ k) ^ 2) = FABL.improvedFriedgutJuntaSizeTerm f epsilon eta k
The algebraic reciprocal identity behind the displayed size in Remark 9.29.
-
defdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
def FABL.improvedFriedgutSmallFamily {n : ℕ} (f : FABL.BooleanFunction n) (epsilon eta : ℝ) (k : ℕ) : Set (Finset (Fin n))
def FABL.improvedFriedgutSmallFamily {n : ℕ} (f : FABL.BooleanFunction n) (epsilon eta : ℝ) (k : ℕ) : Set (Finset (Fin n))
The low-degree family supported on the improved influential-coordinate set.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.fourierWeightOutside_improvedFriedgutSmallFamily_le_add {n : ℕ} (f : FABL.BooleanFunction n) (epsilon eta : ℝ) (k : ℕ) : FABL.fourierWeightOutside f.toReal (FABL.improvedFriedgutSmallFamily f epsilon eta k) ≤ FABL.fourierWeightOutside f.toReal (FABL.improvedFriedgutFamily f epsilon eta k) + FABL.fourierWeightAbove k f.toReal
theorem FABL.fourierWeightOutside_improvedFriedgutSmallFamily_le_add {n : ℕ} (f : FABL.BooleanFunction n) (epsilon eta : ℝ) (k : ℕ) : FABL.fourierWeightOutside f.toReal (FABL.improvedFriedgutSmallFamily f epsilon eta k) ≤ FABL.fourierWeightOutside f.toReal (FABL.improvedFriedgutFamily f epsilon eta k) + FABL.fourierWeightAbove k f.toReal
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgut_small_spectrum_concentrated {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) (hdegree : FABL.IsFourierSpectrumConcentratedUpTo f.toReal epsilon ↑k) : FABL.IsFourierSpectrumConcentratedOn f.toReal (2 * epsilon) (FABL.improvedFriedgutSmallFamily f epsilon eta k)
theorem FABL.improvedFriedgut_small_spectrum_concentrated {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) (hdegree : FABL.IsFourierSpectrumConcentratedUpTo f.toReal epsilon ↑k) : FABL.IsFourierSpectrumConcentratedOn f.toReal (2 * epsilon) (FABL.improvedFriedgutSmallFamily f epsilon eta k)
Remark 9.29's two-sided concentration conclusion after adding a degree-`k` tail bound.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgut_coordinateJunta_close {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) (hdegree : FABL.IsFourierSpectrumConcentratedUpTo f.toReal epsilon ↑k) : FABL.relativeHammingDist f (FABL.coordinateJuntaApproximation f (FABL.influentialCoordinates f (FABL.improvedFriedgutThreshold f epsilon eta k))) ≤ epsilon
theorem FABL.improvedFriedgut_coordinateJunta_close {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) (hdegree : FABL.IsFourierSpectrumConcentratedUpTo f.toReal epsilon ↑k) : FABL.relativeHammingDist f (FABL.coordinateJuntaApproximation f (FABL.influentialCoordinates f (FABL.improvedFriedgutThreshold f epsilon eta k))) ≤ epsilon
The rounded conditional expectation at the improved coordinate threshold is `epsilon`-close to the original Boolean function.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgut_exists_close_junta_general {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) (hdegree : FABL.IsFourierSpectrumConcentratedUpTo f.toReal epsilon ↑k) : ∃ J g, ↑J.card ≤ FABL.improvedFriedgutGeneralJuntaSizeTerm f epsilon eta k ∧ FABL.IsFourierSpectrumConcentratedOn f.toReal (2 * epsilon) {S | S ⊆ J ∧ S.card ≤ k} ∧ FABL.IsKJunta g J.card ∧ FABL.relativeHammingDist f g ≤ epsilon
theorem FABL.improvedFriedgut_exists_close_junta_general {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) (hdegree : FABL.IsFourierSpectrumConcentratedUpTo f.toReal epsilon ↑k) : ∃ J g, ↑J.card ≤ FABL.improvedFriedgutGeneralJuntaSizeTerm f epsilon eta k ∧ FABL.IsFourierSpectrumConcentratedOn f.toReal (2 * epsilon) {S | S ⊆ J ∧ S.card ≤ k} ∧ FABL.IsKJunta g J.card ∧ FABL.relativeHammingDist f g ≤ epsilon
The all-positive-`eta` junta conclusion with the direct `(2 / eta + 1)^(1 + eta)` constant.
-
theoremdefined in FABL/Chapter09/ImprovedFriedgut.leancomplete
theorem FABL.improvedFriedgut_exists_close_junta {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (hetaOne : eta ≤ 1) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) (hdegree : FABL.IsFourierSpectrumConcentratedUpTo f.toReal epsilon ↑k) : ∃ J g, ↑J.card ≤ FABL.improvedFriedgutJuntaSizeTerm f epsilon eta k ∧ FABL.IsFourierSpectrumConcentratedOn f.toReal (2 * epsilon) {S | S ⊆ J ∧ S.card ≤ k} ∧ FABL.IsKJunta g J.card ∧ FABL.relativeHammingDist f g ≤ epsilon
theorem FABL.improvedFriedgut_exists_close_junta {n : ℕ} (f : FABL.BooleanFunction n) {epsilon eta : ℝ} (hepsilon : 0 < epsilon) (heta : 0 < eta) (hetaOne : eta ≤ 1) (k : ℕ) (hI : 0 < FABL.totalInfluence f.toReal) (hdegree : FABL.IsFourierSpectrumConcentratedUpTo f.toReal epsilon ↑k) : ∃ J g, ↑J.card ≤ FABL.improvedFriedgutJuntaSizeTerm f epsilon eta k ∧ FABL.IsFourierSpectrumConcentratedOn f.toReal (2 * epsilon) {S | S ⊆ J ∧ S.card ≤ k} ∧ FABL.IsKJunta g J.card ∧ FABL.relativeHammingDist f g ≤ epsilon
Exercise 9.31 / Remark 9.29: the improved explicit junta conclusion.
-
FABL.varianceFriedgutError[complete] -
FABL.varianceFriedgutDegree[complete] -
FABL.varianceFriedgutCoordinates[complete] -
FABL.varianceFriedgutDegree_eq[complete] -
FABL.card_varianceFriedgutCoordinates_le[complete] -
FABL.varianceLargeCoeffFamily[complete] -
FABL.three_variance_div_four_le_sum_varianceLargeCoeffFamily[complete] -
FABL.exists_varianceSensitive_large_fourierCoeff[complete]
Exercise 9.32. If f is nonconstant, prove there is
S\subseteq[n] such that
0<|S|\le O\left(\frac{\mathbf I[f]}{\operatorname{Var}[f]}\right)
and
\widehat f(S)^2
\ge
\exp\left(
-O\left(\frac{\mathbf I[f]^2}{\operatorname{Var}[f]^2}\right)
\right).
Lean code for Theorem9.7.33●8 declarations
Associated Lean declarations
-
FABL.varianceFriedgutError[complete]
-
FABL.varianceFriedgutDegree[complete]
-
FABL.varianceFriedgutCoordinates[complete]
-
FABL.varianceFriedgutDegree_eq[complete]
-
FABL.card_varianceFriedgutCoordinates_le[complete]
-
FABL.varianceLargeCoeffFamily[complete]
-
FABL.three_variance_div_four_le_sum_varianceLargeCoeffFamily[complete]
-
FABL.exists_varianceSensitive_large_fourierCoeff[complete]
-
FABL.varianceFriedgutError[complete] -
FABL.varianceFriedgutDegree[complete] -
FABL.varianceFriedgutCoordinates[complete] -
FABL.varianceFriedgutDegree_eq[complete] -
FABL.card_varianceFriedgutCoordinates_le[complete] -
FABL.varianceLargeCoeffFamily[complete] -
FABL.three_variance_div_four_le_sum_varianceLargeCoeffFamily[complete] -
FABL.exists_varianceSensitive_large_fourierCoeff[complete]
-
defdefined in FABL/Chapter09/VarianceSensitiveLargeCoefficient.leancomplete
def FABL.varianceFriedgutError {n : ℕ} (f : FABL.BooleanFunction n) : ℝ
def FABL.varianceFriedgutError {n : ℕ} (f : FABL.BooleanFunction n) : ℝ
-
defdefined in FABL/Chapter09/VarianceSensitiveLargeCoefficient.leancomplete
def FABL.varianceFriedgutDegree {n : ℕ} (f : FABL.BooleanFunction n) : ℕ
def FABL.varianceFriedgutDegree {n : ℕ} (f : FABL.BooleanFunction n) : ℕ
-
defdefined in FABL/Chapter09/VarianceSensitiveLargeCoefficient.leancomplete
def FABL.varianceFriedgutCoordinates {n : ℕ} (f : FABL.BooleanFunction n) : Finset (Fin n)
def FABL.varianceFriedgutCoordinates {n : ℕ} (f : FABL.BooleanFunction n) : Finset (Fin n)
-
theoremdefined in FABL/Chapter09/VarianceSensitiveLargeCoefficient.leancomplete
theorem FABL.varianceFriedgutDegree_eq {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) : FABL.varianceFriedgutDegree f = ⌈8 * FABL.totalInfluence f.toReal / FABL.variance f.toReal⌉₊
theorem FABL.varianceFriedgutDegree_eq {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) : FABL.varianceFriedgutDegree f = ⌈8 * FABL.totalInfluence f.toReal / FABL.variance f.toReal⌉₊
-
theoremdefined in FABL/Chapter09/VarianceSensitiveLargeCoefficient.leancomplete
theorem FABL.card_varianceFriedgutCoordinates_le {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) : ↑(FABL.varianceFriedgutCoordinates f).card ≤ 64 * FABL.totalInfluence f.toReal ^ 3 / FABL.variance f.toReal ^ 2 * 9 ^ FABL.varianceFriedgutDegree f
theorem FABL.card_varianceFriedgutCoordinates_le {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) : ↑(FABL.varianceFriedgutCoordinates f).card ≤ 64 * FABL.totalInfluence f.toReal ^ 3 / FABL.variance f.toReal ^ 2 * 9 ^ FABL.varianceFriedgutDegree f
-
defdefined in FABL/Chapter09/VarianceSensitiveLargeCoefficient.leancomplete
def FABL.varianceLargeCoeffFamily {n : ℕ} (f : FABL.BooleanFunction n) : Finset (Finset (Fin n))
def FABL.varianceLargeCoeffFamily {n : ℕ} (f : FABL.BooleanFunction n) : Finset (Finset (Fin n))
-
theoremdefined in FABL/Chapter09/VarianceSensitiveLargeCoefficient.leancomplete
theorem FABL.three_variance_div_four_le_sum_varianceLargeCoeffFamily {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) : 3 * FABL.variance f.toReal / 4 ≤ ∑ S ∈ FABL.varianceLargeCoeffFamily f, FABL.fourierCoeff f.toReal S ^ 2
theorem FABL.three_variance_div_four_le_sum_varianceLargeCoeffFamily {n : ℕ} (f : FABL.BooleanFunction n) (hvar : 0 < FABL.variance f.toReal) : 3 * FABL.variance f.toReal / 4 ≤ ∑ S ∈ FABL.varianceLargeCoeffFamily f, FABL.fourierCoeff f.toReal S ^ 2
-
theoremdefined in FABL/Chapter09/VarianceSensitiveLargeCoefficient.leancomplete
theorem FABL.exists_varianceSensitive_large_fourierCoeff {n : ℕ} (f : FABL.BooleanFunction n) (hnonconst : FABL.IsNonconstantCubeFunction f) : ∃ S, S ≠ ∅ ∧ S.card ≤ FABL.varianceFriedgutDegree f ∧ FABL.variance f.toReal / (2 * ↑((FABL.varianceFriedgutDegree f + 1) * ((FABL.varianceFriedgutCoordinates f).card + 1) ^ FABL.varianceFriedgutDegree f)) ≤ FABL.fourierCoeff f.toReal S ^ 2
theorem FABL.exists_varianceSensitive_large_fourierCoeff {n : ℕ} (f : FABL.BooleanFunction n) (hnonconst : FABL.IsNonconstantCubeFunction f) : ∃ S, S ≠ ∅ ∧ S.card ≤ FABL.varianceFriedgutDegree f ∧ FABL.variance f.toReal / (2 * ↑((FABL.varianceFriedgutDegree f + 1) * ((FABL.varianceFriedgutCoordinates f).card + 1) ^ FABL.varianceFriedgutDegree f)) ≤ FABL.fourierCoeff f.toReal S ^ 2
Exercise 9.32 with explicit degree and coefficient bounds.
Exercise 9.33. If f is nonconstant and monotone, improve the preceding
bound to some nonempty S satisfying
\widehat f(S)^2
\ge
\exp\left(
-O\left(\frac{\mathbf I[f]}{\operatorname{Var}[f]}\right)
\right).
In fact prove that one may take |S|\le1.
Lean code for Theorem9.7.34●2 theorems
Associated Lean declarations
-
theoremdefined in FABL/Chapter09/MonotoneLargeCoefficient.leancomplete
theorem FABL.exists_singletonCoeff_ge_edgeKKL {n : ℕ} (f : FABL.BooleanFunction n) (hmono : Monotone f) (hnonconst : FABL.IsNonconstantCubeFunction f) : ∃ i, 9 * Real.rpow 9 (-(FABL.totalInfluence f.toReal / FABL.variance f.toReal)) / (FABL.totalInfluence f.toReal / FABL.variance f.toReal) ^ 2 ≤ FABL.fourierCoeff f.toReal {i}
theorem FABL.exists_singletonCoeff_ge_edgeKKL {n : ℕ} (f : FABL.BooleanFunction n) (hmono : Monotone f) (hnonconst : FABL.IsNonconstantCubeFunction f) : ∃ i, 9 * Real.rpow 9 (-(FABL.totalInfluence f.toReal / FABL.variance f.toReal)) / (FABL.totalInfluence f.toReal / FABL.variance f.toReal) ^ 2 ≤ FABL.fourierCoeff f.toReal {i}
A nonconstant monotone Boolean function has a singleton coefficient attaining its maximum influence and satisfying the explicit edge-KKL lower bound.
-
theoremdefined in FABL/Chapter09/MonotoneLargeCoefficient.leancomplete
theorem FABL.exists_nonempty_singleton_fourierCoeff_sq_ge_edgeKKL_sq {n : ℕ} (f : FABL.BooleanFunction n) (hmono : Monotone f) (hnonconst : FABL.IsNonconstantCubeFunction f) : ∃ S, S ≠ ∅ ∧ S.card ≤ 1 ∧ (9 * Real.rpow 9 (-(FABL.totalInfluence f.toReal / FABL.variance f.toReal)) / (FABL.totalInfluence f.toReal / FABL.variance f.toReal) ^ 2) ^ 2 ≤ FABL.fourierCoeff f.toReal S ^ 2
theorem FABL.exists_nonempty_singleton_fourierCoeff_sq_ge_edgeKKL_sq {n : ℕ} (f : FABL.BooleanFunction n) (hmono : Monotone f) (hnonconst : FABL.IsNonconstantCubeFunction f) : ∃ S, S ≠ ∅ ∧ S.card ≤ 1 ∧ (9 * Real.rpow 9 (-(FABL.totalInfluence f.toReal / FABL.variance f.toReal)) / (FABL.totalInfluence f.toReal / FABL.variance f.toReal) ^ 2) ^ 2 ≤ FABL.fourierCoeff f.toReal S ^ 2
Exercise 9.33 in squared-coefficient form, with `|S| = 1`.
-
FABL.fourierSparsity[complete] -
FABL.fourier_expansion_support[complete] -
FABL.sum_sq_fourierCoeff_support[complete] -
FABL.sq_le_fourierSparsity_mul_secondMoment[complete] -
FABL.fourthMoment_le_fourierSparsity_mul_secondMoment_sq[complete] -
FABL.uniformLpNorm_four_le_fourierSparsity_rpow_mul_two[complete]
Exercise 9.34. For every real function on the cube, prove
\|f\|_4
\le
\operatorname{sparsity}(\widehat f)^{1/4}\|f\|_2.
Lean code for Lemma9.7.35●6 declarations
Associated Lean declarations
-
FABL.fourierSparsity[complete]
-
FABL.fourier_expansion_support[complete]
-
FABL.sum_sq_fourierCoeff_support[complete]
-
FABL.sq_le_fourierSparsity_mul_secondMoment[complete]
-
FABL.fourthMoment_le_fourierSparsity_mul_secondMoment_sq[complete]
-
FABL.uniformLpNorm_four_le_fourierSparsity_rpow_mul_two[complete]
-
FABL.fourierSparsity[complete] -
FABL.fourier_expansion_support[complete] -
FABL.sum_sq_fourierCoeff_support[complete] -
FABL.sq_le_fourierSparsity_mul_secondMoment[complete] -
FABL.fourthMoment_le_fourierSparsity_mul_secondMoment_sq[complete] -
FABL.uniformLpNorm_four_le_fourierSparsity_rpow_mul_two[complete]
-
defdefined in FABL/Chapter09/HomogeneousMoments.leancomplete
def FABL.fourierSparsity {n : ℕ} (f : FABL.SignCube n → ℝ) : ℕ
def FABL.fourierSparsity {n : ℕ} (f : FABL.SignCube n → ℝ) : ℕ
The number of nonzero subset-indexed Fourier coefficients.
-
theoremdefined in FABL/Chapter09/HomogeneousMoments.leancomplete
theorem FABL.fourier_expansion_support {n : ℕ} (f : FABL.SignCube n → ℝ) (x : FABL.SignCube n) : f x = ∑ S ∈ FABL.fourierSupport f, FABL.fourierCoeff f S * FABL.monomial S x
theorem FABL.fourier_expansion_support {n : ℕ} (f : FABL.SignCube n → ℝ) (x : FABL.SignCube n) : f x = ∑ S ∈ FABL.fourierSupport f, FABL.fourierCoeff f S * FABL.monomial S x
Fourier expansion restricted to nonzero coefficients.
-
theoremdefined in FABL/Chapter09/HomogeneousMoments.leancomplete
theorem FABL.sum_sq_fourierCoeff_support {n : ℕ} (f : FABL.SignCube n → ℝ) : ∑ S ∈ FABL.fourierSupport f, FABL.fourierCoeff f S ^ 2 = Finset.univ.expect fun x => f x ^ 2
theorem FABL.sum_sq_fourierCoeff_support {n : ℕ} (f : FABL.SignCube n → ℝ) : ∑ S ∈ FABL.fourierSupport f, FABL.fourierCoeff f S ^ 2 = Finset.univ.expect fun x => f x ^ 2
Parseval restricted to the Fourier support.
-
theoremdefined in FABL/Chapter09/HomogeneousMoments.leancomplete
theorem FABL.sq_le_fourierSparsity_mul_secondMoment {n : ℕ} (f : FABL.SignCube n → ℝ) (x : FABL.SignCube n) : f x ^ 2 ≤ ↑(FABL.fourierSparsity f) * Finset.univ.expect fun y => f y ^ 2
theorem FABL.sq_le_fourierSparsity_mul_secondMoment {n : ℕ} (f : FABL.SignCube n → ℝ) (x : FABL.SignCube n) : f x ^ 2 ≤ ↑(FABL.fourierSparsity f) * Finset.univ.expect fun y => f y ^ 2
Pointwise Cauchy--Schwarz bound by Fourier sparsity.
-
theoremdefined in FABL/Chapter09/HomogeneousMoments.leancomplete
theorem FABL.fourthMoment_le_fourierSparsity_mul_secondMoment_sq {n : ℕ} (f : FABL.SignCube n → ℝ) : (Finset.univ.expect fun x => f x ^ 4) ≤ ↑(FABL.fourierSparsity f) * (Finset.univ.expect fun x => f x ^ 2) ^ 2
theorem FABL.fourthMoment_le_fourierSparsity_mul_secondMoment_sq {n : ℕ} (f : FABL.SignCube n → ℝ) : (Finset.univ.expect fun x => f x ^ 4) ≤ ↑(FABL.fourierSparsity f) * (Finset.univ.expect fun x => f x ^ 2) ^ 2
Exercise 9.34 in fourth-moment form.
-
theoremdefined in FABL/Chapter09/HomogeneousMoments.leancomplete
theorem FABL.uniformLpNorm_four_le_fourierSparsity_rpow_mul_two {n : ℕ} (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 4 f ≤ (↑(FABL.fourierSparsity f)).rpow (1 / 4) * FABL.uniformLpNorm 2 f
theorem FABL.uniformLpNorm_four_le_fourierSparsity_rpow_mul_two {n : ℕ} (f : FABL.SignCube n → ℝ) : FABL.uniformLpNorm 4 f ≤ (↑(FABL.fourierSparsity f)).rpow (1 / 4) * FABL.uniformLpNorm 2 f
O'Donnell, Exercise 9.34.
-
FABL.uniform_expect_prod_le_prod_uniformLpNorm[complete] -
FABL.mixed_even_noise_moment_le[complete]
Exercise 9.35. Let q=2r be a positive even integer and
\rho=1/\sqrt{q-1}. For arbitrary
f_1,\ldots,f_r:\{-1,1\}^n\to\mathbb R, prove
\mathbb E\left[
\prod_{i=1}^r(T_\rho f_i)^2
\right]
\le
\prod_{i=1}^r\mathbb E[f_i^2].
Lean code for Theorem9.7.36●2 theorems
Associated Lean declarations
-
FABL.uniform_expect_prod_le_prod_uniformLpNorm[complete]
-
FABL.mixed_even_noise_moment_le[complete]
-
FABL.uniform_expect_prod_le_prod_uniformLpNorm[complete] -
FABL.mixed_even_noise_moment_le[complete]
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.uniform_expect_prod_le_prod_uniformLpNorm.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (r : ℕ) (hr : 0 < r) (g : Fin r → Ω → ℝ) (hg : ∀ (i : Fin r) (x : Ω), 0 ≤ g i x) : (Finset.univ.expect fun x => ∏ i, g i x) ≤ ∏ i, FABL.uniformLpNorm (↑r) (g i)
theorem FABL.uniform_expect_prod_le_prod_uniformLpNorm.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (r : ℕ) (hr : 0 < r) (g : Fin r → Ω → ℝ) (hg : ∀ (i : Fin r) (x : Ω), 0 ≤ g i x) : (Finset.univ.expect fun x => ∏ i, g i x) ≤ ∏ i, FABL.uniformLpNorm (↑r) (g i)
Generalized Hölder for a family of `r` nonnegative functions, all with exponent `r`, under normalized finite-uniform expectation.
-
theoremdefined in FABL/Chapter09/NoiseOperatorExercises.leancomplete
theorem FABL.mixed_even_noise_moment_le {n : ℕ} (r : ℕ) (hr : 0 < r) (f : Fin r → FABL.SignCube n → ℝ) : have q := 2 * ↑r; have ρ := 1 / √(q - 1); (Finset.univ.expect fun x => ∏ i, (FABL.noiseOperator ρ) (f i) x ^ 2) ≤ ∏ i, Finset.univ.expect fun x => f i x ^ 2
theorem FABL.mixed_even_noise_moment_le {n : ℕ} (r : ℕ) (hr : 0 < r) (f : Fin r → FABL.SignCube n → ℝ) : have q := 2 * ↑r; have ρ := 1 / √(q - 1); (Finset.univ.expect fun x => ∏ i, (FABL.noiseOperator ρ) (f i) x ^ 2) ≤ ∏ i, Finset.univ.expect fun x => f i x ^ 2
Exercise 9.35: mixed even moments at the sharp `(2,2r)` noise parameter.
-
FABL.pmfExpectation_affine_pow[complete] -
FABL.sum_range_two_mul_add_one_eq_sum_even[complete] -
FABL.affine_evenMoment_le_of_momentConditions[complete] -
FABL.pmfLpNorm_two_affine_centered[complete] -
FABL.IsPmfTwoEvenHypercontractive[complete] -
FABL.isPmfTwoEvenHypercontractive_of_momentConditions[complete] -
FABL.pmfLpNorm_even_pow_eq_pmfExpectation_even[complete] -
FABL.pmfExpectation_affine_evenMoment_of_oddMoments[complete] -
FABL.isPmfTwoEvenHypercontractive_necessary_sq[complete] -
FABL.isPmfTwoEvenHypercontractive_iff_of_momentConditions[complete] -
FABL.pmfExpectation_uniformSign_evenMoment[complete] -
FABL.pmfExpectation_uniformSign_oddMoment[complete] -
FABL.uniformSign_twoEven_of_rho_le[complete] -
FABL.pmfExpectation_uniformSign_affine_evenMoment[complete] -
FABL.uniformLpNorm_even_pow_eq_expect_even[complete] -
FABL.uniformSign_twoEven_necessary_sq[complete] -
FABL.uniformSign_twoEven_iff[complete] -
FABL.sharpEvenMomentNoise[complete] -
FABL.sharpEvenMomentBound[complete] -
FABL.sharpEvenMomentNoise_nonneg[complete] -
FABL.sharpEvenMomentNoise_sq[complete] -
FABL.sharpEvenMomentBound_one[complete] -
FABL.first_evenMoment_condition_redundant[complete] -
FABL.not_first_evenMoment_gt_sharp[complete] -
FABL.sharp_even_coefficient_mul_bound[complete] -
FABL.evenMomentCoefficientGap[complete] -
FABL.evenMomentCoefficientGap_eq_zero_of_sharp[complete] -
FABL.evenMomentCoefficientGap_le_zero_iff[complete] -
FABL.affine_evenMoment_le_of_hypercontractive[complete] -
FABL.sum_evenMomentCoefficientGap_mul_pow_le_zero[complete] -
FABL.affine_evenMoment_sub_eq_coefficientGap_sum[complete] -
FABL.higherEvenMomentCoefficientTail[complete] -
FABL.higherEvenMomentCoefficientTail_tendsto_zero[complete] -
FABL.coefficientGap_mul_pow_add_higher[complete] -
FABL.higher_sum_eq_neg_pow_mul_tail[complete] -
FABL.evenMoment_le_sharp_of_hypercontractive[complete] -
FABL.not_isPmfTwoEvenHypercontractive_of_evenMoment_gt_sharp[complete] -
FABL.exists_positive_affine_test_of_evenMoment_gt_sharp[complete] -
FABL.exists_affine_test_of_evenMoment_gt_sharp[complete]
Exercise 9.36. Let q=2r be a positive even integer.
-
Prove that a uniform sign is
(2,q,\rho)-hypercontractive if and only if\rho\le1/\sqrt{q-1}. -
Prove the same conclusion for every
Xsatisfying\mathbb E[X^2]=1and, for all1\le j\le r,\mathbb E[X^{2j-1}]=0, \qquad \mathbb E[X^{2j}] \le (2r-1)^j\frac{\binom rj}{\binom{2r}{2j}}. -
In the finite-PMF coefficientwise interpretation, prove the sharpness of every even-moment condition: after all preceding even coefficients attain their sharp values, hypercontractivity at
\rho=1/\sqrt{2r-1}forces the next displayed bound. A strict excess yields a positive affine test parameter for which hypercontractivity fails. Thej=1condition is exactly the separately assumed variance normalization and is therefore redundant rather than independently relaxable.
Lean code for Theorem9.7.37●39 declarations
Associated Lean declarations
-
FABL.pmfExpectation_affine_pow[complete]
-
FABL.sum_range_two_mul_add_one_eq_sum_even[complete]
-
FABL.affine_evenMoment_le_of_momentConditions[complete]
-
FABL.pmfLpNorm_two_affine_centered[complete]
-
FABL.IsPmfTwoEvenHypercontractive[complete]
-
FABL.isPmfTwoEvenHypercontractive_of_momentConditions[complete]
-
FABL.pmfLpNorm_even_pow_eq_pmfExpectation_even[complete]
-
FABL.pmfExpectation_affine_evenMoment_of_oddMoments[complete]
-
FABL.isPmfTwoEvenHypercontractive_necessary_sq[complete]
-
FABL.isPmfTwoEvenHypercontractive_iff_of_momentConditions[complete]
-
FABL.pmfExpectation_uniformSign_evenMoment[complete]
-
FABL.pmfExpectation_uniformSign_oddMoment[complete]
-
FABL.uniformSign_twoEven_of_rho_le[complete]
-
FABL.pmfExpectation_uniformSign_affine_evenMoment[complete]
-
FABL.uniformLpNorm_even_pow_eq_expect_even[complete]
-
FABL.uniformSign_twoEven_necessary_sq[complete]
-
FABL.uniformSign_twoEven_iff[complete]
-
FABL.sharpEvenMomentNoise[complete]
-
FABL.sharpEvenMomentBound[complete]
-
FABL.sharpEvenMomentNoise_nonneg[complete]
-
FABL.sharpEvenMomentNoise_sq[complete]
-
FABL.sharpEvenMomentBound_one[complete]
-
FABL.first_evenMoment_condition_redundant[complete]
-
FABL.not_first_evenMoment_gt_sharp[complete]
-
FABL.sharp_even_coefficient_mul_bound[complete]
-
FABL.evenMomentCoefficientGap[complete]
-
FABL.evenMomentCoefficientGap_eq_zero_of_sharp[complete]
-
FABL.evenMomentCoefficientGap_le_zero_iff[complete]
-
FABL.affine_evenMoment_le_of_hypercontractive[complete]
-
FABL.sum_evenMomentCoefficientGap_mul_pow_le_zero[complete]
-
FABL.affine_evenMoment_sub_eq_coefficientGap_sum[complete]
-
FABL.higherEvenMomentCoefficientTail[complete]
-
FABL.higherEvenMomentCoefficientTail_tendsto_zero[complete]
-
FABL.coefficientGap_mul_pow_add_higher[complete]
-
FABL.higher_sum_eq_neg_pow_mul_tail[complete]
-
FABL.evenMoment_le_sharp_of_hypercontractive[complete]
-
FABL.not_isPmfTwoEvenHypercontractive_of_evenMoment_gt_sharp[complete]
-
FABL.exists_positive_affine_test_of_evenMoment_gt_sharp[complete]
-
FABL.exists_affine_test_of_evenMoment_gt_sharp[complete]
-
FABL.pmfExpectation_affine_pow[complete] -
FABL.sum_range_two_mul_add_one_eq_sum_even[complete] -
FABL.affine_evenMoment_le_of_momentConditions[complete] -
FABL.pmfLpNorm_two_affine_centered[complete] -
FABL.IsPmfTwoEvenHypercontractive[complete] -
FABL.isPmfTwoEvenHypercontractive_of_momentConditions[complete] -
FABL.pmfLpNorm_even_pow_eq_pmfExpectation_even[complete] -
FABL.pmfExpectation_affine_evenMoment_of_oddMoments[complete] -
FABL.isPmfTwoEvenHypercontractive_necessary_sq[complete] -
FABL.isPmfTwoEvenHypercontractive_iff_of_momentConditions[complete] -
FABL.pmfExpectation_uniformSign_evenMoment[complete] -
FABL.pmfExpectation_uniformSign_oddMoment[complete] -
FABL.uniformSign_twoEven_of_rho_le[complete] -
FABL.pmfExpectation_uniformSign_affine_evenMoment[complete] -
FABL.uniformLpNorm_even_pow_eq_expect_even[complete] -
FABL.uniformSign_twoEven_necessary_sq[complete] -
FABL.uniformSign_twoEven_iff[complete] -
FABL.sharpEvenMomentNoise[complete] -
FABL.sharpEvenMomentBound[complete] -
FABL.sharpEvenMomentNoise_nonneg[complete] -
FABL.sharpEvenMomentNoise_sq[complete] -
FABL.sharpEvenMomentBound_one[complete] -
FABL.first_evenMoment_condition_redundant[complete] -
FABL.not_first_evenMoment_gt_sharp[complete] -
FABL.sharp_even_coefficient_mul_bound[complete] -
FABL.evenMomentCoefficientGap[complete] -
FABL.evenMomentCoefficientGap_eq_zero_of_sharp[complete] -
FABL.evenMomentCoefficientGap_le_zero_iff[complete] -
FABL.affine_evenMoment_le_of_hypercontractive[complete] -
FABL.sum_evenMomentCoefficientGap_mul_pow_le_zero[complete] -
FABL.affine_evenMoment_sub_eq_coefficientGap_sum[complete] -
FABL.higherEvenMomentCoefficientTail[complete] -
FABL.higherEvenMomentCoefficientTail_tendsto_zero[complete] -
FABL.coefficientGap_mul_pow_add_higher[complete] -
FABL.higher_sum_eq_neg_pow_mul_tail[complete] -
FABL.evenMoment_le_sharp_of_hypercontractive[complete] -
FABL.not_isPmfTwoEvenHypercontractive_of_evenMoment_gt_sharp[complete] -
FABL.exists_positive_affine_test_of_evenMoment_gt_sharp[complete] -
FABL.exists_affine_test_of_evenMoment_gt_sharp[complete]
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.pmfExpectation_affine_pow.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (a c : ℝ) (m : ℕ) : (FABL.pmfExpectation law fun x => (a + c * X x) ^ m) = ∑ j ∈ Finset.range (m + 1), ↑(m.choose j) * a ^ (m - j) * c ^ j * FABL.pmfExpectation law fun x => X x ^ j
theorem FABL.pmfExpectation_affine_pow.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (a c : ℝ) (m : ℕ) : (FABL.pmfExpectation law fun x => (a + c * X x) ^ m) = ∑ j ∈ Finset.range (m + 1), ↑(m.choose j) * a ^ (m - j) * c ^ j * FABL.pmfExpectation law fun x => X x ^ j
The exact binomial expansion of an affine finite random variable.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.sum_range_two_mul_add_one_eq_sum_even.{u_1} {R : Type u_1} [AddCommMonoid R] (F : ℕ → R) (r : ℕ) (hodd : ∀ j < r, F (2 * j + 1) = 0) : ∑ j ∈ Finset.range (2 * r + 1), F j = ∑ j ∈ Finset.range (r + 1), F (2 * j)
theorem FABL.sum_range_two_mul_add_one_eq_sum_even.{u_1} {R : Type u_1} [AddCommMonoid R] (F : ℕ → R) (r : ℕ) (hodd : ∀ j < r, F (2 * j + 1) = 0) : ∑ j ∈ Finset.range (2 * r + 1), F j = ∑ j ∈ Finset.range (r + 1), F (2 * j)
A finite sum through `2r` whose odd-indexed terms vanish reduces to its even terms.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.affine_evenMoment_le_of_momentConditions.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hρ : 0 ≤ ρ) (hρsq : ρ ^ 2 ≤ 1 / (2 * ↑r - 1)) (_hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j - 1)) = 0) (heven : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j)) ≤ (2 * ↑r - 1) ^ j * ↑(r.choose j) / ↑((2 * r).choose (2 * j))) (a b : ℝ) : (FABL.pmfExpectation law fun x => (a + ρ * b * X x) ^ (2 * r)) ≤ (a ^ 2 + b ^ 2) ^ r
theorem FABL.affine_evenMoment_le_of_momentConditions.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hρ : 0 ≤ ρ) (hρsq : ρ ^ 2 ≤ 1 / (2 * ↑r - 1)) (_hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j - 1)) = 0) (heven : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j)) ≤ (2 * ↑r - 1) ^ j * ↑(r.choose j) / ↑((2 * r).choose (2 * j))) (a b : ℝ) : (FABL.pmfExpectation law fun x => (a + ρ * b * X x) ^ (2 * r)) ≤ (a ^ 2 + b ^ 2) ^ r
Exercise 9.36(b), moment form: the stated odd and even moment conditions imply the sharp affine `(2,2r)` estimate on a finite probability space.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.pmfLpNorm_two_affine_centered.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (hmean : FABL.pmfExpectation law X = 0) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (a b : ℝ) : (FABL.pmfLpNorm law 2 fun x => a + b * X x) = √(a ^ 2 + b ^ 2)
theorem FABL.pmfLpNorm_two_affine_centered.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (hmean : FABL.pmfExpectation law X = 0) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (a b : ℝ) : (FABL.pmfLpNorm law 2 fun x => a + b * X x) = √(a ^ 2 + b ^ 2)
The weighted `L²` norm of a centered, variance-one affine random variable.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.IsPmfTwoEvenHypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (r : ℕ) (ρ : ℝ) (X : Ω → ℝ) : Prop
def FABL.IsPmfTwoEvenHypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (r : ℕ) (ρ : ℝ) (X : Ω → ℝ) : Prop
The finite-PMF version of the even-exponent hypercontractive-random-variable predicate.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.isPmfTwoEvenHypercontractive_of_momentConditions.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hρ : 0 ≤ ρ) (hρsq : ρ ^ 2 ≤ 1 / (2 * ↑r - 1)) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j - 1)) = 0) (heven : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j)) ≤ (2 * ↑r - 1) ^ j * ↑(r.choose j) / ↑((2 * r).choose (2 * j))) : FABL.IsPmfTwoEvenHypercontractive law r ρ X
theorem FABL.isPmfTwoEvenHypercontractive_of_momentConditions.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hρ : 0 ≤ ρ) (hρsq : ρ ^ 2 ≤ 1 / (2 * ↑r - 1)) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j - 1)) = 0) (heven : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j)) ≤ (2 * ↑r - 1) ^ j * ↑(r.choose j) / ↑((2 * r).choose (2 * j))) : FABL.IsPmfTwoEvenHypercontractive law r ρ X
Exercise 9.36(b): the full PMF `(2,2r,ρ)` conclusion under the book's moment conditions.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.pmfLpNorm_even_pow_eq_pmfExpectation_even.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (r : ℕ) (hr : 0 < r) (f : Ω → ℝ) : FABL.pmfLpNorm law (2 * ↑r) f ^ (2 * r) = FABL.pmfExpectation law fun x => f x ^ (2 * r)
theorem FABL.pmfLpNorm_even_pow_eq_pmfExpectation_even.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (r : ℕ) (hr : 0 < r) (f : Ω → ℝ) : FABL.pmfLpNorm law (2 * ↑r) f ^ (2 * r) = FABL.pmfExpectation law fun x => f x ^ (2 * r)
PMF analogue of `uniformLpNorm_even_pow_eq_expect_even`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.pmfExpectation_affine_evenMoment_of_oddMoments.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hodd : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j - 1)) = 0) (c : ℝ) : (FABL.pmfExpectation law fun x => (1 + c * X x) ^ (2 * r)) = ∑ j ∈ Finset.range (r + 1), ↑((2 * r).choose (2 * j)) * c ^ (2 * j) * FABL.pmfExpectation law fun x => X x ^ (2 * j)
theorem FABL.pmfExpectation_affine_evenMoment_of_oddMoments.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hodd : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j - 1)) = 0) (c : ℝ) : (FABL.pmfExpectation law fun x => (1 + c * X x) ^ (2 * r)) = ∑ j ∈ Finset.range (r + 1), ↑((2 * r).choose (2 * j)) * c ^ (2 * j) * FABL.pmfExpectation law fun x => X x ^ (2 * j)
Exact affine even-moment expansion when all relevant odd moments vanish.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.isPmfTwoEvenHypercontractive_necessary_sq.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j - 1)) = 0) (hhyper : FABL.IsPmfTwoEvenHypercontractive law r ρ X) : ρ ^ 2 ≤ 1 / ↑(2 * r - 1)
theorem FABL.isPmfTwoEvenHypercontractive_necessary_sq.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j - 1)) = 0) (hhyper : FABL.IsPmfTwoEvenHypercontractive law r ρ X) : ρ ^ 2 ≤ 1 / ↑(2 * r - 1)
The sharp noise parameter is necessary for every centered variance-one finite PMF random variable with vanishing odd moments through order `2r-1`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.isPmfTwoEvenHypercontractive_iff_of_momentConditions.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hρ : 0 ≤ ρ) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j - 1)) = 0) (heven : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j)) ≤ (2 * ↑r - 1) ^ j * ↑(r.choose j) / ↑((2 * r).choose (2 * j))) : FABL.IsPmfTwoEvenHypercontractive law r ρ X ↔ ρ ≤ 1 / √(2 * ↑r - 1)
theorem FABL.isPmfTwoEvenHypercontractive_iff_of_momentConditions.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hρ : 0 ≤ ρ) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j - 1)) = 0) (heven : ∀ (j : ℕ), 1 ≤ j → j ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * j)) ≤ (2 * ↑r - 1) ^ j * ↑(r.choose j) / ↑((2 * r).choose (2 * j))) : FABL.IsPmfTwoEvenHypercontractive law r ρ X ↔ ρ ≤ 1 / √(2 * ↑r - 1)
Exercise 9.36(b), exact finite-PMF sharpness statement.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.pmfExpectation_uniformSign_evenMoment (j : ℕ) : (FABL.pmfExpectation (FABL.uniformPMF FABL.Sign) fun x => FABL.signValue x ^ (2 * j)) = 1
theorem FABL.pmfExpectation_uniformSign_evenMoment (j : ℕ) : (FABL.pmfExpectation (FABL.uniformPMF FABL.Sign) fun x => FABL.signValue x ^ (2 * j)) = 1
Every even moment of a uniform sign is one.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.pmfExpectation_uniformSign_oddMoment (j : ℕ) : (FABL.pmfExpectation (FABL.uniformPMF FABL.Sign) fun x => FABL.signValue x ^ (2 * j + 1)) = 0
theorem FABL.pmfExpectation_uniformSign_oddMoment (j : ℕ) : (FABL.pmfExpectation (FABL.uniformPMF FABL.Sign) fun x => FABL.signValue x ^ (2 * j + 1)) = 0
Every odd moment of a uniform sign is zero.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.uniformSign_twoEven_of_rho_le (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hρ : 0 ≤ ρ) (hsharp : ρ ≤ 1 / √(2 * ↑r - 1)) (a b : ℝ) : (FABL.uniformLpNorm (2 * ↑r) fun x => a + ρ * b * FABL.signValue x) ≤ FABL.uniformLpNorm 2 fun x => a + b * FABL.signValue x
theorem FABL.uniformSign_twoEven_of_rho_le (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hρ : 0 ≤ ρ) (hsharp : ρ ≤ 1 / √(2 * ↑r - 1)) (a b : ℝ) : (FABL.uniformLpNorm (2 * ↑r) fun x => a + ρ * b * FABL.signValue x) ≤ FABL.uniformLpNorm 2 fun x => a + b * FABL.signValue x
Exercise 9.36(a), sufficient direction, including the `q=2` endpoint.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.pmfExpectation_uniformSign_affine_evenMoment (r : ℕ) (c : ℝ) : (FABL.pmfExpectation (FABL.uniformPMF FABL.Sign) fun x => (1 + c * FABL.signValue x) ^ (2 * r)) = ∑ j ∈ Finset.range (r + 1), ↑((2 * r).choose (2 * j)) * c ^ (2 * j)
theorem FABL.pmfExpectation_uniformSign_affine_evenMoment (r : ℕ) (c : ℝ) : (FABL.pmfExpectation (FABL.uniformPMF FABL.Sign) fun x => (1 + c * FABL.signValue x) ^ (2 * r)) = ∑ j ∈ Finset.range (r + 1), ↑((2 * r).choose (2 * j)) * c ^ (2 * j)
Exact even moment of an affine uniform sign.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.uniformLpNorm_even_pow_eq_expect_even.{u_1} {Ω : Type u_1} [Fintype Ω] (r : ℕ) (hr : 0 < r) (f : Ω → ℝ) : FABL.uniformLpNorm (2 * ↑r) f ^ (2 * r) = Finset.univ.expect fun x => f x ^ (2 * r)
theorem FABL.uniformLpNorm_even_pow_eq_expect_even.{u_1} {Ω : Type u_1} [Fintype Ω] (r : ℕ) (hr : 0 < r) (f : Ω → ℝ) : FABL.uniformLpNorm (2 * ↑r) f ^ (2 * r) = Finset.univ.expect fun x => f x ^ (2 * r)
Raising an even-exponent finite-uniform norm to its exponent gives the ordinary even moment.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.uniformSign_twoEven_necessary_sq (r : ℕ) (hr : 0 < r) (ρ : ℝ) (h : ∀ (a b : ℝ), (FABL.uniformLpNorm (2 * ↑r) fun x => a + ρ * b * FABL.signValue x) ≤ FABL.uniformLpNorm 2 fun x => a + b * FABL.signValue x) : ρ ^ 2 ≤ 1 / ↑(2 * r - 1)
theorem FABL.uniformSign_twoEven_necessary_sq (r : ℕ) (hr : 0 < r) (ρ : ℝ) (h : ∀ (a b : ℝ), (FABL.uniformLpNorm (2 * ↑r) fun x => a + ρ * b * FABL.signValue x) ≤ FABL.uniformLpNorm 2 fun x => a + b * FABL.signValue x) : ρ ^ 2 ≤ 1 / ↑(2 * r - 1)
Exercise 9.36(a), necessary quadratic condition for every positive even exponent.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.uniformSign_twoEven_iff (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hρ : 0 ≤ ρ) : (∀ (a b : ℝ), (FABL.uniformLpNorm (2 * ↑r) fun x => a + ρ * b * FABL.signValue x) ≤ FABL.uniformLpNorm 2 fun x => a + b * FABL.signValue x) ↔ ρ ≤ 1 / √(2 * ↑r - 1)
theorem FABL.uniformSign_twoEven_iff (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hρ : 0 ≤ ρ) : (∀ (a b : ℝ), (FABL.uniformLpNorm (2 * ↑r) fun x => a + ρ * b * FABL.signValue x) ≤ FABL.uniformLpNorm 2 fun x => a + b * FABL.signValue x) ↔ ρ ≤ 1 / √(2 * ↑r - 1)
Exercise 9.36(a): a uniform sign has the sharp `(2,2r,ρ)` range.
-
defdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
def FABL.sharpEvenMomentNoise (r : ℕ) : ℝ
def FABL.sharpEvenMomentNoise (r : ℕ) : ℝ
The sharp noise parameter in Exercise 9.36.
-
defdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
def FABL.sharpEvenMomentBound (r j : ℕ) : ℝ
def FABL.sharpEvenMomentBound (r j : ℕ) : ℝ
The `j`th sharp even-moment coefficient from Exercise 9.36(b).
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.sharpEvenMomentNoise_nonneg (r : ℕ) : 0 ≤ FABL.sharpEvenMomentNoise r
theorem FABL.sharpEvenMomentNoise_nonneg (r : ℕ) : 0 ≤ FABL.sharpEvenMomentNoise r
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.sharpEvenMomentNoise_sq (r : ℕ) (hr : 0 < r) : FABL.sharpEvenMomentNoise r ^ 2 = 1 / (2 * ↑r - 1)
theorem FABL.sharpEvenMomentNoise_sq (r : ℕ) (hr : 0 < r) : FABL.sharpEvenMomentNoise r ^ 2 = 1 / (2 * ↑r - 1)
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.sharpEvenMomentBound_one (r : ℕ) (hr : 0 < r) : FABL.sharpEvenMomentBound r 1 = 1
theorem FABL.sharpEvenMomentBound_one (r : ℕ) (hr : 0 < r) : FABL.sharpEvenMomentBound r 1 = 1
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.first_evenMoment_condition_redundant.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) : (FABL.pmfExpectation law fun x => X x ^ (2 * 1)) = FABL.sharpEvenMomentBound r 1
theorem FABL.first_evenMoment_condition_redundant.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) : (FABL.pmfExpectation law fun x => X x ^ (2 * 1)) = FABL.sharpEvenMomentBound r 1
The first even-moment condition is exactly the variance normalization.
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.not_first_evenMoment_gt_sharp.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) : ¬FABL.sharpEvenMomentBound r 1 < FABL.pmfExpectation law fun x => X x ^ (2 * 1)
theorem FABL.not_first_evenMoment_gt_sharp.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) : ¬FABL.sharpEvenMomentBound r 1 < FABL.pmfExpectation law fun x => X x ^ (2 * 1)
Consequently the `j=1` bound cannot be strictly relaxed while the variance normalization from Exercise 9.36 is retained. The independently sharp conditions start at `j=2`.
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.sharp_even_coefficient_mul_bound (r l : ℕ) (hr : 0 < r) (hl : l ≤ r) : ↑((2 * r).choose (2 * l)) * FABL.sharpEvenMomentNoise r ^ (2 * l) * FABL.sharpEvenMomentBound r l = ↑(r.choose l)
theorem FABL.sharp_even_coefficient_mul_bound (r l : ℕ) (hr : 0 < r) (hl : l ≤ r) : ↑((2 * r).choose (2 * l)) * FABL.sharpEvenMomentNoise r ^ (2 * l) * FABL.sharpEvenMomentBound r l = ↑(r.choose l)
-
defdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
def FABL.evenMomentCoefficientGap.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r l : ℕ) : ℝ
def FABL.evenMomentCoefficientGap.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r l : ℕ) : ℝ
The coefficient gap between the affine `2r`-moment and the sharp comparison polynomial.
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.evenMomentCoefficientGap_eq_zero_of_sharp.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r l : ℕ) (hr : 0 < r) (hl : l ≤ r) (hmoment : (FABL.pmfExpectation law fun x => X x ^ (2 * l)) = FABL.sharpEvenMomentBound r l) : FABL.evenMomentCoefficientGap law X r l = 0
theorem FABL.evenMomentCoefficientGap_eq_zero_of_sharp.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r l : ℕ) (hr : 0 < r) (hl : l ≤ r) (hmoment : (FABL.pmfExpectation law fun x => X x ^ (2 * l)) = FABL.sharpEvenMomentBound r l) : FABL.evenMomentCoefficientGap law X r l = 0
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.evenMomentCoefficientGap_le_zero_iff.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r l : ℕ) (hr : 0 < r) (hl : l ≤ r) : FABL.evenMomentCoefficientGap law X r l ≤ 0 ↔ (FABL.pmfExpectation law fun x => X x ^ (2 * l)) ≤ FABL.sharpEvenMomentBound r l
theorem FABL.evenMomentCoefficientGap_le_zero_iff.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r l : ℕ) (hr : 0 < r) (hl : l ≤ r) : FABL.evenMomentCoefficientGap law X r l ≤ 0 ↔ (FABL.pmfExpectation law fun x => X x ^ (2 * l)) ≤ FABL.sharpEvenMomentBound r l
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.affine_evenMoment_le_of_hypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hhyper : FABL.IsPmfTwoEvenHypercontractive law r ρ X) (t : ℝ) : (FABL.pmfExpectation law fun x => (1 + ρ * t * X x) ^ (2 * r)) ≤ (1 + t ^ 2) ^ r
theorem FABL.affine_evenMoment_le_of_hypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hhyper : FABL.IsPmfTwoEvenHypercontractive law r ρ X) (t : ℝ) : (FABL.pmfExpectation law fun x => (1 + ρ * t * X x) ^ (2 * r)) ≤ (1 + t ^ 2) ^ r
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.sum_evenMomentCoefficientGap_mul_pow_le_zero.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hhyper : FABL.IsPmfTwoEvenHypercontractive law r ρ X) (t : ℝ) : ∑ l ∈ Finset.range (r + 1), ((↑((2 * r).choose (2 * l)) * ρ ^ (2 * l) * FABL.pmfExpectation law fun x => X x ^ (2 * l)) - ↑(r.choose l)) * t ^ (2 * l) ≤ 0
theorem FABL.sum_evenMomentCoefficientGap_mul_pow_le_zero.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hr : 0 < r) (ρ : ℝ) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hhyper : FABL.IsPmfTwoEvenHypercontractive law r ρ X) (t : ℝ) : ∑ l ∈ Finset.range (r + 1), ((↑((2 * r).choose (2 * l)) * ρ ^ (2 * l) * FABL.pmfExpectation law fun x => X x ^ (2 * l)) - ↑(r.choose l)) * t ^ (2 * l) ≤ 0
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.affine_evenMoment_sub_eq_coefficientGap_sum.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (t : ℝ) : (FABL.pmfExpectation law fun x => (1 + FABL.sharpEvenMomentNoise r * t * X x) ^ (2 * r)) - (1 + t ^ 2) ^ r = ∑ l ∈ Finset.range (r + 1), FABL.evenMomentCoefficientGap law X r l * t ^ (2 * l)
theorem FABL.affine_evenMoment_sub_eq_coefficientGap_sum.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r : ℕ) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (t : ℝ) : (FABL.pmfExpectation law fun x => (1 + FABL.sharpEvenMomentNoise r * t * X x) ^ (2 * r)) - (1 + t ^ 2) ^ r = ∑ l ∈ Finset.range (r + 1), FABL.evenMomentCoefficientGap law X r l * t ^ (2 * l)
-
defdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
def FABL.higherEvenMomentCoefficientTail.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (t : ℝ) : ℝ
def FABL.higherEvenMomentCoefficientTail.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (t : ℝ) : ℝ
The higher-order remainder after the `j`th coefficient is divided by `t ^ (2 * j)`. It is written over the whole finite range so its convergence is a direct finite sum.
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.higherEvenMomentCoefficientTail_tendsto_zero.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) : Filter.Tendsto (fun n => FABL.higherEvenMomentCoefficientTail law X r j (1 / (↑n + 1))) Filter.atTop (nhds 0)
theorem FABL.higherEvenMomentCoefficientTail_tendsto_zero.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) : Filter.Tendsto (fun n => FABL.higherEvenMomentCoefficientTail law X r j (1 / (↑n + 1))) Filter.atTop (nhds 0)
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.coefficientGap_mul_pow_add_higher.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (hj : j ≤ r) (hzero : ∀ l < j, FABL.evenMomentCoefficientGap law X r l = 0) (t : ℝ) : ∑ l ∈ Finset.range (r + 1), FABL.evenMomentCoefficientGap law X r l * t ^ (2 * l) = FABL.evenMomentCoefficientGap law X r j * t ^ (2 * j) + ∑ l ∈ Finset.range (r + 1) with j < l, FABL.evenMomentCoefficientGap law X r l * t ^ (2 * l)
theorem FABL.coefficientGap_mul_pow_add_higher.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (hj : j ≤ r) (hzero : ∀ l < j, FABL.evenMomentCoefficientGap law X r l = 0) (t : ℝ) : ∑ l ∈ Finset.range (r + 1), FABL.evenMomentCoefficientGap law X r l * t ^ (2 * l) = FABL.evenMomentCoefficientGap law X r j * t ^ (2 * j) + ∑ l ∈ Finset.range (r + 1) with j < l, FABL.evenMomentCoefficientGap law X r l * t ^ (2 * l)
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.higher_sum_eq_neg_pow_mul_tail.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (t : ℝ) : ∑ l ∈ Finset.range (r + 1) with j < l, FABL.evenMomentCoefficientGap law X r l * t ^ (2 * l) = -(t ^ (2 * j) * FABL.higherEvenMomentCoefficientTail law X r j t)
theorem FABL.higher_sum_eq_neg_pow_mul_tail.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (t : ℝ) : ∑ l ∈ Finset.range (r + 1) with j < l, FABL.evenMomentCoefficientGap law X r l * t ^ (2 * l) = -(t ^ (2 * j) * FABL.higherEvenMomentCoefficientTail law X r j t)
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.evenMoment_le_sharp_of_hypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (hr : 0 < r) (_hjone : 1 ≤ j) (hjr : j ≤ r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hpreceding : ∀ (l : ℕ), 1 ≤ l → l < j → (FABL.pmfExpectation law fun x => X x ^ (2 * l)) = FABL.sharpEvenMomentBound r l) (hhyper : FABL.IsPmfTwoEvenHypercontractive law r (FABL.sharpEvenMomentNoise r) X) : (FABL.pmfExpectation law fun x => X x ^ (2 * j)) ≤ FABL.sharpEvenMomentBound r j
theorem FABL.evenMoment_le_sharp_of_hypercontractive.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (hr : 0 < r) (_hjone : 1 ≤ j) (hjr : j ≤ r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hpreceding : ∀ (l : ℕ), 1 ≤ l → l < j → (FABL.pmfExpectation law fun x => X x ^ (2 * l)) = FABL.sharpEvenMomentBound r l) (hhyper : FABL.IsPmfTwoEvenHypercontractive law r (FABL.sharpEvenMomentNoise r) X) : (FABL.pmfExpectation law fun x => X x ^ (2 * j)) ≤ FABL.sharpEvenMomentBound r j
Exercise 9.36(c), coefficientwise necessity. Once the preceding even coefficients are sharp, the sharp `(2,2r)` inequality forces the `j`th moment condition. This is the finite-PMF form of taking the affine parameter to zero and reading the first coefficient that has not already vanished.
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.not_isPmfTwoEvenHypercontractive_of_evenMoment_gt_sharp.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (hr : 0 < r) (hjone : 1 ≤ j) (hjr : j ≤ r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hpreceding : ∀ (l : ℕ), 1 ≤ l → l < j → (FABL.pmfExpectation law fun x => X x ^ (2 * l)) = FABL.sharpEvenMomentBound r l) (hstrict : FABL.sharpEvenMomentBound r j < FABL.pmfExpectation law fun x => X x ^ (2 * j)) : ¬FABL.IsPmfTwoEvenHypercontractive law r (FABL.sharpEvenMomentNoise r) X
theorem FABL.not_isPmfTwoEvenHypercontractive_of_evenMoment_gt_sharp.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (hr : 0 < r) (hjone : 1 ≤ j) (hjr : j ≤ r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hpreceding : ∀ (l : ℕ), 1 ≤ l → l < j → (FABL.pmfExpectation law fun x => X x ^ (2 * l)) = FABL.sharpEvenMomentBound r l) (hstrict : FABL.sharpEvenMomentBound r j < FABL.pmfExpectation law fun x => X x ^ (2 * j)) : ¬FABL.IsPmfTwoEvenHypercontractive law r (FABL.sharpEvenMomentNoise r) X
Exercise 9.36(c), strict form: a strict increase of the first not-yet-fixed even moment destroys hypercontractivity at the sharp noise parameter.
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.exists_positive_affine_test_of_evenMoment_gt_sharp.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (hr : 0 < r) (_hjone : 1 ≤ j) (hjr : j ≤ r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hpreceding : ∀ (l : ℕ), 1 ≤ l → l < j → (FABL.pmfExpectation law fun x => X x ^ (2 * l)) = FABL.sharpEvenMomentBound r l) (hstrict : FABL.sharpEvenMomentBound r j < FABL.pmfExpectation law fun x => X x ^ (2 * j)) : ∃ t, 0 < t ∧ (FABL.pmfLpNorm law (2 * ↑r) fun x => 1 + FABL.sharpEvenMomentNoise r * t * X x) > FABL.pmfLpNorm law 2 fun x => 1 + t * X x
theorem FABL.exists_positive_affine_test_of_evenMoment_gt_sharp.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (hr : 0 < r) (_hjone : 1 ≤ j) (hjr : j ≤ r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hpreceding : ∀ (l : ℕ), 1 ≤ l → l < j → (FABL.pmfExpectation law fun x => X x ^ (2 * l)) = FABL.sharpEvenMomentBound r l) (hstrict : FABL.sharpEvenMomentBound r j < FABL.pmfExpectation law fun x => X x ^ (2 * j)) : ∃ t, 0 < t ∧ (FABL.pmfLpNorm law (2 * ↑r) fun x => 1 + FABL.sharpEvenMomentNoise r * t * X x) > FABL.pmfLpNorm law 2 fun x => 1 + t * X x
The coefficient proof supplies the promised explicit kind of affine witness: `(a,b)=(1,t)` for some positive `t`.
-
theoremdefined in FABL/Chapter09/HypercontractiveMomentSharpness.leancomplete
theorem FABL.exists_affine_test_of_evenMoment_gt_sharp.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (hr : 0 < r) (hjone : 1 ≤ j) (hjr : j ≤ r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hpreceding : ∀ (l : ℕ), 1 ≤ l → l < j → (FABL.pmfExpectation law fun x => X x ^ (2 * l)) = FABL.sharpEvenMomentBound r l) (hstrict : FABL.sharpEvenMomentBound r j < FABL.pmfExpectation law fun x => X x ^ (2 * j)) : ∃ a b, (FABL.pmfLpNorm law (2 * ↑r) fun x => a + FABL.sharpEvenMomentNoise r * b * X x) > FABL.pmfLpNorm law 2 fun x => a + b * X x
theorem FABL.exists_affine_test_of_evenMoment_gt_sharp.{u_1} {Ω : Type u_1} [Fintype Ω] (law : PMF Ω) (X : Ω → ℝ) (r j : ℕ) (hr : 0 < r) (hjone : 1 ≤ j) (hjr : j ≤ r) (hsecond : (FABL.pmfExpectation law fun x => X x ^ 2) = 1) (hodd : ∀ (l : ℕ), 1 ≤ l → l ≤ r → (FABL.pmfExpectation law fun x => X x ^ (2 * l - 1)) = 0) (hpreceding : ∀ (l : ℕ), 1 ≤ l → l < j → (FABL.pmfExpectation law fun x => X x ^ (2 * l)) = FABL.sharpEvenMomentBound r l) (hstrict : FABL.sharpEvenMomentBound r j < FABL.pmfExpectation law fun x => X x ^ (2 * j)) : ∃ a b, (FABL.pmfLpNorm law (2 * ↑r) fun x => a + FABL.sharpEvenMomentNoise r * b * X x) > FABL.pmfLpNorm law 2 fun x => a + b * X x
The failed hypercontractive inequality has concrete affine test parameters.
-
FABL.listSymmDiff[complete] -
FABL.tupleSymmDiff[complete] -
FABL.not_mem_listSymmDiff_iff_even_countP[complete] -
FABL.even_countP_of_tupleSymmDiff_eq_empty[complete] -
FABL.sum_ite_eq_countP_ofFn[complete] -
FABL.natCard_subtype_eq_countP_ofFn[complete] -
FABL.list_prod_monomial[complete] -
FABL.prod_monomial_eq_tupleSymmDiff[complete] -
FABL.expect_pow_eq_sum_fourierCoeff_of_tupleSymmDiff_empty[complete] -
FABL.expect_pow_le_sum_abs_fourierCoeff_of_tupleSymmDiff_empty[complete] -
FABL.BookPartiteVertex[complete] -
FABL.bookPartiteGraph[complete] -
FABL.GraphPartitePerfectMatching[complete] -
FABL.MatchingCompatibleLabeling[complete] -
FABL.exists_graphPartitePerfectMatching_compatible[complete] -
FABL.sum_le_inv_mul_sum_of_injective_lifts[complete] -
FABL.LevelKParityTuple.enumeration[complete] -
FABL.ParityTupleReordering[complete] -
FABL.LevelKParityTuple.assignedVertexLabel[complete] -
FABL.LevelKParityTuple.assignedVertexLabel_injective_on_part[complete] -
FABL.LevelKParityTuple.assignedLabelFiberEquivPartFiber[complete] -
FABL.LevelKParityTuple.assignedVertexLabel_even_fiber[complete] -
FABL.LevelKParityTuple.exists_compatible_matching[complete] -
FABL.matchingLabelSet[complete] -
FABL.LevelKParityTuple.matchingLabelSet_assignedVertexLabel[complete] -
FABL.GraphMatchingLabeling[complete] -
FABL.LevelKParityTuple.chosenCompatibleMatching[complete] -
FABL.LevelKParityTuple.chosenCompatibleMatching_spec[complete] -
FABL.parityTupleMatchingLift[complete] -
FABL.parityTupleMatchingLift_injective[complete] -
FABL.card_parityTupleReordering[complete] -
FABL.parityTupleFourierWeight[complete] -
FABL.matchingLabelingFourierWeight[complete] -
FABL.parityTupleMatchingLift_weight[complete] -
FABL.parityTuple_sum_le_matchingLabeling_sum[complete] -
FABL.IsFourierHomogeneous[complete] -
FABL.sum_abs_fourierCoeff_tupleSymmDiff_eq_parityTuple_sum[complete] -
FABL.homogeneous_evenMoment_le_matchingLabeling_sum[complete] -
FABL.expect_fin_snoc[complete] -
FABL.prod_eq_mul_mul_prod_erase_two[complete] -
FABL.uniform_expect_prod_le_prod_sqrt_expect_sq_twoRegular[complete] -
FABL.uniform_expect_prod_le_prod_sqrt_expect_sq_twoRegular_finite[complete] -
FABL.matching_eq_or_adj_of_toEdge_eq[complete] -
FABL.graphMatchingPartEdges[complete] -
FABL.mem_graphMatchingPartEdges_iff[complete] -
FABL.graphMatchingPartEdge[complete] -
FABL.graphMatchingPartEdge_mem[complete] -
FABL.graphMatchingPartEdge_injective[complete] -
FABL.graphMatchingPartEdgeEquiv[complete] -
FABL.graphMatchingPartEdges_degree_two[complete] -
FABL.expect_eq_expect_subtype_of_dependsOn[complete] -
FABL.LevelKSubset[complete] -
FABL.InjectiveLabelTuple[complete] -
FABL.InjectiveLabelTuple.image[complete] -
FABL.InjectiveLabelTuple.imageEquiv[complete] -
FABL.InjectiveLabelCodeTarget[complete] -
FABL.InjectiveLabelTuple.code[complete] -
FABL.injectiveLabelTuple_code_injective[complete] -
FABL.sum_injectiveLabelCodeTarget[complete] -
FABL.sum_injectiveLabelTuple_le_factorial_mul[complete] -
FABL.sum_labelTuple_fourierCoeff_sq_le[complete] -
FABL.expect_labelTuple_fourierCoeff_sq_le[complete] -
FABL.graphMatchingEdgeLabelSet[complete] -
FABL.graphMatchingEdgeFourierFactor[complete] -
FABL.graphMatchingEdgeFourierFactor_nonneg[complete] -
FABL.graphMatchingEdgeFourierFactor_dependsOn[complete] -
FABL.graphMatchingEdgeFourierFactor_sq_dependsOn[complete] -
FABL.expect_graphMatchingEdgeFourierFactor_sq_eq[complete] -
FABL.expect_graphMatchingEdgeFourierFactor_sq_le[complete] -
FABL.graphMatching_finner[complete] -
FABL.graphMatching_fixed_expect_le[complete] -
FABL.card_graphMatchingPartEdges[complete] -
FABL.card_graphMatching_edgeSet[complete] -
FABL.graphMatching_fixed_sum_le[complete] -
FABL.graphMatchingEdgeRepresentative[complete] -
FABL.graphMatchingEdgeRepresentative_spec[complete] -
FABL.graphMatchingVertexLabel[complete] -
FABL.graphMatchingVertexLabel_compatible[complete] -
FABL.GraphMatchingEdgeAssignment[complete] -
FABL.graphMatchingEdgeAssignmentToLabeling[complete] -
FABL.graphMatchingLabelingToEdgeAssignment[complete] -
FABL.graphMatchingEdgeAssignmentToLabeling_leftInverse[complete] -
FABL.graphMatchingLabelingToEdgeAssignment_leftInverse[complete] -
FABL.graphMatchingLabelingEquivEdgeAssignment[complete] -
FABL.graphMatchingEdgeAssignmentToLabeling_weight[complete] -
FABL.sum_matchingLabelingFourierWeight_eq_edgeAssignment[complete] -
FABL.sum_matchingLabelingFourierWeight_le[complete] -
FABL.homogeneous_evenMoment_le_graphMatching_count[complete] -
FABL.pairEndpoints[complete] -
FABL.flattenPairList[complete] -
FABL.flattenPairList_decodePerfectMatchingCode_perm[complete] -
FABL.flattenPairList_decodePerfectMatchingCode_nodup[complete] -
FABL.pairListGraph[complete] -
FABL.pairListGraph_adj_iff[complete] -
FABL.pairListGraph_isPerfectMatching[complete] -
FABL.decodePerfectMatchingCode_map[complete] -
FABL.bookVertexFinEquiv[complete] -
FABL.finVertexList[complete] -
FABL.length_finVertexList[complete] -
FABL.nodup_finVertexList[complete] -
FABL.mem_finVertexList[complete] -
FABL.map_val_finVertexList[complete] -
FABL.bookVertexList[complete] -
FABL.length_bookVertexList[complete] -
FABL.nodup_bookVertexList[complete] -
FABL.mem_bookVertexList[complete] -
FABL.decodedBookPartiteEdges[complete] -
FABL.bookVertexFinEquiv_val_div[complete] -
FABL.decodedBookPartiteEdges_map_fin[complete] -
FABL.decode_finVertexList_map_val[complete] -
FABL.decodedBookPartiteEdge_parts_ne[complete] -
FABL.pairListGraph_decodedBookPartiteEdges_le[complete] -
FABL.partiteMatchingGraphOfCode[complete] -
FABL.pairListGraph_decodePerfectMatchingCode_injective[complete] -
FABL.CompletePerfectMatching[complete] -
FABL.perfectMatchingPartner[complete] -
FABL.perfectMatchingPartner_adj[complete] -
FABL.perfectMatchingPartner_unique[complete] -
FABL.perfectMatchingPartner_involutive[complete] -
FABL.perfectMatchingPartner_ne[complete] -
FABL.perfectMatchingPartnerPerm[complete] -
FABL.perfectMatchingPartnerPerm_apply[complete] -
FABL.perfectMatchingPartnerPerm_injective[complete] -
FABL.PairingPerm[complete] -
FABL.perfectMatchingPartnerPerm_cycleType[complete] -
FABL.completePerfectMatchingToPairingPerm[complete] -
FABL.completePerfectMatchingToPairingPerm_injective[complete] -
FABL.card_pairingPerm[complete] -
FABL.perfectMatchingGraphOfCode[complete] -
FABL.perfectMatchingGraphOfCode_injective[complete] -
FABL.card_completePerfectMatching[complete] -
FABL.perfectMatchingGraphOfCode_bijective[complete] -
FABL.perfectMatchingCodeEquivCompletePerfectMatching[complete] -
FABL.partiteMatchingGraphOfCode_injective[complete] -
FABL.bookVertexEvenFinEquiv[complete] -
FABL.bookVertexEvenFinEquiv_val_div[complete] -
FABL.relabelBookMatchingGraph[complete] -
FABL.graphPartiteMatchingToCompletePerfectMatching[complete] -
FABL.graphPartiteMatchingToCompletePerfectMatching_injective[complete] -
FABL.decodedRangeEdge_perfectMatchingGraph_adj[complete] -
FABL.IsEvenPartitePerfectMatchingCode[complete] -
FABL.EvenPartitePerfectMatching[complete] -
FABL.partitePerfectMatchingEvenEquiv[complete] -
FABL.graphPartiteMatchingCodeRaw[complete] -
FABL.graphPartiteMatchingCodeRaw_isEvenPartite[complete] -
FABL.graphPartiteMatchingToEvenCode[complete] -
FABL.graphPartiteMatchingToEvenCode_injective[complete] -
FABL.card_graphPartitePerfectMatching_eq_partitePerfectMatching_of_pos[complete] -
FABL.emptyGraphPartitePerfectMatching[complete] -
FABL.card_graphPartitePerfectMatching_zero[complete] -
FABL.card_partitePerfectMatching_zero[complete] -
FABL.card_graphPartitePerfectMatching_eq_partitePerfectMatching[complete] -
FABL.graphPartitePerfectMatchingEquivCode[complete] -
FABL.homogeneous_evenMoment_le_partiteMatching_count[complete] -
FABL.fourierWeightAtLevel_eq_uniformLpNorm_two_sq_of_homogeneous[complete] -
FABL.homogeneous_uniformLpNorm_le_partiteMatching[complete] -
FABL.exercise9_37b_printed_multiplicity_counterexample[complete]
Exercise 9.37. Let q=2r and let f=f^{=k} be homogeneous of degree
k\ge1.
-
Prove
\mathbb E[f^q] =\sum_{S_1\mathbin\triangle\cdots\mathbin\triangle S_q=\varnothing} \widehat f(S_1)\cdots\widehat f(S_q) \le \sum |\widehat f(S_1)\cdots\widehat f(S_q)|. \tag{9.18} -
Let
Gbe the completeq-partite graph with partsV_1,\ldots,V_qof sizek, and let\mathcal Mbe its perfect matchings. The book prints the last sum as equal to\frac1{(k!)^q} \sum_{M\in\mathcal M}\sum_{\ell:M\to[n]} |\widehat f(T_1(M,\ell))\cdots\widehat f(T_q(M,\ell))|. \tag{9.19}This equality is false because a parity tuple may admit several compatible perfect matchings; atq=4,k=1,n=1its two sides are1and3. Prove instead the corrected upper bound with the same right-hand side. -
Reindex that corrected matching-label sum by edge assignments (equivalently, by ordered matching edges and labels
i_1,\ldots,i_{rk}\in[n]). -
Apply the two-regular Finner inequality, equivalently the book's
rkrepeated Cauchy--Schwarz steps, to bound each matching sum by therth power of the sum of squared degree-kcoefficients. -
Deduce
\|f\|_q \le\frac{|\mathcal M|^{1/q}}{\sqrt{k!}}\|f\|_2.
Lean code for Theorem9.7.38●157 declarations
Associated Lean declarations
-
FABL.listSymmDiff[complete]
-
FABL.tupleSymmDiff[complete]
-
FABL.not_mem_listSymmDiff_iff_even_countP[complete]
-
FABL.even_countP_of_tupleSymmDiff_eq_empty[complete]
-
FABL.sum_ite_eq_countP_ofFn[complete]
-
FABL.natCard_subtype_eq_countP_ofFn[complete]
-
FABL.list_prod_monomial[complete]
-
FABL.prod_monomial_eq_tupleSymmDiff[complete]
-
FABL.expect_pow_eq_sum_fourierCoeff_of_tupleSymmDiff_empty[complete]
-
FABL.expect_pow_le_sum_abs_fourierCoeff_of_tupleSymmDiff_empty[complete]
-
FABL.BookPartiteVertex[complete]
-
FABL.bookPartiteGraph[complete]
-
FABL.GraphPartitePerfectMatching[complete]
-
FABL.MatchingCompatibleLabeling[complete]
-
FABL.exists_graphPartitePerfectMatching_compatible[complete]
-
FABL.sum_le_inv_mul_sum_of_injective_lifts[complete]
-
FABL.LevelKParityTuple.enumeration[complete]
-
FABL.ParityTupleReordering[complete]
-
FABL.LevelKParityTuple.assignedVertexLabel[complete]
-
FABL.LevelKParityTuple.assignedVertexLabel_injective_on_part[complete]
-
FABL.LevelKParityTuple.assignedLabelFiberEquivPartFiber[complete]
-
FABL.LevelKParityTuple.assignedVertexLabel_even_fiber[complete]
-
FABL.LevelKParityTuple.exists_compatible_matching[complete]
-
FABL.matchingLabelSet[complete]
-
FABL.LevelKParityTuple.matchingLabelSet_assignedVertexLabel[complete]
-
FABL.GraphMatchingLabeling[complete]
-
FABL.LevelKParityTuple.chosenCompatibleMatching[complete]
-
FABL.LevelKParityTuple.chosenCompatibleMatching_spec[complete]
-
FABL.parityTupleMatchingLift[complete]
-
FABL.parityTupleMatchingLift_injective[complete]
-
FABL.card_parityTupleReordering[complete]
-
FABL.parityTupleFourierWeight[complete]
-
FABL.matchingLabelingFourierWeight[complete]
-
FABL.parityTupleMatchingLift_weight[complete]
-
FABL.parityTuple_sum_le_matchingLabeling_sum[complete]
-
FABL.IsFourierHomogeneous[complete]
-
FABL.sum_abs_fourierCoeff_tupleSymmDiff_eq_parityTuple_sum[complete]
-
FABL.homogeneous_evenMoment_le_matchingLabeling_sum[complete]
-
FABL.expect_fin_snoc[complete]
-
FABL.prod_eq_mul_mul_prod_erase_two[complete]
-
FABL.uniform_expect_prod_le_prod_sqrt_expect_sq_twoRegular[complete]
-
FABL.uniform_expect_prod_le_prod_sqrt_expect_sq_twoRegular_finite[complete]
-
FABL.matching_eq_or_adj_of_toEdge_eq[complete]
-
FABL.graphMatchingPartEdges[complete]
-
FABL.mem_graphMatchingPartEdges_iff[complete]
-
FABL.graphMatchingPartEdge[complete]
-
FABL.graphMatchingPartEdge_mem[complete]
-
FABL.graphMatchingPartEdge_injective[complete]
-
FABL.graphMatchingPartEdgeEquiv[complete]
-
FABL.graphMatchingPartEdges_degree_two[complete]
-
FABL.expect_eq_expect_subtype_of_dependsOn[complete]
-
FABL.LevelKSubset[complete]
-
FABL.InjectiveLabelTuple[complete]
-
FABL.InjectiveLabelTuple.image[complete]
-
FABL.InjectiveLabelTuple.imageEquiv[complete]
-
FABL.InjectiveLabelCodeTarget[complete]
-
FABL.InjectiveLabelTuple.code[complete]
-
FABL.injectiveLabelTuple_code_injective[complete]
-
FABL.sum_injectiveLabelCodeTarget[complete]
-
FABL.sum_injectiveLabelTuple_le_factorial_mul[complete]
-
FABL.sum_labelTuple_fourierCoeff_sq_le[complete]
-
FABL.expect_labelTuple_fourierCoeff_sq_le[complete]
-
FABL.graphMatchingEdgeLabelSet[complete]
-
FABL.graphMatchingEdgeFourierFactor[complete]
-
FABL.graphMatchingEdgeFourierFactor_nonneg[complete]
-
FABL.graphMatchingEdgeFourierFactor_dependsOn[complete]
-
FABL.graphMatchingEdgeFourierFactor_sq_dependsOn[complete]
-
FABL.expect_graphMatchingEdgeFourierFactor_sq_eq[complete]
-
FABL.expect_graphMatchingEdgeFourierFactor_sq_le[complete]
-
FABL.graphMatching_finner[complete]
-
FABL.graphMatching_fixed_expect_le[complete]
-
FABL.card_graphMatchingPartEdges[complete]
-
FABL.card_graphMatching_edgeSet[complete]
-
FABL.graphMatching_fixed_sum_le[complete]
-
FABL.graphMatchingEdgeRepresentative[complete]
-
FABL.graphMatchingEdgeRepresentative_spec[complete]
-
FABL.graphMatchingVertexLabel[complete]
-
FABL.graphMatchingVertexLabel_compatible[complete]
-
FABL.GraphMatchingEdgeAssignment[complete]
-
FABL.graphMatchingEdgeAssignmentToLabeling[complete]
-
FABL.graphMatchingLabelingToEdgeAssignment[complete]
-
FABL.graphMatchingEdgeAssignmentToLabeling_leftInverse[complete]
-
FABL.graphMatchingLabelingToEdgeAssignment_leftInverse[complete]
-
FABL.graphMatchingLabelingEquivEdgeAssignment[complete]
-
FABL.graphMatchingEdgeAssignmentToLabeling_weight[complete]
-
FABL.sum_matchingLabelingFourierWeight_eq_edgeAssignment[complete]
-
FABL.sum_matchingLabelingFourierWeight_le[complete]
-
FABL.homogeneous_evenMoment_le_graphMatching_count[complete]
-
FABL.pairEndpoints[complete]
-
FABL.flattenPairList[complete]
-
FABL.flattenPairList_decodePerfectMatchingCode_perm[complete]
-
FABL.flattenPairList_decodePerfectMatchingCode_nodup[complete]
-
FABL.pairListGraph[complete]
-
FABL.pairListGraph_adj_iff[complete]
-
FABL.pairListGraph_isPerfectMatching[complete]
-
FABL.decodePerfectMatchingCode_map[complete]
-
FABL.bookVertexFinEquiv[complete]
-
FABL.finVertexList[complete]
-
FABL.length_finVertexList[complete]
-
FABL.nodup_finVertexList[complete]
-
FABL.mem_finVertexList[complete]
-
FABL.map_val_finVertexList[complete]
-
FABL.bookVertexList[complete]
-
FABL.length_bookVertexList[complete]
-
FABL.nodup_bookVertexList[complete]
-
FABL.mem_bookVertexList[complete]
-
FABL.decodedBookPartiteEdges[complete]
-
FABL.bookVertexFinEquiv_val_div[complete]
-
FABL.decodedBookPartiteEdges_map_fin[complete]
-
FABL.decode_finVertexList_map_val[complete]
-
FABL.decodedBookPartiteEdge_parts_ne[complete]
-
FABL.pairListGraph_decodedBookPartiteEdges_le[complete]
-
FABL.partiteMatchingGraphOfCode[complete]
-
FABL.pairListGraph_decodePerfectMatchingCode_injective[complete]
-
FABL.CompletePerfectMatching[complete]
-
FABL.perfectMatchingPartner[complete]
-
FABL.perfectMatchingPartner_adj[complete]
-
FABL.perfectMatchingPartner_unique[complete]
-
FABL.perfectMatchingPartner_involutive[complete]
-
FABL.perfectMatchingPartner_ne[complete]
-
FABL.perfectMatchingPartnerPerm[complete]
-
FABL.perfectMatchingPartnerPerm_apply[complete]
-
FABL.perfectMatchingPartnerPerm_injective[complete]
-
FABL.PairingPerm[complete]
-
FABL.perfectMatchingPartnerPerm_cycleType[complete]
-
FABL.completePerfectMatchingToPairingPerm[complete]
-
FABL.completePerfectMatchingToPairingPerm_injective[complete]
-
FABL.card_pairingPerm[complete]
-
FABL.perfectMatchingGraphOfCode[complete]
-
FABL.perfectMatchingGraphOfCode_injective[complete]
-
FABL.card_completePerfectMatching[complete]
-
FABL.perfectMatchingGraphOfCode_bijective[complete]
-
FABL.perfectMatchingCodeEquivCompletePerfectMatching[complete]
-
FABL.partiteMatchingGraphOfCode_injective[complete]
-
FABL.bookVertexEvenFinEquiv[complete]
-
FABL.bookVertexEvenFinEquiv_val_div[complete]
-
FABL.relabelBookMatchingGraph[complete]
-
FABL.graphPartiteMatchingToCompletePerfectMatching[complete]
-
FABL.graphPartiteMatchingToCompletePerfectMatching_injective[complete]
-
FABL.decodedRangeEdge_perfectMatchingGraph_adj[complete]
-
FABL.IsEvenPartitePerfectMatchingCode[complete]
-
FABL.EvenPartitePerfectMatching[complete]
-
FABL.partitePerfectMatchingEvenEquiv[complete]
-
FABL.graphPartiteMatchingCodeRaw[complete]
-
FABL.graphPartiteMatchingCodeRaw_isEvenPartite[complete]
-
FABL.graphPartiteMatchingToEvenCode[complete]
-
FABL.graphPartiteMatchingToEvenCode_injective[complete]
-
FABL.card_graphPartitePerfectMatching_eq_partitePerfectMatching_of_pos[complete]
-
FABL.emptyGraphPartitePerfectMatching[complete]
-
FABL.card_graphPartitePerfectMatching_zero[complete]
-
FABL.card_partitePerfectMatching_zero[complete]
-
FABL.card_graphPartitePerfectMatching_eq_partitePerfectMatching[complete]
-
FABL.graphPartitePerfectMatchingEquivCode[complete]
-
FABL.homogeneous_evenMoment_le_partiteMatching_count[complete]
-
FABL.fourierWeightAtLevel_eq_uniformLpNorm_two_sq_of_homogeneous[complete]
-
FABL.homogeneous_uniformLpNorm_le_partiteMatching[complete]
-
FABL.exercise9_37b_printed_multiplicity_counterexample[complete]
-
FABL.listSymmDiff[complete] -
FABL.tupleSymmDiff[complete] -
FABL.not_mem_listSymmDiff_iff_even_countP[complete] -
FABL.even_countP_of_tupleSymmDiff_eq_empty[complete] -
FABL.sum_ite_eq_countP_ofFn[complete] -
FABL.natCard_subtype_eq_countP_ofFn[complete] -
FABL.list_prod_monomial[complete] -
FABL.prod_monomial_eq_tupleSymmDiff[complete] -
FABL.expect_pow_eq_sum_fourierCoeff_of_tupleSymmDiff_empty[complete] -
FABL.expect_pow_le_sum_abs_fourierCoeff_of_tupleSymmDiff_empty[complete] -
FABL.BookPartiteVertex[complete] -
FABL.bookPartiteGraph[complete] -
FABL.GraphPartitePerfectMatching[complete] -
FABL.MatchingCompatibleLabeling[complete] -
FABL.exists_graphPartitePerfectMatching_compatible[complete] -
FABL.sum_le_inv_mul_sum_of_injective_lifts[complete] -
FABL.LevelKParityTuple.enumeration[complete] -
FABL.ParityTupleReordering[complete] -
FABL.LevelKParityTuple.assignedVertexLabel[complete] -
FABL.LevelKParityTuple.assignedVertexLabel_injective_on_part[complete] -
FABL.LevelKParityTuple.assignedLabelFiberEquivPartFiber[complete] -
FABL.LevelKParityTuple.assignedVertexLabel_even_fiber[complete] -
FABL.LevelKParityTuple.exists_compatible_matching[complete] -
FABL.matchingLabelSet[complete] -
FABL.LevelKParityTuple.matchingLabelSet_assignedVertexLabel[complete] -
FABL.GraphMatchingLabeling[complete] -
FABL.LevelKParityTuple.chosenCompatibleMatching[complete] -
FABL.LevelKParityTuple.chosenCompatibleMatching_spec[complete] -
FABL.parityTupleMatchingLift[complete] -
FABL.parityTupleMatchingLift_injective[complete] -
FABL.card_parityTupleReordering[complete] -
FABL.parityTupleFourierWeight[complete] -
FABL.matchingLabelingFourierWeight[complete] -
FABL.parityTupleMatchingLift_weight[complete] -
FABL.parityTuple_sum_le_matchingLabeling_sum[complete] -
FABL.IsFourierHomogeneous[complete] -
FABL.sum_abs_fourierCoeff_tupleSymmDiff_eq_parityTuple_sum[complete] -
FABL.homogeneous_evenMoment_le_matchingLabeling_sum[complete] -
FABL.expect_fin_snoc[complete] -
FABL.prod_eq_mul_mul_prod_erase_two[complete] -
FABL.uniform_expect_prod_le_prod_sqrt_expect_sq_twoRegular[complete] -
FABL.uniform_expect_prod_le_prod_sqrt_expect_sq_twoRegular_finite[complete] -
FABL.matching_eq_or_adj_of_toEdge_eq[complete] -
FABL.graphMatchingPartEdges[complete] -
FABL.mem_graphMatchingPartEdges_iff[complete] -
FABL.graphMatchingPartEdge[complete] -
FABL.graphMatchingPartEdge_mem[complete] -
FABL.graphMatchingPartEdge_injective[complete] -
FABL.graphMatchingPartEdgeEquiv[complete] -
FABL.graphMatchingPartEdges_degree_two[complete] -
FABL.expect_eq_expect_subtype_of_dependsOn[complete] -
FABL.LevelKSubset[complete] -
FABL.InjectiveLabelTuple[complete] -
FABL.InjectiveLabelTuple.image[complete] -
FABL.InjectiveLabelTuple.imageEquiv[complete] -
FABL.InjectiveLabelCodeTarget[complete] -
FABL.InjectiveLabelTuple.code[complete] -
FABL.injectiveLabelTuple_code_injective[complete] -
FABL.sum_injectiveLabelCodeTarget[complete] -
FABL.sum_injectiveLabelTuple_le_factorial_mul[complete] -
FABL.sum_labelTuple_fourierCoeff_sq_le[complete] -
FABL.expect_labelTuple_fourierCoeff_sq_le[complete] -
FABL.graphMatchingEdgeLabelSet[complete] -
FABL.graphMatchingEdgeFourierFactor[complete] -
FABL.graphMatchingEdgeFourierFactor_nonneg[complete] -
FABL.graphMatchingEdgeFourierFactor_dependsOn[complete] -
FABL.graphMatchingEdgeFourierFactor_sq_dependsOn[complete] -
FABL.expect_graphMatchingEdgeFourierFactor_sq_eq[complete] -
FABL.expect_graphMatchingEdgeFourierFactor_sq_le[complete] -
FABL.graphMatching_finner[complete] -
FABL.graphMatching_fixed_expect_le[complete] -
FABL.card_graphMatchingPartEdges[complete] -
FABL.card_graphMatching_edgeSet[complete] -
FABL.graphMatching_fixed_sum_le[complete] -
FABL.graphMatchingEdgeRepresentative[complete] -
FABL.graphMatchingEdgeRepresentative_spec[complete] -
FABL.graphMatchingVertexLabel[complete] -
FABL.graphMatchingVertexLabel_compatible[complete] -
FABL.GraphMatchingEdgeAssignment[complete] -
FABL.graphMatchingEdgeAssignmentToLabeling[complete] -
FABL.graphMatchingLabelingToEdgeAssignment[complete] -
FABL.graphMatchingEdgeAssignmentToLabeling_leftInverse[complete] -
FABL.graphMatchingLabelingToEdgeAssignment_leftInverse[complete] -
FABL.graphMatchingLabelingEquivEdgeAssignment[complete] -
FABL.graphMatchingEdgeAssignmentToLabeling_weight[complete] -
FABL.sum_matchingLabelingFourierWeight_eq_edgeAssignment[complete] -
FABL.sum_matchingLabelingFourierWeight_le[complete] -
FABL.homogeneous_evenMoment_le_graphMatching_count[complete] -
FABL.pairEndpoints[complete] -
FABL.flattenPairList[complete] -
FABL.flattenPairList_decodePerfectMatchingCode_perm[complete] -
FABL.flattenPairList_decodePerfectMatchingCode_nodup[complete] -
FABL.pairListGraph[complete] -
FABL.pairListGraph_adj_iff[complete] -
FABL.pairListGraph_isPerfectMatching[complete] -
FABL.decodePerfectMatchingCode_map[complete] -
FABL.bookVertexFinEquiv[complete] -
FABL.finVertexList[complete] -
FABL.length_finVertexList[complete] -
FABL.nodup_finVertexList[complete] -
FABL.mem_finVertexList[complete] -
FABL.map_val_finVertexList[complete] -
FABL.bookVertexList[complete] -
FABL.length_bookVertexList[complete] -
FABL.nodup_bookVertexList[complete] -
FABL.mem_bookVertexList[complete] -
FABL.decodedBookPartiteEdges[complete] -
FABL.bookVertexFinEquiv_val_div[complete] -
FABL.decodedBookPartiteEdges_map_fin[complete] -
FABL.decode_finVertexList_map_val[complete] -
FABL.decodedBookPartiteEdge_parts_ne[complete] -
FABL.pairListGraph_decodedBookPartiteEdges_le[complete] -
FABL.partiteMatchingGraphOfCode[complete] -
FABL.pairListGraph_decodePerfectMatchingCode_injective[complete] -
FABL.CompletePerfectMatching[complete] -
FABL.perfectMatchingPartner[complete] -
FABL.perfectMatchingPartner_adj[complete] -
FABL.perfectMatchingPartner_unique[complete] -
FABL.perfectMatchingPartner_involutive[complete] -
FABL.perfectMatchingPartner_ne[complete] -
FABL.perfectMatchingPartnerPerm[complete] -
FABL.perfectMatchingPartnerPerm_apply[complete] -
FABL.perfectMatchingPartnerPerm_injective[complete] -
FABL.PairingPerm[complete] -
FABL.perfectMatchingPartnerPerm_cycleType[complete] -
FABL.completePerfectMatchingToPairingPerm[complete] -
FABL.completePerfectMatchingToPairingPerm_injective[complete] -
FABL.card_pairingPerm[complete] -
FABL.perfectMatchingGraphOfCode[complete] -
FABL.perfectMatchingGraphOfCode_injective[complete] -
FABL.card_completePerfectMatching[complete] -
FABL.perfectMatchingGraphOfCode_bijective[complete] -
FABL.perfectMatchingCodeEquivCompletePerfectMatching[complete] -
FABL.partiteMatchingGraphOfCode_injective[complete] -
FABL.bookVertexEvenFinEquiv[complete] -
FABL.bookVertexEvenFinEquiv_val_div[complete] -
FABL.relabelBookMatchingGraph[complete] -
FABL.graphPartiteMatchingToCompletePerfectMatching[complete] -
FABL.graphPartiteMatchingToCompletePerfectMatching_injective[complete] -
FABL.decodedRangeEdge_perfectMatchingGraph_adj[complete] -
FABL.IsEvenPartitePerfectMatchingCode[complete] -
FABL.EvenPartitePerfectMatching[complete] -
FABL.partitePerfectMatchingEvenEquiv[complete] -
FABL.graphPartiteMatchingCodeRaw[complete] -
FABL.graphPartiteMatchingCodeRaw_isEvenPartite[complete] -
FABL.graphPartiteMatchingToEvenCode[complete] -
FABL.graphPartiteMatchingToEvenCode_injective[complete] -
FABL.card_graphPartitePerfectMatching_eq_partitePerfectMatching_of_pos[complete] -
FABL.emptyGraphPartitePerfectMatching[complete] -
FABL.card_graphPartitePerfectMatching_zero[complete] -
FABL.card_partitePerfectMatching_zero[complete] -
FABL.card_graphPartitePerfectMatching_eq_partitePerfectMatching[complete] -
FABL.graphPartitePerfectMatchingEquivCode[complete] -
FABL.homogeneous_evenMoment_le_partiteMatching_count[complete] -
FABL.fourierWeightAtLevel_eq_uniformLpNorm_two_sq_of_homogeneous[complete] -
FABL.homogeneous_uniformLpNorm_le_partiteMatching[complete] -
FABL.exercise9_37b_printed_multiplicity_counterexample[complete]
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.listSymmDiff.{u_1} {α : Type u_1} [DecidableEq α] : List (Finset α) → Finset α
def FABL.listSymmDiff.{u_1} {α : Type u_1} [DecidableEq α] : List (Finset α) → Finset α
Symmetric difference of a finite list of subsets.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.tupleSymmDiff.{u_1} {α : Type u_1} [DecidableEq α] {q : ℕ} (S : Fin q → Finset α) : Finset α
def FABL.tupleSymmDiff.{u_1} {α : Type u_1} [DecidableEq α] {q : ℕ} (S : Fin q → Finset α) : Finset α
Symmetric difference of a tuple indexed by `Fin q`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.not_mem_listSymmDiff_iff_even_countP.{u_1} {α : Type u_1} [DecidableEq α] (x : α) (sets : List (Finset α)) : x ∉ FABL.listSymmDiff sets ↔ Even (List.countP (fun S => decide (x ∈ S)) sets)
theorem FABL.not_mem_listSymmDiff_iff_even_countP.{u_1} {α : Type u_1} [DecidableEq α] (x : α) (sets : List (Finset α)) : x ∉ FABL.listSymmDiff sets ↔ Even (List.countP (fun S => decide (x ∈ S)) sets)
Empty list-symmetric-difference is equivalent to even point multiplicity.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.even_countP_of_tupleSymmDiff_eq_empty.{u_1} {α : Type u_1} [DecidableEq α] {q : ℕ} (sets : Fin q → Finset α) (hsets : FABL.tupleSymmDiff sets = ∅) (x : α) : Even (List.countP (fun S => decide (x ∈ S)) (List.ofFn sets))
theorem FABL.even_countP_of_tupleSymmDiff_eq_empty.{u_1} {α : Type u_1} [DecidableEq α] {q : ℕ} (sets : Fin q → Finset α) (hsets : FABL.tupleSymmDiff sets = ∅) (x : α) : Even (List.countP (fun S => decide (x ∈ S)) (List.ofFn sets))
Tuple form: an empty total symmetric difference gives even membership count for every point.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.sum_ite_eq_countP_ofFn (q : ℕ) (p : Fin q → Prop) [DecidablePred p] : (∑ i, if p i then 1 else 0) = List.countP (fun i => decide (p i)) (List.ofFn fun i => i)
theorem FABL.sum_ite_eq_countP_ofFn (q : ℕ) (p : Fin q → Prop) [DecidablePred p] : (∑ i, if p i then 1 else 0) = List.countP (fun i => decide (p i)) (List.ofFn fun i => i)
Counting a predicate over `Fin q` agrees with `List.countP` on `List.ofFn`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.natCard_subtype_eq_countP_ofFn {q : ℕ} (p : Fin q → Prop) [DecidablePred p] : Nat.card { i // p i } = List.countP (fun i => decide (p i)) (List.ofFn fun i => i)
theorem FABL.natCard_subtype_eq_countP_ofFn {q : ℕ} (p : Fin q → Prop) [DecidablePred p] : Nat.card { i // p i } = List.countP (fun i => decide (p i)) (List.ofFn fun i => i)
Cardinal form of `sum_ite_eq_countP_ofFn`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.list_prod_monomial {n : ℕ} (sets : List (Finset (Fin n))) (x : FABL.SignCube n) : (List.map (fun S => FABL.monomial S x) sets).prod = FABL.monomial (FABL.listSymmDiff sets) x
theorem FABL.list_prod_monomial {n : ℕ} (sets : List (Finset (Fin n))) (x : FABL.SignCube n) : (List.map (fun S => FABL.monomial S x) sets).prod = FABL.monomial (FABL.listSymmDiff sets) x
Products of Walsh monomials are indexed by the symmetric difference of their supports.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.prod_monomial_eq_tupleSymmDiff {n q : ℕ} (sets : Fin q → Finset (Fin n)) (x : FABL.SignCube n) : ∏ j, FABL.monomial (sets j) x = FABL.monomial (FABL.tupleSymmDiff sets) x
theorem FABL.prod_monomial_eq_tupleSymmDiff {n q : ℕ} (sets : Fin q → Finset (Fin n)) (x : FABL.SignCube n) : ∏ j, FABL.monomial (sets j) x = FABL.monomial (FABL.tupleSymmDiff sets) x
Tuple-indexed form of `list_prod_monomial`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.expect_pow_eq_sum_fourierCoeff_of_tupleSymmDiff_empty {n : ℕ} (q : ℕ) (f : FABL.SignCube n → ℝ) : (Finset.univ.expect fun x => f x ^ q) = ∑ sets with FABL.tupleSymmDiff sets = ∅, ∏ j, FABL.fourierCoeff f (sets j)
theorem FABL.expect_pow_eq_sum_fourierCoeff_of_tupleSymmDiff_empty {n : ℕ} (q : ℕ) (f : FABL.SignCube n → ℝ) : (Finset.univ.expect fun x => f x ^ q) = ∑ sets with FABL.tupleSymmDiff sets = ∅, ∏ j, FABL.fourierCoeff f (sets j)
Exercise 9.37(a), equation (9.18), first equality. The formula is valid without the homogeneity or parity assumptions; those assumptions only restrict which coefficients can be nonzero.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.expect_pow_le_sum_abs_fourierCoeff_of_tupleSymmDiff_empty {n : ℕ} (q : ℕ) (f : FABL.SignCube n → ℝ) : (Finset.univ.expect fun x => f x ^ q) ≤ ∑ sets with FABL.tupleSymmDiff sets = ∅, |∏ j, FABL.fourierCoeff f (sets j)|
theorem FABL.expect_pow_le_sum_abs_fourierCoeff_of_tupleSymmDiff_empty {n : ℕ} (q : ℕ) (f : FABL.SignCube n → ℝ) : (Finset.univ.expect fun x => f x ^ q) ≤ ∑ sets with FABL.tupleSymmDiff sets = ∅, |∏ j, FABL.fourierCoeff f (sets j)|
Exercise 9.37(a), equation (9.18), triangle-inequality half.
-
abbrevdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
abbrev FABL.BookPartiteVertex (q k : ℕ) : Type
abbrev FABL.BookPartiteVertex (q k : ℕ) : Type
Vertices of the complete `q`-partite graph with `k` vertices per part.
-
abbrevdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
abbrev FABL.bookPartiteGraph (q k : ℕ) : SimpleGraph (FABL.BookPartiteVertex q k)
abbrev FABL.bookPartiteGraph (q k : ℕ) : SimpleGraph (FABL.BookPartiteVertex q k)
The complete `q`-partite graph used in Exercise 9.37.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.GraphPartitePerfectMatching (q k : ℕ) : Type
def FABL.GraphPartitePerfectMatching (q k : ℕ) : Type
Graph-theoretic perfect matchings in the book's complete multipartite graph.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.MatchingCompatibleLabeling.{u_1} {q k : ℕ} {β : Type u_1} (label : FABL.BookPartiteVertex q k → β) (matching : (FABL.bookPartiteGraph q k).Subgraph) : Prop
def FABL.MatchingCompatibleLabeling.{u_1} {q k : ℕ} {β : Type u_1} (label : FABL.BookPartiteVertex q k → β) (matching : (FABL.bookPartiteGraph q k).Subgraph) : Prop
A vertex labeling is constant on every edge of a matching.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.exists_graphPartitePerfectMatching_compatible.{u_1} {q k : ℕ} {β : Type u_1} (label : FABL.BookPartiteVertex q k → β) (hinj : ∀ (part : Fin q), Function.Injective fun pos => label ⟨part, pos⟩) (heven : ∀ (b : β), Even (Nat.card { v // label v = b })) : ∃ matching, FABL.MatchingCompatibleLabeling label ↑matching
theorem FABL.exists_graphPartitePerfectMatching_compatible.{u_1} {q k : ℕ} {β : Type u_1} (label : FABL.BookPartiteVertex q k → β) (hinj : ∀ (part : Fin q), Function.Injective fun pos => label ⟨part, pos⟩) (heven : ∀ (b : β), Even (Nat.card { v // label v = b })) : ∃ matching, FABL.MatchingCompatibleLabeling label ↑matching
Even label fibers and injectivity within every part produce a compatible partite perfect matching.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.sum_le_inv_mul_sum_of_injective_lifts.{u_1, u_2} {A : Type u_1} {B : Type u_2} [Fintype A] [Fintype B] (m : ℕ) (hm : 0 < m) (sourceWeight : A → ℝ) (targetWeight : B → ℝ) (htarget : ∀ (b : B), 0 ≤ targetWeight b) (lift : A × Fin m → B) (hlift : Function.Injective lift) (hweight : ∀ (z : A × Fin m), targetWeight (lift z) = sourceWeight z.1) : ∑ a, sourceWeight a ≤ 1 / ↑m * ∑ b, targetWeight b
theorem FABL.sum_le_inv_mul_sum_of_injective_lifts.{u_1, u_2} {A : Type u_1} {B : Type u_2} [Fintype A] [Fintype B] (m : ℕ) (hm : 0 < m) (sourceWeight : A → ℝ) (targetWeight : B → ℝ) (htarget : ∀ (b : B), 0 ≤ targetWeight b) (lift : A × Fin m → B) (hlift : Function.Injective lift) (hweight : ∀ (z : A × Fin m), targetWeight (lift z) = sourceWeight z.1) : ∑ a, sourceWeight a ≤ 1 / ↑m * ∑ b, targetWeight b
Weighted overcounting principle used by the corrected inequality form of Exercise 9.37(b): `m` injective, weight-preserving lifts of every source object into the target imply that the source sum is at most `1/m` times the target sum.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.LevelKParityTuple.enumeration {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (part : Fin q) : Fin k ≃ ↥(↑tuple part)
def FABL.LevelKParityTuple.enumeration {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (part : Fin q) : Fin k ≃ ↥(↑tuple part)
A canonical enumeration of one `k`-element support in a parity tuple.
-
abbrevdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
abbrev FABL.ParityTupleReordering (q k : ℕ) : Type
abbrev FABL.ParityTupleReordering (q k : ℕ) : Type
The `(k!)^q` independent reorderings of the canonical support enumerations.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.LevelKParityTuple.assignedVertexLabel {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) : FABL.BookPartiteVertex q k → Fin n
def FABL.LevelKParityTuple.assignedVertexLabel {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) : FABL.BookPartiteVertex q k → Fin n
Vertex labeling obtained by enumerating every support, then independently permuting the `k` positions in every part.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.LevelKParityTuple.assignedVertexLabel_injective_on_part {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) (part : Fin q) : Function.Injective fun pos => tuple.assignedVertexLabel reordering ⟨part, pos⟩
theorem FABL.LevelKParityTuple.assignedVertexLabel_injective_on_part {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) (part : Fin q) : Function.Injective fun pos => tuple.assignedVertexLabel reordering ⟨part, pos⟩
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.LevelKParityTuple.assignedLabelFiberEquivPartFiber {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) (x : Fin n) : { v // tuple.assignedVertexLabel reordering v = x } ≃ { part // x ∈ ↑tuple part }
def FABL.LevelKParityTuple.assignedLabelFiberEquivPartFiber {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) (x : Fin n) : { v // tuple.assignedVertexLabel reordering v = x } ≃ { part // x ∈ ↑tuple part }
A label fiber of the assigned multipartite vertex labeling is equivalent to the set of parts whose support contains that label.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.LevelKParityTuple.assignedVertexLabel_even_fiber {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) (x : Fin n) : Even (Nat.card { v // tuple.assignedVertexLabel reordering v = x })
theorem FABL.LevelKParityTuple.assignedVertexLabel_even_fiber {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) (x : Fin n) : Even (Nat.card { v // tuple.assignedVertexLabel reordering v = x })
Empty symmetric difference makes every assigned label fiber even.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.LevelKParityTuple.exists_compatible_matching {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) : ∃ matching, FABL.MatchingCompatibleLabeling (tuple.assignedVertexLabel reordering) ↑matching
theorem FABL.LevelKParityTuple.exists_compatible_matching {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) : ∃ matching, FABL.MatchingCompatibleLabeling (tuple.assignedVertexLabel reordering) ↑matching
Every parity tuple enumeration admits a compatible complete-partite perfect matching.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.matchingLabelSet {n q k : ℕ} (label : FABL.BookPartiteVertex q k → Fin n) (part : Fin q) : Finset (Fin n)
def FABL.matchingLabelSet {n q k : ℕ} (label : FABL.BookPartiteVertex q k → Fin n) (part : Fin q) : Finset (Fin n)
Label set seen by one part of a vertex labeling.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.LevelKParityTuple.matchingLabelSet_assignedVertexLabel {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) (part : Fin q) : FABL.matchingLabelSet (tuple.assignedVertexLabel reordering) part = ↑tuple part
theorem FABL.LevelKParityTuple.matchingLabelSet_assignedVertexLabel {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) (part : Fin q) : FABL.matchingLabelSet (tuple.assignedVertexLabel reordering) part = ↑tuple part
Assigned labels recover exactly the original parity-tuple supports.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.GraphMatchingLabeling (q k n : ℕ) : Type
def FABL.GraphMatchingLabeling (q k n : ℕ) : Type
A perfect matching together with a compatible vertex labeling. Compatibility makes the vertex labeling equivalent to the book's edge labeling.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.LevelKParityTuple.chosenCompatibleMatching {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) : FABL.GraphPartitePerfectMatching q k
def FABL.LevelKParityTuple.chosenCompatibleMatching {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) : FABL.GraphPartitePerfectMatching q k
Choose the compatible perfect matching furnished by the even-fiber theorem.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.LevelKParityTuple.chosenCompatibleMatching_spec {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) : FABL.MatchingCompatibleLabeling (tuple.assignedVertexLabel reordering) ↑(tuple.chosenCompatibleMatching reordering)
theorem FABL.LevelKParityTuple.chosenCompatibleMatching_spec {n k q : ℕ} (tuple : FABL.LevelKParityTuple n k q) (reordering : FABL.ParityTupleReordering q k) : FABL.MatchingCompatibleLabeling (tuple.assignedVertexLabel reordering) ↑(tuple.chosenCompatibleMatching reordering)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.parityTupleMatchingLift {n k q : ℕ} : FABL.LevelKParityTuple n k q × FABL.ParityTupleReordering q k → FABL.GraphMatchingLabeling q k n
def FABL.parityTupleMatchingLift {n k q : ℕ} : FABL.LevelKParityTuple n k q × FABL.ParityTupleReordering q k → FABL.GraphMatchingLabeling q k n
Lift a parity tuple and one of its `(k!)^q` enumerations to a compatible labeled perfect matching.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.parityTupleMatchingLift_injective {n k q : ℕ} : Function.Injective FABL.parityTupleMatchingLift
theorem FABL.parityTupleMatchingLift_injective {n k q : ℕ} : Function.Injective FABL.parityTupleMatchingLift
The parity-tuple matching lift is injective.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_parityTupleReordering (q k : ℕ) : Fintype.card (FABL.ParityTupleReordering q k) = k.factorial ^ q
theorem FABL.card_parityTupleReordering (q k : ℕ) : Fintype.card (FABL.ParityTupleReordering q k) = k.factorial ^ q
Cardinality of the independent tuple reorderings.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.parityTupleFourierWeight {n k q : ℕ} (f : FABL.SignCube n → ℝ) (tuple : FABL.LevelKParityTuple n k q) : ℝ
def FABL.parityTupleFourierWeight {n k q : ℕ} (f : FABL.SignCube n → ℝ) (tuple : FABL.LevelKParityTuple n k q) : ℝ
Absolute Fourier-product weight of one parity tuple.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.matchingLabelingFourierWeight {n k q : ℕ} (f : FABL.SignCube n → ℝ) (labeled : FABL.GraphMatchingLabeling q k n) : ℝ
def FABL.matchingLabelingFourierWeight {n k q : ℕ} (f : FABL.SignCube n → ℝ) (labeled : FABL.GraphMatchingLabeling q k n) : ℝ
Absolute Fourier-product weight of one compatible labeled matching.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.parityTupleMatchingLift_weight {n k q : ℕ} (f : FABL.SignCube n → ℝ) (z : FABL.LevelKParityTuple n k q × FABL.ParityTupleReordering q k) : FABL.matchingLabelingFourierWeight f (FABL.parityTupleMatchingLift z) = FABL.parityTupleFourierWeight f z.1
theorem FABL.parityTupleMatchingLift_weight {n k q : ℕ} (f : FABL.SignCube n → ℝ) (z : FABL.LevelKParityTuple n k q × FABL.ParityTupleReordering q k) : FABL.matchingLabelingFourierWeight f (FABL.parityTupleMatchingLift z) = FABL.parityTupleFourierWeight f z.1
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.parityTuple_sum_le_matchingLabeling_sum (n k q : ℕ) (f : FABL.SignCube n → ℝ) : ∑ tuple, FABL.parityTupleFourierWeight f tuple ≤ 1 / ↑k.factorial ^ q * ∑ labeled, FABL.matchingLabelingFourierWeight f labeled
theorem FABL.parityTuple_sum_le_matchingLabeling_sum (n k q : ℕ) (f : FABL.SignCube n → ℝ) : ∑ tuple, FABL.parityTupleFourierWeight f tuple ≤ 1 / ↑k.factorial ^ q * ∑ labeled, FABL.matchingLabelingFourierWeight f labeled
Corrected form of Exercise 9.37(b): the matching-label expression is an overcount, not an equality. The printed equality fails because a label appearing in four or more parts admits multiple perfect pairings.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.IsFourierHomogeneous {n : ℕ} (f : FABL.SignCube n → ℝ) (k : ℕ) : Prop
def FABL.IsFourierHomogeneous {n : ℕ} (f : FABL.SignCube n → ℝ) (k : ℕ) : Prop
A function is Fourier-homogeneous of degree `k` when every nonzero coefficient lies on level `k`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.sum_abs_fourierCoeff_tupleSymmDiff_eq_parityTuple_sum {n : ℕ} (q k : ℕ) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : ∑ sets with FABL.tupleSymmDiff sets = ∅, |∏ part, FABL.fourierCoeff f (sets part)| = ∑ tuple, FABL.parityTupleFourierWeight f tuple
theorem FABL.sum_abs_fourierCoeff_tupleSymmDiff_eq_parityTuple_sum {n : ℕ} (q k : ℕ) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : ∑ sets with FABL.tupleSymmDiff sets = ∅, |∏ part, FABL.fourierCoeff f (sets part)| = ∑ tuple, FABL.parityTupleFourierWeight f tuple
Under homogeneity, the absolute XOR-tuple sum is exactly the sum over `LevelKParityTuple`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.homogeneous_evenMoment_le_matchingLabeling_sum {n : ℕ} (r k : ℕ) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : (Finset.univ.expect fun x => f x ^ (2 * r)) ≤ 1 / ↑k.factorial ^ (2 * r) * ∑ labeled, FABL.matchingLabelingFourierWeight f labeled
theorem FABL.homogeneous_evenMoment_le_matchingLabeling_sum {n : ℕ} (r k : ℕ) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : (Finset.univ.expect fun x => f x ^ (2 * r)) ≤ 1 / ↑k.factorial ^ (2 * r) * ∑ labeled, FABL.matchingLabelingFourierWeight f labeled
Corrected Exercise 9.37(a,b): a homogeneous even moment is bounded by the matching-label overcount.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.expect_fin_snoc.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (m : ℕ) (f : (Fin (m + 1) → Ω) → ℝ) : (Finset.univ.expect fun z => f z) = Finset.univ.expect fun y => Finset.univ.expect fun a => f (Fin.snoc y a)
theorem FABL.expect_fin_snoc.{u_1} {Ω : Type u_1} [Fintype Ω] [Nonempty Ω] (m : ℕ) (f : (Fin (m + 1) → Ω) → ℝ) : (Finset.univ.expect fun z => f z) = Finset.univ.expect fun y => Finset.univ.expect fun a => f (Fin.snoc y a)
Fubini for a finite vector with its last coordinate split off.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.prod_eq_mul_mul_prod_erase_two.{u_1} {P : Type u_1} [Fintype P] [DecidableEq P] (a b : P) (hab : a ≠ b) (F : P → ℝ) : ∏ p, F p = F a * F b * ∏ p ∈ (Finset.univ.erase a).erase b, F p
theorem FABL.prod_eq_mul_mul_prod_erase_two.{u_1} {P : Type u_1} [Fintype P] [DecidableEq P] (a b : P) (hab : a ≠ b) (F : P → ℝ) : ∏ p, F p = F a * F b * ∏ p ∈ (Finset.univ.erase a).erase b, F p
Split two distinct factors out of a finite product.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.uniform_expect_prod_le_prod_sqrt_expect_sq_twoRegular.{u_1, u_2} {Ω : Type u_1} {P : Type u_2} [Fintype Ω] [Nonempty Ω] [Fintype P] (m : ℕ) (deps : P → Finset (Fin m)) (hdegree : ∀ (edge : Fin m), Nat.card { part // edge ∈ deps part } = 2) (g : P → (Fin m → Ω) → ℝ) (hg : ∀ (part : P) (assignment : Fin m → Ω), 0 ≤ g part assignment) (hdepends : ∀ (part : P), DependsOn (g part) {edge | edge ∈ deps part}) : (Finset.univ.expect fun assignment => ∏ part, g part assignment) ≤ ∏ part, √(Finset.univ.expect fun assignment => g part assignment ^ 2)
theorem FABL.uniform_expect_prod_le_prod_sqrt_expect_sq_twoRegular.{u_1, u_2} {Ω : Type u_1} {P : Type u_2} [Fintype Ω] [Nonempty Ω] [Fintype P] (m : ℕ) (deps : P → Finset (Fin m)) (hdegree : ∀ (edge : Fin m), Nat.card { part // edge ∈ deps part } = 2) (g : P → (Fin m → Ω) → ℝ) (hg : ∀ (part : P) (assignment : Fin m → Ω), 0 ≤ g part assignment) (hdepends : ∀ (part : P), DependsOn (g part) {edge | edge ∈ deps part}) : (Finset.univ.expect fun assignment => ∏ part, g part assignment) ≤ ∏ part, √(Finset.univ.expect fun assignment => g part assignment ^ 2)
Finner's inequality for a two-regular finite dependency system. This is the abstract form of the `rk` successive Cauchy--Schwarz steps in Exercise 9.37(d).
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.uniform_expect_prod_le_prod_sqrt_expect_sq_twoRegular_finite.{u_1, u_2, u_3} {Ω : Type u_1} {P : Type u_2} {E : Type u_3} [Fintype Ω] [Nonempty Ω] [Fintype P] [Fintype E] [DecidableEq E] (deps : P → Finset E) (hdegree : ∀ (edge : E), Nat.card { part // edge ∈ deps part } = 2) (g : P → (E → Ω) → ℝ) (hg : ∀ (part : P) (assignment : E → Ω), 0 ≤ g part assignment) (hdepends : ∀ (part : P), DependsOn (g part) {edge | edge ∈ deps part}) : (Finset.univ.expect fun assignment => ∏ part, g part assignment) ≤ ∏ part, √(Finset.univ.expect fun assignment => g part assignment ^ 2)
theorem FABL.uniform_expect_prod_le_prod_sqrt_expect_sq_twoRegular_finite.{u_1, u_2, u_3} {Ω : Type u_1} {P : Type u_2} {E : Type u_3} [Fintype Ω] [Nonempty Ω] [Fintype P] [Fintype E] [DecidableEq E] (deps : P → Finset E) (hdegree : ∀ (edge : E), Nat.card { part // edge ∈ deps part } = 2) (g : P → (E → Ω) → ℝ) (hg : ∀ (part : P) (assignment : E → Ω), 0 ≤ g part assignment) (hdepends : ∀ (part : P), DependsOn (g part) {edge | edge ∈ deps part}) : (Finset.univ.expect fun assignment => ∏ part, g part assignment) ≤ ∏ part, √(Finset.univ.expect fun assignment => g part assignment ^ 2)
Coordinate-free form of the two-regular Finner contraction, obtained by transporting an arbitrary finite edge type to its canonical `Fin` model.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.matching_eq_or_adj_of_toEdge_eq.{u_1} {V : Type u_1} {G : SimpleGraph V} {M : G.Subgraph} (hM : M.IsMatching) (v w : ↑M.verts) (h : hM.toEdge v = hM.toEdge w) : v = w ∨ M.Adj ↑v ↑w
theorem FABL.matching_eq_or_adj_of_toEdge_eq.{u_1} {V : Type u_1} {G : SimpleGraph V} {M : G.Subgraph} (hM : M.IsMatching) (v w : ↑M.verts) (h : hM.toEdge v = hM.toEdge w) : v = w ∨ M.Adj ↑v ↑w
Two vertices incident to the same edge of a matching either coincide or are the two adjacent endpoints of that edge.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingPartEdges {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : Finset ↑(↑matching).edgeSet
def FABL.graphMatchingPartEdges {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : Finset ↑(↑matching).edgeSet
Edges of a perfect matching incident to one part of the complete multipartite graph.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.mem_graphMatchingPartEdges_iff {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) (edge : ↑(↑matching).edgeSet) : edge ∈ FABL.graphMatchingPartEdges matching part ↔ ∃ pos, ⟨part, pos⟩ ∈ ↑edge
theorem FABL.mem_graphMatchingPartEdges_iff {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) (edge : ↑(↑matching).edgeSet) : edge ∈ FABL.graphMatchingPartEdges matching part ↔ ∃ pos, ⟨part, pos⟩ ∈ ↑edge
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingPartEdge {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) (pos : Fin k) : ↑(↑matching).edgeSet
def FABL.graphMatchingPartEdge {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) (pos : Fin k) : ↑(↑matching).edgeSet
The matching edge incident to a specified vertex of a part.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingPartEdge_mem {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) (pos : Fin k) : FABL.graphMatchingPartEdge matching part pos ∈ FABL.graphMatchingPartEdges matching part
theorem FABL.graphMatchingPartEdge_mem {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) (pos : Fin k) : FABL.graphMatchingPartEdge matching part pos ∈ FABL.graphMatchingPartEdges matching part
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingPartEdge_injective {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : Function.Injective (FABL.graphMatchingPartEdge matching part)
theorem FABL.graphMatchingPartEdge_injective {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : Function.Injective (FABL.graphMatchingPartEdge matching part)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingPartEdgeEquiv {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : Fin k ≃ ↥(FABL.graphMatchingPartEdges matching part)
def FABL.graphMatchingPartEdgeEquiv {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : Fin k ≃ ↥(FABL.graphMatchingPartEdges matching part)
The `k` vertices of a part are incident to exactly `k` distinct matching edges.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingPartEdges_degree_two {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (edge : ↑(↑matching).edgeSet) : Nat.card { part // edge ∈ FABL.graphMatchingPartEdges matching part } = 2
theorem FABL.graphMatchingPartEdges_degree_two {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (edge : ↑(↑matching).edgeSet) : Nat.card { part // edge ∈ FABL.graphMatchingPartEdges matching part } = 2
Every matching edge is incident to exactly two distinct multipartite parts.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.expect_eq_expect_subtype_of_dependsOn.{u_1, u_2} {E : Type u_1} {Ω : Type u_2} [Fintype E] [DecidableEq E] [Fintype Ω] [Nonempty Ω] (D : Finset E) (h : (E → Ω) → ℝ) (hh : DependsOn h ↑D) : (Finset.univ.expect fun assignment => h assignment) = Finset.univ.expect fun inside => h fun edge => if hedge : edge ∈ D then inside ⟨edge, hedge⟩ else Classical.choice ⋯
theorem FABL.expect_eq_expect_subtype_of_dependsOn.{u_1, u_2} {E : Type u_1} {Ω : Type u_2} [Fintype E] [DecidableEq E] [Fintype Ω] [Nonempty Ω] (D : Finset E) (h : (E → Ω) → ℝ) (hh : DependsOn h ↑D) : (Finset.univ.expect fun assignment => h assignment) = Finset.univ.expect fun inside => h fun edge => if hedge : edge ∈ D then inside ⟨edge, hedge⟩ else Classical.choice ⋯
Uniformly averaging a function which depends only on `D` is the same as averaging only the coordinates in `D`.
-
abbrevdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
abbrev FABL.LevelKSubset (n k : ℕ) : Type
abbrev FABL.LevelKSubset (n k : ℕ) : Type
A Fourier support of cardinality exactly `k`.
-
abbrevdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
abbrev FABL.InjectiveLabelTuple (n k : ℕ) : Type
abbrev FABL.InjectiveLabelTuple (n k : ℕ) : Type
An ordered `k`-tuple of distinct labels.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.InjectiveLabelTuple.image {n k : ℕ} (a : FABL.InjectiveLabelTuple n k) : FABL.LevelKSubset n k
def FABL.InjectiveLabelTuple.image {n k : ℕ} (a : FABL.InjectiveLabelTuple n k) : FABL.LevelKSubset n k
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.InjectiveLabelTuple.imageEquiv {n k : ℕ} (a : FABL.InjectiveLabelTuple n k) : Fin k ≃ ↥↑a.image
def FABL.InjectiveLabelTuple.imageEquiv {n k : ℕ} (a : FABL.InjectiveLabelTuple n k) : Fin k ≃ ↥↑a.image
-
abbrevdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
abbrev FABL.InjectiveLabelCodeTarget (n k : ℕ) : Type
abbrev FABL.InjectiveLabelCodeTarget (n k : ℕ) : Type
A level-`k` set together with one of its `k!` enumerations.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.InjectiveLabelTuple.code {n k : ℕ} (a : FABL.InjectiveLabelTuple n k) : FABL.InjectiveLabelCodeTarget n k
def FABL.InjectiveLabelTuple.code {n k : ℕ} (a : FABL.InjectiveLabelTuple n k) : FABL.InjectiveLabelCodeTarget n k
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.injectiveLabelTuple_code_injective {n k : ℕ} : Function.Injective FABL.InjectiveLabelTuple.code
theorem FABL.injectiveLabelTuple_code_injective {n k : ℕ} : Function.Injective FABL.InjectiveLabelTuple.code
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.sum_injectiveLabelCodeTarget {n k : ℕ} (w : Finset (Fin n) → ℝ) : ∑ z, w ↑z.fst = ↑k.factorial * ∑ S, w ↑S
theorem FABL.sum_injectiveLabelCodeTarget {n k : ℕ} (w : Finset (Fin n) → ℝ) : ∑ z, w ↑z.fst = ↑k.factorial * ∑ S, w ↑S
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.sum_injectiveLabelTuple_le_factorial_mul {n k : ℕ} (w : Finset (Fin n) → ℝ) (hw : ∀ (S : Finset (Fin n)), 0 ≤ w S) : ∑ a, w (Finset.image (↑a) Finset.univ) ≤ ↑k.factorial * ∑ S, w ↑S
theorem FABL.sum_injectiveLabelTuple_le_factorial_mul {n k : ℕ} (w : Finset (Fin n) → ℝ) (hw : ∀ (S : Finset (Fin n)), 0 ≤ w S) : ∑ a, w (Finset.image (↑a) Finset.univ) ≤ ↑k.factorial * ∑ S, w ↑S
There are at most `k!` injective enumerations of each level-`k` set, with equality when all enumerations are retained.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.sum_labelTuple_fourierCoeff_sq_le {n k : ℕ} (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : ∑ a, FABL.fourierCoeff f (Finset.image a Finset.univ) ^ 2 ≤ ↑k.factorial * FABL.fourierWeightAtLevel k f
theorem FABL.sum_labelTuple_fourierCoeff_sq_le {n k : ℕ} (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : ∑ a, FABL.fourierCoeff f (Finset.image a Finset.univ) ^ 2 ≤ ↑k.factorial * FABL.fourierWeightAtLevel k f
The ordered level-`k` square sum has at most the expected `k!` multiplicity. Noninjective tuples vanish by Fourier homogeneity.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.expect_labelTuple_fourierCoeff_sq_le {n k : ℕ} (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : (Finset.univ.expect fun a => FABL.fourierCoeff f (Finset.image a Finset.univ) ^ 2) ≤ ↑k.factorial / ↑n ^ k * FABL.fourierWeightAtLevel k f
theorem FABL.expect_labelTuple_fourierCoeff_sq_le {n k : ℕ} (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : (Finset.univ.expect fun a => FABL.fourierCoeff f (Finset.image a Finset.univ) ^ 2) ≤ ↑k.factorial / ↑n ^ k * FABL.fourierWeightAtLevel k f
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingEdgeLabelSet {q k n : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (assignment : ↑(↑matching).edgeSet → Fin n) (part : Fin q) : Finset (Fin n)
def FABL.graphMatchingEdgeLabelSet {q k n : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (assignment : ↑(↑matching).edgeSet → Fin n) (part : Fin q) : Finset (Fin n)
Labels seen in one part when the independent labels are placed on matching edges.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingEdgeFourierFactor {q k n : ℕ} (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) (assignment : ↑(↑matching).edgeSet → Fin n) : ℝ
def FABL.graphMatchingEdgeFourierFactor {q k n : ℕ} (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) (assignment : ↑(↑matching).edgeSet → Fin n) : ℝ
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingEdgeFourierFactor_nonneg {q k n : ℕ} (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) (assignment : ↑(↑matching).edgeSet → Fin n) : 0 ≤ FABL.graphMatchingEdgeFourierFactor f matching part assignment
theorem FABL.graphMatchingEdgeFourierFactor_nonneg {q k n : ℕ} (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) (assignment : ↑(↑matching).edgeSet → Fin n) : 0 ≤ FABL.graphMatchingEdgeFourierFactor f matching part assignment
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingEdgeFourierFactor_dependsOn {q k n : ℕ} (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : DependsOn (FABL.graphMatchingEdgeFourierFactor f matching part) ↑(FABL.graphMatchingPartEdges matching part)
theorem FABL.graphMatchingEdgeFourierFactor_dependsOn {q k n : ℕ} (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : DependsOn (FABL.graphMatchingEdgeFourierFactor f matching part) ↑(FABL.graphMatchingPartEdges matching part)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingEdgeFourierFactor_sq_dependsOn {q k n : ℕ} (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : DependsOn (fun assignment => FABL.graphMatchingEdgeFourierFactor f matching part assignment ^ 2) ↑(FABL.graphMatchingPartEdges matching part)
theorem FABL.graphMatchingEdgeFourierFactor_sq_dependsOn {q k n : ℕ} (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : DependsOn (fun assignment => FABL.graphMatchingEdgeFourierFactor f matching part assignment ^ 2) ↑(FABL.graphMatchingPartEdges matching part)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.expect_graphMatchingEdgeFourierFactor_sq_eq {q k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : (Finset.univ.expect fun assignment => FABL.graphMatchingEdgeFourierFactor f matching part assignment ^ 2) = Finset.univ.expect fun values => FABL.fourierCoeff f (Finset.image values Finset.univ) ^ 2
theorem FABL.expect_graphMatchingEdgeFourierFactor_sq_eq {q k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : (Finset.univ.expect fun assignment => FABL.graphMatchingEdgeFourierFactor f matching part assignment ^ 2) = Finset.univ.expect fun values => FABL.fourierCoeff f (Finset.image values Finset.univ) ^ 2
The local square average at any part is exactly the ordered level-`k` square average.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.expect_graphMatchingEdgeFourierFactor_sq_le {q k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : (Finset.univ.expect fun assignment => FABL.graphMatchingEdgeFourierFactor f matching part assignment ^ 2) ≤ ↑k.factorial / ↑n ^ k * FABL.fourierWeightAtLevel k f
theorem FABL.expect_graphMatchingEdgeFourierFactor_sq_le {q k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : (Finset.univ.expect fun assignment => FABL.graphMatchingEdgeFourierFactor f matching part assignment ^ 2) ≤ ↑k.factorial / ↑n ^ k * FABL.fourierWeightAtLevel k f
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatching_finner {q k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) : (Finset.univ.expect fun assignment => ∏ part, FABL.graphMatchingEdgeFourierFactor f matching part assignment) ≤ ∏ part, √(Finset.univ.expect fun assignment => FABL.graphMatchingEdgeFourierFactor f matching part assignment ^ 2)
theorem FABL.graphMatching_finner {q k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (matching : FABL.GraphPartitePerfectMatching q k) : (Finset.univ.expect fun assignment => ∏ part, FABL.graphMatchingEdgeFourierFactor f matching part assignment) ≤ ∏ part, √(Finset.univ.expect fun assignment => FABL.graphMatchingEdgeFourierFactor f matching part assignment ^ 2)
Exercise 9.37(d)'s `rk` successive Cauchy--Schwarz steps, in normalized finite-expectation form for an arbitrary fixed matching.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatching_fixed_expect_le {r k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : (Finset.univ.expect fun assignment => ∏ part, FABL.graphMatchingEdgeFourierFactor f matching part assignment) ≤ (↑k.factorial / ↑n ^ k * FABL.fourierWeightAtLevel k f) ^ r
theorem FABL.graphMatching_fixed_expect_le {r k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : (Finset.univ.expect fun assignment => ∏ part, FABL.graphMatchingEdgeFourierFactor f matching part assignment) ≤ (↑k.factorial / ↑n ^ k * FABL.fourierWeightAtLevel k f) ^ r
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_graphMatchingPartEdges {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : (FABL.graphMatchingPartEdges matching part).card = k
theorem FABL.card_graphMatchingPartEdges {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (part : Fin q) : (FABL.graphMatchingPartEdges matching part).card = k
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_graphMatching_edgeSet {r k : ℕ} (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : Fintype.card ↑(↑matching).edgeSet = r * k
theorem FABL.card_graphMatching_edgeSet {r k : ℕ} (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : Fintype.card ↑(↑matching).edgeSet = r * k
A perfect matching on `2r` parts of size `k` has exactly `rk` edges.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatching_fixed_sum_le {r k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : ∑ assignment, ∏ part, FABL.graphMatchingEdgeFourierFactor f matching part assignment ≤ ↑k.factorial ^ r * FABL.fourierWeightAtLevel k f ^ r
theorem FABL.graphMatching_fixed_sum_le {r k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : ∑ assignment, ∏ part, FABL.graphMatchingEdgeFourierFactor f matching part assignment ≤ ↑k.factorial ^ r * FABL.fourierWeightAtLevel k f ^ r
Exercise 9.37(d), unnormalized form: for each fixed matching, the `n^{rk}` label sum contracts to `(k!)^r` times the `r`th power of the level weight. -
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingEdgeRepresentative {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (edge : ↑(↑matching).edgeSet) : ↑(↑matching).verts
def FABL.graphMatchingEdgeRepresentative {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (edge : ↑(↑matching).edgeSet) : ↑(↑matching).verts
A canonical endpoint used to read a compatible vertex label as an edge label.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingEdgeRepresentative_spec {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (edge : ↑(↑matching).edgeSet) : ⋯.toEdge (FABL.graphMatchingEdgeRepresentative matching edge) = edge
theorem FABL.graphMatchingEdgeRepresentative_spec {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (edge : ↑(↑matching).edgeSet) : ⋯.toEdge (FABL.graphMatchingEdgeRepresentative matching edge) = edge
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingVertexLabel {q k n : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (assignment : ↑(↑matching).edgeSet → Fin n) : FABL.BookPartiteVertex q k → Fin n
def FABL.graphMatchingVertexLabel {q k n : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (assignment : ↑(↑matching).edgeSet → Fin n) : FABL.BookPartiteVertex q k → Fin n
The compatible vertex labeling induced by independent edge labels.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingVertexLabel_compatible {q k n : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (assignment : ↑(↑matching).edgeSet → Fin n) : FABL.MatchingCompatibleLabeling (FABL.graphMatchingVertexLabel matching assignment) ↑matching
theorem FABL.graphMatchingVertexLabel_compatible {q k n : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (assignment : ↑(↑matching).edgeSet → Fin n) : FABL.MatchingCompatibleLabeling (FABL.graphMatchingVertexLabel matching assignment) ↑matching
-
abbrevdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
abbrev FABL.GraphMatchingEdgeAssignment (q k n : ℕ) : Type
abbrev FABL.GraphMatchingEdgeAssignment (q k n : ℕ) : Type
A graph matching together with independent labels on its edges.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingEdgeAssignmentToLabeling {q k n : ℕ} : FABL.GraphMatchingEdgeAssignment q k n → FABL.GraphMatchingLabeling q k n
def FABL.graphMatchingEdgeAssignmentToLabeling {q k n : ℕ} : FABL.GraphMatchingEdgeAssignment q k n → FABL.GraphMatchingLabeling q k n
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingLabelingToEdgeAssignment {q k n : ℕ} (labeled : FABL.GraphMatchingLabeling q k n) : FABL.GraphMatchingEdgeAssignment q k n
def FABL.graphMatchingLabelingToEdgeAssignment {q k n : ℕ} (labeled : FABL.GraphMatchingLabeling q k n) : FABL.GraphMatchingEdgeAssignment q k n
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingEdgeAssignmentToLabeling_leftInverse {q k n : ℕ} : Function.LeftInverse FABL.graphMatchingEdgeAssignmentToLabeling FABL.graphMatchingLabelingToEdgeAssignment
theorem FABL.graphMatchingEdgeAssignmentToLabeling_leftInverse {q k n : ℕ} : Function.LeftInverse FABL.graphMatchingEdgeAssignmentToLabeling FABL.graphMatchingLabelingToEdgeAssignment
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingLabelingToEdgeAssignment_leftInverse {q k n : ℕ} : Function.LeftInverse FABL.graphMatchingLabelingToEdgeAssignment FABL.graphMatchingEdgeAssignmentToLabeling
theorem FABL.graphMatchingLabelingToEdgeAssignment_leftInverse {q k n : ℕ} : Function.LeftInverse FABL.graphMatchingLabelingToEdgeAssignment FABL.graphMatchingEdgeAssignmentToLabeling
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingLabelingEquivEdgeAssignment (q k n : ℕ) : FABL.GraphMatchingLabeling q k n ≃ FABL.GraphMatchingEdgeAssignment q k n
def FABL.graphMatchingLabelingEquivEdgeAssignment (q k n : ℕ) : FABL.GraphMatchingLabeling q k n ≃ FABL.GraphMatchingEdgeAssignment q k n
Compatible vertex labelings are exactly independent edge labelings.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingEdgeAssignmentToLabeling_weight {q k n : ℕ} (f : FABL.SignCube n → ℝ) (data : FABL.GraphMatchingEdgeAssignment q k n) : FABL.matchingLabelingFourierWeight f (FABL.graphMatchingEdgeAssignmentToLabeling data) = ∏ part, FABL.graphMatchingEdgeFourierFactor f data.fst part data.snd
theorem FABL.graphMatchingEdgeAssignmentToLabeling_weight {q k n : ℕ} (f : FABL.SignCube n → ℝ) (data : FABL.GraphMatchingEdgeAssignment q k n) : FABL.matchingLabelingFourierWeight f (FABL.graphMatchingEdgeAssignmentToLabeling data) = ∏ part, FABL.graphMatchingEdgeFourierFactor f data.fst part data.snd
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.sum_matchingLabelingFourierWeight_eq_edgeAssignment {q k n : ℕ} (f : FABL.SignCube n → ℝ) : ∑ labeled, FABL.matchingLabelingFourierWeight f labeled = ∑ data, ∏ part, FABL.graphMatchingEdgeFourierFactor f data.fst part data.snd
theorem FABL.sum_matchingLabelingFourierWeight_eq_edgeAssignment {q k n : ℕ} (f : FABL.SignCube n → ℝ) : ∑ labeled, FABL.matchingLabelingFourierWeight f labeled = ∑ data, ∏ part, FABL.graphMatchingEdgeFourierFactor f data.fst part data.snd
Exercise 9.37(c), corrected for the multiplicity erratum in part (b): the compatible-label overcount is exactly the sum over independent edge labels.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.sum_matchingLabelingFourierWeight_le {r k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : ∑ labeled, FABL.matchingLabelingFourierWeight f labeled ≤ ↑(Fintype.card (FABL.GraphPartitePerfectMatching (2 * r) k)) * (↑k.factorial ^ r * FABL.fourierWeightAtLevel k f ^ r)
theorem FABL.sum_matchingLabelingFourierWeight_le {r k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : ∑ labeled, FABL.matchingLabelingFourierWeight f labeled ≤ ↑(Fintype.card (FABL.GraphPartitePerfectMatching (2 * r) k)) * (↑k.factorial ^ r * FABL.fourierWeightAtLevel k f ^ r)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.homogeneous_evenMoment_le_graphMatching_count {r k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : (Finset.univ.expect fun x => f x ^ (2 * r)) ≤ ↑(Fintype.card (FABL.GraphPartitePerfectMatching (2 * r) k)) / ↑k.factorial ^ r * FABL.fourierWeightAtLevel k f ^ r
theorem FABL.homogeneous_evenMoment_le_graphMatching_count {r k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : (Finset.univ.expect fun x => f x ^ (2 * r)) ≤ ↑(Fintype.card (FABL.GraphPartitePerfectMatching (2 * r) k)) / ↑k.factorial ^ r * FABL.fourierWeightAtLevel k f ^ r
Exercise 9.37(e), moment form. Because the printed equality in part (b) overcounts label tuples, the result is an upper bound with the honest graph-matching count.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.pairEndpoints.{u_1} {α : Type u_1} (edge : α × α) : List α
def FABL.pairEndpoints.{u_1} {α : Type u_1} (edge : α × α) : List α
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.flattenPairList.{u_1} {α : Type u_1} (edges : List (α × α)) : List α
def FABL.flattenPairList.{u_1} {α : Type u_1} (edges : List (α × α)) : List α
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.flattenPairList_decodePerfectMatchingCode_perm {α : Type} (m : ℕ) (code : FABL.PerfectMatchingCode m) (vertices : List α) (hlen : vertices.length = 2 * m) : (FABL.flattenPairList (FABL.decodePerfectMatchingCode m code vertices)).Perm vertices
theorem FABL.flattenPairList_decodePerfectMatchingCode_perm {α : Type} (m : ℕ) (code : FABL.PerfectMatchingCode m) (vertices : List α) (hlen : vertices.length = 2 * m) : (FABL.flattenPairList (FABL.decodePerfectMatchingCode m code vertices)).Perm vertices
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.flattenPairList_decodePerfectMatchingCode_nodup {α : Type} (m : ℕ) (code : FABL.PerfectMatchingCode m) (vertices : List α) (hlen : vertices.length = 2 * m) (hnodup : vertices.Nodup) : (FABL.flattenPairList (FABL.decodePerfectMatchingCode m code vertices)).Nodup
theorem FABL.flattenPairList_decodePerfectMatchingCode_nodup {α : Type} (m : ℕ) (code : FABL.PerfectMatchingCode m) (vertices : List α) (hlen : vertices.length = 2 * m) (hnodup : vertices.Nodup) : (FABL.flattenPairList (FABL.decodePerfectMatchingCode m code vertices)).Nodup
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.pairListGraph {α : Type} (edges : List (α × α)) : SimpleGraph α
def FABL.pairListGraph {α : Type} (edges : List (α × α)) : SimpleGraph α
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.pairListGraph_adj_iff {α : Type} (edges : List (α × α)) (u v : α) : (FABL.pairListGraph edges).Adj u v ↔ ((u, v) ∈ edges ∨ (v, u) ∈ edges) ∧ u ≠ v
theorem FABL.pairListGraph_adj_iff {α : Type} (edges : List (α × α)) (u v : α) : (FABL.pairListGraph edges).Adj u v ↔ ((u, v) ∈ edges ∨ (v, u) ∈ edges) ∧ u ≠ v
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.pairListGraph_isPerfectMatching {α : Type} (vertices : List α) (edges : List (α × α)) (hperm : (FABL.flattenPairList edges).Perm vertices) (hnodup : vertices.Nodup) (hcomplete : ∀ (u : α), u ∈ vertices) (G : SimpleGraph α) (hle : FABL.pairListGraph edges ≤ G) : (SimpleGraph.toSubgraph (FABL.pairListGraph edges) hle).IsPerfectMatching
theorem FABL.pairListGraph_isPerfectMatching {α : Type} (vertices : List α) (edges : List (α × α)) (hperm : (FABL.flattenPairList edges).Perm vertices) (hnodup : vertices.Nodup) (hcomplete : ∀ (u : α), u ∈ vertices) (G : SimpleGraph α) (hle : FABL.pairListGraph edges ≤ G) : (SimpleGraph.toSubgraph (FABL.pairListGraph edges) hle).IsPerfectMatching
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.decodePerfectMatchingCode_map {α β : Type} (f : α → β) (m : ℕ) (code : FABL.PerfectMatchingCode m) (vertices : List α) : FABL.decodePerfectMatchingCode m code (List.map f vertices) = List.map (Prod.map f f) (FABL.decodePerfectMatchingCode m code vertices)
theorem FABL.decodePerfectMatchingCode_map {α β : Type} (f : α → β) (m : ℕ) (code : FABL.PerfectMatchingCode m) (vertices : List α) : FABL.decodePerfectMatchingCode m code (List.map f vertices) = List.map (Prod.map f f) (FABL.decodePerfectMatchingCode m code vertices)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.bookVertexFinEquiv (q k : ℕ) : FABL.BookPartiteVertex q k ≃ Fin (q * k)
def FABL.bookVertexFinEquiv (q k : ℕ) : FABL.BookPartiteVertex q k ≃ Fin (q * k)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.finVertexList (N : ℕ) : List (Fin N)
def FABL.finVertexList (N : ℕ) : List (Fin N)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.length_finVertexList (N : ℕ) : (FABL.finVertexList N).length = N
theorem FABL.length_finVertexList (N : ℕ) : (FABL.finVertexList N).length = N
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.nodup_finVertexList (N : ℕ) : (FABL.finVertexList N).Nodup
theorem FABL.nodup_finVertexList (N : ℕ) : (FABL.finVertexList N).Nodup
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.mem_finVertexList {N : ℕ} (x : Fin N) : x ∈ FABL.finVertexList N
theorem FABL.mem_finVertexList {N : ℕ} (x : Fin N) : x ∈ FABL.finVertexList N
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.map_val_finVertexList (N : ℕ) : List.map Fin.val (FABL.finVertexList N) = List.range N
theorem FABL.map_val_finVertexList (N : ℕ) : List.map Fin.val (FABL.finVertexList N) = List.range N
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.bookVertexList (q k : ℕ) : List (FABL.BookPartiteVertex q k)
def FABL.bookVertexList (q k : ℕ) : List (FABL.BookPartiteVertex q k)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.length_bookVertexList (q k : ℕ) : (FABL.bookVertexList q k).length = q * k
theorem FABL.length_bookVertexList (q k : ℕ) : (FABL.bookVertexList q k).length = q * k
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.nodup_bookVertexList (q k : ℕ) : (FABL.bookVertexList q k).Nodup
theorem FABL.nodup_bookVertexList (q k : ℕ) : (FABL.bookVertexList q k).Nodup
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.mem_bookVertexList {q k : ℕ} (v : FABL.BookPartiteVertex q k) : v ∈ FABL.bookVertexList q k
theorem FABL.mem_bookVertexList {q k : ℕ} (v : FABL.BookPartiteVertex q k) : v ∈ FABL.bookVertexList q k
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.decodedBookPartiteEdges (q k : ℕ) (code : FABL.PerfectMatchingCode (q * k / 2)) : List (FABL.BookPartiteVertex q k × FABL.BookPartiteVertex q k)
def FABL.decodedBookPartiteEdges (q k : ℕ) (code : FABL.PerfectMatchingCode (q * k / 2)) : List (FABL.BookPartiteVertex q k × FABL.BookPartiteVertex q k)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.bookVertexFinEquiv_val_div {q k : ℕ} (hk : 0 < k) (v : FABL.BookPartiteVertex q k) : ↑((FABL.bookVertexFinEquiv q k) v) / k = ↑v.fst
theorem FABL.bookVertexFinEquiv_val_div {q k : ℕ} (hk : 0 < k) (v : FABL.BookPartiteVertex q k) : ↑((FABL.bookVertexFinEquiv q k) v) / k = ↑v.fst
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.decodedBookPartiteEdges_map_fin (q k : ℕ) (code : FABL.PerfectMatchingCode (q * k / 2)) : List.map (Prod.map ⇑(FABL.bookVertexFinEquiv q k) ⇑(FABL.bookVertexFinEquiv q k)) (FABL.decodedBookPartiteEdges q k code) = FABL.decodePerfectMatchingCode (q * k / 2) code (FABL.finVertexList (q * k))
theorem FABL.decodedBookPartiteEdges_map_fin (q k : ℕ) (code : FABL.PerfectMatchingCode (q * k / 2)) : List.map (Prod.map ⇑(FABL.bookVertexFinEquiv q k) ⇑(FABL.bookVertexFinEquiv q k)) (FABL.decodedBookPartiteEdges q k code) = FABL.decodePerfectMatchingCode (q * k / 2) code (FABL.finVertexList (q * k))
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.decode_finVertexList_map_val (m N : ℕ) (code : FABL.PerfectMatchingCode m) : List.map (Prod.map Fin.val Fin.val) (FABL.decodePerfectMatchingCode m code (FABL.finVertexList N)) = FABL.decodePerfectMatchingCode m code (List.range N)
theorem FABL.decode_finVertexList_map_val (m N : ℕ) (code : FABL.PerfectMatchingCode m) : List.map (Prod.map Fin.val Fin.val) (FABL.decodePerfectMatchingCode m code (FABL.finVertexList N)) = FABL.decodePerfectMatchingCode m code (List.range N)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.decodedBookPartiteEdge_parts_ne {q k : ℕ} (hk : 0 < k) (code : FABL.PartitePerfectMatching q k) {u v : FABL.BookPartiteVertex q k} (hedge : (u, v) ∈ FABL.decodedBookPartiteEdges q k ↑code) : u.fst ≠ v.fst
theorem FABL.decodedBookPartiteEdge_parts_ne {q k : ℕ} (hk : 0 < k) (code : FABL.PartitePerfectMatching q k) {u v : FABL.BookPartiteVertex q k} (hedge : (u, v) ∈ FABL.decodedBookPartiteEdges q k ↑code) : u.fst ≠ v.fst
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.pairListGraph_decodedBookPartiteEdges_le {q k : ℕ} (hk : 0 < k) (code : FABL.PartitePerfectMatching q k) : FABL.pairListGraph (FABL.decodedBookPartiteEdges q k ↑code) ≤ FABL.bookPartiteGraph q k
theorem FABL.pairListGraph_decodedBookPartiteEdges_le {q k : ℕ} (hk : 0 < k) (code : FABL.PartitePerfectMatching q k) : FABL.pairListGraph (FABL.decodedBookPartiteEdges q k ↑code) ≤ FABL.bookPartiteGraph q k
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.partiteMatchingGraphOfCode {q k : ℕ} (hk : 0 < k) (heven : Even (q * k)) (code : FABL.PartitePerfectMatching q k) : FABL.GraphPartitePerfectMatching q k
def FABL.partiteMatchingGraphOfCode {q k : ℕ} (hk : 0 < k) (heven : Even (q * k)) (code : FABL.PartitePerfectMatching q k) : FABL.GraphPartitePerfectMatching q k
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.pairListGraph_decodePerfectMatchingCode_injective {α : Type} (m : ℕ) (vertices : List α) (hlen : vertices.length = 2 * m) (hnodup : vertices.Nodup) : Function.Injective fun code => FABL.pairListGraph (FABL.decodePerfectMatchingCode m code vertices)
theorem FABL.pairListGraph_decodePerfectMatchingCode_injective {α : Type} (m : ℕ) (vertices : List α) (hlen : vertices.length = 2 * m) (hnodup : vertices.Nodup) : Function.Injective fun code => FABL.pairListGraph (FABL.decodePerfectMatchingCode m code vertices)
-
abbrevdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
abbrev FABL.CompletePerfectMatching (m : ℕ) : Type
abbrev FABL.CompletePerfectMatching (m : ℕ) : Type
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.perfectMatchingPartner {m : ℕ} (matching : FABL.CompletePerfectMatching m) (v : Fin (2 * m)) : Fin (2 * m)
def FABL.perfectMatchingPartner {m : ℕ} (matching : FABL.CompletePerfectMatching m) (v : Fin (2 * m)) : Fin (2 * m)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.perfectMatchingPartner_adj {m : ℕ} (matching : FABL.CompletePerfectMatching m) (v : Fin (2 * m)) : (↑matching).Adj v (FABL.perfectMatchingPartner matching v)
theorem FABL.perfectMatchingPartner_adj {m : ℕ} (matching : FABL.CompletePerfectMatching m) (v : Fin (2 * m)) : (↑matching).Adj v (FABL.perfectMatchingPartner matching v)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.perfectMatchingPartner_unique {m : ℕ} (matching : FABL.CompletePerfectMatching m) (v w : Fin (2 * m)) (hvw : (↑matching).Adj v w) : w = FABL.perfectMatchingPartner matching v
theorem FABL.perfectMatchingPartner_unique {m : ℕ} (matching : FABL.CompletePerfectMatching m) (v w : Fin (2 * m)) (hvw : (↑matching).Adj v w) : w = FABL.perfectMatchingPartner matching v
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.perfectMatchingPartner_involutive {m : ℕ} (matching : FABL.CompletePerfectMatching m) : Function.Involutive (FABL.perfectMatchingPartner matching)
theorem FABL.perfectMatchingPartner_involutive {m : ℕ} (matching : FABL.CompletePerfectMatching m) : Function.Involutive (FABL.perfectMatchingPartner matching)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.perfectMatchingPartner_ne {m : ℕ} (matching : FABL.CompletePerfectMatching m) (v : Fin (2 * m)) : FABL.perfectMatchingPartner matching v ≠ v
theorem FABL.perfectMatchingPartner_ne {m : ℕ} (matching : FABL.CompletePerfectMatching m) (v : Fin (2 * m)) : FABL.perfectMatchingPartner matching v ≠ v
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.perfectMatchingPartnerPerm {m : ℕ} (matching : FABL.CompletePerfectMatching m) : Equiv.Perm (Fin (2 * m))
def FABL.perfectMatchingPartnerPerm {m : ℕ} (matching : FABL.CompletePerfectMatching m) : Equiv.Perm (Fin (2 * m))
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.perfectMatchingPartnerPerm_apply {m : ℕ} (matching : FABL.CompletePerfectMatching m) (v : Fin (2 * m)) : (FABL.perfectMatchingPartnerPerm matching) v = FABL.perfectMatchingPartner matching v
theorem FABL.perfectMatchingPartnerPerm_apply {m : ℕ} (matching : FABL.CompletePerfectMatching m) (v : Fin (2 * m)) : (FABL.perfectMatchingPartnerPerm matching) v = FABL.perfectMatchingPartner matching v
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.perfectMatchingPartnerPerm_injective {m : ℕ} : Function.Injective FABL.perfectMatchingPartnerPerm
theorem FABL.perfectMatchingPartnerPerm_injective {m : ℕ} : Function.Injective FABL.perfectMatchingPartnerPerm
-
abbrevdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
abbrev FABL.PairingPerm (m : ℕ) : Type
abbrev FABL.PairingPerm (m : ℕ) : Type
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.perfectMatchingPartnerPerm_cycleType {m : ℕ} (matching : FABL.CompletePerfectMatching m) : (FABL.perfectMatchingPartnerPerm matching).cycleType = Multiset.replicate m 2
theorem FABL.perfectMatchingPartnerPerm_cycleType {m : ℕ} (matching : FABL.CompletePerfectMatching m) : (FABL.perfectMatchingPartnerPerm matching).cycleType = Multiset.replicate m 2
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.completePerfectMatchingToPairingPerm {m : ℕ} (matching : FABL.CompletePerfectMatching m) : FABL.PairingPerm m
def FABL.completePerfectMatchingToPairingPerm {m : ℕ} (matching : FABL.CompletePerfectMatching m) : FABL.PairingPerm m
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.completePerfectMatchingToPairingPerm_injective {m : ℕ} : Function.Injective FABL.completePerfectMatchingToPairingPerm
theorem FABL.completePerfectMatchingToPairingPerm_injective {m : ℕ} : Function.Injective FABL.completePerfectMatchingToPairingPerm
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_pairingPerm (m : ℕ) : Fintype.card (FABL.PairingPerm m) = (2 * m - 1).doubleFactorial
theorem FABL.card_pairingPerm (m : ℕ) : Fintype.card (FABL.PairingPerm m) = (2 * m - 1).doubleFactorial
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.perfectMatchingGraphOfCode {m : ℕ} (code : FABL.PerfectMatchingCode m) : FABL.CompletePerfectMatching m
def FABL.perfectMatchingGraphOfCode {m : ℕ} (code : FABL.PerfectMatchingCode m) : FABL.CompletePerfectMatching m
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.perfectMatchingGraphOfCode_injective {m : ℕ} : Function.Injective FABL.perfectMatchingGraphOfCode
theorem FABL.perfectMatchingGraphOfCode_injective {m : ℕ} : Function.Injective FABL.perfectMatchingGraphOfCode
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_completePerfectMatching (m : ℕ) : Fintype.card (FABL.CompletePerfectMatching m) = (2 * m - 1).doubleFactorial
theorem FABL.card_completePerfectMatching (m : ℕ) : Fintype.card (FABL.CompletePerfectMatching m) = (2 * m - 1).doubleFactorial
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.perfectMatchingGraphOfCode_bijective {m : ℕ} : Function.Bijective FABL.perfectMatchingGraphOfCode
theorem FABL.perfectMatchingGraphOfCode_bijective {m : ℕ} : Function.Bijective FABL.perfectMatchingGraphOfCode
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.perfectMatchingCodeEquivCompletePerfectMatching (m : ℕ) : FABL.PerfectMatchingCode m ≃ FABL.CompletePerfectMatching m
def FABL.perfectMatchingCodeEquivCompletePerfectMatching (m : ℕ) : FABL.PerfectMatchingCode m ≃ FABL.CompletePerfectMatching m
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.partiteMatchingGraphOfCode_injective {q k : ℕ} (hk : 0 < k) (heven : Even (q * k)) : Function.Injective (FABL.partiteMatchingGraphOfCode hk heven)
theorem FABL.partiteMatchingGraphOfCode_injective {q k : ℕ} (hk : 0 < k) (heven : Even (q * k)) : Function.Injective (FABL.partiteMatchingGraphOfCode hk heven)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.bookVertexEvenFinEquiv (r k : ℕ) : FABL.BookPartiteVertex (2 * r) k ≃ Fin (2 * (r * k))
def FABL.bookVertexEvenFinEquiv (r k : ℕ) : FABL.BookPartiteVertex (2 * r) k ≃ Fin (2 * (r * k))
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.bookVertexEvenFinEquiv_val_div {r k : ℕ} (hk : 0 < k) (v : FABL.BookPartiteVertex (2 * r) k) : ↑((FABL.bookVertexEvenFinEquiv r k) v) / k = ↑v.fst
theorem FABL.bookVertexEvenFinEquiv_val_div {r k : ℕ} (hk : 0 < k) (v : FABL.BookPartiteVertex (2 * r) k) : ↑((FABL.bookVertexEvenFinEquiv r k) v) / k = ↑v.fst
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.relabelBookMatchingGraph {r k : ℕ} (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : SimpleGraph (Fin (2 * (r * k)))
def FABL.relabelBookMatchingGraph {r k : ℕ} (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : SimpleGraph (Fin (2 * (r * k)))
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphPartiteMatchingToCompletePerfectMatching {r k : ℕ} (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : FABL.CompletePerfectMatching (r * k)
def FABL.graphPartiteMatchingToCompletePerfectMatching {r k : ℕ} (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : FABL.CompletePerfectMatching (r * k)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphPartiteMatchingToCompletePerfectMatching_injective {r k : ℕ} : Function.Injective FABL.graphPartiteMatchingToCompletePerfectMatching
theorem FABL.graphPartiteMatchingToCompletePerfectMatching_injective {r k : ℕ} : Function.Injective FABL.graphPartiteMatchingToCompletePerfectMatching
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.decodedRangeEdge_perfectMatchingGraph_adj {m : ℕ} (code : FABL.PerfectMatchingCode m) {a b : ℕ} (hedge : (a, b) ∈ FABL.decodePerfectMatchingCode m code (List.range (2 * m))) : ∃ (ha : a < 2 * m) (hb : b < 2 * m), (↑(FABL.perfectMatchingGraphOfCode code)).Adj ⟨a, ha⟩ ⟨b, hb⟩
theorem FABL.decodedRangeEdge_perfectMatchingGraph_adj {m : ℕ} (code : FABL.PerfectMatchingCode m) {a b : ℕ} (hedge : (a, b) ∈ FABL.decodePerfectMatchingCode m code (List.range (2 * m))) : ∃ (ha : a < 2 * m) (hb : b < 2 * m), (↑(FABL.perfectMatchingGraphOfCode code)).Adj ⟨a, ha⟩ ⟨b, hb⟩
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.IsEvenPartitePerfectMatchingCode (r k : ℕ) (code : FABL.PerfectMatchingCode (r * k)) : Prop
def FABL.IsEvenPartitePerfectMatchingCode (r k : ℕ) (code : FABL.PerfectMatchingCode (r * k)) : Prop
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.EvenPartitePerfectMatching (r k : ℕ) : Type
def FABL.EvenPartitePerfectMatching (r k : ℕ) : Type
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.partitePerfectMatchingEvenEquiv (r k : ℕ) : FABL.PartitePerfectMatching (2 * r) k ≃ FABL.EvenPartitePerfectMatching r k
def FABL.partitePerfectMatchingEvenEquiv (r k : ℕ) : FABL.PartitePerfectMatching (2 * r) k ≃ FABL.EvenPartitePerfectMatching r k
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphPartiteMatchingCodeRaw {r k : ℕ} (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : FABL.PerfectMatchingCode (r * k)
def FABL.graphPartiteMatchingCodeRaw {r k : ℕ} (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : FABL.PerfectMatchingCode (r * k)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphPartiteMatchingCodeRaw_isEvenPartite {r k : ℕ} (hk : 0 < k) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : FABL.IsEvenPartitePerfectMatchingCode r k (FABL.graphPartiteMatchingCodeRaw matching)
theorem FABL.graphPartiteMatchingCodeRaw_isEvenPartite {r k : ℕ} (hk : 0 < k) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : FABL.IsEvenPartitePerfectMatchingCode r k (FABL.graphPartiteMatchingCodeRaw matching)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphPartiteMatchingToEvenCode {r k : ℕ} (hk : 0 < k) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : FABL.EvenPartitePerfectMatching r k
def FABL.graphPartiteMatchingToEvenCode {r k : ℕ} (hk : 0 < k) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : FABL.EvenPartitePerfectMatching r k
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphPartiteMatchingToEvenCode_injective {r k : ℕ} (hk : 0 < k) : Function.Injective (FABL.graphPartiteMatchingToEvenCode hk)
theorem FABL.graphPartiteMatchingToEvenCode_injective {r k : ℕ} (hk : 0 < k) : Function.Injective (FABL.graphPartiteMatchingToEvenCode hk)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_graphPartitePerfectMatching_eq_partitePerfectMatching_of_pos (r k : ℕ) (hk : 0 < k) : Fintype.card (FABL.GraphPartitePerfectMatching (2 * r) k) = Fintype.card (FABL.PartitePerfectMatching (2 * r) k)
theorem FABL.card_graphPartitePerfectMatching_eq_partitePerfectMatching_of_pos (r k : ℕ) (hk : 0 < k) : Fintype.card (FABL.GraphPartitePerfectMatching (2 * r) k) = Fintype.card (FABL.PartitePerfectMatching (2 * r) k)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.emptyGraphPartitePerfectMatching (r : ℕ) : FABL.GraphPartitePerfectMatching (2 * r) 0
def FABL.emptyGraphPartitePerfectMatching (r : ℕ) : FABL.GraphPartitePerfectMatching (2 * r) 0
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_graphPartitePerfectMatching_zero (r : ℕ) : Fintype.card (FABL.GraphPartitePerfectMatching (2 * r) 0) = 1
theorem FABL.card_graphPartitePerfectMatching_zero (r : ℕ) : Fintype.card (FABL.GraphPartitePerfectMatching (2 * r) 0) = 1
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_partitePerfectMatching_zero (r : ℕ) : Fintype.card (FABL.PartitePerfectMatching (2 * r) 0) = 1
theorem FABL.card_partitePerfectMatching_zero (r : ℕ) : Fintype.card (FABL.PartitePerfectMatching (2 * r) 0) = 1
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_graphPartitePerfectMatching_eq_partitePerfectMatching (r k : ℕ) : Fintype.card (FABL.GraphPartitePerfectMatching (2 * r) k) = Fintype.card (FABL.PartitePerfectMatching (2 * r) k)
theorem FABL.card_graphPartitePerfectMatching_eq_partitePerfectMatching (r k : ℕ) : Fintype.card (FABL.GraphPartitePerfectMatching (2 * r) k) = Fintype.card (FABL.PartitePerfectMatching (2 * r) k)
Cardinality bridge between the graph-theoretic matchings used by the Finner proof and the canonical recursive codes used for Exercise 9.38.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphPartitePerfectMatchingEquivCode (r k : ℕ) : FABL.GraphPartitePerfectMatching (2 * r) k ≃ FABL.PartitePerfectMatching (2 * r) k
def FABL.graphPartitePerfectMatchingEquivCode (r k : ℕ) : FABL.GraphPartitePerfectMatching (2 * r) k ≃ FABL.PartitePerfectMatching (2 * r) k
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.homogeneous_evenMoment_le_partiteMatching_count {r k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : (Finset.univ.expect fun x => f x ^ (2 * r)) ≤ ↑(Fintype.card (FABL.PartitePerfectMatching (2 * r) k)) / ↑k.factorial ^ r * FABL.fourierWeightAtLevel k f ^ r
theorem FABL.homogeneous_evenMoment_le_partiteMatching_count {r k n : ℕ} (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : (Finset.univ.expect fun x => f x ^ (2 * r)) ≤ ↑(Fintype.card (FABL.PartitePerfectMatching (2 * r) k)) / ↑k.factorial ^ r * FABL.fourierWeightAtLevel k f ^ r
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.fourierWeightAtLevel_eq_uniformLpNorm_two_sq_of_homogeneous {n k : ℕ} (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.fourierWeightAtLevel k f = FABL.uniformLpNorm 2 f ^ 2
theorem FABL.fourierWeightAtLevel_eq_uniformLpNorm_two_sq_of_homogeneous {n k : ℕ} (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.fourierWeightAtLevel k f = FABL.uniformLpNorm 2 f ^ 2
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.homogeneous_uniformLpNorm_le_partiteMatching {r k n : ℕ} (hr : 0 < r) (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.uniformLpNorm (2 * ↑r) f ≤ (↑(Fintype.card (FABL.PartitePerfectMatching (2 * r) k))).rpow (1 / (2 * ↑r)) / √↑k.factorial * FABL.uniformLpNorm 2 f
theorem FABL.homogeneous_uniformLpNorm_le_partiteMatching {r k n : ℕ} (hr : 0 < r) (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.uniformLpNorm (2 * ↑r) f ≤ (↑(Fintype.card (FABL.PartitePerfectMatching (2 * r) k))).rpow (1 / (2 * ↑r)) / √↑k.factorial * FABL.uniformLpNorm 2 f
Exercise 9.37(e), final displayed norm inequality with the canonical matching count from Exercise 9.38.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.exercise9_37b_printed_multiplicity_counterexample : 1 ≠ ↑(Fintype.card (FABL.PartitePerfectMatching 4 1)) / ↑(Nat.factorial 1) ^ 4
theorem FABL.exercise9_37b_printed_multiplicity_counterexample : 1 ≠ ↑(Fintype.card (FABL.PartitePerfectMatching 4 1)) / ↑(Nat.factorial 1) ^ 4
Erratum for the printed equality in Exercise 9.37(b). For `q=4`, `k=1`, and one available Fourier label, the parity tuple with that label in all four parts has weight one, whereas the unweighted matching-label sum counts it once for each of the three perfect matchings.
-
FABL.PerfectMatchingCode[complete] -
FABL.perfectMatchingCodeFintype[complete] -
FABL.perfectMatchingCodeDecidableEq[complete] -
FABL.decodePerfectMatchingCode[complete] -
FABL.decodedPerfectMatching[complete] -
FABL.IsPartitePerfectMatchingCode[complete] -
FABL.PartitePerfectMatching[complete] -
FABL.natCard_perfectMatchingCode[complete] -
FABL.natCard_partitePerfectMatching_le_code[complete] -
FABL.card_partitePerfectMatching_four_two[complete] -
FABL.card_partitePerfectMatching_four_one[complete] -
FABL.oddDoubleFactorial_le_factorial_sq[complete] -
FABL.natCard_partitePerfectMatching_le_doubleFactorial[complete] -
FABL.natCard_partitePerfectMatching_le_factorial_bound[complete] -
FABL.homogeneous_uniformLpNorm_le_sqrt_two_mul[complete] -
FABL.multinomial_const_le_pow[complete] -
FABL.factorial_mul_le_factorial_pow_mul_pow[complete] -
FABL.matchingImprovementConstant[complete] -
FABL.matchingImprovementConstant_le_one[complete] -
FABL.remainingPartSlice[complete] -
FABL.greedyLargestPart[complete] -
FABL.remainingPartSlice_card_le_greedyLargestPart[complete] -
FABL.sum_card_remainingPartSlice[complete] -
FABL.remaining_card_le_parts_mul_largest[complete] -
FABL.greedyLargestPartSlice_nonempty[complete] -
FABL.greedyPivot[complete] -
FABL.greedyPivot_mem[complete] -
FABL.greedyPivot_part[complete] -
FABL.greedyPartnerChoices[complete] -
FABL.card_greedyPartnerChoices_add_largest[complete] -
FABL.card_greedyPartnerChoices_le[complete] -
FABL.PartitePairingTrace[complete] -
FABL.partitePairingTraceFintype[complete] -
FABL.partitePairingTraceSuccEquiv[complete] -
FABL.card_partitePairingTrace_le[complete] -
FABL.graphPartiteMatchingPartner[complete] -
FABL.graphPartiteMatchingPartner_adj[complete] -
FABL.graphPartiteMatchingPartner_unique[complete] -
FABL.graphPartiteMatchingPartner_involutive[complete] -
FABL.graphPartiteMatchingPartner_part_ne[complete] -
FABL.GraphMatchingClosedOn[complete] -
FABL.graphMatchingClosedOn_univ[complete] -
FABL.graphMatchingClosedOn_erase_pair[complete] -
FABL.graphMatchingTrace[complete] -
FABL.graphMatchingTrace_partner_eq_on_remaining[complete] -
FABL.graphMatchingFullTrace[complete] -
FABL.graphMatchingFullTrace_injective[complete] -
FABL.card_partitePerfectMatching_le_factorial_bound_strong[complete] -
FABL.card_partitePerfectMatching_le_factorial_bound_printed[complete] -
FABL.matching_count_root_div_sqrt_factorial[complete] -
FABL.homogeneous_uniformLpNorm_le_matchingImprovement[complete] -
FABL.homogeneous_uniformLpNorm_le_sqrt_two_mul_sub_one[complete] -
FABL.homogeneous_uniformLpNorm_le_doubleFactorial[complete] -
FABL.isFourierHomogeneous_fourierDegree_le[complete] -
FABL.homogeneous_uniformLpNorm_le_sqrt_q[complete] -
FABL.factorial_bound_strong_lt_printed[complete] -
FABL.matchingFactorialRatio[complete] -
FABL.matchingImprovementConstant_eq_rpow_factorialRatio[complete] -
FABL.matchingStirlingCore[complete] -
FABL.factorialStirlingApprox_matching_ratio_eq_core[complete] -
FABL.matchingFactorialRatio_isEquivalent_core[complete] -
FABL.matchingCoreGrowth[complete] -
FABL.matchingStirlingCore_eq_constant_mul_growth[complete] -
FABL.matchingStirlingCore_isTheta_growth[complete] -
FABL.matchingFactorialRatio_isTheta_growth[complete] -
FABL.matchingImprovementGrowth[complete] -
FABL.matchingCoreGrowth_rpow_eq_improvementGrowth[complete] -
FABL.matchingImprovementConstant_isTheta[complete]
Exercise 9.38. Estimate the perfect matchings of Exercise 9.37.
-
For
q=4,k=2, prove|\mathcal M|=60. -
Prove
|\mathcal M|\le(qk-1)!!and deduce\|f\|_q\le(\sqrt q)^k\|f\|_2. -
The PDF prints the weaker ordered-history bound
|\mathcal M| \le\left(\frac{2r-1}{r}\right)^{rk}(rk)!^2but this does not imply the following displayedC_{q,k}: every unordered matching was counted(rk)!times. Prove the corrected strong bound|\mathcal M| \le\left(\frac{2r-1}{r}\right)^{rk}(rk)!,retain the printed squared inequality as a weak consequence, and deduce\|f\|_q \le C_{q,k}(\sqrt{q-1})^k\|f\|_2, \qquad C_{q,k} =\left(\frac{(rk)!}{(k!)^r r^{rk}}\right)^{1/q}. -
Prove
C_{q,k}\le1, recovering Theorem 9.21. -
Prove
C_{q,k}=\Theta(1)k^{-1/4+1/(2q)}.
Lean code for Theorem9.7.39●68 declarations
Associated Lean declarations
-
FABL.PerfectMatchingCode[complete]
-
FABL.perfectMatchingCodeFintype[complete]
-
FABL.perfectMatchingCodeDecidableEq[complete]
-
FABL.decodePerfectMatchingCode[complete]
-
FABL.decodedPerfectMatching[complete]
-
FABL.IsPartitePerfectMatchingCode[complete]
-
FABL.PartitePerfectMatching[complete]
-
FABL.natCard_perfectMatchingCode[complete]
-
FABL.natCard_partitePerfectMatching_le_code[complete]
-
FABL.card_partitePerfectMatching_four_two[complete]
-
FABL.card_partitePerfectMatching_four_one[complete]
-
FABL.oddDoubleFactorial_le_factorial_sq[complete]
-
FABL.natCard_partitePerfectMatching_le_doubleFactorial[complete]
-
FABL.natCard_partitePerfectMatching_le_factorial_bound[complete]
-
FABL.homogeneous_uniformLpNorm_le_sqrt_two_mul[complete]
-
FABL.multinomial_const_le_pow[complete]
-
FABL.factorial_mul_le_factorial_pow_mul_pow[complete]
-
FABL.matchingImprovementConstant[complete]
-
FABL.matchingImprovementConstant_le_one[complete]
-
FABL.remainingPartSlice[complete]
-
FABL.greedyLargestPart[complete]
-
FABL.remainingPartSlice_card_le_greedyLargestPart[complete]
-
FABL.sum_card_remainingPartSlice[complete]
-
FABL.remaining_card_le_parts_mul_largest[complete]
-
FABL.greedyLargestPartSlice_nonempty[complete]
-
FABL.greedyPivot[complete]
-
FABL.greedyPivot_mem[complete]
-
FABL.greedyPivot_part[complete]
-
FABL.greedyPartnerChoices[complete]
-
FABL.card_greedyPartnerChoices_add_largest[complete]
-
FABL.card_greedyPartnerChoices_le[complete]
-
FABL.PartitePairingTrace[complete]
-
FABL.partitePairingTraceFintype[complete]
-
FABL.partitePairingTraceSuccEquiv[complete]
-
FABL.card_partitePairingTrace_le[complete]
-
FABL.graphPartiteMatchingPartner[complete]
-
FABL.graphPartiteMatchingPartner_adj[complete]
-
FABL.graphPartiteMatchingPartner_unique[complete]
-
FABL.graphPartiteMatchingPartner_involutive[complete]
-
FABL.graphPartiteMatchingPartner_part_ne[complete]
-
FABL.GraphMatchingClosedOn[complete]
-
FABL.graphMatchingClosedOn_univ[complete]
-
FABL.graphMatchingClosedOn_erase_pair[complete]
-
FABL.graphMatchingTrace[complete]
-
FABL.graphMatchingTrace_partner_eq_on_remaining[complete]
-
FABL.graphMatchingFullTrace[complete]
-
FABL.graphMatchingFullTrace_injective[complete]
-
FABL.card_partitePerfectMatching_le_factorial_bound_strong[complete]
-
FABL.card_partitePerfectMatching_le_factorial_bound_printed[complete]
-
FABL.matching_count_root_div_sqrt_factorial[complete]
-
FABL.homogeneous_uniformLpNorm_le_matchingImprovement[complete]
-
FABL.homogeneous_uniformLpNorm_le_sqrt_two_mul_sub_one[complete]
-
FABL.homogeneous_uniformLpNorm_le_doubleFactorial[complete]
-
FABL.isFourierHomogeneous_fourierDegree_le[complete]
-
FABL.homogeneous_uniformLpNorm_le_sqrt_q[complete]
-
FABL.factorial_bound_strong_lt_printed[complete]
-
FABL.matchingFactorialRatio[complete]
-
FABL.matchingImprovementConstant_eq_rpow_factorialRatio[complete]
-
FABL.matchingStirlingCore[complete]
-
FABL.factorialStirlingApprox_matching_ratio_eq_core[complete]
-
FABL.matchingFactorialRatio_isEquivalent_core[complete]
-
FABL.matchingCoreGrowth[complete]
-
FABL.matchingStirlingCore_eq_constant_mul_growth[complete]
-
FABL.matchingStirlingCore_isTheta_growth[complete]
-
FABL.matchingFactorialRatio_isTheta_growth[complete]
-
FABL.matchingImprovementGrowth[complete]
-
FABL.matchingCoreGrowth_rpow_eq_improvementGrowth[complete]
-
FABL.matchingImprovementConstant_isTheta[complete]
-
FABL.PerfectMatchingCode[complete] -
FABL.perfectMatchingCodeFintype[complete] -
FABL.perfectMatchingCodeDecidableEq[complete] -
FABL.decodePerfectMatchingCode[complete] -
FABL.decodedPerfectMatching[complete] -
FABL.IsPartitePerfectMatchingCode[complete] -
FABL.PartitePerfectMatching[complete] -
FABL.natCard_perfectMatchingCode[complete] -
FABL.natCard_partitePerfectMatching_le_code[complete] -
FABL.card_partitePerfectMatching_four_two[complete] -
FABL.card_partitePerfectMatching_four_one[complete] -
FABL.oddDoubleFactorial_le_factorial_sq[complete] -
FABL.natCard_partitePerfectMatching_le_doubleFactorial[complete] -
FABL.natCard_partitePerfectMatching_le_factorial_bound[complete] -
FABL.homogeneous_uniformLpNorm_le_sqrt_two_mul[complete] -
FABL.multinomial_const_le_pow[complete] -
FABL.factorial_mul_le_factorial_pow_mul_pow[complete] -
FABL.matchingImprovementConstant[complete] -
FABL.matchingImprovementConstant_le_one[complete] -
FABL.remainingPartSlice[complete] -
FABL.greedyLargestPart[complete] -
FABL.remainingPartSlice_card_le_greedyLargestPart[complete] -
FABL.sum_card_remainingPartSlice[complete] -
FABL.remaining_card_le_parts_mul_largest[complete] -
FABL.greedyLargestPartSlice_nonempty[complete] -
FABL.greedyPivot[complete] -
FABL.greedyPivot_mem[complete] -
FABL.greedyPivot_part[complete] -
FABL.greedyPartnerChoices[complete] -
FABL.card_greedyPartnerChoices_add_largest[complete] -
FABL.card_greedyPartnerChoices_le[complete] -
FABL.PartitePairingTrace[complete] -
FABL.partitePairingTraceFintype[complete] -
FABL.partitePairingTraceSuccEquiv[complete] -
FABL.card_partitePairingTrace_le[complete] -
FABL.graphPartiteMatchingPartner[complete] -
FABL.graphPartiteMatchingPartner_adj[complete] -
FABL.graphPartiteMatchingPartner_unique[complete] -
FABL.graphPartiteMatchingPartner_involutive[complete] -
FABL.graphPartiteMatchingPartner_part_ne[complete] -
FABL.GraphMatchingClosedOn[complete] -
FABL.graphMatchingClosedOn_univ[complete] -
FABL.graphMatchingClosedOn_erase_pair[complete] -
FABL.graphMatchingTrace[complete] -
FABL.graphMatchingTrace_partner_eq_on_remaining[complete] -
FABL.graphMatchingFullTrace[complete] -
FABL.graphMatchingFullTrace_injective[complete] -
FABL.card_partitePerfectMatching_le_factorial_bound_strong[complete] -
FABL.card_partitePerfectMatching_le_factorial_bound_printed[complete] -
FABL.matching_count_root_div_sqrt_factorial[complete] -
FABL.homogeneous_uniformLpNorm_le_matchingImprovement[complete] -
FABL.homogeneous_uniformLpNorm_le_sqrt_two_mul_sub_one[complete] -
FABL.homogeneous_uniformLpNorm_le_doubleFactorial[complete] -
FABL.isFourierHomogeneous_fourierDegree_le[complete] -
FABL.homogeneous_uniformLpNorm_le_sqrt_q[complete] -
FABL.factorial_bound_strong_lt_printed[complete] -
FABL.matchingFactorialRatio[complete] -
FABL.matchingImprovementConstant_eq_rpow_factorialRatio[complete] -
FABL.matchingStirlingCore[complete] -
FABL.factorialStirlingApprox_matching_ratio_eq_core[complete] -
FABL.matchingFactorialRatio_isEquivalent_core[complete] -
FABL.matchingCoreGrowth[complete] -
FABL.matchingStirlingCore_eq_constant_mul_growth[complete] -
FABL.matchingStirlingCore_isTheta_growth[complete] -
FABL.matchingFactorialRatio_isTheta_growth[complete] -
FABL.matchingImprovementGrowth[complete] -
FABL.matchingCoreGrowth_rpow_eq_improvementGrowth[complete] -
FABL.matchingImprovementConstant_isTheta[complete]
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.PerfectMatchingCode : ℕ → Type
def FABL.PerfectMatchingCode : ℕ → Type
A canonical code for a perfect matching on `2m` linearly ordered vertices. At the successor step the least remaining vertex chooses one of the other `2m+1` vertices.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.perfectMatchingCodeFintype (m : ℕ) : Fintype (FABL.PerfectMatchingCode m)
def FABL.perfectMatchingCodeFintype (m : ℕ) : Fintype (FABL.PerfectMatchingCode m)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.perfectMatchingCodeDecidableEq (m : ℕ) : DecidableEq (FABL.PerfectMatchingCode m)
def FABL.perfectMatchingCodeDecidableEq (m : ℕ) : DecidableEq (FABL.PerfectMatchingCode m)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.decodePerfectMatchingCode {α : Type} (m : ℕ) : FABL.PerfectMatchingCode m → List α → List (α × α)
def FABL.decodePerfectMatchingCode {α : Type} (m : ℕ) : FABL.PerfectMatchingCode m → List α → List (α × α)
Decode a matching code against a current ordered list of unused vertices.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.decodedPerfectMatching (m : ℕ) (code : FABL.PerfectMatchingCode m) : List (ℕ × ℕ)
def FABL.decodedPerfectMatching (m : ℕ) (code : FABL.PerfectMatchingCode m) : List (ℕ × ℕ)
The decoded edges of a matching on the standard vertex set `Fin (2m)`, represented by natural labels `0,...,2m-1`.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.IsPartitePerfectMatchingCode (q k : ℕ) (code : FABL.PerfectMatchingCode (q * k / 2)) : Prop
def FABL.IsPartitePerfectMatchingCode (q k : ℕ) (code : FABL.PerfectMatchingCode (q * k / 2)) : Prop
A canonical matching code is `q`-partite with parts of size `k` when every decoded edge joins vertices whose quotient-by-`k` part labels differ.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.PartitePerfectMatching (q k : ℕ) : Type
def FABL.PartitePerfectMatching (q k : ℕ) : Type
Perfect matchings in the complete `q`-partite graph with `k` vertices in each part.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.natCard_perfectMatchingCode (m : ℕ) : Nat.card (FABL.PerfectMatchingCode m) = (2 * m - 1).doubleFactorial
theorem FABL.natCard_perfectMatchingCode (m : ℕ) : Nat.card (FABL.PerfectMatchingCode m) = (2 * m - 1).doubleFactorial
There are `(2m-1)!!` canonical perfect-matching codes on `2m` vertices.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.natCard_partitePerfectMatching_le_code (q k : ℕ) : Nat.card (FABL.PartitePerfectMatching q k) ≤ Nat.card (FABL.PerfectMatchingCode (q * k / 2))
theorem FABL.natCard_partitePerfectMatching_le_code (q k : ℕ) : Nat.card (FABL.PartitePerfectMatching q k) ≤ Nat.card (FABL.PerfectMatchingCode (q * k / 2))
Partite perfect matchings inject into all perfect matchings.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_partitePerfectMatching_four_two : Fintype.card (FABL.PartitePerfectMatching 4 2) = 60
theorem FABL.card_partitePerfectMatching_four_two : Fintype.card (FABL.PartitePerfectMatching 4 2) = 60
Exercise 9.38(a): the complete four-partite graph with two vertices in each part has exactly sixty perfect matchings.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_partitePerfectMatching_four_one : Fintype.card (FABL.PartitePerfectMatching 4 1) = 3
theorem FABL.card_partitePerfectMatching_four_one : Fintype.card (FABL.PartitePerfectMatching 4 1) = 3
There are three perfect matchings of the four singleton parts.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.oddDoubleFactorial_le_factorial_sq (m : ℕ) : (2 * m - 1).doubleFactorial ≤ m.factorial ^ 2
theorem FABL.oddDoubleFactorial_le_factorial_sq (m : ℕ) : (2 * m - 1).doubleFactorial ≤ m.factorial ^ 2
The odd double factorial is bounded by the square of the corresponding factorial.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.natCard_partitePerfectMatching_le_doubleFactorial (r k : ℕ) : Nat.card (FABL.PartitePerfectMatching (2 * r) k) ≤ (2 * r * k - 1).doubleFactorial
theorem FABL.natCard_partitePerfectMatching_le_doubleFactorial (r k : ℕ) : Nat.card (FABL.PartitePerfectMatching (2 * r) k) ≤ (2 * r * k - 1).doubleFactorial
Exercise 9.38(b): partite perfect matchings are at most all perfect matchings, whose count is the odd double factorial.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.natCard_partitePerfectMatching_le_factorial_bound (r k : ℕ) (hr : 0 < r) : ↑(Nat.card (FABL.PartitePerfectMatching (2 * r) k)) ≤ (↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial ^ 2
theorem FABL.natCard_partitePerfectMatching_le_factorial_bound (r k : ℕ) (hr : 0 < r) : ↑(Nat.card (FABL.PartitePerfectMatching (2 * r) k)) ≤ (↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial ^ 2
The literal squared-factorial count printed in Exercise 9.38(c). This weak inequality factors through `(2m-1)!! ≤ (m!)²`, but it cannot imply the displayed single-factorial `C_{q,k}` bound that follows it. The corrected unordered-matching bound `card_partitePerfectMatching_le_factorial_bound_strong` is proved below. -
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.homogeneous_uniformLpNorm_le_sqrt_two_mul {n : ℕ} (r k : ℕ) (hr : 0 < r) (f : FABL.SignCube n → ℝ) (hdegree : FABL.fourierDegree f ≤ k) : FABL.uniformLpNorm (2 * ↑r) f ≤ √(2 * ↑r) ^ k * FABL.uniformLpNorm 2 f
theorem FABL.homogeneous_uniformLpNorm_le_sqrt_two_mul {n : ℕ} (r k : ℕ) (hr : 0 < r) (f : FABL.SignCube n → ℝ) (hdegree : FABL.fourierDegree f ≤ k) : FABL.uniformLpNorm (2 * ↑r) f ≤ √(2 * ↑r) ^ k * FABL.uniformLpNorm 2 f
Exercise 9.38(b), norm consequence. The already established sharp low-degree theorem immediately implies the book's coarser `q^{k/2}` estimate. -
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.multinomial_const_le_pow (r k : ℕ) : (Nat.multinomial Finset.univ fun x => k) ≤ r ^ (r * k)
theorem FABL.multinomial_const_le_pow (r k : ℕ) : (Nat.multinomial Finset.univ fun x => k) ≤ r ^ (r * k)
The constant-composition multinomial coefficient is at most the total number of length-`rk` words on `r` symbols.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.factorial_mul_le_factorial_pow_mul_pow (r k : ℕ) : (r * k).factorial ≤ k.factorial ^ r * r ^ (r * k)
theorem FABL.factorial_mul_le_factorial_pow_mul_pow (r k : ℕ) : (r * k).factorial ≤ k.factorial ^ r * r ^ (r * k)
The factorial inequality underlying Exercise 9.38(d).
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.matchingImprovementConstant (r k : ℕ) : ℝ
def FABL.matchingImprovementConstant (r k : ℕ) : ℝ
Exercise 9.38(c)'s improvement factor, with `q=2r`.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.matchingImprovementConstant_le_one (r k : ℕ) (hr : 0 < r) : FABL.matchingImprovementConstant r k ≤ 1
theorem FABL.matchingImprovementConstant_le_one (r k : ℕ) (hr : 0 < r) : FABL.matchingImprovementConstant r k ≤ 1
Exercise 9.38(d): the matching improvement factor is at most one.
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.remainingPartSlice {r k : ℕ} (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (part : Fin (2 * r)) : Finset (FABL.BookPartiteVertex (2 * r) k)
def FABL.remainingPartSlice {r k : ℕ} (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (part : Fin (2 * r)) : Finset (FABL.BookPartiteVertex (2 * r) k)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.greedyLargestPart {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : Fin (2 * r)
def FABL.greedyLargestPart {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : Fin (2 * r)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.remainingPartSlice_card_le_greedyLargestPart {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (part : Fin (2 * r)) : (FABL.remainingPartSlice remaining part).card ≤ (FABL.remainingPartSlice remaining (FABL.greedyLargestPart hr remaining)).card
theorem FABL.remainingPartSlice_card_le_greedyLargestPart {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (part : Fin (2 * r)) : (FABL.remainingPartSlice remaining part).card ≤ (FABL.remainingPartSlice remaining (FABL.greedyLargestPart hr remaining)).card
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.sum_card_remainingPartSlice {r k : ℕ} (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : ∑ part, (FABL.remainingPartSlice remaining part).card = remaining.card
theorem FABL.sum_card_remainingPartSlice {r k : ℕ} (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : ∑ part, (FABL.remainingPartSlice remaining part).card = remaining.card
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.remaining_card_le_parts_mul_largest {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : remaining.card ≤ 2 * r * (FABL.remainingPartSlice remaining (FABL.greedyLargestPart hr remaining)).card
theorem FABL.remaining_card_le_parts_mul_largest {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : remaining.card ≤ 2 * r * (FABL.remainingPartSlice remaining (FABL.greedyLargestPart hr remaining)).card
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.greedyLargestPartSlice_nonempty {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : (FABL.remainingPartSlice remaining (FABL.greedyLargestPart hr remaining)).Nonempty
theorem FABL.greedyLargestPartSlice_nonempty {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : (FABL.remainingPartSlice remaining (FABL.greedyLargestPart hr remaining)).Nonempty
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.greedyPivot {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : FABL.BookPartiteVertex (2 * r) k
def FABL.greedyPivot {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : FABL.BookPartiteVertex (2 * r) k
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.greedyPivot_mem {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : FABL.greedyPivot hr remaining hremaining ∈ remaining
theorem FABL.greedyPivot_mem {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : FABL.greedyPivot hr remaining hremaining ∈ remaining
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.greedyPivot_part {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : (FABL.greedyPivot hr remaining hremaining).fst = FABL.greedyLargestPart hr remaining
theorem FABL.greedyPivot_part {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : (FABL.greedyPivot hr remaining hremaining).fst = FABL.greedyLargestPart hr remaining
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.greedyPartnerChoices {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : Finset (FABL.BookPartiteVertex (2 * r) k)
def FABL.greedyPartnerChoices {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : Finset (FABL.BookPartiteVertex (2 * r) k)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_greedyPartnerChoices_add_largest {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : (FABL.greedyPartnerChoices hr remaining hremaining).card + (FABL.remainingPartSlice remaining (FABL.greedyLargestPart hr remaining)).card = remaining.card
theorem FABL.card_greedyPartnerChoices_add_largest {r k : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : (FABL.greedyPartnerChoices hr remaining hremaining).card + (FABL.remainingPartSlice remaining (FABL.greedyLargestPart hr remaining)).card = remaining.card
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_greedyPartnerChoices_le {r k s : ℕ} (hr : 0 < r) (hs : 0 < s) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hcard : remaining.card = 2 * s) : ↑(FABL.greedyPartnerChoices hr remaining ⋯).card ≤ ↑(2 * r - 1) / ↑r * ↑s
theorem FABL.card_greedyPartnerChoices_le {r k s : ℕ} (hr : 0 < r) (hs : 0 < s) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hcard : remaining.card = 2 * s) : ↑(FABL.greedyPartnerChoices hr remaining ⋯).card ≤ ↑(2 * r - 1) / ↑r * ↑s
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.PartitePairingTrace {r k : ℕ} (hr : 0 < r) (s : ℕ) : Finset (FABL.BookPartiteVertex (2 * r) k) → Type
def FABL.PartitePairingTrace {r k : ℕ} (hr : 0 < r) (s : ℕ) : Finset (FABL.BookPartiteVertex (2 * r) k) → Type
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.partitePairingTraceFintype {r k : ℕ} (hr : 0 < r) (s : ℕ) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : Fintype (FABL.PartitePairingTrace hr s remaining)
def FABL.partitePairingTraceFintype {r k : ℕ} (hr : 0 < r) (s : ℕ) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : Fintype (FABL.PartitePairingTrace hr s remaining)
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.partitePairingTraceSuccEquiv {r k s : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : FABL.PartitePairingTrace hr (s + 1) remaining ≃ (partner : ↥(FABL.greedyPartnerChoices hr remaining hremaining)) × FABL.PartitePairingTrace hr s ((remaining.erase (FABL.greedyPivot hr remaining hremaining)).erase ↑partner)
def FABL.partitePairingTraceSuccEquiv {r k s : ℕ} (hr : 0 < r) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hremaining : remaining.Nonempty) : FABL.PartitePairingTrace hr (s + 1) remaining ≃ (partner : ↥(FABL.greedyPartnerChoices hr remaining hremaining)) × FABL.PartitePairingTrace hr s ((remaining.erase (FABL.greedyPivot hr remaining hremaining)).erase ↑partner)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_partitePairingTrace_le {r k : ℕ} (hr : 0 < r) (s : ℕ) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : remaining.card = 2 * s → ↑(Fintype.card (FABL.PartitePairingTrace hr s remaining)) ≤ (↑(2 * r - 1) / ↑r) ^ s * ↑s.factorial
theorem FABL.card_partitePairingTrace_le {r k : ℕ} (hr : 0 < r) (s : ℕ) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : remaining.card = 2 * s → ↑(Fintype.card (FABL.PartitePairingTrace hr s remaining)) ≤ (↑(2 * r - 1) / ↑r) ^ s * ↑s.factorial
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphPartiteMatchingPartner {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (vertex : FABL.BookPartiteVertex q k) : FABL.BookPartiteVertex q k
def FABL.graphPartiteMatchingPartner {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (vertex : FABL.BookPartiteVertex q k) : FABL.BookPartiteVertex q k
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphPartiteMatchingPartner_adj {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (vertex : FABL.BookPartiteVertex q k) : (↑matching).Adj vertex (FABL.graphPartiteMatchingPartner matching vertex)
theorem FABL.graphPartiteMatchingPartner_adj {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (vertex : FABL.BookPartiteVertex q k) : (↑matching).Adj vertex (FABL.graphPartiteMatchingPartner matching vertex)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphPartiteMatchingPartner_unique {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (vertex neighbor : FABL.BookPartiteVertex q k) (hneighbor : (↑matching).Adj vertex neighbor) : neighbor = FABL.graphPartiteMatchingPartner matching vertex
theorem FABL.graphPartiteMatchingPartner_unique {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (vertex neighbor : FABL.BookPartiteVertex q k) (hneighbor : (↑matching).Adj vertex neighbor) : neighbor = FABL.graphPartiteMatchingPartner matching vertex
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphPartiteMatchingPartner_involutive {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) : Function.Involutive (FABL.graphPartiteMatchingPartner matching)
theorem FABL.graphPartiteMatchingPartner_involutive {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) : Function.Involutive (FABL.graphPartiteMatchingPartner matching)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphPartiteMatchingPartner_part_ne {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (vertex : FABL.BookPartiteVertex q k) : (FABL.graphPartiteMatchingPartner matching vertex).fst ≠ vertex.fst
theorem FABL.graphPartiteMatchingPartner_part_ne {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (vertex : FABL.BookPartiteVertex q k) : (FABL.graphPartiteMatchingPartner matching vertex).fst ≠ vertex.fst
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.GraphMatchingClosedOn {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (remaining : Finset (FABL.BookPartiteVertex q k)) : Prop
def FABL.GraphMatchingClosedOn {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (remaining : Finset (FABL.BookPartiteVertex q k)) : Prop
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingClosedOn_univ {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) : FABL.GraphMatchingClosedOn matching Finset.univ
theorem FABL.graphMatchingClosedOn_univ {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) : FABL.GraphMatchingClosedOn matching Finset.univ
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingClosedOn_erase_pair {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (remaining : Finset (FABL.BookPartiteVertex q k)) (hclosed : FABL.GraphMatchingClosedOn matching remaining) (vertex : FABL.BookPartiteVertex q k) (_hvertex : vertex ∈ remaining) : FABL.GraphMatchingClosedOn matching ((remaining.erase vertex).erase (FABL.graphPartiteMatchingPartner matching vertex))
theorem FABL.graphMatchingClosedOn_erase_pair {q k : ℕ} (matching : FABL.GraphPartitePerfectMatching q k) (remaining : Finset (FABL.BookPartiteVertex q k)) (hclosed : FABL.GraphMatchingClosedOn matching remaining) (vertex : FABL.BookPartiteVertex q k) (_hvertex : vertex ∈ remaining) : FABL.GraphMatchingClosedOn matching ((remaining.erase vertex).erase (FABL.graphPartiteMatchingPartner matching vertex))
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingTrace {r k : ℕ} (hr : 0 < r) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) (s : ℕ) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : remaining.card = 2 * s → FABL.GraphMatchingClosedOn matching remaining → FABL.PartitePairingTrace hr s remaining
def FABL.graphMatchingTrace {r k : ℕ} (hr : 0 < r) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) (s : ℕ) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) : remaining.card = 2 * s → FABL.GraphMatchingClosedOn matching remaining → FABL.PartitePairingTrace hr s remaining
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingTrace_partner_eq_on_remaining {r k : ℕ} (hr : 0 < r) (s : ℕ) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hcard : remaining.card = 2 * s) (first second : FABL.GraphPartitePerfectMatching (2 * r) k) (hclosedFirst : FABL.GraphMatchingClosedOn first remaining) (hclosedSecond : FABL.GraphMatchingClosedOn second remaining) : FABL.graphMatchingTrace hr first s remaining hcard hclosedFirst = FABL.graphMatchingTrace hr second s remaining hcard hclosedSecond → ∀ vertex ∈ remaining, FABL.graphPartiteMatchingPartner first vertex = FABL.graphPartiteMatchingPartner second vertex
theorem FABL.graphMatchingTrace_partner_eq_on_remaining {r k : ℕ} (hr : 0 < r) (s : ℕ) (remaining : Finset (FABL.BookPartiteVertex (2 * r) k)) (hcard : remaining.card = 2 * s) (first second : FABL.GraphPartitePerfectMatching (2 * r) k) (hclosedFirst : FABL.GraphMatchingClosedOn first remaining) (hclosedSecond : FABL.GraphMatchingClosedOn second remaining) : FABL.graphMatchingTrace hr first s remaining hcard hclosedFirst = FABL.graphMatchingTrace hr second s remaining hcard hclosedSecond → ∀ vertex ∈ remaining, FABL.graphPartiteMatchingPartner first vertex = FABL.graphPartiteMatchingPartner second vertex
-
defdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
def FABL.graphMatchingFullTrace {r k : ℕ} (hr : 0 < r) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : FABL.PartitePairingTrace hr (r * k) Finset.univ
def FABL.graphMatchingFullTrace {r k : ℕ} (hr : 0 < r) (matching : FABL.GraphPartitePerfectMatching (2 * r) k) : FABL.PartitePairingTrace hr (r * k) Finset.univ
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.graphMatchingFullTrace_injective {r k : ℕ} (hr : 0 < r) : Function.Injective (FABL.graphMatchingFullTrace hr)
theorem FABL.graphMatchingFullTrace_injective {r k : ℕ} (hr : 0 < r) : Function.Injective (FABL.graphMatchingFullTrace hr)
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_partitePerfectMatching_le_factorial_bound_strong (r k : ℕ) (hr : 0 < r) : ↑(Fintype.card (FABL.PartitePerfectMatching (2 * r) k)) ≤ (↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial
theorem FABL.card_partitePerfectMatching_le_factorial_bound_strong (r k : ℕ) (hr : 0 < r) : ↑(Fintype.card (FABL.PartitePerfectMatching (2 * r) k)) ≤ (↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial
Corrected strong form of Exercise 9.38(c). The printed square counts ordered edge-selection histories; division by `(rk)!` gives the unordered perfect-matching count used in Exercise 9.37(e).
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.card_partitePerfectMatching_le_factorial_bound_printed (r k : ℕ) (hr : 0 < r) : ↑(Fintype.card (FABL.PartitePerfectMatching (2 * r) k)) ≤ (↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial ^ 2
theorem FABL.card_partitePerfectMatching_le_factorial_bound_printed (r k : ℕ) (hr : 0 < r) : ↑(Fintype.card (FABL.PartitePerfectMatching (2 * r) k)) ≤ (↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial ^ 2
The literal squared-factorial inequality printed in Exercise 9.38(c), as a weaker corollary of the corrected unordered count.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.matching_count_root_div_sqrt_factorial (r k : ℕ) (hr : 0 < r) : ((↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial).rpow (1 / (2 * ↑r)) / √↑k.factorial = FABL.matchingImprovementConstant r k * √(2 * ↑r - 1) ^ k
theorem FABL.matching_count_root_div_sqrt_factorial (r k : ℕ) (hr : 0 < r) : ((↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial).rpow (1 / (2 * ↑r)) / √↑k.factorial = FABL.matchingImprovementConstant r k * √(2 * ↑r - 1) ^ k
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.homogeneous_uniformLpNorm_le_matchingImprovement {n : ℕ} (r k : ℕ) (hr : 0 < r) (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.uniformLpNorm (2 * ↑r) f ≤ FABL.matchingImprovementConstant r k * √(2 * ↑r - 1) ^ k * FABL.uniformLpNorm 2 f
theorem FABL.homogeneous_uniformLpNorm_le_matchingImprovement {n : ℕ} (r k : ℕ) (hr : 0 < r) (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.uniformLpNorm (2 * ↑r) f ≤ FABL.matchingImprovementConstant r k * √(2 * ↑r - 1) ^ k * FABL.uniformLpNorm 2 f
Exercise 9.38(c), norm consequence using the corrected unordered count.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.homogeneous_uniformLpNorm_le_sqrt_two_mul_sub_one {n : ℕ} (r k : ℕ) (hr : 0 < r) (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.uniformLpNorm (2 * ↑r) f ≤ √(2 * ↑r - 1) ^ k * FABL.uniformLpNorm 2 f
theorem FABL.homogeneous_uniformLpNorm_le_sqrt_two_mul_sub_one {n : ℕ} (r k : ℕ) (hr : 0 < r) (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.uniformLpNorm (2 * ↑r) f ≤ √(2 * ↑r - 1) ^ k * FABL.uniformLpNorm 2 f
Exercise 9.38(d): the corrected combinatorial improvement and `C_{q,k} ≤ 1` recover the homogeneous Bonami bound. -
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.homogeneous_uniformLpNorm_le_doubleFactorial {n : ℕ} (r k : ℕ) (hr : 0 < r) (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.uniformLpNorm (2 * ↑r) f ≤ (↑(2 * r * k - 1).doubleFactorial).rpow (1 / (2 * ↑r)) / √↑k.factorial * FABL.uniformLpNorm 2 f
theorem FABL.homogeneous_uniformLpNorm_le_doubleFactorial {n : ℕ} (r k : ℕ) (hr : 0 < r) (hn : 0 < n) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.uniformLpNorm (2 * ↑r) f ≤ (↑(2 * r * k - 1).doubleFactorial).rpow (1 / (2 * ↑r)) / √↑k.factorial * FABL.uniformLpNorm 2 f
Exercise 9.38(b), direct double-factorial norm consequence.
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.isFourierHomogeneous_fourierDegree_le {n k : ℕ} (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.fourierDegree f ≤ k
theorem FABL.isFourierHomogeneous_fourierDegree_le {n k : ℕ} (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.fourierDegree f ≤ k
-
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.homogeneous_uniformLpNorm_le_sqrt_q {n : ℕ} (r k : ℕ) (hr : 0 < r) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.uniformLpNorm (2 * ↑r) f ≤ √(2 * ↑r) ^ k * FABL.uniformLpNorm 2 f
theorem FABL.homogeneous_uniformLpNorm_le_sqrt_q {n : ℕ} (r k : ℕ) (hr : 0 < r) (f : FABL.SignCube n → ℝ) (hf : FABL.IsFourierHomogeneous f k) : FABL.uniformLpNorm (2 * ↑r) f ≤ √(2 * ↑r) ^ k * FABL.uniformLpNorm 2 f
Exercise 9.38(b), the coarser displayed `q^{k/2}` consequence. -
theoremdefined in FABL/Chapter09/MatchingMomentCombinatorics.leancomplete
theorem FABL.factorial_bound_strong_lt_printed (r k : ℕ) (hr : 0 < r) (hm : 1 < r * k) : (↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial < (↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial ^ 2
theorem FABL.factorial_bound_strong_lt_printed (r k : ℕ) (hr : 0 < r) (hm : 1 < r * k) : (↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial < (↑(2 * r - 1) / ↑r) ^ (r * k) * ↑(r * k).factorial ^ 2
Formal diagnosis of the second Exercise 9.38 erratum: when `rk > 1`, the printed squared-factorial right-hand side is strictly larger than the correct unordered-matching right-hand side, so it cannot yield the stated single-factorial `C_{q,k}` merely by algebraic rewriting. -
defdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
def FABL.matchingFactorialRatio (r k : ℕ) : ℝ
def FABL.matchingFactorialRatio (r k : ℕ) : ℝ
The factorial quotient before taking the `1/(2r)` power in `matchingImprovementConstant`.
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.matchingImprovementConstant_eq_rpow_factorialRatio (r k : ℕ) : FABL.matchingImprovementConstant r k = (FABL.matchingFactorialRatio r k).rpow (1 / (2 * ↑r))
theorem FABL.matchingImprovementConstant_eq_rpow_factorialRatio (r k : ℕ) : FABL.matchingImprovementConstant r k = (FABL.matchingFactorialRatio r k).rpow (1 / (2 * ↑r))
-
defdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
def FABL.matchingStirlingCore (r k : ℕ) : ℝ
def FABL.matchingStirlingCore (r k : ℕ) : ℝ
The polynomial part left after the exponential factors in Stirling's formula cancel.
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.factorialStirlingApprox_matching_ratio_eq_core (r k : ℕ) (hr : 0 < r) (hk : 0 < k) : FABL.factorialStirlingApprox (r * k) / (FABL.factorialStirlingApprox k ^ r * ↑r ^ (r * k)) = FABL.matchingStirlingCore r k
theorem FABL.factorialStirlingApprox_matching_ratio_eq_core (r k : ℕ) (hr : 0 < r) (hk : 0 < k) : FABL.factorialStirlingApprox (r * k) / (FABL.factorialStirlingApprox k ^ r * ↑r ^ (r * k)) = FABL.matchingStirlingCore r k
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.matchingFactorialRatio_isEquivalent_core (r : ℕ) (hr : 0 < r) : Asymptotics.IsEquivalent Filter.atTop (FABL.matchingFactorialRatio r) (FABL.matchingStirlingCore r)
theorem FABL.matchingFactorialRatio_isEquivalent_core (r : ℕ) (hr : 0 < r) : Asymptotics.IsEquivalent Filter.atTop (FABL.matchingFactorialRatio r) (FABL.matchingStirlingCore r)
Stirling equivalence for the factorial quotient in Exercise 9.38(e).
-
defdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
def FABL.matchingCoreGrowth (r k : ℕ) : ℝ
def FABL.matchingCoreGrowth (r k : ℕ) : ℝ
The polynomial scale before taking the `1/(2r)` root.
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.matchingStirlingCore_eq_constant_mul_growth (r k : ℕ) (hr : 0 < r) (hk : 0 < k) : FABL.matchingStirlingCore r k = √↑r * (2 * Real.pi).rpow ((1 - ↑r) / 2) * FABL.matchingCoreGrowth r k
theorem FABL.matchingStirlingCore_eq_constant_mul_growth (r k : ℕ) (hr : 0 < r) (hk : 0 < k) : FABL.matchingStirlingCore r k = √↑r * (2 * Real.pi).rpow ((1 - ↑r) / 2) * FABL.matchingCoreGrowth r k
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.matchingStirlingCore_isTheta_growth (r : ℕ) (hr : 0 < r) : FABL.matchingStirlingCore r =Θ[Filter.atTop] FABL.matchingCoreGrowth r
theorem FABL.matchingStirlingCore_isTheta_growth (r : ℕ) (hr : 0 < r) : FABL.matchingStirlingCore r =Θ[Filter.atTop] FABL.matchingCoreGrowth r
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.matchingFactorialRatio_isTheta_growth (r : ℕ) (hr : 0 < r) : FABL.matchingFactorialRatio r =Θ[Filter.atTop] FABL.matchingCoreGrowth r
theorem FABL.matchingFactorialRatio_isTheta_growth (r : ℕ) (hr : 0 < r) : FABL.matchingFactorialRatio r =Θ[Filter.atTop] FABL.matchingCoreGrowth r
-
defdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
def FABL.matchingImprovementGrowth (r k : ℕ) : ℝ
def FABL.matchingImprovementGrowth (r k : ℕ) : ℝ
Exercise 9.38(e)'s final scale. Since `q=2r`, its exponent is also `-1/4 + 1/(2q)`.
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.matchingCoreGrowth_rpow_eq_improvementGrowth (r k : ℕ) (hr : 0 < r) : (FABL.matchingCoreGrowth r k).rpow (1 / (2 * ↑r)) = FABL.matchingImprovementGrowth r k
theorem FABL.matchingCoreGrowth_rpow_eq_improvementGrowth (r k : ℕ) (hr : 0 < r) : (FABL.matchingCoreGrowth r k).rpow (1 / (2 * ↑r)) = FABL.matchingImprovementGrowth r k
-
theoremdefined in FABL/Chapter09/MatchingAsymptotics.leancomplete
theorem FABL.matchingImprovementConstant_isTheta (r : ℕ) (hr : 0 < r) : FABL.matchingImprovementConstant r =Θ[Filter.atTop] FABL.matchingImprovementGrowth r
theorem FABL.matchingImprovementConstant_isTheta (r : ℕ) (hr : 0 < r) : FABL.matchingImprovementConstant r =Θ[Filter.atTop] FABL.matchingImprovementGrowth r
Exercise 9.38(e): for each fixed `r>0`, the matching improvement constant is `Θ(k^(-1/4+1/(4r)))`, equivalently `Θ(k^(-1/4+1/(2q)))` for `q=2r`.
Exercise 9.38(f). The book asks whether one can obtain the sharper estimate
\frac{|\mathcal M|^{1/q}}{\sqrt{k!}}
=\Theta_q(1)k^{-1/4}(\sqrt{q-1})^k
by exactly counting matchings with prescribed numbers of edges between every
pair of parts and summing over the likely range. This open-ended challenge is
recorded for completeness and supplies no assumption to the production
library.
The external construction of Ajtai and Linial gives coalition-resistant monotone functions showing that Proposition 9.27 is close to sharp. It is recorded for comparison and is not used by production proofs.
The notes compare the chapter's junta bounds with the external stronger LTF bound of Diakonikolas--Servedio and the incomparable DNF bound of Gopalan--Meka--Reingold. These results supply no assumptions here.
The notes record the history of Paley, Bonami, Kiener, Schreiber, Nelson,
Segal, Gross, Beckner, and later work on real, Gaussian, and complex
hypercontractivity; the origins of small-set expansion, level-k
inequalities, KKL, Friedgut's theorem, and the chapter exercises; and the
known gap in the sharp KKL constant. These bibliographic and research-status
statements supply no assumptions to the production library.