The KKL inequality under p-biased measures: reflection and threshold consequences
DefinitionCoordinatewise complement of a configuration#✓fully proved
The coordinatewise complement ω ↦ ¬ω of a configuration.
def kpb_flipAll (ω : ConfigSpace E) : ConfigSpace E := fun e => !(ω e)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
Uses 1 · Used by 2
LemmaComplement swaps the Bernoulli \(p\) and \(1 - p\) weights#✓fully proved
Complementing sends the Bernoulli(p) weight to the Bernoulli(1 - p) weight.
lemma kpb_weight_flip (p : ℝ) (ω : ConfigSpace E) :
OSSS.weight (OSSS.bernoulliWeight (1 - p)) (kpb_flipAll ω)
= OSSS.weight (OSSS.bernoulliWeight p) ω
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
noncomputable def weight (ν : E → Bool → ℝ) (ω : ConfigSpace E) : ℝ := ∏ e, ν e (ω e)
CSLibExt/Complexity/BooleanFunctions/OSSS.lean:68
noncomputable def bernoulliWeight (p : ℝ) : E → Bool → ℝ :=
fun _ b => if b then p else 1 - p
CSLibExt/Complexity/BooleanFunctions/OSSS.lean:915
def kpb_flipAll (ω : ConfigSpace E) : ConfigSpace E := fun e => !(ω e)
CSLibExt/Complexity/BooleanFunctions/KKL/KKLpBiased.lean:49
TheoremReflection of the KKL inequality from \(p\) to \(1 - p\)#✓fully proved
The KKL inequality with constant 2 at p implies it at 1 - p.
theorem kpb_kkl_reflect {p : ℝ} (H : KKLHypercontractive p 2) :
KKLHypercontractive (1 - p) 2
def KKLHypercontractive (p c : ℝ) : Prop :=
∀ {E : Type} [Fintype E] [DecidableEq E] [Nonempty E] (φ : ConfigSpace E → Bool),
c * OSSS.var (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0)
* Real.log (1 / maxInfl (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0))
≤ totalInfl (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0)
CSLibExt/Complexity/BooleanFunctions/KKL/KKLInequality.lean:159
Uses 14
DefinitionKKL inequality with constant 2 on \((1/2, q)\)#✓fully proved
The KKL inequality with constant 2 for every Bernoulli parameter p ∈ (1/2, q).
def kpb_PBiasedHC (q : ℝ) : Prop :=
∀ p ∈ Set.Ioo (1 / 2 : ℝ) q, KKLHypercontractive p 2
def KKLHypercontractive (p c : ℝ) : Prop :=
∀ {E : Type} [Fintype E] [DecidableEq E] [Nonempty E] (φ : ConfigSpace E → Bool),
c * OSSS.var (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0)
* Real.log (1 / maxInfl (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0))
≤ totalInfl (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0)
CSLibExt/Complexity/BooleanFunctions/KKL/KKLInequality.lean:159
Uses 1 · Used by 4
TheoremKKL inequality with constant 0 holds trivially on \((1/2, q)\)#✓fully proved
The KKL inequality with constant 0 holds for every p; this is trivial.
theorem kpb_residue_c0 {q : ℝ} (hq : q ≤ 1) :
∀ p ∈ Set.Ioo (1 / 2 : ℝ) q, KKLHypercontractive p 0
def KKLHypercontractive (p c : ℝ) : Prop :=
∀ {E : Type} [Fintype E] [DecidableEq E] [Nonempty E] (φ : ConfigSpace E → Bool),
c * OSSS.var (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0)
* Real.log (1 / maxInfl (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0))
≤ totalInfl (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0)
CSLibExt/Complexity/BooleanFunctions/KKL/KKLInequality.lean:159
Uses 2
TheoremKKL hypothesis on \((1/2, q)\) restated on the interior of \((1/2, q)\)#✓fully proved
kpb_PBiasedHC q in the form used by StatMech.TwoDim.kklw_sharpThreshold.
theorem kpb_Hbkkkl {q : ℝ} (Hpb : kpb_PBiasedHC q) :
∀ p ∈ interior (Set.Icc (1 / 2 : ℝ) q), KKLHypercontractive p 2
def kpb_PBiasedHC (q : ℝ) : Prop :=
∀ p ∈ Set.Ioo (1 / 2 : ℝ) q, KKLHypercontractive p 2
CSLibExt/Complexity/BooleanFunctions/KKL/KKLpBiased.lean:133
def KKLHypercontractive (p c : ℝ) : Prop :=
∀ {E : Type} [Fintype E] [DecidableEq E] [Nonempty E] (φ : ConfigSpace E → Bool),
c * OSSS.var (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0)
* Real.log (1 / maxInfl (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0))
≤ totalInfl (bernoulliWeight p) (fun ω => if φ ω then (1 : ℝ) else 0)
CSLibExt/Complexity/BooleanFunctions/KKL/KKLInequality.lean:159
TheoremSharp-threshold bound under the \(p\)-biased KKL hypothesis#✓fully proved
StatMech.TwoDim.kklw_sharpThreshold under kpb_PBiasedHC q.
theorem kpb_sharpThreshold {E : Type} [Fintype E] [DecidableEq E] [Nonempty E]
(A : Set (ConfigSpace E)) (hA : IsIncreasing A)
{q v₀ L : ℝ} (hq : (1 : ℝ) / 2 ≤ q)
(hv0 : 0 ≤ v₀) (hL : 0 ≤ L)
(hhalf : StatMech.prob (1 / 2) A = 1 / 2)
(Hpb : kpb_PBiasedHC q)
(hvar : ∀ p ∈ interior (Set.Icc (1 / 2 : ℝ) q),
v₀ ≤ StatMech.prob p A * (1 - StatMech.prob p A))
(hLL' : ∀ p ∈ interior (Set.Icc (1 / 2 : ℝ) q),
L ≤ StatMech.TwoDim.kklw_logMaxInfl p A) :
1 / 2 + (2 * v₀ * L) * (q - 1 / 2) ≤ StatMech.prob q A
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def IsIncreasing (A : Set (ConfigSpace E)) : Prop := IsUpperSet A
MathlibExt/Probability/CorrelationInequalities/IncreasingEvent.lean:55
noncomputable def prob (p : ℝ) (A : Set (ConfigSpace E)) : ℝ :=
∑ ω, A.indicator (fun _ => (1 : ℝ)) ω * configWeight p ω
MathlibExt/Probability/CorrelationInequalities/Russo.lean:74
def kpb_PBiasedHC (q : ℝ) : Prop :=
∀ p ∈ Set.Ioo (1 / 2 : ℝ) q, KKLHypercontractive p 2
CSLibExt/Complexity/BooleanFunctions/KKL/KKLpBiased.lean:133
noncomputable def kklw_logMaxInfl [Nonempty E] (p : ℝ) (A : Set (ConfigSpace E)) : ℝ :=
Real.log (1 / maxInfl (OSSS.bernoulliWeight p) (A.indicator (fun _ => (1 : ℝ))))
CSLibExt/Complexity/BooleanFunctions/KKL/KKLEvents.lean:104
Uses 7 · Used by 1
TheoremSharp-threshold window under the \(p\)-biased KKL hypothesis#✓fully proved
StatMech.TwoDim.kklw_sharpThreshold_window under kpb_PBiasedHC q.
theorem kpb_sharpThreshold_window {E : Type} [Fintype E] [DecidableEq E] [Nonempty E]
(A : Set (ConfigSpace E)) (hA : IsIncreasing A)
{q v₀ L ε : ℝ} (hq : (1 : ℝ) / 2 ≤ q)
(hM : 0 < 2 * v₀ * L)
(hhalf : StatMech.prob (1 / 2) A = 1 / 2)
(hv0 : 0 ≤ v₀) (hL : 0 ≤ L)
(Hpb : kpb_PBiasedHC q)
(hvar : ∀ p ∈ interior (Set.Icc (1 / 2 : ℝ) q),
v₀ ≤ StatMech.prob p A * (1 - StatMech.prob p A))
(hLL' : ∀ p ∈ interior (Set.Icc (1 / 2 : ℝ) q),
L ≤ StatMech.TwoDim.kklw_logMaxInfl p A)
(hnotyet : StatMech.prob q A ≤ 1 - ε) :
q - 1 / 2 ≤ (1 / 2 - ε) / (2 * v₀ * L)
abbrev ConfigSpace (E : Type*) : Type _ := E → Bool
MathlibExt/Probability/Configuration/ConfigSpace.lean:40
def IsIncreasing (A : Set (ConfigSpace E)) : Prop := IsUpperSet A
MathlibExt/Probability/CorrelationInequalities/IncreasingEvent.lean:55
noncomputable def prob (p : ℝ) (A : Set (ConfigSpace E)) : ℝ :=
∑ ω, A.indicator (fun _ => (1 : ℝ)) ω * configWeight p ω
MathlibExt/Probability/CorrelationInequalities/Russo.lean:74
def kpb_PBiasedHC (q : ℝ) : Prop :=
∀ p ∈ Set.Ioo (1 / 2 : ℝ) q, KKLHypercontractive p 2
CSLibExt/Complexity/BooleanFunctions/KKL/KKLpBiased.lean:133
noncomputable def kklw_logMaxInfl [Nonempty E] (p : ℝ) (A : Set (ConfigSpace E)) : ℝ :=
Real.log (1 / maxInfl (OSSS.bernoulliWeight p) (A.indicator (fun _ => (1 : ℝ))))
CSLibExt/Complexity/BooleanFunctions/KKL/KKLEvents.lean:104
Loading dependency explorer…
The dependency explorer needs JavaScript and its graph data.