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

Lean module · EXP3

BanditRLProof.Exp3MixedSquarePredictableVarianceSparseLossRealizedPathwiseVarianceProbabilisticSparsityExplicitTuning

# Explicit exploration tuning for sparse pathwise variance This module closes the exploration-rate route for the four-event generated realized-regret theorem under probabilistic sparsity. On the good event, the predictable-variance budget is `(1 / (gamma / K)) * S * T`. Consequently the mixed fifth-root scale is driven by `K * S * (log K)^2 * log (4 / delta) / T^3`, with neither the extra factor `K` nor the polynomial `1 / delta` from the old global-envelope Markov route. The final generated theorem retains the exact sparsity-failure residual, and its practical endpoint has failure budget `delta + epsilon` under the same internally eta/gamma-tuned measure. This is still an armwise aggregate sparse-loss theorem with bounded realized deviation. It is not an all-horizon, best-arm first-order, Freedman, anytime, or ideal EXP3.P result.

Module map

Declarations
20
Placeholders
0

Imports

BanditRLProof.Exp3MixedSquarePredictableVarianceSparseLossRealizedPathwiseVarianceProbabilisticSparsityTuning, BanditRLProof.Exp3MixedSquarePredictableVarianceSparseLossRealizedMarkovExplicitTuning

Imported by

BanditRLProof, BanditRLProof.Exp3MixedSquarePredictableVarianceSparseLossRealizedDoublePathwiseVarianceProbabilisticSparsityExplicitTuning, BanditRLProof.Exp3MixedSquarePredictableVarianceSparseLossRealizedPathwiseVarianceProbabilisticSparsityAllHorizon

Declarations

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

theorem BanditRLProof.Exp3.sampledPredictableSparsePathwiseVarianceBudget_eq Compiled

Closed form of the deterministic sparse pathwise variance budget.

theorem sampledPredictableSparsePathwiseVarianceBudget_eq {Action : Type v} [DecidableEq Action] (arms : Finset Action) (hcard_two : 2 <= arms.card) (gamma : Real) (hgamma_pos : 0 < gamma) (horizon sparsity : Nat) : sampledPredictableSparsePathwiseVarianceBudget arms gamma horizon sparsity = (arms.card : Real) * (sparsity : Real) * (horizon : Real) / gamma
theorem BanditRLProof.Exp3.log_mul_pathwiseVarianceProbabilisticSparseLossRadius_le_three_mul_sq_mul_horizon_sq Compiled

The sparse base, pathwise fifth-power, and cubic confidence contracts bound the log-weighted predictable-variance radius by `3 * gamma^2 * T^2`.

theorem log_mul_pathwiseVarianceProbabilisticSparseLossRadius_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 : (arms.card : Real) * (sparsity : Real) * Real.log (arms.card : Real) ^ 2 * Real.log (4 / delta) <= gamma ^ 5 * (horizon : Real) ^ 3) (hconfidence : (arms.card : Real) * Real.log (4 / delta) <= gamma ^ 3 * (horizon : Real)) : Real.log (arms.card : Real) * sampledMixedSquaredPredictableVarianceRadius arms gamma (sampledPredictableSparsePathwiseVarianceBudget arms gamma horizon sparsity) (delta / 4) <= 3 * gamma ^ 2 * (horizon : Real) ^ 2
theorem BanditRLProof.Exp3.pathwiseVarianceProbabilisticSparseLossBalancedSqrt_le_two_mul_gamma_mul_horizon Compiled

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

theorem pathwiseVarianceProbabilisticSparseLossBalancedSqrt_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 : (arms.card : Real) * (sparsity : Real) * Real.log (arms.card : Real) ^ 2 * Real.log (4 / delta) <= gamma ^ 5 * (horizon : Real) ^ 3) (hconfidence : (arms.card : Real) * Real.log (4 / delta) <= gamma ^ 3 * (horizon : Real)) : Real.sqrt (Real.log (arms.card : Real) * pathwiseVarianceProbabilisticSparseLossHighProbabilityScale arms gamma horizon sparsity delta) <= 2 * gamma * (horizon : Real)
def BanditRLProof.Exp3.pathwiseVarianceProbabilisticSparseLossRealizedExplicitThreshold Compiled

