Lean module · Finite-horizon RL
BanditRLProof.RL.FiniteHorizonAdaptiveCumulativeEpisodewiseCommonSpaceConsistency
# Common-space episodewise realized behavior consistency The preceding episodewise route gives one sharp certificate for every scheduled finite window, but those windows have different trajectory types. This module places the finite-window laws on one dependent infinite product. Coordinate `n` therefore has exactly the compiled adaptive trajectory law for schedule `n`, and the scheduled realized-regret coordinates form one random process. The coupling is intentionally the independent-coordinate product coupling. It is sufficient for a mathematically literal convergence-in-probability theorem, but it is not a nested coupling of one online algorithm across schedules and does not imply pathwise, almost-sure, or anytime behavior.
Module map
Imports
BanditRLProof.RL.FiniteHorizonAdaptiveCumulativeEpisodewiseRealizedBehaviorConsistency
Imported by
BanditRLProof, BanditRLProof.RL.FiniteHorizonAdaptiveCumulativeEpisodewiseCommonSpaceExpectedConsistency
Declarations
Open an item to read its exact compact statement and source link. Detailed teaching notes are linked when registered.
theorem
BanditRLProof.FiniteHorizonRL.AdaptiveEpisodeBatchSource.measurable_realizedSuccessorCumulativeRegret
Compiled
Realized cumulative successor regret is measurable in the finite trajectory.
theorem measurable_realizedSuccessorCumulativeRegret {mdp : MDP State Action} {initialState : Measure State} [IsProbabilityMeasure initialState] {episodes : Nat} (source : AdaptiveEpisodeBatchSource mdp initialState episodes) (rounds : Nat) : Measurable (fun trajectory => source.realizedSuccessorCumulativeRegret trajectory rounds)
theorem
BanditRLProof.FiniteHorizonRL.AdaptiveEpisodeBatchSource.measurable_realizedSuccessorAverageRegret
Compiled
Realized average successor regret is measurable in the finite trajectory.
theorem measurable_realizedSuccessorAverageRegret {mdp : MDP State Action} {initialState : Measure State} [IsProbabilityMeasure initialState] {episodes : Nat} (source : AdaptiveEpisodeBatchSource mdp initialState episodes) (rounds : Nat) : Measurable (fun trajectory => source.realizedSuccessorAverageRegret trajectory rounds)
theorem
BanditRLProof.FiniteHorizonRL.AdaptiveEpisodeBatchSource.successorExpectedCumulativeRegret_nonneg
Compiled
A finite sum of policy expected regrets is nonnegative.
theorem successorExpectedCumulativeRegret_nonneg {mdp : MDP State Action} {initialState : Measure State} [IsProbabilityMeasure initialState] {episodes : Nat} (source : AdaptiveEpisodeBatchSource mdp initialState episodes) (trajectory : EpisodeBatchTrajectory mdp episodes) (rounds : Nat) : 0 <= source.successorExpectedCumulativeRegret trajectory rounds
theorem
BanditRLProof.FiniteHorizonRL.AdaptiveEpisodeBatchSource.successorExpectedAverageRegret_nonneg
Compiled
The average of successor policy expected regrets is nonnegative.
theorem successorExpectedAverageRegret_nonneg {mdp : MDP State Action} {initialState : Measure State} [IsProbabilityMeasure initialState] {episodes : Nat} (source : AdaptiveEpisodeBatchSource mdp initialState episodes) (trajectory : EpisodeBatchTrajectory mdp episodes) (rounds : Nat) : 0 <= source.successorExpectedAverageRegret trajectory rounds
theorem
BanditRLProof.FiniteHorizonRL.AdaptiveEpisodeBatchSource.abs_realizedSuccessorAverageRegret_le_of_expected_le_of_deviation_abs_le
Compiled
An expected-regret upper bound and a two-sided return-deviation bound control the absolute realized average regret.
theorem abs_realizedSuccessorAverageRegret_le_of_expected_le_of_deviation_abs_le {mdp : MDP State Action} {initialState : Measure State} [IsProbabilityMeasure initialState] {episodes : Nat} (source : AdaptiveEpisodeBatchSource mdp initialState episodes) (trajectory : EpisodeBatchTrajectory mdp episodes) (rounds : Nat) (hrounds : 0 < rounds) (hepisodes : 0 < episodes) (expectedBound deviationBound : Real) (hexpected : source.successorExpectedAverageRegret trajectory rounds <= expectedBound) (hdeviation : |source.cumulativeSuccessorReturnDeviation rounds trajectory| <= deviationBound) : |source.realizedSuccessorAverageRegret trajectory rounds| <= expectedBound + deviationBound / ((episodes : Real) * (rounds : Real))
theorem
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.exploratorySource_trajectoryMeasure_cumulativeInverseSqrtPathSupport_optimism_and_decayingExplorationEpisodewiseAverageAbsoluteRealizedBehaviorConsistency
Compiled
The sharp finite-window certificate controls the absolute realized regret, not only its upper tail. This is the finite-window input needed by convergence in probability.
theorem exploratorySource_trajectoryMeasure_cumulativeInverseSqrtPathSupport_optimism_and_decayingExplorationEpisodewiseAverageAbsoluteRealizedBehaviorConsistency (mdp : MDP State Action) (initialState : Measure State) [IsProbabilityMeasure initialState] (baseVisitFloor : Real) (n : Nat) [StandardBorelSpace (EpisodeBatch mdp (AdaptiveEpisodeBatchSource.decayingExplorationScheduledEpisodes mdp baseVisitFloor n))] [StandardBorelSpace (EpisodeBatchTrajectory mdp (AdaptiveEpisodeBatchSource.decayingExplorationScheduledEpisodes mdp baseVisitFloor n))] (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (support : ExploratoryPathSupport mdp initialState) (hbaseFloor : ExploratoryPathUniformVisitFloor support 1 baseVisitFloor) (hrewardBound : forall state action, |mdp.reward state action| <= 1) (hhorizon : 0 < mdp.horizon) (hbaseVisitFloor : 0 < baseVisitFloor) : let rounds := AdaptiveEpisodeBatchSource.decayingExplorationRounds mdp n let delta := AdaptiveEpisodeBatchSource.vanishingAverageConfidenceDelta n let explorationRate := AdaptiveEpisodeBatchSource.decayingExplorationRate n let visitFloor := AdaptiveEpisodeBatchSource.decayingExplorationVisitFloor mdp baseVisitFloor n let episodes := AdaptiveEpisodeBatchSource.decayingExplorationScheduledEpisodes mdp baseVisitFloor n let countRadius := AdaptiveEpisodeBatchSource.normalizedCumulativeInverseSqrtCountRadius mdp rounds delta visitFloor let source := exploratorySource mdp initialState episodes initialTable defaultState countRadius explorationRate (AdaptiveEpisodeBatchSource.decayingExplorationRate_le_one n) let countBadEvent := source.adaptiveCumulativeCountBadEvent rounds delta let returnBadEvent := source.episodewiseSuccessorReturnDeviationBadEvent rounds delta let combinedBadEvent := countBadEvent ∪ returnBadEvent MeasurableSet combinedBadEvent /\ source.trajectoryMeasure combinedBadEvent <= AdaptiveEpisodeBatchSource.decayingExplorationRealizedFailureBudget n /\ forall trajectory, trajectory ∉ combinedBadEvent -> (forall round : Fin rounds, forall state, mdp.optimalValueRemaining mdp.horizon le_rfl state <= (adaptiveCumulativeEmpiricalOptimisticPlanAt trajectory defaultState countRadius round).upperValueRemaining mdp.horizon le_rfl state) /\ |source.realizedSuccessorAverageRegret trajectory rounds| <= AdaptiveEpisodeBatchSource.decayingExplorationEpisodewiseAverageRealizedBehaviorRegretBound mdp baseVisitFloor n
abbrev
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.DecayingExplorationEpisodewiseWindowSpace
Compiled
The dependent sample space containing one complete scheduled experiment per coordinate.
abbrev DecayingExplorationEpisodewiseWindowSpace (mdp : MDP State Action) (baseVisitFloor : Real)
def
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.decayingExplorationEpisodewiseWindowSource
Compiled
The concrete adaptive source used at schedule coordinate `n`.
noncomputable def decayingExplorationEpisodewiseWindowSource (mdp : MDP State Action) (initialState : Measure State) [IsProbabilityMeasure initialState] (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (baseVisitFloor : Real) (n : Nat) : AdaptiveEpisodeBatchSource mdp initialState (AdaptiveEpisodeBatchSource.decayingExplorationScheduledEpisodes mdp baseVisitFloor n)
def
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.decayingExplorationEpisodewiseWindowMeasure
Compiled
The scheduled adaptive trajectory law at common-space coordinate `n`.
noncomputable def decayingExplorationEpisodewiseWindowMeasure (mdp : MDP State Action) (initialState : Measure State) [IsProbabilityMeasure initialState] (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (baseVisitFloor : Real) (n : Nat) : Measure (EpisodeBatchTrajectory mdp (AdaptiveEpisodeBatchSource.decayingExplorationScheduledEpisodes mdp baseVisitFloor n))
def
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.decayingExplorationEpisodewiseCommonMeasure
Compiled
Independent-coordinate coupling of all scheduled finite-window trajectory laws.
noncomputable def decayingExplorationEpisodewiseCommonMeasure (mdp : MDP State Action) (initialState : Measure State) [IsProbabilityMeasure initialState] (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (baseVisitFloor : Real) : Measure (DecayingExplorationEpisodewiseWindowSpace mdp baseVisitFloor)
theorem
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.decayingExplorationEpisodewiseCommonMeasure_map_eval
Compiled
Every common-space coordinate has exactly its scheduled adaptive law.
theorem decayingExplorationEpisodewiseCommonMeasure_map_eval (mdp : MDP State Action) (initialState : Measure State) [IsProbabilityMeasure initialState] (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (baseVisitFloor : Real) (n : Nat) : (decayingExplorationEpisodewiseCommonMeasure mdp initialState initialTable defaultState baseVisitFloor).map (fun omega => omega n) = decayingExplorationEpisodewiseWindowMeasure mdp initialState initialTable defaultState baseVisitFloor n
def
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.decayingExplorationEpisodewiseRealizedBehaviorRegretProcess
Compiled
Scheduled realized successor-average regret as one common-space process.
noncomputable def decayingExplorationEpisodewiseRealizedBehaviorRegretProcess (mdp : MDP State Action) (initialState : Measure State) [IsProbabilityMeasure initialState] (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (baseVisitFloor : Real) (n : Nat) (omega : DecayingExplorationEpisodewiseWindowSpace mdp baseVisitFloor) : Real
theorem
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.measurable_decayingExplorationEpisodewiseRealizedBehaviorRegretProcess
Compiled
Every scheduled regret coordinate is a measurable real random variable.
theorem measurable_decayingExplorationEpisodewiseRealizedBehaviorRegretProcess (mdp : MDP State Action) (initialState : Measure State) [IsProbabilityMeasure initialState] (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (baseVisitFloor : Real) (n : Nat) : Measurable (decayingExplorationEpisodewiseRealizedBehaviorRegretProcess mdp initialState initialTable defaultState baseVisitFloor n)
def
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.decayingExplorationEpisodewiseCommonBadEvent
Compiled
Pull the sharp count/return union at coordinate `n` to the common space.
noncomputable def decayingExplorationEpisodewiseCommonBadEvent (mdp : MDP State Action) (initialState : Measure State) [IsProbabilityMeasure initialState] (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (baseVisitFloor : Real) (n : Nat) : Set (DecayingExplorationEpisodewiseWindowSpace mdp baseVisitFloor)
theorem
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.decayingExplorationEpisodewiseCommonMeasure_badEvent_le
Compiled
The pulled-back coordinate bad event inherits the exact finite-window budget.
theorem decayingExplorationEpisodewiseCommonMeasure_badEvent_le (mdp : MDP State Action) (initialState : Measure State) [IsProbabilityMeasure initialState] (baseVisitFloor : Real) (hbatchBorel : forall n, StandardBorelSpace (EpisodeBatch mdp (AdaptiveEpisodeBatchSource.decayingExplorationScheduledEpisodes mdp baseVisitFloor n))) (htrajectoryBorel : forall n, StandardBorelSpace (EpisodeBatchTrajectory mdp (AdaptiveEpisodeBatchSource.decayingExplorationScheduledEpisodes mdp baseVisitFloor n))) (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (support : ExploratoryPathSupport mdp initialState) (hbaseFloor : ExploratoryPathUniformVisitFloor support 1 baseVisitFloor) (hrewardBound : forall state action, |mdp.reward state action| <= 1) (hhorizon : 0 < mdp.horizon) (hbaseVisitFloor : 0 < baseVisitFloor) (n : Nat) : decayingExplorationEpisodewiseCommonMeasure mdp initialState initialTable defaultState baseVisitFloor (decayingExplorationEpisodewiseCommonBadEvent mdp initialState initialTable defaultState baseVisitFloor n) <= AdaptiveEpisodeBatchSource.decayingExplorationRealizedFailureBudget n
theorem
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.abs_decayingExplorationEpisodewiseRealizedBehaviorRegretProcess_le_of_not_mem_badEvent
Compiled
Outside the pulled-back bad event, coordinate `n` has the sharp absolute bound.
theorem abs_decayingExplorationEpisodewiseRealizedBehaviorRegretProcess_le_of_not_mem_badEvent (mdp : MDP State Action) (initialState : Measure State) [IsProbabilityMeasure initialState] (baseVisitFloor : Real) (hbatchBorel : forall n, StandardBorelSpace (EpisodeBatch mdp (AdaptiveEpisodeBatchSource.decayingExplorationScheduledEpisodes mdp baseVisitFloor n))) (htrajectoryBorel : forall n, StandardBorelSpace (EpisodeBatchTrajectory mdp (AdaptiveEpisodeBatchSource.decayingExplorationScheduledEpisodes mdp baseVisitFloor n))) (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (support : ExploratoryPathSupport mdp initialState) (hbaseFloor : ExploratoryPathUniformVisitFloor support 1 baseVisitFloor) (hrewardBound : forall state action, |mdp.reward state action| <= 1) (hhorizon : 0 < mdp.horizon) (hbaseVisitFloor : 0 < baseVisitFloor) (n : Nat) (omega : DecayingExplorationEpisodewiseWindowSpace mdp baseVisitFloor) (homega : omega ∉ decayingExplorationEpisodewiseCommonBadEvent mdp initialState initialTable defaultState baseVisitFloor n) : |decayingExplorationEpisodewiseRealizedBehaviorRegretProcess mdp initialState initialTable defaultState baseVisitFloor n omega| <= AdaptiveEpisodeBatchSource.decayingExplorationEpisodewiseAverageRealizedBehaviorRegretBound mdp baseVisitFloor n
theorem
BanditRLProof.FiniteHorizonRL.AdaptiveCumulativeEmpiricalOptimisticSource.exploratorySource_decayingExplorationEpisodewiseCommonMeasure_marginals_and_realizedBehaviorRegret_tendstoInMeasure_zero
Compiled
Terminal common-space theorem: measurable regret coordinates, exact scheduled marginals, and convergence in probability of the process to zero.
theorem exploratorySource_decayingExplorationEpisodewiseCommonMeasure_marginals_and_realizedBehaviorRegret_tendstoInMeasure_zero (mdp : MDP State Action) (initialState : Measure State) [IsProbabilityMeasure initialState] (baseVisitFloor : Real) (hbatchBorel : forall n, StandardBorelSpace (EpisodeBatch mdp (AdaptiveEpisodeBatchSource.decayingExplorationScheduledEpisodes mdp baseVisitFloor n))) (htrajectoryBorel : forall n, StandardBorelSpace (EpisodeBatchTrajectory mdp (AdaptiveEpisodeBatchSource.decayingExplorationScheduledEpisodes mdp baseVisitFloor n))) (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (support : ExploratoryPathSupport mdp initialState) (hbaseFloor : ExploratoryPathUniformVisitFloor support 1 baseVisitFloor) (hrewardBound : forall state action, |mdp.reward state action| <= 1) (hhorizon : 0 < mdp.horizon) (hbaseVisitFloor : 0 < baseVisitFloor) : (forall n, Measurable (decayingExplorationEpisodewiseRealizedBehaviorRegretProcess mdp initialState initialTable defaultState baseVisitFloor n)) /\ (forall n, (decayingExplorationEpisodewiseCommonMeasure mdp initialState initialTable defaultState baseVisitFloor).map (fun omega => omega n) = decayingExplorationEpisodewiseWindowMeasure mdp initialState initialTable defaultState baseVisitFloor n) /\ TendstoInMeasure (decayingExplorationEpisodewiseCommonMeasure mdp initialState initialTable defaultState baseVisitFloor) (decayingExplorationEpisodewiseRealizedBehaviorRegretProcess mdp initialState initialTable defaultState baseVisitFloor) atTop (fun _ => 0)