BanditRLlib
Lean gate passed before this site build; local proof declarations are shown as compiled.Lean-verified build · exact declarations linked.

Part IV — Lower Bounds for Bandits with Finitely Many Arms

Chapter 14: Foundations of Information Theory

The frozen required body is compiled: Huffman optimality, exact-real arithmetic block coding and converse, finite/partition/common-density KL, the source affinity/overlap route, and Gaussian testing. Independent review, PR #106, main run 33959196451, Pages and live desktop/mobile acceptance passed. The singleton and uniform-code qualifications below are part of the accepted boundary; optional Notes/Exercises are not claimed complete.

Compiled Chapter 14 leavesCompiled
Whole chapter coverageCompiled
Printed pp. 160–169PDF pp. 195–206

Source map

Bandit Algorithms, Tor Lattimore and Csaba Szepesvári, Cambridge University Press (2020), DOI 10.1017/9781108571401.

  • §14.1 Entropy and Optimal Coding (CUP starts p. 160 / author-online pp. 186–188 / PDF pp. 195–197; Huffman and arithmetic source-coding terminals compiled with the model qualifications below)
  • §14.2 Relative Entropy (CUP starts p. 162 / author-online pp. 188–191 / PDF pp. 197–200; finite, partition and common-density formulas, source testing route and Gaussian example compiled)
  • §14.3 Notes (CUP p. 165 / author-online pp. 191–194 / PDF pp. 200–203)
  • §14.4 Bibliographic Remarks (CUP p. 167 / author-online p. 194 / PDF p. 203)
  • §14.5 Exercises (CUP pp. 167–169 / author-online pp. 194–197 / PDF pp. 203–206)

Open Chapter 14 at PDF p. 195

Learning goals

  • Follow Kraft and the entropy lower bound into recursive Huffman optimality and the one-bit entropy sandwich, then read the exact-real arithmetic block-code construction and rate converse.
  • Read relative entropy as an extended-real, direction-sensitive comparison of probability measures.
  • Distinguish the absolutely-continuous log-likelihood branch from singular support mismatch.
  • Use conditional Jensen to see why restriction to any sub-sigma-algebra cannot increase KL, then specialize to an event.
  • Derive the unconditional Bretagnolle–Huber testing bound, including the exp(-infinity)=0 branch.
  • Distinguish compiled mathematical coding constructions from executable finite-precision encoders; keep adaptive bandit-history decomposition in Chapter 15.

Necessary definitions and statements

Entropy and optimal coding

Compiled
Entropy and optimal coding. Finite binary prefix codes satisfy H ≤ expected length; the recursive Huffman code is globally optimal with expected length ≤ H+1. A named exact-real arithmetic block-code family has expected rate tending to H, with a universal converse. Local codewords are nonempty, including for a singleton alphabet.

Extended-real relative entropy

Compiled
Extended-real relative entropy. Relative entropy is the expected log likelihood ratio when P is absolutely continuous with respect to Q, and infinity on support mismatch.

Bernoulli relative entropy

Compiled
Bernoulli relative entropy. The two-point specialization uses zero-mass terms equal to zero and infinity when P assigns positive mass where Q assigns none.

Bretagnolle–Huber testing scale

Compiled
Bretagnolle–Huber testing scale. The real-valued scale makes the source convention exponential of negative infinity equals zero explicit.
proof pseudocode

Event-testing proof flow

  1. Split the KL branches

    Use Mathlib's exact absolute-continuity and log-likelihood integrability characterization; retain infinity on support mismatch.

  2. Coarsen observations

    Apply conditional Jensen to the Radon–Nikodym density after restriction to any sub-sigma-algebra; separately specialize to A and its complement.

  3. Prove the binary bound

    Lower-bound binary likelihood affinity by exp(-d/2), then compare squared affinity with the two testing errors.

  4. Restore all endpoints

    Handle Bernoulli zero/one support cases through the extended-real endpoint convention.

  5. Lift to measures

    Use antitonicity of the testing scale and Q(A complement)=1-Q(A) to obtain the source theorem in the P-to-Q KL direction.