Explicit realized-regret threshold after tuning eta and gamma.

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

Four algebraic exploration contracts reduce the eta-tuned pathwise threshold to `14 * gamma * T`.

theorem pathwiseVarianceProbabilisticSparseLossRealizedTunedThreshold_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 : (arms.card : Real) * (sparsity : Real) * Real.log (arms.card : Real) ^ 2 * Real.log (4 / delta) <= gamma ^ 5 * (horizon : Real) ^ 3) (hconfidence : (arms.card : Real) * Real.log (4 / delta) <= gamma ^ 3 * (horizon : Real)) (hrealized : 2 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (4 / delta) <= gamma ^ 2 * (horizon : Real)) : pathwiseVarianceProbabilisticSparseLossRealizedTunedThreshold arms gamma horizon sparsity delta <= pathwiseVarianceProbabilisticSparseLossRealizedExplicitThreshold arms gamma horizon sparsity delta
theorem BanditRLProof.Exp3.sampledPredictable_gammaCharacterizedProbabilisticSparseLossPathwiseVarianceRealizedRegret_tail_off_sparsityFailure Compiled

Gamma-characterized generated regret away from the exact sparsity-failure event and without a global-envelope Markov term.

theorem sampledPredictable_gammaCharacterizedProbabilisticSparseLossPathwiseVarianceRealizedRegret_tail_off_sparsityFailure {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 : (arms.card : Real) * (sparsity : Real) * Real.log (arms.card : Real) ^ 2 * Real.log (4 / delta) <= gamma ^ 5 * (horizon : Real) ^ 3) (hconfidence : (arms.card : Real) * Real.log (4 / delta) <= gamma ^ 3 * (horizon : Real)) (hrealized : 2 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (4 / delta) <= gamma ^ 2 * (horizon : Real)) : let eta := pathwiseVarianceProbabilisticSparseLossHighProbabilityLearningRate arms gamma horizon sparsity delta let mu := prior ⊗ₘ sampledImportanceWeightedTrajectoryKernel arms harms eta gamma hgamma_pos.le (by linarith : gamma <= 1) loss.environment mu ({sample | pathwiseVarianceProbabilisticSparseLossRealizedExplicitThreshold 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)} \ sampledPredictableSparsityFailure arms loss horizon sparsity) <= ENNReal.ofReal delta
theorem BanditRLProof.Exp3.sampledPredictable_gammaCharacterizedProbabilisticSparseLossPathwiseVarianceRealizedRegret_tail Compiled

Gamma-characterized generated regret with the exact sparsity-failure residual and no global-envelope Markov term.

theorem sampledPredictable_gammaCharacterizedProbabilisticSparseLossPathwiseVarianceRealizedRegret_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 : (arms.card : Real) * (sparsity : Real) * Real.log (arms.card : Real) ^ 2 * Real.log (4 / delta) <= gamma ^ 5 * (horizon : Real) ^ 3) (hconfidence : (arms.card : Real) * Real.log (4 / delta) <= gamma ^ 3 * (horizon : Real)) (hrealized : 2 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (4 / delta) <= gamma ^ 2 * (horizon : Real)) : let eta := pathwiseVarianceProbabilisticSparseLossHighProbabilityLearningRate arms gamma horizon sparsity delta let mu := prior ⊗ₘ sampledImportanceWeightedTrajectoryKernel arms harms eta gamma hgamma_pos.le (by linarith : gamma <= 1) loss.environment mu {sample | pathwiseVarianceProbabilisticSparseLossRealizedExplicitThreshold 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_gammaCharacterizedProbabilisticSparseLossPathwiseVarianceRealizedRegret_tail_of_sparsityFailure_le Compiled

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

theorem sampledPredictable_gammaCharacterizedProbabilisticSparseLossPathwiseVarianceRealizedRegret_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 : (arms.card : Real) * (sparsity : Real) * Real.log (arms.card : Real) ^ 2 * Real.log (4 / delta) <= gamma ^ 5 * (horizon : Real) ^ 3) (hconfidence : (arms.card : Real) * Real.log (4 / delta) <= gamma ^ 3 * (horizon : Real)) (hrealized : 2 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (4 / delta) <= gamma ^ 2 * (horizon : Real)) : let eta := pathwiseVarianceProbabilisticSparseLossHighProbabilityLearningRate 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 | pathwiseVarianceProbabilisticSparseLossRealizedExplicitThreshold 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.pathwiseVarianceProbabilisticSparseLossMixedExplorationScale Compiled

