BanditRLlib
Lean gate passed before this site build; local proof declarations are shown as compiled.

Lean module · Finite-horizon RL

BanditRLProof.RL.FiniteHorizonExploratoryPathSupportEpisodeThreshold

# Episode-threshold calibration from exploratory path support This module solves the scalar square-root/logarithm obligations left by the explicit path-support calibration route. A closed-form lower bound on the number of episodes implies both the strict count margin and the finite-state, finite-horizon half contraction, then recovers the same adaptive confidence, optimism, and recommended-policy expected-regret endpoint.

Module map

Declarations
8
Placeholders
0

Imports

BanditRLProof.RL.FiniteHorizonExploratoryPathSupportExplicitCalibration

Imported by

BanditRLProof, BanditRLProof.RL.FiniteHorizonAdaptiveEmpiricalOptimisticOccupancyEnvelope, BanditRLProof.RL.FiniteHorizonAdaptiveStochasticRewardSampledEmpiricalOptimisticSelfConsistentSchedule

Declarations

Open an item to read its exact compact statement and source link. Detailed teaching notes are linked when registered.

def BanditRLProof.FiniteHorizonRL.exploratoryPathCalibrationDimensionFactor Compiled

Dimension factor sufficient to turn a radius margin into the half contraction.

noncomputable def exploratoryPathCalibrationDimensionFactor (mdp : MDP State Action) : Real
theorem BanditRLProof.FiniteHorizonRL.one_le_exploratoryPathCalibrationDimensionFactor Compiled

The calibration dimension factor is at least one.

theorem one_le_exploratoryPathCalibrationDimensionFactor (mdp : MDP State Action) : 1 <= exploratoryPathCalibrationDimensionFactor mdp
def BanditRLProof.FiniteHorizonRL.exploratoryPathCalibrationEpisodeThreshold Compiled

Closed-form Real episode threshold for the local simultaneous-count budget. Its denominator is positive when `visitFloor` is positive.

noncomputable def exploratoryPathCalibrationEpisodeThreshold (mdp : MDP State Action) (rounds : Nat) (delta visitFloor : Real) : Real
theorem BanditRLProof.FiniteHorizonRL.simultaneousCountConfidenceRadius_lt_episodes_mul_visitFloor_div_dimensionFactor_of_threshold Compiled

Above the explicit episode threshold, the simultaneous count radius is less than the common expected-count floor divided by the calibration dimension factor.

theorem simultaneousCountConfidenceRadius_lt_episodes_mul_visitFloor_div_dimensionFactor_of_threshold (mdp : MDP State Action) (witnessState : State) {rounds episodes : Nat} {delta visitFloor : Real} (hhorizon : 0 < mdp.horizon) (hrounds : 0 < rounds) (hepisodes : 0 < episodes) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (hvisitFloor : 0 < visitFloor) (hthreshold : exploratoryPathCalibrationEpisodeThreshold mdp rounds delta visitFloor < (episodes : Real)) : simultaneousCountConfidenceRadius mdp episodes (multiBatchLocalDelta rounds delta) < (episodes : Real) * visitFloor / exploratoryPathCalibrationDimensionFactor mdp
theorem BanditRLProof.FiniteHorizonRL.episodeThreshold_countMargin_and_halfContraction Compiled

The episode threshold simultaneously discharges the strict count margin and the half-contraction premise of the explicit path-support calibration route.

theorem episodeThreshold_countMargin_and_halfContraction (mdp : MDP State Action) (witnessState : State) {rounds episodes : Nat} {delta visitFloor : Real} (hhorizon : 0 < mdp.horizon) (hrounds : 0 < rounds) (hepisodes : 0 < episodes) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (hvisitFloor : 0 < visitFloor) (hthreshold : exploratoryPathCalibrationEpisodeThreshold mdp rounds delta visitFloor < (episodes : Real)) : simultaneousCountConfidenceRadius mdp episodes (multiBatchLocalDelta rounds delta) < (episodes : Real) * visitFloor /\ (Fintype.card State : Real) * uniformFloorTransitionCoordinateRadius mdp episodes (multiBatchLocalDelta rounds delta) visitFloor * (mdp.horizon : Real) <= 1 / 2
theorem BanditRLProof.FiniteHorizonRL.AdaptiveEmpiricalOptimisticSource.exploratorySource_sourceTransitionBonusCover_of_pathSupport_episodeThreshold Compiled

The closed-form episode threshold constructs the source-wide transition cover.

