InformationTheory

InformationTheory.Shannon.Sanov.LiminfBound

source

Sanov LDP liminf lower bound #

The liminf lower bound for Sanov's theorem (Cover-Thomas): liminf (1/n) log Q^n(⋃ c ∈ E n, T_c) ≥ -D, extracted by sandwiching the per-n lower bound with |α| log(n+1)/n → 0.

Main statements #

Implementation notes #

  • The liminf bound is extracted by sandwiching with |α| log(n+1)/n → 0.

References #

  • T. M. Cover and J. A. Thomas, Elements of Information Theory (2nd ed.), Wiley, 2006.

liminf lower bound #

theorem

InformationTheory.Shannon.neg_card_mul_logSucc_div_sub_klDivIndex_le_inv_mul_log_iUnion

source
{α : Type u_1} [Fintype α] [DecidableEq α] [Nonempty α] [MeasurableSpace α] [MeasurableSingletonClass α] (Q : MeasureTheory.Measure α) [MeasureTheory.IsProbabilityMeasure Q] (hQpos : ∀ (a : α), 0 < Q.real {a}) (P : α) (hP_prob : a : α, P a = 1) (hP_nn : ∀ (a : α), 0 P a) (E : (n : ) → Finset (TypeCountIndex α n)) {n : } (hn_pos : 0 < n) (h_inE : roundedTypeIndex P n E n) :
-(Fintype.card α) * (Real.log (n + 1) / n) - klDivIndex (fun (a : α) => (roundedTypeIndex P n a)) n Q 1 / n * Real.log ((MeasureTheory.Measure.pi fun (x : Fin n) => Q) (⋃ cE n, typeClassByCount fun (a : α) => (c a))).toReal
Used by
    theorem

    InformationTheory.Shannon.inv_mul_log_iUnion_typeClassByCount_le_zero

    source
    {α : Type u_1} [Fintype α] [DecidableEq α] [MeasurableSpace α] (Q : MeasureTheory.Measure α) [MeasureTheory.IsProbabilityMeasure Q] (E : (n : ) → Finset (TypeCountIndex α n)) {n : } (hn_pos : 0 < n) :
    1 / n * Real.log ((MeasureTheory.Measure.pi fun (x : Fin n) => Q) (⋃ cE n, typeClassByCount fun (a : α) => (c a))).toReal 0
    Used by
      theorem

      InformationTheory.Shannon.sanov_ldp_lower_bound_pointwise

      source
      {α : Type u_1} [Fintype α] [DecidableEq α] [Nonempty α] [MeasurableSpace α] [MeasurableSingletonClass α] (Q : MeasureTheory.Measure α) [MeasureTheory.IsProbabilityMeasure Q] (hQpos : ∀ (a : α), 0 < Q.real {a}) (P : α) (hP_prob : a : α, P a = 1) (hP_full : ∀ (a : α), 0 < P a) (E : (n : ) → Finset (TypeCountIndex α n)) (h_in_E : ∀ᶠ (n : ) in Filter.atTop, roundedTypeIndex P n E n) :
      (-klDivSumForm_ofVec P fun (a : α) => Q.real {a}) Filter.liminf (fun (n : ) => 1 / n * Real.log ((MeasureTheory.Measure.pi fun (x : Fin n) => Q) (⋃ cE n, typeClassByCount fun (a : α) => (c a))).toReal) Filter.atTop

      Sanov's theorem (LDP lower bound): if roundedTypeIndex P n ∈ E n eventually, then liminf (1/n) log Q^n(⋃ c ∈ E n, T_c) ≥ -klDivSumForm_ofVec P (Q.real ∘ singleton).

      Used by