Key source theorem and boundary

Source theorem · faithful restatement

Theorem 14.2 / Eq. (14.7) (Bretagnolle–Huber)

Original chapter ↗Compiled

Observing an event cannot make two laws easier to distinguish than their full relative entropy permits.

Theorem 14.2 / Eq. (14.7) (Bretagnolle–Huber). For two probability measures and any measurable event, the sum of the P error on A and the Q error on its complement is at least one half times exponential negative relative entropy.
Lean boundary. BanditRLProof.LowerBounds.bretagnolleHuber compiles this unconditional measure/event theorem with D(P,Q), Q(A complement), and an explicit zero scale at infinite KL. The common-density Jensen/affinity and overlap steps of Eqs. (14.8–14.9) also compile. Exercise 14.10 compiles separately as relativeEntropy_trim_le; the adaptive-history chain rule belongs to Chapter 15.

Lean correspondence

Only declarations that exist in the current index and pass the verified build may render as compiled.

Lean declarationStatusRole and exact type
BanditRLProof.LowerBounds.BinaryPrefixCodeCompiledFinite binary prefix-code model with injectivity, nonempty codewords, and prefix freedom.
Exact compact Lean statement
structure BinaryPrefixCode (Symbol : Type*) where
BanditRLProof.LowerBounds.BinaryPrefixCode.kraft_inequalityCompiledPrefix-code range is uniquely decodable and satisfies the binary Kraft inequality.
Exact compact Lean statement
theorem kraft_inequality [Fintype Symbol] [DecidableEq Symbol] (code : BinaryPrefixCode Symbol) : ∑ word ∈ code.codebook, (1 / 2 : Real) ^ word.length ≤ 1
BanditRLProof.LowerBounds.discreteEntropyBaseTwo_eq_div_log_twoCompiledExact conversion between finite base-two and natural entropy.
Exact compact Lean statement
theorem discreteEntropyBaseTwo_eq_div_log_two (support : Finset Symbol) (probability : Symbol → Real) : discreteEntropyBaseTwo support probability = discreteEntropy support probability / Real.log 2
BanditRLProof.LowerBounds.expectedCodeLengthCompiledFinite expected codeword-length objective from Eq. (14.1).
Exact compact Lean statement
noncomputable def expectedCodeLength [Fintype Symbol] (probability : Symbol → Real) (code : BinaryPrefixCode Symbol) : Real
BanditRLProof.LowerBounds.huffmanCode_optimalCompiledRecursive Huffman construction minimizes expected length over all local binary prefix codes.
Exact compact Lean statement
theorem huffmanCode_optimal {α : Type*} [Fintype α] (p : α → ℝ) (hp : ∀ i, 0 ≤ p i) : IsOptimalPrefixCode p (huffmanCode p hp)
BanditRLProof.LowerBounds.exists_prefixCode_of_uniquelyDecodableCompiledEvery finite injective uniquely decodable encoder has a prefix code preserving each symbol length, including Kraft equality; full aggregate verification passed.
Exact compact Lean statement
theorem exists_prefixCode_of_uniquelyDecodable {α : Type*} [Fintype α] (c : α → List Bool) (hinj : Function.Injective c) (hud : InformationTheory.UniquelyDecodable (Set.range c)) : ∃ code : BinaryPrefixCode α, ∀ i, (code.encode i).length = (c i).length
BanditRLProof.LowerBounds.IsOptimalPrefixCode.length_antitoneCompiledAn optimal code assigns no longer words to strictly more probable symbols.
Exact compact Lean statement
theorem IsOptimalPrefixCode.length_antitone {α : Type*} [Fintype α] [DecidableEq α] {p : α → ℝ} {code : BinaryPrefixCode α} (hopt : IsOptimalPrefixCode p code) (a b : α) (hp : p a < p b) : (code.encode b).length ≤ (code.encode a).length
BanditRLProof.LowerBounds.huffmanCode_entropy_sandwichCompiledEq. (14.2): H ≤ expected Huffman length ≤ H+1.
Exact compact Lean statement
theorem huffmanCode_entropy_sandwich {α : Type*} [Fintype α] (p : α → ℝ) (hp : ∀ i, 0 ≤ p i) (hs : ∑ i, p i = 1) : discreteEntropyBaseTwo Finset.univ p ≤ expectedCodeLength p (huffmanCode p hp) ∧ expectedCodeLength p (huffmanCode p hp) ≤ discreteEntropyBaseTwo Finset.univ p + 1
BanditRLProof.LowerBounds.arithmeticBlockCode_rate_tendsto_entropyCompiledNamed exact-real arithmetic interval/address code has expected IID block rate tending to entropy, including zero masses and constant support-tag overhead.
Exact compact Lean statement
theorem arithmeticBlockCode_rate_tendsto_entropy {k : ℕ} (p : Fin k → ℝ) (hp : ∀ i, 0 ≤ p i) (hs : ∑ i, p i = 1) : Filter.Tendsto (fun n : ℕ => expectedCodeLength (sourceBlockMass p (n + 1)) (arithmeticBlockCode p hp hs (n + 1)) / (n + 1)) Filter.atTop (nhds (discreteEntropyBaseTwo Finset.univ p))
BanditRLProof.LowerBounds.arithmeticBlockCode_payload_intervalCompiledThe actual named code's positive-mass payload lies inside its message arithmetic interval after removing the support tag; the strengthened interface passed the full b5e21b8 gate.
Exact compact Lean statement
theorem arithmeticBlockCode_payload_interval {k : ℕ} (p : Fin k → ℝ) (hp : ∀ i, 0 ≤ p i) (hs : ∑ i, p i = 1) (n : ℕ) (x : SourceBlock.{0,0} (Fin k) n) (hx : 0 < sourceBlockMass p n x) : (arithmeticInterval p (sourceBlockList n x)).1 ≤ dyadicAddressLower ((arithmeticBlockCode p hp hs n).encode x).tail ∧ dyadicAddressUpper ((arithmeticBlockCode p hp hs n).encode x).tail < (arithmeticInterval p (sourceBlockList n x)).2
BanditRLProof.LowerBounds.sourceBlock_code_family_limit_ge_entropyCompiledUniversal converse for a convergent expected block-code rate.
Exact compact Lean statement
theorem sourceBlock_code_family_limit_ge_entropy {α : Type*} [Fintype α] [DecidableEq α] (p : α → ℝ) (hp : ∀ i, 0 ≤ p i) (hs : ∑ i, p i = 1) (code : (n : ℕ) → BinaryPrefixCode (SourceBlock α (n + 1))) (r : ℝ) (hr : Filter.Tendsto (fun n => expectedCodeLength (sourceBlockMass p (n + 1)) (code n) / (n + 1)) Filter.atTop (nhds r)) : discreteEntropyBaseTwo Finset.univ p ≤ r
BanditRLProof.LowerBounds.exists_ceilingLogPrefixCodeCompiledFixed-length ceiling-log construction for alphabet cardinality greater than one.
Exact compact Lean statement
theorem exists_ceilingLogPrefixCode {α : Type*} [Fintype α] (hcard : 1 < Fintype.card α) : ∃ code : BinaryPrefixCode α, ∀ a, (code.encode a).length = Nat.clog 2 (Fintype.card α)
BanditRLProof.LowerBounds.fixedLength_uniformPowerTwo_optimalCompiledUniform fixed-length optimality at power-of-two cardinalities; full aggregate verified.
Exact compact Lean statement
theorem fixedLength_uniformPowerTwo_optimal {α : Type*} [Fintype α] (n : ℕ) (hcard : Fintype.card α = 2 ^ n) (code : BinaryPrefixCode α) (hlen : ∀ a, (code.encode a).length = n) : IsOptimalPrefixCode (fun _ : α => 1 / (2 : ℝ) ^ n) code
BanditRLProof.LowerBounds.uniform_three_fixedLength_not_optimalCompiledTernary mean length 5/3 refutes the broad arbitrary-cardinality uniform fixed-length claim; full aggregate verified.
Exact compact Lean statement
theorem uniform_three_fixedLength_not_optimal (code : BinaryPrefixCode (Fin 3)) (hlen : ∀ a, (code.encode a).length = 2) : ¬ IsOptimalPrefixCode (fun _ : Fin 3 => (1 / 3 : ℝ)) code
BanditRLProof.LowerBounds.relativeEntropy_finite_crossEntropyCompiledUnrounded cross-entropy minus entropy equals finite-alphabet KL under absolute continuity.
Exact compact Lean statement
theorem relativeEntropy_finite_crossEntropy {α : Type*} [Fintype α] [MeasurableSpace α] [MeasurableSingletonClass α] (P Q : Measure α) [IsProbabilityMeasure P] [IsProbabilityMeasure Q] (h : P ≪ Q) : relativeEntropy P Q = ENNReal.ofReal (discreteCrossEntropy (fun i => (P {i}).toReal) (fun i => (Q {i}).toReal) - discreteEntropy Finset.univ (fun i => (P {i}).toReal))
BanditRLProof.LowerBounds.entropyTerm_tendsto_zero_rightCompiledThe zero-mass entropy convention agrees with its right-hand limit.
Exact compact Lean statement
theorem entropyTerm_tendsto_zero_right : Filter.Tendsto (fun x : ℝ => x * Real.log x⁻¹) (nhdsWithin 0 (Set.Ioi 0)) (nhds 0)
BanditRLProof.LowerBounds.relativeEntropyCompiledExtended-real alias of Mathlib measure KL in the source direction P to Q.
Exact compact Lean statement
abbrev relativeEntropy {α : Type*} [MeasurableSpace α] (P Q : Measure α) : ENNReal
BanditRLProof.LowerBounds.relativeEntropy_of_absolutelyContinuous_of_integrableCompiledTheorem 14.1 regular branch with Mathlib's finite-measure mass correction visible.
Exact compact Lean statement
theorem relativeEntropy_of_absolutelyContinuous_of_integrable {α : Type*} [MeasurableSpace α] (P Q : Measure α) (hPQ : P ≪ Q) (hInt : Integrable (llr P Q) P) : relativeEntropy P Q = ENNReal.ofReal (∫ x, llr P Q x ∂P + Q.real univ - P.real univ)
BanditRLProof.LowerBounds.relativeEntropy_of_probability_absolutelyContinuous_of_integrableCompiledProbability-measure log-likelihood integral specialization.
Exact compact Lean statement
theorem relativeEntropy_of_probability_absolutelyContinuous_of_integrable {α : Type*} [MeasurableSpace α] (P Q : Measure α) [IsProbabilityMeasure P] [IsProbabilityMeasure Q] (hPQ : P ≪ Q) (hInt : Integrable (llr P Q) P) : relativeEntropy P Q = ENNReal.ofReal (∫ x, llr P Q x ∂P)
BanditRLProof.LowerBounds.relativeEntropy_eq_top_of_not_absolutelyContinuousCompiledTheorem 14.1 singular branch: support mismatch gives infinity.
Exact compact Lean statement
theorem relativeEntropy_eq_top_of_not_absolutelyContinuous {α : Type*} [MeasurableSpace α] {P Q : Measure α} (hPQ : ¬ P ≪ Q) : relativeEntropy P Q = ∞
BanditRLProof.LowerBounds.relativeEntropy_ne_top_iffCompiledExact absolute-continuity and log-likelihood-integrability finiteness contract.
Exact compact Lean statement
theorem relativeEntropy_ne_top_iff {α : Type*} [MeasurableSpace α] {P Q : Measure α} : relativeEntropy P Q ≠ ∞ ↔ P ≪ Q ∧ Integrable (llr P Q) P
BanditRLProof.LowerBounds.relativeEntropy_eq_zero_iffCompiledKL separation for finite measures.
Exact compact Lean statement
theorem relativeEntropy_eq_zero_iff {α : Type*} [MeasurableSpace α] {P Q : Measure α} [IsFiniteMeasure P] [IsFiniteMeasure Q] : relativeEntropy P Q = 0 ↔ P = Q
BanditRLProof.LowerBounds.relativeEntropy_trim_leCompiledFull finite-measure arbitrary-sub-sigma-algebra data processing from Exercise 14.10.
Exact compact Lean statement
theorem relativeEntropy_trim_le {α : Type*} {m m₀ : MeasurableSpace α} {P Q : @Measure α m₀} [IsFiniteMeasure P] [IsFiniteMeasure Q] (hm : m ≤ m₀) : @relativeEntropy α m (P.trim hm) (Q.trim hm) ≤ @relativeEntropy α m₀ P Q
BanditRLProof.LowerBounds.bernoulliRelativeEntropyCompiledEquation (14.4) two-point KL with exact support endpoints.
Exact compact Lean statement
abbrev bernoulliRelativeEntropy (p q : Real) : ENNReal
BanditRLProof.LowerBounds.relativeEntropy_finite_sum_logCompiledEquation (14.4) on any finite alphabet under support inclusion, including zero source masses.
Exact compact Lean statement
theorem relativeEntropy_finite_sum_log {α : Type*} [Fintype α] [MeasurableSpace α] [MeasurableSingletonClass α] (P Q : Measure α) [IsProbabilityMeasure P] [IsProbabilityMeasure Q] (h : P ≪ Q) : relativeEntropy P Q = ENNReal.ofReal (∑ x, (P {x}).toReal * Real.log ((P {x}).toReal / (Q {x}).toReal))
BanditRLProof.LowerBounds.relativeEntropy_finite_eq_ifCompiledExhaustive finite-sum or infinity formula from atomwise support inclusion.
Exact compact Lean statement
theorem relativeEntropy_finite_eq_if {α : Type*} [Fintype α] [MeasurableSpace α] [MeasurableSingletonClass α] (P Q : Measure α) [IsProbabilityMeasure P] [IsProbabilityMeasure Q] : relativeEntropy P Q = if ∀ x, Q {x} = 0 → P {x} = 0 then ENNReal.ofReal (∑ x, (P {x}).toReal * Real.log ((P {x}).toReal / (Q {x}).toReal)) else ∞
BanditRLProof.LowerBounds.relativeEntropy_finite_eq_top_iffCompiledInfinite finite-alphabet KL exactly when a positive source atom has zero reference mass.
Exact compact Lean statement
theorem relativeEntropy_finite_eq_top_iff {α : Type*} [Fintype α] [MeasurableSpace α] [MeasurableSingletonClass α] (P Q : Measure α) [IsProbabilityMeasure P] [IsProbabilityMeasure Q] : relativeEntropy P Q = ∞ ↔ ∃ x, P {x} ≠ 0 ∧ Q {x} = 0
BanditRLProof.LowerBounds.finitePartitionRelativeEntropyCompiledEq. (14.5): supremum over all finite measurable observations.
Exact compact Lean statement
def finitePartitionRelativeEntropy {α : Type*} [MeasurableSpace α] (P Q : Measure α) : ENNReal
BanditRLProof.LowerBounds.finitePartitionRelativeEntropy_eq_relativeEntropyCompiledFull finite-discretisation/RN equality for finite measures on arbitrary measurable spaces, including infinite KL.
Exact compact Lean statement
theorem finitePartitionRelativeEntropy_eq_relativeEntropy {α : Type*} [m : MeasurableSpace α] (P Q : Measure α) [IsFiniteMeasure P] [IsFiniteMeasure Q] : finitePartitionRelativeEntropy P Q = relativeEntropy P Q
BanditRLProof.LowerBounds.relativeEntropy_commonDensity_eq_ifCompiledEq. (14.6) with explicit common-density finite and infinite branches.
Exact compact Lean statement
theorem relativeEntropy_commonDensity_eq_if {α : Type*} [MeasurableSpace α] (P Q μ : Measure α) [IsProbabilityMeasure P] [IsProbabilityMeasure Q] [SigmaFinite μ] (hP : P ≪ μ) (hQ : Q ≪ μ) : relativeEntropy P Q = if P ≪ Q ∧ Integrable (fun x => (P.rnDeriv μ x).toReal * Real.log ((P.rnDeriv μ x).toReal / (Q.rnDeriv μ x).toReal)) μ then ENNReal.ofReal (∫ x, (P.rnDeriv μ x).toReal * Real.log ((P.rnDeriv μ x).toReal / (Q.rnDeriv μ x).toReal) ∂μ) else (⊤ : ENNReal)
BanditRLProof.LowerBounds.exists_commonSigmaFiniteDominatingMeasureCompiledP+Q supplies common domination; full aggregate verified.
Exact compact Lean statement
theorem exists_commonSigmaFiniteDominatingMeasure {α : Type*} [MeasurableSpace α] (P Q : Measure α) [IsFiniteMeasure P] [IsFiniteMeasure Q] : ∃ μ : Measure α, SigmaFinite μ ∧ P ≪ μ ∧ Q ≪ μ
BanditRLProof.LowerBounds.relativeEntropy_finite_lt_top_iff_acCompiledFinite-alphabet-only equivalence of finite KL and absolute continuity; full aggregate verified.
Exact compact Lean statement
theorem relativeEntropy_finite_lt_top_iff_ac {α : Type*} [Fintype α] [MeasurableSpace α] [MeasurableSingletonClass α] (P Q : Measure α) [IsProbabilityMeasure P] [IsProbabilityMeasure Q] : relativeEntropy P Q < ⊤ ↔ P ≪ Q
BanditRLProof.LowerBounds.bernoulliRelativeEntropy_asymmetryCompiledExplicit directional counterexample to symmetry.
Exact compact Lean statement
theorem bernoulliRelativeEntropy_asymmetry : bernoulliRelativeEntropy 0 (1 / 2) ≠ bernoulliRelativeEntropy (1 / 2) 0
BanditRLProof.LowerBounds.relativeEntropy_triangle_counterexampleCompiledFinite Gaussian KL counterexample to the triangle inequality.
Exact compact Lean statement
theorem relativeEntropy_triangle_counterexample : relativeEntropy (gaussianReal 0 1) (gaussianReal 1 1) + relativeEntropy (gaussianReal 1 1) (gaussianReal 2 1) < relativeEntropy (gaussianReal 0 1) (gaussianReal 2 1)
BanditRLProof.LowerBounds.bretagnolleHuberScale_le_half_commonDensityAffinity_sqCompiledSource Eq. (14.8) common-density Jensen/affinity step.
Exact compact Lean statement
theorem bretagnolleHuberScale_le_half_commonDensityAffinity_sq {α : Type*} [MeasurableSpace α] (P Q μ : Measure α) [IsProbabilityMeasure P] [IsProbabilityMeasure Q] [SigmaFinite μ] (hQ : Q ≪ μ) : bretagnolleHuberScale (relativeEntropy P Q) ≤ (1 / 2 : ℝ) * commonDensityAffinity P Q μ ^ 2
BanditRLProof.LowerBounds.half_commonDensityAffinity_sq_le_overlapCompiledSource Eq. (14.9) affinity-to-overlap step.
Exact compact Lean statement
theorem half_commonDensityAffinity_sq_le_overlap {α : Type*} [MeasurableSpace α] (P Q μ : Measure α) [IsProbabilityMeasure P] [IsProbabilityMeasure Q] [SigmaFinite μ] (hP : P ≪ μ) (hQ : Q ≪ μ) : (1 / 2 : ℝ) * commonDensityAffinity P Q μ ^ 2 ≤ commonDensityOverlap P Q μ
BanditRLProof.LowerBounds.commonDensityOverlap_le_testingErrorCompiledSource p.191 overlap bound for every measurable testing event; closes the Jensen/affinity/overlap proof chain.
Exact compact Lean statement
theorem commonDensityOverlap_le_testingError {α : Type*} [MeasurableSpace α] (P Q μ : Measure α) [IsFiniteMeasure P] [IsFiniteMeasure Q] [SigmaFinite μ] (hP : P ≪ μ) (hQ : Q ≪ μ) {A : Set α} (hA : MeasurableSet A) : commonDensityOverlap P Q μ ≤ P.real A + Q.real Aᶜ
BanditRLProof.LowerBounds.klDiv_gaussianReal_same_varianceCompiledExact Gaussian KL for a common positive variance.
Exact compact Lean statement
theorem klDiv_gaussianReal_same_variance (m n : ℝ) (v : ℝ≥0) (hv : v ≠ 0) : InformationTheory.klDiv (gaussianReal m v) (gaussianReal n v) = ENNReal.ofReal ((m - n) ^ 2 / (2 * v))
BanditRLProof.LowerBounds.gaussian_testing_max_error_three_twentiethsCompiledGaussian testing application with the source 3/20 maximum-error constant.
Exact compact Lean statement
theorem gaussian_testing_max_error_three_twentieths (Δ : ℝ) (v : ℝ≥0) (hv : v ≠ 0) (hsnr : Δ ^ 2 / (v : ℝ) ≤ 1) {A : Set ℝ} (hA : MeasurableSet A) : (3 / 20 : ℝ) ≤ max ((gaussianReal 0 v).real A) ((gaussianReal Δ v).real Aᶜ)
BanditRLProof.LowerBounds.rnDeriv_restrict_restrictCompiledRadon–Nikodym derivative identity after restricting both laws to a measurable cell.
Exact compact Lean statement
theorem rnDeriv_restrict_restrict {α : Type*} [MeasurableSpace α] {P Q : Measure α} [SigmaFinite P] [SigmaFinite Q] (hPQ : P ≪ Q) {A : Set α} (hA : MeasurableSet A) : (P.restrict A).rnDeriv (Q.restrict A) =ᵐ[Q.restrict A] P.rnDeriv Q
BanditRLProof.LowerBounds.relativeEntropy_restrict_add_complCompiledExact KL decomposition across an event and its complement.
Exact compact Lean statement
theorem relativeEntropy_restrict_add_compl {α : Type*} [MeasurableSpace α] {P Q : Measure α} [IsFiniteMeasure P] [IsFiniteMeasure Q] (hPQ : P ≪ Q) {A : Set α} (hA : MeasurableSet A) : relativeEntropy P Q = relativeEntropy (P.restrict A) (Q.restrict A) + relativeEntropy (P.restrict Aᶜ) (Q.restrict Aᶜ)
BanditRLProof.LowerBounds.bernoulliRelativeEntropy_event_leCompiledEvent-level binary data processing with P(A), Q(A) and D(P,Q).
Exact compact Lean statement
theorem bernoulliRelativeEntropy_event_le {α : Type*} [MeasurableSpace α] {P Q : Measure α} [IsProbabilityMeasure P] [IsProbabilityMeasure Q] {A : Set α} (hA : MeasurableSet A) : bernoulliRelativeEntropy (P.real A) (Q.real A) ≤ relativeEntropy P Q
BanditRLProof.LowerBounds.binaryBretagnolleHuberCompiledTwo-atom Bretagnolle–Huber theorem including singular Bernoulli endpoints.
Exact compact Lean statement
theorem binaryBretagnolleHuber {p q : Real} (hp : KLUCB.IsBernoulliParameter p) (hq : KLUCB.IsBernoulliParameter q) : bretagnolleHuberScale (bernoulliRelativeEntropy p q) ≤ p + (1 - q)
BanditRLProof.LowerBounds.bretagnolleHuberScaleCompiledExplicit real encoding of one-half exp(-D), with zero at D=infinity.
Exact compact Lean statement
noncomputable def bretagnolleHuberScale (d : ENNReal) : Real
BanditRLProof.LowerBounds.bretagnolleHuberScale_antitoneCompiledThe testing scale reverses the event data-processing inequality.
Exact compact Lean statement
theorem bretagnolleHuberScale_antitone {d D : ENNReal} (h : d ≤ D) : bretagnolleHuberScale D ≤ bretagnolleHuberScale d
BanditRLProof.LowerBounds.bretagnolleHuberCompiledExact unconditional Theorem 14.2 measure/event terminal.
Exact compact Lean statement
theorem bretagnolleHuber {α : Type*} [MeasurableSpace α] {P Q : Measure α} [IsProbabilityMeasure P] [IsProbabilityMeasure Q] {A : Set α} (hA : MeasurableSet A) : bretagnolleHuberScale (relativeEntropy P Q) ≤ P.real A + Q.real Aᶜ

