BanditRLlib
Lean gate passed before this site build; local proof declarations are shown as compiled.

Lean module · EXP3

BanditRLProof.Exp3MixedSquarePredictableVarianceSparseLossRealizedMarkovProbabilisticSparsityExplicitTuning

# Explicit exploration tuning under probabilistic sparse losses This module closes the exploration-rate leaf for the generated realized predictable-variance EXP3 route whose support-sparsity condition may fail with positive probability. The global `K * T` loss-mass envelope makes the Markov component `(5 K^2 (log K)^2 log(5 / delta) / (delta T^3))^(1/5)`. Together with the sparse base, Bernstein-confidence, and realized-deviation components, a clipped maximum supplies every algebraic premise needed to reduce the eta-tuned threshold to `14 * gamma * T`. The final theorem keeps the exact sparsity-failure residual and exposes the practical `delta + epsilon` endpoint under the same internally tuned generated measure. This is still a global-envelope Markov theorem. It is not a pathwise-sparsity, best-arm first-order, Freedman, anytime, or ideal EXP3.P result.

Module map

Declarations
18
Placeholders
0

Imports

BanditRLProof.Exp3MixedSquarePredictableVarianceSparseLossRealizedMarkovProbabilisticSparsityTuning, BanditRLProof.Exp3MixedSquarePredictableVarianceSparseLossRealizedMarkovExplicitTuning

Imported by

BanditRLProof, BanditRLProof.Exp3MixedSquarePredictableVarianceSparseLossRealizedMarkovProbabilisticSparsityAllHorizon

Declarations

Open an item to read its exact compact statement and source link. Detailed teaching notes are linked when registered.

theorem BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceBudget_eq Compiled

Closed form of the global-envelope Markov variance threshold.

theorem probabilisticSparseLossPredictableVarianceBudget_eq {Action : Type v} [DecidableEq Action] (arms : Finset Action) (hcard_two : 2 <= arms.card) (gamma : Real) (hgamma_pos : 0 < gamma) (horizon : Nat) (delta : Real) (hdelta : 0 < delta) : probabilisticSparseLossPredictableVarianceBudget arms gamma horizon delta = 5 * (arms.card : Real) ^ 2 * (horizon : Real) / (gamma * delta)
theorem BanditRLProof.Exp3.log_mul_probabilisticSparseLossPredictableVarianceRadius_le_three_mul_sq_mul_horizon_sq Compiled

Under the sparse-base, global-envelope fifth-power, and cubic confidence contracts, the log-weighted mixed-square radius is at most `3 * gamma^2 * T^2`.

theorem log_mul_probabilisticSparseLossPredictableVarianceRadius_le_three_mul_sq_mul_horizon_sq {Action : Type v} [DecidableEq Action] (arms : Finset Action) (hcard_two : 2 <= arms.card) (gamma : Real) (hgamma_pos : 0 < gamma) (hgamma_le_half : gamma <= 1 / 2) (horizon sparsity : Nat) (hhorizon : 0 < horizon) (hsparsity : 0 < sparsity) (delta : Real) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (hbase : (sparsity : Real) * Real.log (arms.card : Real) <= gamma ^ 2 * (horizon : Real)) (hmixed : 5 * (arms.card : Real) ^ 2 * Real.log (arms.card : Real) ^ 2 * Real.log (5 / delta) <= gamma ^ 5 * delta * (horizon : Real) ^ 3) (hconfidence : (arms.card : Real) * Real.log (5 / delta) <= gamma ^ 3 * (horizon : Real)) : Real.log (arms.card : Real) * sampledMixedSquaredPredictableVarianceRadius arms gamma (probabilisticSparseLossPredictableVarianceBudget arms gamma horizon delta) (delta / 5) <= 3 * gamma ^ 2 * (horizon : Real) ^ 2
theorem BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceBalancedSqrt_le_two_mul_gamma_mul_horizon Compiled

The sparse base and global-envelope predictable-variance radius make the learning-rate-balanced square root at most `2 * gamma * T`.