theorem exploratorySource_sourceTransitionBonusCover_of_pathSupport_episodeThreshold {mdp : MDP State Action} {initialState : Measure State} [IsProbabilityMeasure initialState] {episodes : Nat} (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (rewardBound delta : Real) (explorationRate : NNReal) (hexplorationRate : explorationRate <= 1) (rounds : Nat) (hhorizon : 0 < mdp.horizon) (hrounds : 0 < rounds) (hepisodes : 0 < episodes) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (support : ExploratoryPathSupport mdp initialState) (visitFloor : Real) (hvisitFloor : 0 < visitFloor) (hfloor : ExploratoryPathUniformVisitFloor support explorationRate visitFloor) (hthreshold : exploratoryPathCalibrationEpisodeThreshold mdp rounds delta visitFloor < (episodes : Real)) (hrewardBound_nonneg : 0 <= rewardBound) : let behaviorSource := exploratorySource mdp initialState episodes initialTable defaultState rewardBound explorationRate hexplorationRate SourceTransitionBonusCover behaviorSource rounds (multiBatchLocalDelta rounds delta) rewardBound rewardBound
theorem BanditRLProof.FiniteHorizonRL.AdaptiveEmpiricalOptimisticSource.exploratorySource_sourceCalibration_of_pathSupport_episodeThreshold Compiled

The closed-form episode threshold constructs the full source calibration.

theorem exploratorySource_sourceCalibration_of_pathSupport_episodeThreshold {mdp : MDP State Action} {initialState : Measure State} [IsProbabilityMeasure initialState] {episodes : Nat} (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (rewardBound delta : Real) (explorationRate : NNReal) (hexplorationRate : explorationRate <= 1) (rounds : Nat) (hhorizon : 0 < mdp.horizon) (hrounds : 0 < rounds) (hepisodes : 0 < episodes) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (support : ExploratoryPathSupport mdp initialState) (visitFloor : Real) (hvisitFloor : 0 < visitFloor) (hfloor : ExploratoryPathUniformVisitFloor support explorationRate visitFloor) (hthreshold : exploratoryPathCalibrationEpisodeThreshold mdp rounds delta visitFloor < (episodes : Real)) (hrewardBound_nonneg : 0 <= rewardBound) : let behaviorSource := exploratorySource mdp initialState episodes initialTable defaultState rewardBound explorationRate hexplorationRate SourceCalibration behaviorSource rounds delta rewardBound rewardBound
theorem BanditRLProof.FiniteHorizonRL.AdaptiveEmpiricalOptimisticSource.exploratorySource_trajectoryMeasure_allCoordinateConfidence_optimism_and_recommendedExpectedRegret_of_pathSupport_episodeThreshold Compiled

Route endpoint: path support and one explicit episode threshold imply global adaptive count confidence, roundwise optimism, and recommended expected regret.

theorem exploratorySource_trajectoryMeasure_allCoordinateConfidence_optimism_and_recommendedExpectedRegret_of_pathSupport_episodeThreshold {mdp : MDP State Action} {initialState : Measure State} [IsProbabilityMeasure initialState] {episodes : Nat} (initialTable : DeterministicMarkovPolicyTable mdp) (defaultState : State) (rewardBound : Real) (explorationRate : NNReal) (hexplorationRate : explorationRate <= 1) (hrewardBound : forall state action, |mdp.reward state action| <= rewardBound) (rounds : Nat) (hhorizon : 0 < mdp.horizon) (hrounds : 0 < rounds) (hepisodes : 0 < episodes) (delta : Real) (hdelta : 0 < delta) (hdelta_le_one : delta <= 1) (support : ExploratoryPathSupport mdp initialState) (visitFloor : Real) (hvisitFloor : 0 < visitFloor) (hfloor : ExploratoryPathUniformVisitFloor support explorationRate visitFloor) (hthreshold : exploratoryPathCalibrationEpisodeThreshold mdp rounds delta visitFloor < (episodes : Real)) : let behaviorSource := exploratorySource mdp initialState episodes initialTable defaultState rewardBound explorationRate hexplorationRate let bad := behaviorSource.adaptiveSimultaneousCountBadEvent rounds delta MeasurableSet bad /\ behaviorSource.trajectoryMeasure bad <= ENNReal.ofReal delta /\ forall trajectory, trajectory ∉ bad -> (forall round : Fin rounds, forall state, mdp.optimalValueRemaining mdp.horizon le_rfl state <= (adaptiveEmpiricalOptimisticPlanAt (mdp