Fifth-root scale forced by the sparse pathwise predictable-variance radius. Unlike the Markov scale, it has no polynomial `1 / delta` factor.

noncomputable def pathwiseVarianceProbabilisticSparseLossMixedExplorationScale (K S T delta : Real) : Real
def BanditRLProof.Exp3.pathwiseVarianceProbabilisticSparseLossRawExplorationRate Compiled

Unclipped maximum of the sparse arm, pathwise mixed-square, Bernstein, and realized-deviation exploration scales.

noncomputable def pathwiseVarianceProbabilisticSparseLossRawExplorationRate (K S T delta : Real) : Real
def BanditRLProof.Exp3.pathwiseVarianceProbabilisticSparseLossClippedExplorationRate Compiled

Explicit pathwise-variance exploration schedule clipped into the Hedge stability regime.

noncomputable def pathwiseVarianceProbabilisticSparseLossClippedExplorationRate (K S T delta : Real) : Real
theorem BanditRLProof.Exp3.pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_le_half Compiled

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

theorem pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_le_half (K S T delta : Real) : pathwiseVarianceProbabilisticSparseLossClippedExplorationRate K S T delta <= 1 / 2
theorem BanditRLProof.Exp3.pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_eq_raw Compiled

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

theorem pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_eq_raw (K S T delta : Real) (hraw : pathwiseVarianceProbabilisticSparseLossRawExplorationRate K S T delta <= 1 / 2) : pathwiseVarianceProbabilisticSparseLossClippedExplorationRate K S T delta = pathwiseVarianceProbabilisticSparseLossRawExplorationRate K S T delta
theorem BanditRLProof.Exp3.pathwiseVarianceProbabilisticSparseLossRawExplorationRate_pos Compiled

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

theorem pathwiseVarianceProbabilisticSparseLossRawExplorationRate_pos (K S T delta : Real) (hK_one : 1 < K) (hS : 0 < S) (hT : 0 < T) : 0 < pathwiseVarianceProbabilisticSparseLossRawExplorationRate K S T delta
theorem BanditRLProof.Exp3.pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_pos Compiled

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

theorem pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_pos (K S T delta : Real) (hK_one : 1 < K) (hS : 0 < S) (hT : 0 < T) : 0 < pathwiseVarianceProbabilisticSparseLossClippedExplorationRate K S T delta
theorem BanditRLProof.Exp3.pathwiseVarianceProbabilisticSparseLossRawExplorationRate_le_half_of_horizon_contracts Compiled

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

theorem pathwiseVarianceProbabilisticSparseLossRawExplorationRate_le_half_of_horizon_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 * (K * S * Real.log K ^ 2 * Real.log (4 / delta)) <= T ^ 3) (hlarge_confidence : 8 * (K * Real.log (4 / delta)) <= T) (hlarge_realized : 8 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (4 / delta) <= T) : pathwiseVarianceProbabilisticSparseLossRawExplorationRate K S T delta <= 1 / 2
theorem BanditRLProof.Exp3.pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_contracts Compiled

The clipped maximum supplies exactly the four contracts consumed by the gamma-characterized pathwise-variance theorem.

theorem pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_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 * (K * S * Real.log K ^ 2 * Real.log (4 / delta)) <= T ^ 3) (hlarge_confidence : 8 * (K * Real.log (4 / delta)) <= T) (hlarge_realized : 8 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (4 / delta) <= T) : let gamma := pathwiseVarianceProbabilisticSparseLossClippedExplorationRate K S T delta 0 < gamma ∧ gamma <= 1 / 2 ∧ S * Real.log K <= gamma ^ 2 * T ∧ K * S * Real.log K ^ 2 * Real.log (4 / delta) <= gamma ^ 5 * T ^ 3 ∧ K * Real.log (4 / delta) <= gamma ^ 3 * T ∧ 2 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (4 / delta) <= gamma ^ 2 * T
theorem BanditRLProof.Exp3.sampledPredictable_explicitProbabilisticSparseLossPathwiseVarianceRealizedRegret_tail_off_sparsityFailure Compiled