theorem probabilisticSparseLossPredictableVarianceBalancedSqrt_le_two_mul_gamma_mul_horizon {Action : Type v} [DecidableEq Action] (arms : Finset Action) (hcard_two : 2 <= arms.card) (gamma : Real) (hgamma_pos : 0 < gamma) (hgamma_le_half : gamma <= 1 / 2) (horizon sparsity : Nat) (hhorizon : 0 < horizon) (hsparsity : 0 < sparsity) (delta : Real) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (hbase : (sparsity : Real) * Real.log (arms.card : Real) <= gamma ^ 2 * (horizon : Real)) (hmixed : 5 * (arms.card : Real) ^ 2 * Real.log (arms.card : Real) ^ 2 * Real.log (5 / delta) <= gamma ^ 5 * delta * (horizon : Real) ^ 3) (hconfidence : (arms.card : Real) * Real.log (5 / delta) <= gamma ^ 3 * (horizon : Real)) : Real.sqrt (Real.log (arms.card : Real) * probabilisticSparseLossPredictableVarianceHighProbabilityScale arms gamma horizon sparsity delta) <= 2 * gamma * (horizon : Real)
def BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceRealizedMarkovExplicitThreshold Compiled

Explicit probabilistic-sparsity realized-regret threshold after tuning both eta and gamma.

noncomputable def probabilisticSparseLossPredictableVarianceRealizedMarkovExplicitThreshold {Action : Type v} (_arms : Finset Action) (gamma : Real) (horizon _sparsity : Nat) (_delta : Real) : Real
theorem BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceRealizedMarkovTunedThreshold_le_explicitThreshold Compiled

The four algebraic exploration contracts reduce the probabilistic- sparsity eta-tuned threshold to `14 * gamma * T`.

theorem probabilisticSparseLossPredictableVarianceRealizedMarkovTunedThreshold_le_explicitThreshold {Action : Type v} [DecidableEq Action] (arms : Finset Action) (hcard_two : 2 <= arms.card) (horizon sparsity : Nat) (hhorizon : 0 < horizon) (hsparsity : 0 < sparsity) (gamma delta : Real) (hgamma_pos : 0 < gamma) (hgamma_le_half : gamma <= 1 / 2) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (hbase : (sparsity : Real) * Real.log (arms.card : Real) <= gamma ^ 2 * (horizon : Real)) (hmixed : 5 * (arms.card : Real) ^ 2 * Real.log (arms.card : Real) ^ 2 * Real.log (5 / delta) <= gamma ^ 5 * delta * (horizon : Real) ^ 3) (hconfidence : (arms.card : Real) * Real.log (5 / delta) <= gamma ^ 3 * (horizon : Real)) (hrealized : 2 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (5 / delta) <= gamma ^ 2 * (horizon : Real)) : probabilisticSparseLossPredictableVarianceRealizedMarkovTunedThreshold arms gamma horizon sparsity delta <= probabilisticSparseLossPredictableVarianceRealizedMarkovExplicitThreshold arms gamma horizon sparsity delta
theorem BanditRLProof.Exp3.sampledPredictable_gammaCharacterizedProbabilisticSparseLossPredictableVarianceRealizedMarkovRegret_tail Compiled

Generated probabilistic-sparsity regret under four algebraic exploration contracts, retaining the exact sparsity-failure residual.

theorem sampledPredictable_gammaCharacterizedProbabilisticSparseLossPredictableVarianceRealizedMarkovRegret_tail {Env : Type u} {Action : Type v} [MeasurableSpace Env] [StandardBorelSpace Env] [Nonempty Env] [MeasurableSpace Action] [MeasurableSingletonClass Action] [StandardBorelSpace Action] [Nonempty Action] [DecidableEq Action] (prior : Measure Env) [IsProbabilityMeasure prior] (arms : Finset Action) (harms : arms.Nonempty) (hcard_two : 2 <= arms.card) (gamma : Real) (hgamma_pos : 0 < gamma) (hgamma_le_half : gamma <= 1 / 2) (loss : PredictableLossVector Env Action) (comparator : Action) (hcomparator : comparator ∈ arms) (horizon sparsity : Nat) (hhorizon : 0 < horizon) (hsparsity : 0 < sparsity) (delta : Real) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (hbase : (sparsity : Real) * Real.log (arms.card : Real) <= gamma ^ 2 * (horizon : Real)) (hmixed : 5 * (arms.card : Real) ^ 2 * Real.log (arms.card : Real) ^ 2 * Real.log (5 / delta) <= gamma ^ 5 * delta * (horizon : Real) ^ 3) (hconfidence : (arms.card : Real) * Real.log (5 / delta) <= gamma ^ 3 * (horizon : Real)) (hrealized : 2 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (5 / delta) <= gamma ^ 2 * (horizon : Real)) : let eta := probabilisticSparseLossPredictableVarianceHighProbabilityLearningRate arms gamma horizon sparsity delta let mu := prior ⊗ₘ sampledImportanceWeightedTrajectoryKernel arms harms eta gamma hgamma_pos.le (by linarith : gamma <= 1) loss.environment mu {sample | probabilisticSparseLossPredictableVarianceRealizedMarkovExplicitThreshold arms gamma horizon sparsity delta <= (Finset.range horizon).sum (fun t => sampledTrajectoryRealizedLossAt t sample) - (Finset.range horizon).sum (fun t => predictableLossAt loss t sample comparator)} <= ENNReal.ofReal delta + mu (sampledPredictableSparsityFailure arms loss horizon sparsity)
theorem BanditRLProof.Exp3.sampledPredictable_gammaCharacterizedProbabilisticSparseLossPredictableVarianceRealizedMarkovRegret_tail_of_sparsityFailure_le Compiled

