Lean module · UCB
BanditRLProof.Algorithms.UCBFiniteArmSubGaussianSampledAsymptotics
# Sampled-pair UCB consistency for finite-arm sub-Gaussian laws This module instantiates the canonical sampled pair-trajectory asymptotic UCB route from stationary action-indexed reward laws. The fixed initial action is paired with a reward sampled from its arm law, while all successor laws use the context-independent Markov reward kernel.
Module map
Imports
BanditRLProof.Algorithms.UCBConditionalRewardPairTrajectorySampledAsymptotics, BanditRLProof.FiniteArmRewardKernelLaw
Imported by
BanditRLProof, BanditRLProof.Algorithms.UCBArmwiseBoundedFiniteArmSampledAsymptotics, BanditRLProof.Algorithms.UCBBoundedFiniteArmSampledAsymptotics
Declarations
Open an item to read its exact compact statement and source link. Detailed teaching notes are linked when registered.
def
BanditRLProof.UCB.finiteArmSubgaussianInitialActionRewardMeasure
Compiled
Initial pair law obtained by attaching a fixed action to its reward law.
noncomputable def finiteArmSubgaussianInitialActionRewardMeasure {K : Nat} (armLaw : Fin K -> Measure Rat) (defaultAction : Fin K) : Measure (Prod (Fin K) Rat)
theorem
BanditRLProof.UCB.finiteArmSubgaussianInitialActionRewardMeasure_isProbabilityMeasure
Compiled
The fixed-action reward pushforward remains a probability measure.
theorem finiteArmSubgaussianInitialActionRewardMeasure_isProbabilityMeasure {K : Nat} (armLaw : Fin K -> Measure Rat) (hprob : forall arm, IsProbabilityMeasure (armLaw arm)) (defaultAction : Fin K) : IsProbabilityMeasure (finiteArmSubgaussianInitialActionRewardMeasure armLaw defaultAction)
def
BanditRLProof.UCB.selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret
Compiled
Exact sampled-successor expected pseudo-regret for stationary finite-arm sub-Gaussian laws. The UCB proxy is the armwise maximum padded by one and the confidence schedule is `1 / (T + 1)`.
noncomputable def selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret {K : Nat} (model : FiniteBanditModel K) (armLaw : Fin K -> Measure Rat) (hprob : forall arm, IsProbabilityMeasure (armLaw arm)) (varianceProxy : Fin K -> NNReal) (defaultAction : Fin K) (T : Nat) : Real
theorem
BanditRLProof.UCB.selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret_nonneg_and_le
Compiled
The exact practical sampled-successor expected pseudo-regret is nonnegative and satisfies the fixed-model logarithmic envelope at every large horizon.
theorem selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret_nonneg_and_le {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) (hlarge : 2 * K <= T + 1) : 0 <= selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret model armLaw hprob varianceProxy defaultAction T /\ selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret model armLaw hprob varianceProxy defaultAction T <= selectedPolicySuccessorAsymptoticModelCoefficient model (Concentration.finiteArmPositiveVarianceProxy varianceProxy) * (1 + Real.log (((T + 1 : Nat) : Real)))
theorem
BanditRLProof.UCB.selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret_isBigO_log
Compiled
The exact practical expected pseudo-regret family is logarithmic.
theorem selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret_isBigO_log {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) : (selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret model armLaw hprob varianceProxy defaultAction) =O[atTop] (fun T : Nat => Real.log (((T + 1 : Nat) : Real)))
theorem
BanditRLProof.UCB.selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret_isLittleO_natCast_succ
Compiled
The exact practical expected pseudo-regret is little-o of `T + 1`.
theorem selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret_isLittleO_natCast_succ {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) : (selectedPolicySuccessorFiniteArmSubgaussianExpectedPseudoRegret model armLaw hprob varianceProxy defaultAction) =o[atTop] (fun T : Nat => (((T + 1 : Nat) : Real)))
def
BanditRLProof.UCB.selectedPolicySuccessorFiniteArmSubgaussianExpectedAveragePseudoRegret
Compiled
Expected practical sampled-successor pseudo-regret normalized by `T + 1`.
noncomputable def selectedPolicySuccessorFiniteArmSubgaussianExpectedAveragePseudoRegret {K : Nat} (model : FiniteBanditModel K) (armLaw : Fin K -> Measure Rat) (hprob : forall arm, IsProbabilityMeasure (armLaw arm)) (varianceProxy : Fin K -> NNReal) (defaultAction : Fin K) (T : Nat) : Real
theorem
BanditRLProof.UCB.selectedPolicySuccessorFiniteArmSubgaussianExpectedAveragePseudoRegret_tendsto_zero
Compiled
For stationary finite-arm sub-Gaussian reward laws, the expected pseudo-regret of the horizon-indexed canonical sampled-pair UCB family, normalized by `T + 1`, tends to zero.
theorem selectedPolicySuccessorFiniteArmSubgaussianExpectedAveragePseudoRegret_tendsto_zero {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) : Tendsto (selectedPolicySuccessorFiniteArmSubgaussianExpectedAveragePseudoRegret model armLaw hprob varianceProxy defaultAction) atTop (nhds 0)