Fully explicit generated pathwise-variance regret tail away from the exact sparsity-failure event for the clipped maximum schedule.

theorem sampledPredictable_explicitProbabilisticSparseLossPathwiseVarianceRealizedRegret_tail_off_sparsityFailure {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 * ((arms.card : Real) * (sparsity : Real) * Real.log (arms.card : Real) ^ 2 * Real.log (4 / delta)) <= (horizon : Real) ^ 3) (hlarge_confidence : 8 * ((arms.card : Real) * Real.log (4 / delta)) <= (horizon : Real)) (hlarge_realized : 8 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (4 / delta) <= (horizon : Real)) : let gamma := pathwiseVarianceProbabilisticSparseLossClippedExplorationRate (arms.card : Real) (sparsity : Real) (horizon : Real) delta let eta := pathwiseVarianceProbabilisticSparseLossHighProbabilityLearningRate arms gamma horizon sparsity delta let mu := prior ⊗ₘ sampledImportanceWeightedTrajectoryKernel arms harms eta gamma (pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_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 (pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_le_half (arms.card : Real) (sparsity : Real) (horizon : Real) delta).trans (by norm_num)) loss.environment mu ({sample | pathwiseVarianceProbabilisticSparseLossRealizedExplicitThreshold 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)} \ sampledPredictableSparsityFailure arms loss horizon sparsity) <= ENNReal.ofReal delta
theorem BanditRLProof.Exp3.sampledPredictable_explicitProbabilisticSparseLossPathwiseVarianceRealizedRegret_tail Compiled

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

theorem sampledPredictable_explicitProbabilisticSparseLossPathwiseVarianceRealizedRegret_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 * ((arms.card : Real) * (sparsity : Real) * Real.log (arms.card : Real) ^ 2 * Real.log (4 / delta)) <= (horizon : Real) ^ 3) (hlarge_confidence : 8 * ((arms.card : Real) * Real.log (4 / delta)) <= (horizon : Real)) (hlarge_realized : 8 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (4 / delta) <= (horizon : Real)) : let gamma := pathwiseVarianceProbabilisticSparseLossClippedExplorationRate (arms.card : Real) (sparsity : Real) (horizon : Real) delta let eta := pathwiseVarianceProbabilisticSparseLossHighProbabilityLearningRate arms gamma horizon sparsity delta let mu := prior ⊗ₘ sampledImportanceWeightedTrajectoryKernel arms harms eta gamma (pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_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 (pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_le_half (arms.card : Real) (sparsity : Real) (horizon : Real) delta).trans (by norm_num)) loss.environment mu {sample | pathwiseVarianceProbabilisticSparseLossRealizedExplicitThreshold 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_explicitProbabilisticSparseLossPathwiseVarianceRealizedRegret_tail_of_sparsityFailure_le Compiled

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

theorem sampledPredictable_explicitProbabilisticSparseLossPathwiseVarianceRealizedRegret_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 * ((arms.card : Real) * (sparsity : Real) * Real.log (arms.card : Real) ^ 2 * Real.log (4 / delta)) <= (horizon : Real) ^ 3) (hlarge_confidence : 8 * ((arms.card : Real) * Real.log (4 / delta)) <= (horizon : Real)) (hlarge_realized : 8 * ((Concentration.intervalVarianceProxy 0 1 : NNReal) : Real) * Real.log (4 / delta) <= (horizon : Real)) : let gamma := pathwiseVarianceProbabilisticSparseLossClippedExplorationRate (arms.card : Real) (sparsity : Real) (horizon : Real) delta let eta := pathwiseVarianceProbabilisticSparseLossHighProbabilityLearningRate arms gamma horizon sparsity delta let mu := prior ⊗ₘ sampledImportanceWeightedTrajectoryKernel arms harms eta gamma (pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_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 (pathwiseVarianceProbabilisticSparseLossClippedExplorationRate_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 | pathwiseVarianceProbabilisticSparseLossRealizedExplicitThreshold 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