Practical gamma-characterized theorem under an exact generated-measure bound on the sparsity-failure event.

theorem sampledPredictable_gammaCharacterizedProbabilisticSparseLossPredictableVarianceRealizedMarkovRegret_tail_of_sparsityFailure_le {Env : Type u} {Action : Type v} [MeasurableSpace Env] [StandardBorelSpace Env] [Nonempty Env] [MeasurableSpace Action] [MeasurableSingletonClass Action] [StandardBorelSpace Action] [Nonempty Action] [DecidableEq Action] (prior : Measure Env) [IsProbabilityMeasure prior] (arms : Finset Action) (harms : arms.Nonempty) (hcard_two : 2 <= arms.card) (gamma : Real) (hgamma_pos : 0 < gamma) (hgamma_le_half : gamma <= 1 / 2) (loss : PredictableLossVector Env Action) (comparator : Action) (hcomparator : comparator ∈ arms) (horizon sparsity : Nat) (hhorizon : 0 < horizon) (hsparsity : 0 < sparsity) (delta epsilon : Real) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (hbase : (sparsity : Real) * Real.log (arms.card : Real) <= gamma ^ 2 * (horizon : Real)) (hmixed : 5 * (arms.card : Real) ^ 2 * Real.log (arms.card : Real) ^ 2 * Real.log (5 / delta) <= gamma ^ 5 * delta * (horizon : Real) ^ 3) (hconfidence : (arms.card : Real) * Real.log (5 / delta) <= gamma ^ 3 * (horizon : Real)) (hrealized : 2 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (5 / delta) <= gamma ^ 2 * (horizon : Real)) : let eta := probabilisticSparseLossPredictableVarianceHighProbabilityLearningRate arms gamma horizon sparsity delta let mu := prior ⊗ₘ sampledImportanceWeightedTrajectoryKernel arms harms eta gamma hgamma_pos.le (by linarith : gamma <= 1) loss.environment mu (sampledPredictableSparsityFailure arms loss horizon sparsity) <= ENNReal.ofReal epsilon -> mu {sample | probabilisticSparseLossPredictableVarianceRealizedMarkovExplicitThreshold arms gamma horizon sparsity delta <= (Finset.range horizon).sum (fun t => sampledTrajectoryRealizedLossAt t sample) - (Finset.range horizon).sum (fun t => predictableLossAt loss t sample comparator)} <= ENNReal.ofReal delta + ENNReal.ofReal epsilon
def BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceMarkovExplorationScale Compiled

Fifth-root component forced by the global `K * T` Markov envelope.

noncomputable def probabilisticSparseLossPredictableVarianceMarkovExplorationScale (K T delta : Real) : Real
def BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceRawExplorationRate Compiled

Unclipped maximum of the sparse base, global Markov, Bernstein, and realized-deviation exploration scales.

noncomputable def probabilisticSparseLossPredictableVarianceRawExplorationRate (K S T delta : Real) : Real
def BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceClippedExplorationRate Compiled

Explicit probabilistic-sparsity exploration schedule clipped into the Hedge stability regime.

noncomputable def probabilisticSparseLossPredictableVarianceClippedExplorationRate (K S T delta : Real) : Real
theorem BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceClippedExplorationRate_le_half Compiled

No declaration docstring is present; use the chapter context and exact statement below.

theorem probabilisticSparseLossPredictableVarianceClippedExplorationRate_le_half (K S T delta : Real) : probabilisticSparseLossPredictableVarianceClippedExplorationRate K S T delta <= 1 / 2
theorem BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceClippedExplorationRate_eq_raw Compiled

No declaration docstring is present; use the chapter context and exact statement below.

theorem probabilisticSparseLossPredictableVarianceClippedExplorationRate_eq_raw (K S T delta : Real) (hraw : probabilisticSparseLossPredictableVarianceRawExplorationRate K S T delta <= 1 / 2) : probabilisticSparseLossPredictableVarianceClippedExplorationRate K S T delta = probabilisticSparseLossPredictableVarianceRawExplorationRate K S T delta
theorem BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceRawExplorationRate_pos Compiled