Dependency graph

coding-defsprefix-code and entropy definitionsCompiled
kraftprefix-to-unique-decoding Kraft adapterCompiled
klmeasure KL and RN branchesCompiled
finite-klfinite-alphabet KL with complete support endpointsCompiled
partition-klfinite-discretisation supremum equals RN KLCompiled
full-dpiarbitrary sub-sigma-algebra data processingCompiled
eventevent-level binary data processingCompiled
binarybinary testing and endpoint analysisCompiled
bhmeasure Bretagnolle–Huber terminalCompiled
codingHuffman and exact-real arithmetic source-coding terminalsCompiled
historysame-policy adaptive history KL (compiled in Chapter 15)Compiled

Reading path

  • Start with BinaryPrefixCode and entropy; follow Kraft into huffmanCode_optimal and the named arithmeticBlockCode rate theorem, preserving the nonempty-word and exact-real model boundaries.
  • Read Eq. (14.4), Eq. (14.5), Theorem 14.1, and Eq. (14.6) before the testing theorem.
  • Inspect relativeEntropy_trim_le for the full Exercise 14.10 conditional-expectation/Jensen proof.
  • Inspect relativeEntropy_ne_top_iff to see exactly where absolute continuity and integrability enter.
  • Follow the event restriction identity into bernoulliRelativeEntropy_event_le and verify the P-to-Q direction.
  • Read the binary endpoint theorem before the measure-level bretagnolleHuber terminal.
  • Continue to Chapter 15 for adaptive same-policy history divergence and finite-arm minimax construction.

Strict status and remaining gaps

  • The frozen required-body contract passed independent review, main compilation and live publication acceptance; optional Notes/Bibliographic Remarks/Exercises are outside that contract. Full Exercise 14.10 is an additional compiled result.
  • Model qualification: singleton codewords are nonempty. Uniform fixed-length optimality is proved for power-of-two cardinalities, not arbitrary cardinalities: the ternary prefix code 0, 10, 11 has mean length 5/3 rather than 2.
  • Arithmetic coding is a classical exact-real construction with constant support/escape overhead, not an executable finite-precision encoder. Cross-entropy differences are unrounded; finite KL iff absolute continuity is finite-alphabet-only.
  • Adaptive-bandit history likelihood ratios and KL decomposition belong to Chapter 15; the scoped finite-arm same-policy identity now compiles there.