Lean module · UCB
BanditRLProof.Algorithms.UCBFiniteArmSubGaussianRewardLaw
This module instantiates the centered-kernel canonical Real theorem directly from stationary action-indexed sub-Gaussian reward laws, without bounded-support assumptions.
Module map
Imports
BanditRLProof.Algorithms.UCBConditionalRewardLawCenteredKernelReal, BanditRLProof.FiniteArmRewardKernelLaw
Imported by
Declarations
Open an item to read its exact compact statement and source link. Detailed teaching notes are linked when registered.
theorem
BanditRLProof.UCB.integral_real_pseudoRegret_selectedPolicySuccessorGeneratedUCBRegretAction_le_textbookGapSum_finiteArmSubgaussianLaws
Compiled
Canonical Real expected pseudo-regret bound for stationary finite-arm reward laws with direct centered sub-Gaussian MGF witnesses. The UCB variance parameter is the maximum of the armwise proxies. At least one proxy must be positive because the existing canonical UCB route requires a strictly positive common proxy; zero proxies for other arms are allowed.
Used in these reading views: Bandit Book · Reinforcement Learning Book
4. UCB: confidence events to regret
Canonical node identity
declaration:BanditRLProof.UCB.integral_real_pseudoRegret_selectedPolicySuccessorGeneratedUCBRegretAction_le_textbookGapSum_finiteArmSubgaussianLawsReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem integral_real_pseudoRegret_selectedPolicySuccessorGeneratedUCBRegretAction_le_textbookGapSum_finiteArmSubgaussianLaws {K : Nat} (model : FiniteBanditModel K) (armLaw : Fin K -> Measure Rat) (hprob : forall arm, IsProbabilityMeasure (armLaw arm)) (varianceProxy : Fin K -> NNReal) (hvariancePositive : exists arm, 0 < ((varianceProxy arm : NNReal) : Real)) (hmean : forall arm, integral (armLaw arm) (fun reward : Rat => ((reward : Rat) : Real)) = ((model.mean arm : Rat) : Real)) (hsubG : forall arm, HasSubgaussianMGF (fun reward : Rat => (((reward - model.mean arm : Rat) : Real))) (varianceProxy arm) (armLaw arm)) (defaultAction : Fin K) (T : Nat) (hT : 0 < T) (delta : Real) (hdelta : 0 < delta) : let sigma2 := Concentration.finiteArmVarianceProxy varianceProxy let rewardKernel := RewardKernel.contextIndependentOfActionLaws (Context := Unit) armLaw hprob let context : (n : Nat) -> History.FiniteRewardHistory Rat n -> Unit := fun _ _ => () MeasureTheory.integral (selectedPolicySuccessorRewardTrajMeasure model.hK (armLaw defaultAction) rewardKernel context (fun _ => measurable_const) sigma2 T delta defaultAction) (fun trajectory : RewardTrace Rat => ((pseudoRegret model (selectedPolicySuccessorGeneratedUCBRegretAction model.hK sigma2 T delta defaultAction (fun y : RewardTrace Rat => y) trajectory) T : Rat) : Real)) <= ((Finset.univ : Finset (Fin K)).filter (fun arm => 0 < (((model.gap arm : Rat) : Real)))).sum (fun arm => selectedPolicySuccessorTextbookGapBudget K sigma2 T delta (((model.gap arm : Rat) : Real)) + (((model.gap arm : Rat) : Real)) * ((T : Real) * delta))
theorem
BanditRLProof.UCB.integral_real_pseudoRegret_selectedPolicySuccessorGeneratedUCBRegretAction_le_textbookGapSum_finiteArmSubgaussianLaws_without_proxy_positivity
Compiled
Canonical Real expected pseudo-regret bound for stationary finite-arm reward laws with direct centered sub-Gaussian MGF witnesses, including an all-zero proxy family. The common UCB tuning proxy is the finite maximum padded by one, so callers provide neither a positivity witness nor a separate ceiling.
Used in these reading views: Bandit Book · Reinforcement Learning Book
4. UCB: confidence events to regret
Canonical node identity
declaration:BanditRLProof.UCB.integral_real_pseudoRegret_selectedPolicySuccessorGeneratedUCBRegretAction_le_textbookGapSum_finiteArmSubgaussianLaws_without_proxy_positivityReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem integral_real_pseudoRegret_selectedPolicySuccessorGeneratedUCBRegretAction_le_textbookGapSum_finiteArmSubgaussianLaws_without_proxy_positivity {K : Nat} (model : FiniteBanditModel K) (armLaw : Fin K -> Measure Rat) (hprob : forall arm, IsProbabilityMeasure (armLaw arm)) (varianceProxy : Fin K -> NNReal) (hmean : forall arm, integral (armLaw arm) (fun reward : Rat => ((reward : Rat) : Real)) = ((model.mean arm : Rat) : Real)) (hsubG : forall arm, HasSubgaussianMGF (fun reward : Rat => (((reward - model.mean arm : Rat) : Real))) (varianceProxy arm) (armLaw arm)) (defaultAction : Fin K) (T : Nat) (hT : 0 < T) (delta : Real) (hdelta : 0 < delta) : let sigma2 := Concentration.finiteArmPositiveVarianceProxy varianceProxy let rewardKernel := RewardKernel.contextIndependentOfActionLaws (Context := Unit) armLaw hprob let context : (n : Nat) -> History.FiniteRewardHistory Rat n -> Unit := fun _ _ => () MeasureTheory.integral (selectedPolicySuccessorRewardTrajMeasure model.hK (armLaw defaultAction) rewardKernel context (fun _ => measurable_const) sigma2 T delta defaultAction) (fun trajectory : RewardTrace Rat => ((pseudoRegret model (selectedPolicySuccessorGeneratedUCBRegretAction model.hK sigma2 T delta defaultAction (fun y : RewardTrace Rat => y) trajectory) T : Rat) : Real)) <= ((Finset.univ : Finset (Fin K)).filter (fun arm => 0 < (((model.gap arm : Rat) : Real)))).sum (fun arm => selectedPolicySuccessorTextbookGapBudget K sigma2 T delta (((model.gap arm : Rat) : Real)) + (((model.gap arm : Rat) : Real)) * ((T : Real) * delta))