No declaration docstring is present; use the chapter context and exact statement below.

theorem probabilisticSparseLossPredictableVarianceRawExplorationRate_pos (K S T delta : Real) (hK_one : 1 < K) (hS : 0 < S) (hT : 0 < T) : 0 < probabilisticSparseLossPredictableVarianceRawExplorationRate K S T delta
theorem BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceClippedExplorationRate_pos Compiled

No declaration docstring is present; use the chapter context and exact statement below.

theorem probabilisticSparseLossPredictableVarianceClippedExplorationRate_pos (K S T delta : Real) (hK_one : 1 < K) (hS : 0 < S) (hT : 0 < T) : 0 < probabilisticSparseLossPredictableVarianceClippedExplorationRate K S T delta
theorem BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceRawExplorationRate_le_half_of_horizon_contracts Compiled

Transparent horizon contracts ensure every raw schedule component is at most one half, so clipping is inactive.

theorem probabilisticSparseLossPredictableVarianceRawExplorationRate_le_half_of_horizon_contracts (K S T delta : Real) (hK_one : 1 < K) (hT : 0 < T) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (hlarge_arm : 4 * (S * Real.log K) <= T) (hlarge_mixed : 32 * (5 * K ^ 2 * Real.log K ^ 2 * Real.log (5 / delta)) <= delta * T ^ 3) (hlarge_confidence : 8 * (K * Real.log (5 / delta)) <= T) (hlarge_realized : 8 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (5 / delta) <= T) : probabilisticSparseLossPredictableVarianceRawExplorationRate K S T delta <= 1 / 2
theorem BanditRLProof.Exp3.probabilisticSparseLossPredictableVarianceClippedExplorationRate_contracts Compiled

The clipped maximum supplies exactly the four contracts consumed by the gamma-characterized probabilistic-sparsity theorem.

theorem probabilisticSparseLossPredictableVarianceClippedExplorationRate_contracts (K S T delta : Real) (hK_one : 1 < K) (hS : 0 < S) (hT : 0 < T) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (hlarge_arm : 4 * (S * Real.log K) <= T) (hlarge_mixed : 32 * (5 * K ^ 2 * Real.log K ^ 2 * Real.log (5 / delta)) <= delta * T ^ 3) (hlarge_confidence : 8 * (K * Real.log (5 / delta)) <= T) (hlarge_realized : 8 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (5 / delta) <= T) : let gamma := probabilisticSparseLossPredictableVarianceClippedExplorationRate K S T delta 0 < gamma ∧ gamma <= 1 / 2 ∧ S * Real.log K <= gamma ^ 2 * T ∧ 5 * K ^ 2 * Real.log K ^ 2 * Real.log (5 / delta) <= gamma ^ 5 * delta * T ^ 3 ∧ K * Real.log (5 / delta) <= gamma ^ 3 * T ∧ 2 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (5 / delta) <= gamma ^ 2 * T
theorem BanditRLProof.Exp3.sampledPredictable_explicitProbabilisticSparseLossPredictableVarianceRealizedMarkovRegret_tail Compiled

Fully explicit generated probabilistic-sparsity regret tail for the clipped maximum schedule, retaining the exact failure residual.

