Lean module · Tsallis-FTRL
BanditRLProof.TsallisFTRLConditionalStability
# One-round conditional transport for half-Tsallis stability This module transports the compiled finite sampling-law half-Tsallis stability bound through an identified conditional action law. It also exposes a canonical generated-action consumer for the fixed half-Tsallis minimizer. The canonical minimizer is selected with `Classical.choose`. Its coordinate measurability, and measurability/integrability of the score involving the chosen updated minimizer, remain explicit inputs rather than hidden claims.
Module map
Imports
BanditRLProof.TsallisFTRLFiniteHorizonSelection, BanditRLProof.Exp3ActionProcess
Imported by
Declarations
Open an item to read its exact compact statement and source link. Detailed teaching notes are linked when registered.
def
BanditRLProof.Tsallis.importanceWeightedStabilityScore
Compiled
The one-round FTRL stability score generated by an importance-weighted loss estimate.
noncomputable def importanceWeightedStabilityScore {History : Type u} {Action : Type v} (arms : Finset Action) (prob loss : History -> Action -> Real) (next : History -> Action -> Action -> Real) (sample : History × Action) : Real
def
BanditRLProof.Tsallis.halfPowerStabilityBound
Compiled
The pointwise half-Tsallis upper bound for the sampling-law averaged one-round stability score.
noncomputable def halfPowerStabilityBound {History : Type u} {Action : Type v} (arms : Finset Action) (eta : Real) (prob : History -> Action -> Real) (history : History) : Real
theorem
BanditRLProof.Tsallis.integral_importanceWeightedStabilityScore_le_integral_halfPowerStabilityBound_of_condDistrib_of_minimizers
Compiled
An identified finite conditional action law transports the pointwise half-Tsallis minimizer stability theorem to a one-round integral inequality. The score and bound integrability hypotheses are the exact analytic boundary needed by Bochner integral monotonicity. No measurability of a particular minimizer selector is inferred here.
theorem integral_importanceWeightedStabilityScore_le_integral_halfPowerStabilityBound_of_condDistrib_of_minimizers {Omega : Type u} {History : Type v} {Action : Type w} [MeasurableSpace Omega] [MeasurableSpace History] [MeasurableSpace Action] [MeasurableSingletonClass Action] [StandardBorelSpace Action] [Nonempty Action] [DecidableEq Action] (mu : Measure Omega) [IsFiniteMeasure mu] (history : Omega -> History) (hhistory : Measurable history) (action : Omega -> Action) (haction : Measurable action) (arms : Finset Action) (eta : Real) (score prob loss : History -> Action -> Real) (next : History -> Action -> Action -> Real) (policy : Kernel History Action) [IsMarkovKernel policy] (hpolicy : policy =ᵐ[mu.map history] fun h => Exp3.finiteActionMeasure arms (prob h)) (hcond : condDistrib action history mu =ᵐ[mu.map history] policy) (heta : 0 < eta) (hprobMin : forall h, FTRL.IsRegularizedMinimizer (FTRL.finiteSimplex arms) arms eta (negEntropyRegularizer arms (1 / 2 : Real)) (score h) (prob h)) (hnextMin : forall h chosen, chosen ∈ arms -> FTRL.IsRegularizedMinimizer (FTRL.finiteSimplex arms) arms eta (negEntropyRegularizer arms (1 / 2 : Real)) (fun candidate => score h candidate + Exp3.importanceWeightedLoss (prob h) (loss h) chosen candidate) (next h chosen)) (hloss : forall h candidate, candidate ∈ arms -> 0 <= loss h candidate ∧ loss h candidate <= 1) (hscore : Measurable (importanceWeightedStabilityScore arms prob loss next)) (hIntegrable : Integrable (importanceWeightedStabilityScore arms prob loss next) (mu.map history ⊗ₘ policy)) (hboundIntegrable : Integrable (halfPowerStabilityBound arms eta prob) (mu.map history)) : integral mu (fun omega => importanceWeightedStabilityScore arms prob loss next (history omega, action omega)) <= integral (mu.map history) (halfPowerStabilityBound arms eta prob)
theorem
BanditRLProof.Tsallis.actionProcess_integral_importanceWeightedStabilityScore_le_integral_halfPowerStabilityBound_of_minimizers
Compiled
Generated finite-action process specialization of the conditional half-Tsallis stability transport.
theorem actionProcess_integral_importanceWeightedStabilityScore_le_integral_halfPowerStabilityBound_of_minimizers {History : Type u} {Action : Type v} [MeasurableSpace History] [MeasurableSpace Action] [MeasurableSingletonClass Action] [StandardBorelSpace Action] [Nonempty Action] [DecidableEq Action] (historyMu : Measure History) [IsFiniteMeasure historyMu] (arms : Finset Action) (eta : Real) (score prob loss : History -> Action -> Real) (next : History -> Action -> Action -> Real) (source : Exp3.MeasurableFiniteActionDistribution arms prob) (heta : 0 < eta) (hprobMin : forall h, FTRL.IsRegularizedMinimizer (FTRL.finiteSimplex arms) arms eta (negEntropyRegularizer arms (1 / 2 : Real)) (score h) (prob h)) (hnextMin : forall h chosen, chosen ∈ arms -> FTRL.IsRegularizedMinimizer (FTRL.finiteSimplex arms) arms eta (negEntropyRegularizer arms (1 / 2 : Real)) (fun candidate => score h candidate + Exp3.importanceWeightedLoss (prob h) (loss h) chosen candidate) (next h chosen)) (hloss : forall h candidate, candidate ∈ arms -> 0 <= loss h candidate ∧ loss h candidate <= 1) (hscore : Measurable (importanceWeightedStabilityScore arms prob loss next)) (hIntegrable : Integrable (importanceWeightedStabilityScore arms prob loss next) (historyMu ⊗ₘ Exp3.finiteActionKernel arms prob source)) (hboundIntegrable : Integrable (halfPowerStabilityBound arms eta prob) historyMu) : integral (Exp3.actionProcessMeasure historyMu arms prob source) (importanceWeightedStabilityScore arms prob loss next) <= integral historyMu (halfPowerStabilityBound arms eta prob)
def
BanditRLProof.Tsallis.halfTsallisHistoryMinimizer
Compiled
The fixed half-Tsallis minimizer viewed as a history-indexed action distribution.
noncomputable def halfTsallisHistoryMinimizer {History : Type u} {Action : Type v} [DecidableEq Action] (arms : Finset Action) (harms : arms.Nonempty) (eta : Real) (score : History -> Action -> Real) : History -> Action -> Real
def
BanditRLProof.Tsallis.halfTsallisHistoryUpdatedMinimizer
Compiled
The fixed importance-weighted half-Tsallis update viewed as a history/action-indexed family.
noncomputable def halfTsallisHistoryUpdatedMinimizer {History : Type u} {Action : Type v} [DecidableEq Action] (arms : Finset Action) (harms : arms.Nonempty) (eta : Real) (score loss : History -> Action -> Real) : History -> Action -> Action -> Real
def
BanditRLProof.Tsallis.measurableFiniteActionDistribution_halfTsallisHistoryMinimizer
Compiled
Coordinate measurability is the only missing contract for turning the fixed history-indexed minimizer into the project's finite-action kernel source. Distribution feasibility follows from the minimizer certificate.
noncomputable def measurableFiniteActionDistribution_halfTsallisHistoryMinimizer {History : Type u} {Action : Type v} [MeasurableSpace History] [DecidableEq Action] (arms : Finset Action) (harms : arms.Nonempty) (eta : Real) (score : History -> Action -> Real) (hmeasurable : forall action, action ∈ arms -> Measurable (fun history => halfTsallisHistoryMinimizer arms harms eta score history action)) : Exp3.MeasurableFiniteActionDistribution arms (halfTsallisHistoryMinimizer arms harms eta score) where
theorem
BanditRLProof.Tsallis.actionProcess_integral_halfTsallisHistoryStability_le_integral_halfPowerStabilityBound
Compiled
Canonical generated-action one-round stability endpoint. The minimizer certificates and finite-distribution laws are internal. The remaining caller contracts expose exactly what is not yet proved for the `Classical.choose` selector: coordinate measurability and regularity of the updated stability score.
theorem actionProcess_integral_halfTsallisHistoryStability_le_integral_halfPowerStabilityBound {History : Type u} {Action : Type v} [MeasurableSpace History] [MeasurableSpace Action] [MeasurableSingletonClass Action] [StandardBorelSpace Action] [Nonempty Action] [DecidableEq Action] (historyMu : Measure History) [IsFiniteMeasure historyMu] (arms : Finset Action) (harms : arms.Nonempty) (eta : Real) (score loss : History -> Action -> Real) (hmeasurable : forall action, action ∈ arms -> Measurable (fun history => halfTsallisHistoryMinimizer arms harms eta score history action)) (heta : 0 < eta) (hloss : forall history candidate, candidate ∈ arms -> 0 <= loss history candidate ∧ loss history candidate <= 1) (hscore : Measurable (importanceWeightedStabilityScore arms (halfTsallisHistoryMinimizer arms harms eta score) loss (halfTsallisHistoryUpdatedMinimizer arms harms eta score loss))) (hIntegrable : Integrable (importanceWeightedStabilityScore arms (halfTsallisHistoryMinimizer arms harms eta score) loss (halfTsallisHistoryUpdatedMinimizer arms harms eta score loss)) (historyMu ⊗ₘ Exp3.finiteActionKernel arms (halfTsallisHistoryMinimizer arms harms eta score) (measurableFiniteActionDistribution_halfTsallisHistoryMinimizer arms harms eta score hmeasurable))) (hboundIntegrable : Integrable (halfPowerStabilityBound arms eta (halfTsallisHistoryMinimizer arms harms eta score)) historyMu) : integral (Exp3.actionProcessMeasure historyMu arms (halfTsallisHistoryMinimizer arms harms eta score) (measurableFiniteActionDistribution_halfTsallisHistoryMinimizer arms harms eta score hmeasurable)) (importanceWeightedStabilityScore arms (halfTsallisHistoryMinimizer arms harms eta score) loss (halfTsallisHistoryUpdatedMinimizer arms harms eta score loss)) <= integral historyMu (halfPowerStabilityBound arms eta (halfTsallisHistoryMinimizer arms harms eta score))