Documentation

Atlas.AnAlgorithmistsToolkit.code.LovaszSimonovits

noncomputable def LovaszSimonovits.sortedValues {n : } (ρ : Fin n) :
Fin n
Instances For
    noncomputable def LovaszSimonovits.partialSum {n : } (w : Fin n) (k : ) :
    Instances For
      noncomputable def LovaszSimonovits.lsCurve {n : } (ρ : Fin n) (x : ) :
      Instances For
        Instances For
          Instances For
            Instances For
              def LovaszSimonovits.RandomWalkStepReal {n : } (ρ_prev ρ_curr : Fin n) :
              Instances For
                theorem LovaszSimonovits.lsCurve_nonincreasing {n : } (ρ_prev ρ_curr : Fin n) (hstep : RandomWalkStepReal ρ_prev ρ_curr) (hclaim8 : WeightedSumInequality ρ_prev) (x : ) (hx0 : 0 x) (hxn : x n) :
                lsCurve ρ_curr x lsCurve ρ_prev x
                theorem LovaszSimonovits.all_one_of_sum_ge_n {n : } (c : Fin n) (hc1 : ∀ (i : Fin n), c i 1) (hge : n Finset.univ.sum c) (i : Fin n) :
                c i = 1
                theorem LovaszSimonovits.antitone_weighted_sum_le {n : } (w c : Fin n) (hw : Antitone w) (hc0 : ∀ (i : Fin n), 0 c i) (hc1 : ∀ (i : Fin n), c i 1) (k : Fin n) (frac : ) (hsum : Finset.univ.sum c = k + frac) :
                i : Fin n, c i * w i partialSum w k + frac * w k
                theorem LovaszSimonovits.theorem10_distribution_evolution {n : } (ρ_prev ρ_curr : Fin n) (φ : ) ( : 0 φ) (hφ1 : φ 1 / 2) (hclaim8 : WeightedSumInequality ρ_prev) (hmono : ∀ (a b : ), 0 aa bb nlsCurve ρ_prev a lsCurve ρ_prev b) (harc_lower : ∀ (x : ), 0 xx n / 2∃ (c₁ : Fin n) (c₂ : Fin n), (∀ (i : Fin n), 0 c₁ i) (∀ (i : Fin n), c₁ i 1) (∀ (i : Fin n), 0 c₂ i) (∀ (i : Fin n), c₂ i 1) Finset.univ.sum c₁ x - 2 * φ * x Finset.univ.sum c₂ x + 2 * φ * x lsCurve ρ_curr x = 1 / 2 * i : Fin n, c₁ i * sortedValues ρ_prev i + 1 / 2 * i : Fin n, c₂ i * sortedValues ρ_prev i) (harc_upper : ∀ (x : ), n / 2 xx n∃ (c₁ : Fin n) (c₂ : Fin n), (∀ (i : Fin n), 0 c₁ i) (∀ (i : Fin n), c₁ i 1) (∀ (i : Fin n), 0 c₂ i) (∀ (i : Fin n), c₂ i 1) Finset.univ.sum c₁ x - 2 * φ * (n - x) Finset.univ.sum c₂ x + 2 * φ * (n - x) lsCurve ρ_curr x = 1 / 2 * i : Fin n, c₁ i * sortedValues ρ_prev i + 1 / 2 * i : Fin n, c₂ i * sortedValues ρ_prev i) :
                (∀ (x : ), 0 xx n / 2lsCurve ρ_curr x 1 / 2 * (lsCurve ρ_prev (x - 2 * φ * x) + lsCurve ρ_prev (x + 2 * φ * x))) ∀ (x : ), n / 2 xx nlsCurve ρ_curr x 1 / 2 * (lsCurve ρ_prev (x - 2 * φ * (n - x)) + lsCurve ρ_prev (x + 2 * φ * (n - x)))
                noncomputable def LovaszSimonovits.lovaszSimonovitsBound (n : ) (φ : ) (t : ) (x : ) :
                Instances For
                  def LovaszSimonovits.SatisfiesEvolutionBound {n : } (ρ : Fin n) (φ : ) :
                  Instances For
                    theorem LovaszSimonovits.midpoint_mono_pointwise {f g : } {a b : } (hfa : f a g a) (hfb : f b g b) :
                    1 / 2 * (f a + f b) 1 / 2 * (g a + g b)
                    Instances For
                      Instances For
                        theorem LovaszSimonovits.sqrt_one_sub_le (t : ) (ht1 : t 1) :
                        (1 - t) 1 - t / 2
                        theorem LovaszSimonovits.sqrt_midpoint_bound (φ : ) ( : 0 φ) (hφ1 : φ 1 / 2) :
                        1 / 2 * ((1 - 2 * φ) + (1 + 2 * φ)) 1 - φ ^ 2 / 2
                        theorem LovaszSimonovits.midpoint_bound_lower_proof (n : ) (φ : ) ( : 0 φ) (hφ1 : φ 1 / 2) (hn : 0 < n) :
                        theorem LovaszSimonovits.midpoint_bound_upper_proof (n : ) (φ : ) ( : 0 φ) (hφ1 : φ 1 / 2) (hn : 0 < n) :
                        theorem LovaszSimonovits.lovasz_simonovits {n : } (ρ : Fin n) (φ : ) ( : 0 φ) (hφ1 : φ 1 / 2) (hevol : SatisfiesEvolutionBound ρ φ) (hbase : ∀ (x : ), 0 xx nlsCurve (ρ 0) x lovaszSimonovitsBound n φ 0 x) (hmid_lower : MidpointBoundLower n φ) (hmid_upper : MidpointBoundUpper n φ) (t : ) (x : ) :
                        0 xx nlsCurve (ρ t) x lovaszSimonovitsBound n φ t x
                        theorem LovaszSimonovits.lovasz_simonovits_full {n : } (ρ : Fin n) (φ : ) (hn : 0 < n) ( : 0 φ) (hφ1 : φ 1 / 2) (hevol : SatisfiesEvolutionBound ρ φ) (hbase : ∀ (x : ), 0 xx nlsCurve (ρ 0) x lovaszSimonovitsBound n φ 0 x) (t : ) (x : ) :
                        0 xx nlsCurve (ρ t) x lovaszSimonovitsBound n φ t x
                        theorem LovaszSimonovits.lovasz_simonovits_complement_bound {n : } (φ : ) (t : ) (I_t : ) (x : ) (hn : 0 < n) (hLS_nx : I_t (n - x) lovaszSimonovitsBound n φ t (n - x)) (hcompl : I_t x + I_t (n - x) 1) :
                        x / n I_t x + min x (n - x) * (1 - φ ^ 2 / 2) ^ t
                        theorem LovaszSimonovits.corollary12 {n : } (φ : ) (t : ) (I_t : ) (x : ) (_hx0 : 0 x) (_hxn : x n) (hLS : I_t x lovaszSimonovitsBound n φ t x) (hLS_lower : x / n I_t x + min x (n - x) * (1 - φ ^ 2 / 2) ^ t) :
                        |I_t x - x / n| min x (n - x) * (1 - φ ^ 2 / 2) ^ t
                        theorem LovaszSimonovits.corollary12_from_theorem11 {n : } (φ : ) (t : ) (I_t : ) (x : ) (hx0 : 0 x) (hxn : x n) (hn : 0 < n) (hLS : I_t x lovaszSimonovitsBound n φ t x) (hLS_nx : I_t (n - x) lovaszSimonovitsBound n φ t (n - x)) (hcompl : I_t x + I_t (n - x) 1) :
                        |I_t x - x / n| min x (n - x) * (1 - φ ^ 2 / 2) ^ t
                        theorem LovaszSimonovits.corollary12_vertex_set {V : Type u_1} [Fintype V] [DecidableEq V] (G : SimpleGraph V) [DecidableRel G.Adj] (n t : ) (p_t : V) (W : Finset V) (x : ) (_hx_vol : x = (G.volume W)) (_hn_vol : n = G.volume Finset.univ) (hx0 : 0 x) (hxn : x n) (hn : 0 < n) (I_t : ) (hmass : W.sum p_t = I_t x) (hLS : I_t x lovaszSimonovitsBound n (↑G.conductance) t x) (hLS_nx : I_t (n - x) lovaszSimonovitsBound n (↑G.conductance) t (n - x)) (hcompl : I_t x + I_t (n - x) 1) :
                        |W.sum p_t - x / n| min x (n - x) * (1 - G.conductance ^ 2 / 2) ^ t