theorem sampledPredictable_explicitProbabilisticSparseLossPredictableVarianceRealizedMarkovRegret_tail {Env : Type u} {Action : Type v} [MeasurableSpace Env] [StandardBorelSpace Env] [Nonempty Env] [MeasurableSpace Action] [MeasurableSingletonClass Action] [StandardBorelSpace Action] [Nonempty Action] [DecidableEq Action] (prior : Measure Env) [IsProbabilityMeasure prior] (arms : Finset Action) (harms : arms.Nonempty) (hcard_two : 2 <= arms.card) (loss : PredictableLossVector Env Action) (comparator : Action) (hcomparator : comparator ∈ arms) (horizon sparsity : Nat) (hhorizon : 0 < horizon) (hsparsity : 0 < sparsity) (delta : Real) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (hlarge_arm : 4 * ((sparsity : Real) * Real.log (arms.card : Real)) <= (horizon : Real)) (hlarge_mixed : 32 * (5 * (arms.card : Real) ^ 2 * Real.log (arms.card : Real) ^ 2 * Real.log (5 / delta)) <= delta * (horizon : Real) ^ 3) (hlarge_confidence : 8 * ((arms.card : Real) * Real.log (5 / delta)) <= (horizon : Real)) (hlarge_realized : 8 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (5 / delta) <= (horizon : Real)) : let gamma := probabilisticSparseLossPredictableVarianceClippedExplorationRate (arms.card : Real) (sparsity : Real) (horizon : Real) delta let eta := probabilisticSparseLossPredictableVarianceHighProbabilityLearningRate arms gamma horizon sparsity delta let mu := prior ⊗ₘ sampledImportanceWeightedTrajectoryKernel arms harms eta gamma (probabilisticSparseLossPredictableVarianceClippedExplorationRate_pos (arms.card : Real) (sparsity : Real) (horizon : Real) delta (by exact_mod_cast hcard_two) (by exact_mod_cast hsparsity) (by exact_mod_cast hhorizon)).le (by exact (probabilisticSparseLossPredictableVarianceClippedExplorationRate_le_half (arms.card : Real) (sparsity : Real) (horizon : Real) delta).trans (by norm_num)) loss.environment mu {sample | probabilisticSparseLossPredictableVarianceRealizedMarkovExplicitThreshold arms gamma horizon sparsity delta <= (Finset.range horizon).sum (fun t => sampledTrajectoryRealizedLossAt t sample) - (Finset.range horizon).sum (fun t => predictableLossAt loss t sample comparator)} <= ENNReal.ofReal delta + mu (sampledPredictableSparsityFailure arms loss horizon sparsity)
theorem BanditRLProof.Exp3.sampledPredictable_explicitProbabilisticSparseLossPredictableVarianceRealizedMarkovRegret_tail_of_sparsityFailure_le Compiled

Fully explicit practical `delta + epsilon` theorem under an exact bound on the sparsity-failure event for the internally eta/gamma-tuned measure.

theorem sampledPredictable_explicitProbabilisticSparseLossPredictableVarianceRealizedMarkovRegret_tail_of_sparsityFailure_le {Env : Type u} {Action : Type v} [MeasurableSpace Env] [StandardBorelSpace Env] [Nonempty Env] [MeasurableSpace Action] [MeasurableSingletonClass Action] [StandardBorelSpace Action] [Nonempty Action] [DecidableEq Action] (prior : Measure Env) [IsProbabilityMeasure prior] (arms : Finset Action) (harms : arms.Nonempty) (hcard_two : 2 <= arms.card) (loss : PredictableLossVector Env Action) (comparator : Action) (hcomparator : comparator ∈ arms) (horizon sparsity : Nat) (hhorizon : 0 < horizon) (hsparsity : 0 < sparsity) (delta epsilon : Real) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (hlarge_arm : 4 * ((sparsity : Real) * Real.log (arms.card : Real)) <= (horizon : Real)) (hlarge_mixed : 32 * (5 * (arms.card : Real) ^ 2 * Real.log (arms.card : Real) ^ 2 * Real.log (5 / delta)) <= delta * (horizon : Real) ^ 3) (hlarge_confidence : 8 * ((arms.card : Real) * Real.log (5 / delta)) <= (horizon : Real)) (hlarge_realized : 8 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (5 / delta) <= (horizon : Real)) : let gamma := probabilisticSparseLossPredictableVarianceClippedExplorationRate (arms.card : Real) (sparsity : Real) (horizon : Real) delta let eta := probabilisticSparseLossPredictableVarianceHighProbabilityLearningRate arms gamma horizon sparsity delta let mu := prior ⊗ₘ sampledImportanceWeightedTrajectoryKernel arms harms eta gamma (probabilisticSparseLossPredictableVarianceClippedExplorationRate_pos (arms.card : Real) (sparsity : Real) (horizon : Real) delta (by exact_mod_cast hcard_two) (by exact_mod_cast hsparsity) (by exact_mod_cast hhorizon)).le (by exact (probabilisticSparseLossPredictableVarianceClippedExplorationRate_le_half (arms.card : Real) (sparsity : Real) (horizon : Real) delta).trans (by norm_num)) loss.environment mu (sampledPredictableSparsityFailure arms loss horizon sparsity) <= ENNReal.ofReal epsilon -> mu {sample | probabilisticSparseLossPredictableVarianceRealizedMarkovExplicitThreshold arms gamma horizon sparsity delta <= (Finset.range horizon).sum (fun t => sampledTrajectoryRealizedLossAt t sample) - (Finset.range horizon).sum (fun t => predictableLossAt loss t sample comparator)} <= ENNReal.ofReal delta + ENNReal.ofReal epsilon