Lean module · Tsallis-FTRL
BanditRLProof.TsallisFiniteArmIIDTimeVaryingCorruptedRewardLaw
# Time-varying corrupted finite-arm IID reward laws The base reward vector is fresh IID at every round. Before play begins, a deterministic arm-dependent reward shift is fixed for every round; shifted rewards are clipped back to `[0,1]`. Such a schedule is predictable and oblivious. It need not be stationary, but it does not depend on the realized history.
Module map
Imports
BanditRLProof.TsallisScheduledIIDTimeVaryingMeanGap
Imported by
BanditRLProof, BanditRLProof.TsallisFiniteArmIIDHistoryAdaptiveCorruptedRewardLaw
Declarations
Open an item to read its exact compact statement and source link. Detailed teaching notes are linked when registered.
def
BanditRLProof.Tsallis.finiteArmIIDTimeVaryingCorruptedReward
Compiled
Reward after a deterministic time-indexed arm shift and clipping.
noncomputable def finiteArmIIDTimeVaryingCorruptedReward {K : Nat} (rewardShift : Nat -> Fin K -> Real) (t : Nat) (state : Fin K -> Rat) (arm : Fin K) : Real
def
BanditRLProof.Tsallis.finiteArmIIDTimeVaryingCorruptedRewardVectorLoss
Compiled
Loss vector induced by the time-indexed clipped reward.
noncomputable def finiteArmIIDTimeVaryingCorruptedRewardVectorLoss {K : Nat} (rewardShift : Nat -> Fin K -> Real) (t : Nat) (state : Fin K -> Rat) (arm : Fin K) : Real
theorem
BanditRLProof.Tsallis.measurable_finiteArmIIDTimeVaryingCorruptedRewardVectorLoss
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
theorem measurable_finiteArmIIDTimeVaryingCorruptedRewardVectorLoss {K : Nat} (rewardShift : Nat -> Fin K -> Real) (t : Nat) : Measurable (fun input : (Fin K -> Rat) × Fin K => finiteArmIIDTimeVaryingCorruptedRewardVectorLoss rewardShift t input.1 input.2)
theorem
BanditRLProof.Tsallis.finiteArmIIDTimeVaryingCorruptedRewardVectorLoss_nonneg
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
theorem finiteArmIIDTimeVaryingCorruptedRewardVectorLoss_nonneg {K : Nat} (rewardShift : Nat -> Fin K -> Real) (t : Nat) (state : Fin K -> Rat) (arm : Fin K) : 0 <= finiteArmIIDTimeVaryingCorruptedRewardVectorLoss rewardShift t state arm
theorem
BanditRLProof.Tsallis.finiteArmIIDTimeVaryingCorruptedRewardVectorLoss_le_one
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
theorem finiteArmIIDTimeVaryingCorruptedRewardVectorLoss_le_one {K : Nat} (rewardShift : Nat -> Fin K -> Real) (t : Nat) (state : Fin K -> Rat) (arm : Fin K) : finiteArmIIDTimeVaryingCorruptedRewardVectorLoss rewardShift t state arm <= 1
theorem
BanditRLProof.Tsallis.abs_iidLossStateTimeVaryingMeanGap_corrupted_sub_modelGap_le
Compiled
The actual mean gap at round `t` differs from the baseline model gap by at most the two affected arm shifts.
theorem abs_iidLossStateTimeVaryingMeanGap_corrupted_sub_modelGap_le {K : Nat} (model : FiniteBanditModel K) (armLaw : Fin K -> Measure Rat) (hprob : ∀ arm, IsProbabilityMeasure (armLaw arm)) (hbound : ∀ arm, ∀ᵐ reward ∂armLaw arm, ((reward : Rat) : Real) ∈ Set.Icc (0 : Real) 1) (hmean : ∀ arm, integral (armLaw arm) (fun reward : Rat => ((reward : Rat) : Real)) = ((model.mean arm : Rat) : Real)) (rewardShift : Nat -> Fin K -> Real) (t : Nat) (arm : Fin K) : |iidLossStateTimeVaryingMeanGap (finiteArmIIDRewardVectorLaw armLaw) (finiteArmIIDTimeVaryingCorruptedRewardVectorLoss rewardShift) t model.bestArm arm - ((model.gap arm : Rat) : Real)| <= |rewardShift t arm| + |rewardShift t model.bestArm|
def
BanditRLProof.Tsallis.finiteArmIIDTimeVaryingRewardCorruptionBudget
Compiled
Explicit accumulated budget of a time-indexed oblivious reward-shift schedule through the inclusive horizon.
noncomputable def finiteArmIIDTimeVaryingRewardCorruptionBudget {K : Nat} (model : FiniteBanditModel K) (horizon : Nat) (rewardShift : Nat -> Fin K -> Real) : Real
theorem
BanditRLProof.Tsallis.finiteArmIIDTimeVaryingRewardCorruptionBudget_eq
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
theorem finiteArmIIDTimeVaryingRewardCorruptionBudget_eq {K : Nat} (model : FiniteBanditModel K) (horizon : Nat) (rewardShift : Nat -> Fin K -> Real) : finiteArmIIDTimeVaryingRewardCorruptionBudget model horizon rewardShift = (Finset.range (horizon + 1)).sum (fun t => ((Finset.univ : Finset (Fin K)).erase model.bestArm).sum (fun arm => |rewardShift t arm| + |rewardShift t model.bestArm|))
theorem
BanditRLProof.Tsallis.finiteArmIIDTimeVaryingRewardCorruptionBudget_zero
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
theorem finiteArmIIDTimeVaryingRewardCorruptionBudget_zero {K : Nat} (model : FiniteBanditModel K) (horizon : Nat) : finiteArmIIDTimeVaryingRewardCorruptionBudget model horizon (fun _ _ => 0) = 0
theorem
BanditRLProof.Tsallis.finiteArmIIDTimeVaryingRewardCorruptionBudget_const_eq_stationary
Compiled
A constant shift schedule recovers the stationary corruption budget.
theorem finiteArmIIDTimeVaryingRewardCorruptionBudget_const_eq_stationary {K : Nat} (model : FiniteBanditModel K) (horizon : Nat) (rewardShift : Fin K -> Real) : finiteArmIIDTimeVaryingRewardCorruptionBudget model horizon (fun _ => rewardShift) = finiteArmIIDStationaryRewardCorruptionBudget model horizon rewardShift
theorem
BanditRLProof.Tsallis.integral_sampledScheduledHalfTsallisFiniteArmIIDTimeVaryingCorruptedRewardLawRegret_le_log
Compiled
Scheduled half-Tsallis logarithmic regret under an explicit deterministic time-indexed reward-shift schedule. The additive allowance is derived from the schedule and is not a free corruption parameter.
theorem integral_sampledScheduledHalfTsallisFiniteArmIIDTimeVaryingCorruptedRewardLawRegret_le_log {K : Nat} (model : FiniteBanditModel K) (armLaw : Fin K -> Measure Rat) (hprob : ∀ arm, IsProbabilityMeasure (armLaw arm)) (hbound : ∀ arm, ∀ᵐ reward ∂armLaw arm, ((reward : Rat) : Real) ∈ Set.Icc (0 : Real) 1) (hmean : ∀ arm, integral (armLaw arm) (fun reward : Rat => ((reward : Rat) : Real)) = ((model.mean arm : Rat) : Real)) (rewardShift : Nat -> Fin K -> Real) (hgapPos : ∀ arm, arm ≠ model.bestArm -> 0 < ((model.gap arm : Rat) : Real)) (horizon : Nat) : letI : Nonempty (Fin K)