Lean module · Frontier
BanditRLProof.Algorithms.StochasticGradientBanditTheoremTwoNativeTrajectory
The latent arm-stream coupling samples every reward coordinate before the algorithm runs. The native fixed-IID process samples only the reward selected at each round. Connecting those constructions requires a deferred-decisions argument, not merely equality of one-coordinate marginals.
Module map
Imports
BanditRLProof.Algorithms.StochasticGradientBanditTheoremTwoLatentReward, BanditRLProof.Algorithms.ThompsonRecursiveSampler, BanditRLProof.Algorithms.ThompsonReferencePolicy, BanditRLProof.KernelIndependentExtension, BanditRLProof.KernelTrajectoryPrefix
Imported by
BanditRLProof, BanditRLProof.Algorithms.StochasticGradientBanditTheoremTwoNativePrefix
Declarations
Open an item to read its exact compact statement and source link. Detailed teaching notes are linked when registered.
theorem
BanditRLProof.UCB.armStreamMeasure_map_frestrictLe_eq_pi
Compiled
Restricting the latent arm stream through time `n` gives the exact finite product of the per-round arm-vector laws.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.UCB.armStreamMeasure_map_frestrictLe_eq_piReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem armStreamMeasure_map_frestrictLe_eq_pi {K : Nat} (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) : Measure.map (Preorder.frestrictLe n) (armStreamMeasure nu) = Measure.pi (fun _ : Finset.Iic n => Measure.infinitePi fun arm : Fin K => nu arm)
def
BanditRLProof.UCB.extendArmStreamFinitePrefix
Compiled
Extend a finite arm-stream box by zero rows after its endpoint.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.UCB.extendArmStreamFinitePrefixReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
def extendArmStreamFinitePrefix {K : Nat} (n : Nat) (streamBox : (i : Finset.Iic n) -> Fin K -> Real) : ArmRewardStream K
theorem
BanditRLProof.UCB.measurable_extendArmStreamFinitePrefix
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.UCB.measurable_extendArmStreamFinitePrefixReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem measurable_extendArmStreamFinitePrefix {K : Nat} (n : Nat) : Measurable (extendArmStreamFinitePrefix (K := K) n)
theorem
BanditRLProof.UCB.extendArmStreamFinitePrefix_apply_of_le
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.UCB.extendArmStreamFinitePrefix_apply_of_leReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem extendArmStreamFinitePrefix_apply_of_le {K : Nat} (n t : Nat) (ht : t <= n) (streamBox : (i : Finset.Iic n) -> Fin K -> Real) : extendArmStreamFinitePrefix n streamBox t = streamBox ⟨t, Finset.mem_Iic.mpr ht⟩
theorem
BanditRLProof.UCB.armStreamMeasure_map_output_coordinate_compProd_comap_without_eq_prod
Compiled
A finite kernel driven only by the complement of one arm-stream coordinate leaves that coordinate's prescribed marginal independent of the kernel output. The output kernel may be sub-Markov, as needed after branch restriction.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.UCB.armStreamMeasure_map_output_coordinate_compProd_comap_without_eq_prodReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem armStreamMeasure_map_output_coordinate_compProd_comap_without_eq_prod {K : Nat} {Output : Type*} [MeasurableSpace Output] (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (target : Nat × Fin K) (kernel : Kernel ({index : Nat × Fin K // index ≠ target} -> Real) Output) [IsFiniteKernel kernel] : Measure.map (fun sample : ArmRewardStream K × Output => (sample.2, armStreamCoordinate target sample.1)) (armStreamMeasure nu ⊗ₘ kernel.comap (armStreamWithoutCoordinate target) (measurable_armStreamWithoutCoordinate target)) = (Measure.map Prod.snd (armStreamMeasure nu ⊗ₘ kernel.comap (armStreamWithoutCoordinate target) (measurable_armStreamWithoutCoordinate target))).prod (nu target.2)
theorem
BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_prefix_next_eq_compProd
Compiled
Fixed-stream finite-prefix/next-pair recursion for the latent arm-stream trajectory. This is the trajectory-level recurrence used by the count-capped locality induction below.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_prefix_next_eq_compProdReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamTrajectoryKernel_map_prefix_next_eq_compProd {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (stream : UCB.ArmRewardStream K) (n : Nat) : (latentArmStreamTrajectoryKernel algorithm env stream).map (fun trajectory => (Preorder.frestrictLe n trajectory, trajectory (n + 1))) = (latentArmStreamTrajectoryKernel algorithm env stream).map (Preorder.frestrictLe n) ⊗ₘ historyStepKernel algorithm ((latentArmStreamMeasurableHistoryEnvironment (Env := Env) (K := K)).at (env, stream)) n
theorem
BanditRLProof.Thompson.latentArmStreamFeedback_eq_of_withoutCoordinate_eq_of_selectedCoordinate_ne
Compiled
If two latent reward streams agree away from one coordinate, then their feedback laws agree at every history/action pair whose next-unused coordinate is not the omitted one.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamFeedback_eq_of_withoutCoordinate_eq_of_selectedCoordinate_neReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamFeedback_eq_of_withoutCoordinate_eq_of_selectedCoordinate_ne {Env : Type u} {K : Nat} [MeasurableSpace Env] (env : Env) (target : Nat × Fin K) (stream₁ stream₂ : UCB.ArmRewardStream K) (n : Nat) (history : History.FinitePairHistory (Fin K) Real n) (arm : Fin K) (hwithout : UCB.armStreamWithoutCoordinate target stream₁ = UCB.armStreamWithoutCoordinate target stream₂) (hne : (ETC.realHistoryPullCount n history arm, arm) ≠ target) : ((latentArmStreamMeasurableHistoryEnvironment (Env := Env) (K := K)).at (env, stream₁)).feedback n (history, arm) = ((latentArmStreamMeasurableHistoryEnvironment (Env := Env) (K := K)).at (env, stream₂)).feedback n (history, arm)
theorem
BanditRLProof.Thompson.historyStepKernel_apply_eq_of_withoutCoordinate_eq_of_target_count_lt
Compiled
Before the target coordinate can be the next coordinate of its arm, the entire next-pair law agrees for streams with the same omitted-coordinate projection.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.historyStepKernel_apply_eq_of_withoutCoordinate_eq_of_target_count_ltReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem historyStepKernel_apply_eq_of_withoutCoordinate_eq_of_target_count_lt {Env : Type u} {K : Nat} [MeasurableSpace Env] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (target : Nat × Fin K) (stream₁ stream₂ : UCB.ArmRewardStream K) (n : Nat) (history : History.FinitePairHistory (Fin K) Real n) (hwithout : UCB.armStreamWithoutCoordinate target stream₁ = UCB.armStreamWithoutCoordinate target stream₂) (hcount : ETC.realHistoryPullCount n history target.2 < target.1) : historyStepKernel algorithm ((latentArmStreamMeasurableHistoryEnvironment (Env := Env) (K := K)).at (env, stream₁)) n history = historyStepKernel algorithm ((latentArmStreamMeasurableHistoryEnvironment (Env := Env) (K := K)).at (env, stream₂)) n history
def
BanditRLProof.Thompson.latentArmStreamNextActionNeSet
Compiled
Next pairs whose action avoids a designated arm.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamNextActionNeSetReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
def latentArmStreamNextActionNeSet {K : Nat} (arm : Fin K) : Set (Fin K × Real)
def
BanditRLProof.Thompson.latentArmStreamInitialSafeArmSet
Compiled
Initial actions whose time-zero reward coordinate is not the omitted target.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamInitialSafeArmSetReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
def latentArmStreamInitialSafeArmSet {K : Nat} (target : Nat × Fin K) : Set (Fin K)
theorem
BanditRLProof.Thompson.measurableSet_latentArmStreamNextActionNeSet
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.measurableSet_latentArmStreamNextActionNeSetReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem measurableSet_latentArmStreamNextActionNeSet {K : Nat} (arm : Fin K) : MeasurableSet (latentArmStreamNextActionNeSet arm)
theorem
BanditRLProof.Thompson.historyStepKernel_apply_restrict_nextActionNe_eq_of_withoutCoordinate_eq
Compiled
Even when the target pull index may already be next, the part of the next-pair law selecting another arm remains independent of the target coordinate.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.historyStepKernel_apply_restrict_nextActionNe_eq_of_withoutCoordinate_eqReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem historyStepKernel_apply_restrict_nextActionNe_eq_of_withoutCoordinate_eq {Env : Type u} {K : Nat} [MeasurableSpace Env] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (target : Nat × Fin K) (stream₁ stream₂ : UCB.ArmRewardStream K) (n : Nat) (history : History.FinitePairHistory (Fin K) Real n) (hwithout : UCB.armStreamWithoutCoordinate target stream₁ = UCB.armStreamWithoutCoordinate target stream₂) : (historyStepKernel algorithm ((latentArmStreamMeasurableHistoryEnvironment (Env := Env) (K := K)).at (env, stream₁)) n history).restrict (latentArmStreamNextActionNeSet target.2) = (historyStepKernel algorithm ((latentArmStreamMeasurableHistoryEnvironment (Env := Env) (K := K)).at (env, stream₂)) n history).restrict (latentArmStreamNextActionNeSet target.2)
theorem
BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_frestrictLe_zero
Compiled
The time-zero visible prefix is the initial action/feedback pair pushed through the singleton-history constructor.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_frestrictLe_zeroReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamTrajectoryKernel_map_frestrictLe_zero {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (stream : UCB.ArmRewardStream K) : (latentArmStreamTrajectoryKernel algorithm env stream).map (Preorder.frestrictLe 0) = (algorithm.initialAction ⊗ₘ ((latentArmStreamMeasurableHistoryEnvironment (Env := Env) (K := K)).at (env, stream)).initialFeedback).map singletonPairHistory
theorem
BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_frestrictLe_eq_of_streamPrefix_eq
Compiled
Two latent streams agreeing through `n` generate the same visible trajectory law through `n`. Action randomization remains inside the canonical trajectory kernel; the argument changes only deterministic reward fibers.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_frestrictLe_eq_of_streamPrefix_eqReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamTrajectoryKernel_map_frestrictLe_eq_of_streamPrefix_eq {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (stream₁ stream₂ : UCB.ArmRewardStream K) (n : Nat) (hstream : Preorder.frestrictLe n stream₁ = Preorder.frestrictLe n stream₂) : (latentArmStreamTrajectoryKernel algorithm env stream₁).map (Preorder.frestrictLe n) = (latentArmStreamTrajectoryKernel algorithm env stream₂).map (Preorder.frestrictLe n)
def
BanditRLProof.Thompson.latentArmStreamVisiblePrefixKernel
Compiled
Finite visible-prefix kernel after replacing the infinite reward stream by its zero-extended finite box.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisiblePrefixKernelReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
noncomputable def latentArmStreamVisiblePrefixKernel {Env : Type u} {K : Nat} [MeasurableSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (n : Nat) : Kernel ((i : Finset.Iic n) -> Fin K -> Real) (History.FinitePairHistory (Fin K) Real n)
theorem
BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_frestrictLe_eq_prefixKernel_comap
Compiled
The latent visible-prefix kernel factors exactly through the finite stream box through the same endpoint.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_frestrictLe_eq_prefixKernel_comapReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamTrajectoryKernel_map_frestrictLe_eq_prefixKernel_comap {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (n : Nat) : (latentArmStreamTrajectoryKernel algorithm env).map (Preorder.frestrictLe n) = (latentArmStreamVisiblePrefixKernel algorithm env n).comap (Preorder.frestrictLe n) (Preorder.measurable_frestrictLe n)
def
BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextAction
Compiled
Visible history through `n` paired with the action selected at `n + 1`.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextActionReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
def latentArmStreamVisiblePrefixNextAction {K : Nat} (n : Nat) : ((t : Nat) -> Fin K × Real) -> History.FinitePairHistory (Fin K) Real n × Fin K
theorem
BanditRLProof.Thompson.measurable_latentArmStreamVisiblePrefixNextAction
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.measurable_latentArmStreamVisiblePrefixNextActionReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem measurable_latentArmStreamVisiblePrefixNextAction {K : Nat} (n : Nat) : Measurable (latentArmStreamVisiblePrefixNextAction (K := K) n)
def
BanditRLProof.Thompson.latentArmStreamVisibleNextReward
Compiled
Reward observed at the shifted successor time `n + 1`.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisibleNextRewardReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
def latentArmStreamVisibleNextReward {K : Nat} (n : Nat) : ((t : Nat) -> Fin K × Real) -> Real
theorem
BanditRLProof.Thompson.measurable_latentArmStreamVisibleNextReward
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.measurable_latentArmStreamVisibleNextRewardReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem measurable_latentArmStreamVisibleNextReward {K : Nat} (n : Nat) : Measurable (latentArmStreamVisibleNextReward (K := K) n)
def
BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextActionBranchKernel
Compiled
Canonical candidate for the condition kernel on one next-coordinate branch, reconstructed after fixing the omitted coordinate to zero.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextActionBranchKernelReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
noncomputable def latentArmStreamVisiblePrefixNextActionBranchKernel {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (n : Nat) (target : Nat × Fin K) : Kernel ({index : Nat × Fin K // index ≠ target} -> Real) (History.FinitePairHistory (Fin K) Real n × Fin K)
def
BanditRLProof.Thompson.latentArmStreamPrefixCountCap
Compiled
Histories through `n` that have not consumed the designated latent coordinate. The inclusive history count can equal the coordinate index: that coordinate is used only by the next reward from the same arm.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamPrefixCountCapReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
def latentArmStreamPrefixCountCap {K : Nat} (n : Nat) (target : Nat × Fin K) : Set (History.FinitePairHistory (Fin K) Real n)
theorem
BanditRLProof.Thompson.measurableSet_latentArmStreamPrefixCountCap
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.measurableSet_latentArmStreamPrefixCountCapReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem measurableSet_latentArmStreamPrefixCountCap {K : Nat} (n : Nat) (target : Nat × Fin K) : MeasurableSet (latentArmStreamPrefixCountCap n target)
theorem
BanditRLProof.Thompson.singletonPairHistory_preimage_latentArmStreamPrefixCountCap_zero
Compiled
Pulling the time-zero count cap back through the singleton-history constructor leaves exactly the actions whose initial reward coordinate is not the omitted target.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.singletonPairHistory_preimage_latentArmStreamPrefixCountCap_zeroReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem singletonPairHistory_preimage_latentArmStreamPrefixCountCap_zero {K : Nat} (target : Nat × Fin K) : (@singletonPairHistory (Fin K) Real) ⁻¹' latentArmStreamPrefixCountCap 0 target = latentArmStreamInitialSafeArmSet target ×ˢ Set.univ
theorem
BanditRLProof.Thompson.latentArmStreamPrefixCountCapLocality_zero
Compiled
Count-cap locality at the initial pair.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamPrefixCountCapLocality_zeroReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamPrefixCountCapLocality_zero {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (target : Nat × Fin K) (stream₁ stream₂ : UCB.ArmRewardStream K) (hwithout : UCB.armStreamWithoutCoordinate target stream₁ = UCB.armStreamWithoutCoordinate target stream₂) : ((latentArmStreamTrajectoryKernel algorithm env stream₁).map (Preorder.frestrictLe 0)).restrict (latentArmStreamPrefixCountCap 0 target) = ((latentArmStreamTrajectoryKernel algorithm env stream₂).map (Preorder.frestrictLe 0)).restrict (latentArmStreamPrefixCountCap 0 target)
def
BanditRLProof.Thompson.latentArmStreamPrefixCountLt
Compiled
Strict count region used by the first rectangle in the successor cap decomposition.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamPrefixCountLtReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
def latentArmStreamPrefixCountLt {K : Nat} (n : Nat) (target : Nat × Fin K) : Set (History.FinitePairHistory (Fin K) Real n)
theorem
BanditRLProof.Thompson.measurableSet_latentArmStreamPrefixCountLt
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.measurableSet_latentArmStreamPrefixCountLtReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem measurableSet_latentArmStreamPrefixCountLt {K : Nat} (n : Nat) (target : Nat × Fin K) : MeasurableSet (latentArmStreamPrefixCountLt n target)
def
BanditRLProof.Thompson.latentArmStreamPrefixCountEq
Compiled
Exact count region used by the second rectangle in the successor cap decomposition.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamPrefixCountEqReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
def latentArmStreamPrefixCountEq {K : Nat} (n : Nat) (target : Nat × Fin K) : Set (History.FinitePairHistory (Fin K) Real n)
theorem
BanditRLProof.Thompson.measurableSet_latentArmStreamPrefixCountEq
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.measurableSet_latentArmStreamPrefixCountEqReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem measurableSet_latentArmStreamPrefixCountEq {K : Nat} (n : Nat) (target : Nat × Fin K) : MeasurableSet (latentArmStreamPrefixCountEq n target)
theorem
BanditRLProof.Thompson.realHistoryPullCount_extendPairHistorySucc
Compiled
Extending an inclusive finite pair history increments exactly the count of the arm selected by the appended pair.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.realHistoryPullCount_extendPairHistorySuccReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem realHistoryPullCount_extendPairHistorySucc {K : Nat} (n : Nat) (history : History.FinitePairHistory (Fin K) Real n) (next : Fin K × Real) (arm : Fin K) : ETC.realHistoryPullCount (n + 1) (History.extendPairHistorySucc history next) arm = ETC.realHistoryPullCount n history arm + if next.1 = arm then 1 else 0
theorem
BanditRLProof.Thompson.mem_latentArmStreamPrefixCountCap_extendPairHistorySucc_iff
Compiled
The successor prefix remains below the target count cap exactly when the old prefix is capped and either has strict slack or avoids the target arm.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.mem_latentArmStreamPrefixCountCap_extendPairHistorySucc_iffReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem mem_latentArmStreamPrefixCountCap_extendPairHistorySucc_iff {K : Nat} (n : Nat) (history : History.FinitePairHistory (Fin K) Real n) (next : Fin K × Real) (target : Nat × Fin K) : History.extendPairHistorySucc history next ∈ latentArmStreamPrefixCountCap (n + 1) target ↔ history ∈ latentArmStreamPrefixCountCap n target ∧ (ETC.realHistoryPullCount n history target.2 < target.1 ∨ next.1 ≠ target.2)
theorem
BanditRLProof.Thompson.latentArmStreamPrefixCountCap_of_extendPairHistorySucc_mem
Compiled
A capped successor prefix was already capped before appending its last action/reward pair.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamPrefixCountCap_of_extendPairHistorySucc_memReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamPrefixCountCap_of_extendPairHistorySucc_mem {K : Nat} (n : Nat) (history : History.FinitePairHistory (Fin K) Real n) (next : Fin K × Real) (target : Nat × Fin K) (hcap : History.extendPairHistorySucc history next ∈ latentArmStreamPrefixCountCap (n + 1) target) : history ∈ latentArmStreamPrefixCountCap n target
theorem
BanditRLProof.Thompson.selectedCoordinate_ne_of_extendPairHistorySucc_mem_prefixCountCap
Compiled
Every appended pair that remains in the successor cap reads a stream coordinate different from the omitted target.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.selectedCoordinate_ne_of_extendPairHistorySucc_mem_prefixCountCapReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem selectedCoordinate_ne_of_extendPairHistorySucc_mem_prefixCountCap {K : Nat} (n : Nat) (history : History.FinitePairHistory (Fin K) Real n) (next : Fin K × Real) (target : Nat × Fin K) (hcap : History.extendPairHistorySucc history next ∈ latentArmStreamPrefixCountCap (n + 1) target) : (ETC.realHistoryPullCount n history next.1, next.1) ≠ target
theorem
BanditRLProof.Thompson.latentArmStreamSuccessorCountCap_preimage
Compiled
Pulling the successor count cap back through history extension gives two measurable rectangles: below the target count every action is safe, while at the target count only actions avoiding the target arm are safe.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamSuccessorCountCap_preimageReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamSuccessorCountCap_preimage {K : Nat} (n : Nat) (target : Nat × Fin K) : (fun sample : History.FinitePairHistory (Fin K) Real n × (Fin K × Real) => History.extendPairHistorySucc sample.1 sample.2) ⁻¹' latentArmStreamPrefixCountCap (n + 1) target = (latentArmStreamPrefixCountLt n target ×ˢ Set.univ) ∪ (latentArmStreamPrefixCountEq n target ×ˢ latentArmStreamNextActionNeSet target.2)
def
BanditRLProof.Thompson.latentArmStreamSuccessorCountCapSection
Compiled
Next action/reward pairs that keep a fixed old prefix below the successor count cap.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamSuccessorCountCapSectionReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
def latentArmStreamSuccessorCountCapSection {K : Nat} (n : Nat) (target : Nat × Fin K) (history : History.FinitePairHistory (Fin K) Real n) : Set (Fin K × Real)
theorem
BanditRLProof.Thompson.measurableSet_latentArmStreamSuccessorCountCapSection
Compiled
No declaration docstring is present; use the chapter context and exact statement below.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.measurableSet_latentArmStreamSuccessorCountCapSectionReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem measurableSet_latentArmStreamSuccessorCountCapSection {K : Nat} (n : Nat) (target : Nat × Fin K) (history : History.FinitePairHistory (Fin K) Real n) : MeasurableSet (latentArmStreamSuccessorCountCapSection n target history)
theorem
BanditRLProof.Thompson.historyStepKernel_apply_restrict_successorCountCap_eq_of_withoutCoordinate_eq
Compiled
Over a previously capped prefix, the one-step law restricted to capped successors depends only on the complement of the omitted stream coordinate.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.historyStepKernel_apply_restrict_successorCountCap_eq_of_withoutCoordinate_eqReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem historyStepKernel_apply_restrict_successorCountCap_eq_of_withoutCoordinate_eq {Env : Type u} {K : Nat} [MeasurableSpace Env] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (target : Nat × Fin K) (stream₁ stream₂ : UCB.ArmRewardStream K) (n : Nat) (history : History.FinitePairHistory (Fin K) Real n) (hwithout : UCB.armStreamWithoutCoordinate target stream₁ = UCB.armStreamWithoutCoordinate target stream₂) (hcap : history ∈ latentArmStreamPrefixCountCap n target) : (historyStepKernel algorithm ((latentArmStreamMeasurableHistoryEnvironment (Env := Env) (K := K)).at (env, stream₁)) n history).restrict (latentArmStreamSuccessorCountCapSection n target history) = (historyStepKernel algorithm ((latentArmStreamMeasurableHistoryEnvironment (Env := Env) (K := K)).at (env, stream₂)) n history).restrict (latentArmStreamSuccessorCountCapSection n target history)
theorem
BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_frestrictLe_restrict_countCap_succ
Compiled
Successor step for count-capped locality of the fixed-stream visible trajectory prefix law.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_frestrictLe_restrict_countCap_succReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamTrajectoryKernel_map_frestrictLe_restrict_countCap_succ {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (target : Nat × Fin K) (stream₁ stream₂ : UCB.ArmRewardStream K) (hwithout : UCB.armStreamWithoutCoordinate target stream₁ = UCB.armStreamWithoutCoordinate target stream₂) (n : Nat) (hprefix : ((latentArmStreamTrajectoryKernel algorithm env stream₁).map (Preorder.frestrictLe n)).restrict (latentArmStreamPrefixCountCap n target) = ((latentArmStreamTrajectoryKernel algorithm env stream₂).map (Preorder.frestrictLe n)).restrict (latentArmStreamPrefixCountCap n target)) : ((latentArmStreamTrajectoryKernel algorithm env stream₁).map (Preorder.frestrictLe (n + 1))).restrict (latentArmStreamPrefixCountCap (n + 1) target) = ((latentArmStreamTrajectoryKernel algorithm env stream₂).map (Preorder.frestrictLe (n + 1))).restrict (latentArmStreamPrefixCountCap (n + 1) target)
theorem
BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_frestrictLe_restrict_countCap_eq_of_withoutCoordinate_eq
Compiled
Count-capped fixed-stream prefix locality under equality of all latent coordinates except the omitted target.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamTrajectoryKernel_map_frestrictLe_restrict_countCap_eq_of_withoutCoordinate_eqReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamTrajectoryKernel_map_frestrictLe_restrict_countCap_eq_of_withoutCoordinate_eq {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (target : Nat × Fin K) (stream₁ stream₂ : UCB.ArmRewardStream K) (hwithout : UCB.armStreamWithoutCoordinate target stream₁ = UCB.armStreamWithoutCoordinate target stream₂) (n : Nat) : ((latentArmStreamTrajectoryKernel algorithm env stream₁).map (Preorder.frestrictLe n)).restrict (latentArmStreamPrefixCountCap n target) = ((latentArmStreamTrajectoryKernel algorithm env stream₂).map (Preorder.frestrictLe n)).restrict (latentArmStreamPrefixCountCap n target)
def
BanditRLProof.Thompson.LatentArmStreamVisiblePrefixNextActionBranchLocality
Compiled
Exact contract for branchwise prefix/action locality. The count-capped trajectory induction above proves this contract below.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.LatentArmStreamVisiblePrefixNextActionBranchLocalityReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
def LatentArmStreamVisiblePrefixNextActionBranchLocality {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (n : Nat) : Prop
theorem
BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextActionBranchLocality_of_prefixCountCapLocality
Compiled
Count-cap locality of visible prefixes implies the exact history/action branch-locality contract.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextActionBranchLocality_of_prefixCountCapLocalityReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisiblePrefixNextActionBranchLocality_of_prefixCountCapLocality {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (n : Nat) (hcap : ∀ (target : Nat × Fin K) (stream₁ stream₂ : UCB.ArmRewardStream K), UCB.armStreamWithoutCoordinate target stream₁ = UCB.armStreamWithoutCoordinate target stream₂ → (((latentArmStreamTrajectoryKernel algorithm env stream₁).map (Preorder.frestrictLe n)).restrict (latentArmStreamPrefixCountCap n target)) = (((latentArmStreamTrajectoryKernel algorithm env stream₂).map (Preorder.frestrictLe n)).restrict (latentArmStreamPrefixCountCap n target))) : LatentArmStreamVisiblePrefixNextActionBranchLocality algorithm env n
theorem
BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextActionBranchLocality
Compiled
Every latent arm-stream trajectory kernel satisfies branch locality: on the exact next-coordinate branch, the visible prefix and next action depend only on the complementary latent coordinates. This does not yet identify the latent visible law with the native fixed-IID process.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextActionBranchLocalityReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisiblePrefixNextActionBranchLocality {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (n : Nat) : LatentArmStreamVisiblePrefixNextActionBranchLocality algorithm env n
theorem
BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextAction_coordinate_branch_eq_prod_of_locality
Compiled
Once the branch-locality producer is available, coordinate independence immediately yields the exact branchwise condition/selected-coordinate product law. This consumer is valid for the sub-Markov branch kernel and therefore does not misstate branch restriction as ordinary probability independence.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextAction_coordinate_branch_eq_prod_of_localityReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisiblePrefixNextAction_coordinate_branch_eq_prod_of_locality {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) (hlocal : LatentArmStreamVisiblePrefixNextActionBranchLocality algorithm env n) (target : Nat × Fin K) : let branchKernel := ((latentArmStreamTrajectoryKernel algorithm env).map (latentArmStreamVisiblePrefixNextAction n)).restrict (UCB.measurableSet_armStreamHistoryActionCoordinateBranch n target) Measure.map (fun sample : UCB.ArmRewardStream K × (History.FinitePairHistory (Fin K) Real n × Fin K) => (sample.2, UCB.armStreamCoordinate target sample.1)) (UCB.armStreamMeasure nu ⊗ₘ branchKernel) = (Measure.map Prod.snd (UCB.armStreamMeasure nu ⊗ₘ branchKernel)).prod (nu target.2)
theorem
BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextAction_coordinate_branch_eq_prod
Compiled
Unconditional compiled branchwise product law obtained from the proved count-capped locality producer.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextAction_coordinate_branch_eq_prodReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisiblePrefixNextAction_coordinate_branch_eq_prod {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) (target : Nat × Fin K) : let branchKernel := ((latentArmStreamTrajectoryKernel algorithm env).map (latentArmStreamVisiblePrefixNextAction n)).restrict (UCB.measurableSet_armStreamHistoryActionCoordinateBranch n target) Measure.map (fun sample : UCB.ArmRewardStream K × (History.FinitePairHistory (Fin K) Real n × Fin K) => (sample.2, UCB.armStreamCoordinate target sample.1)) (UCB.armStreamMeasure nu ⊗ₘ branchKernel) = (Measure.map Prod.snd (UCB.armStreamMeasure nu ⊗ₘ branchKernel)).prod (nu target.2)
theorem
BanditRLProof.Thompson.latentArmStreamTrajectoryMeasure_map_visiblePrefix_nextAction_eq_compProd
Compiled
After the latent reward stream is mixed out, the next action still follows the algorithm's history policy. This isolates action randomization from the remaining selected-reward freshness obligation.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamTrajectoryMeasure_map_visiblePrefix_nextAction_eq_compProdReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamTrajectoryMeasure_map_visiblePrefix_nextAction_eq_compProd {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) : Measure.map (fun sample : UCB.ArmRewardStream K × ((t : Nat) -> Fin K × Real) => latentArmStreamVisiblePrefixNextAction n sample.2) (latentArmStreamTrajectoryMeasure algorithm env nu) = Measure.map (fun sample : UCB.ArmRewardStream K × ((t : Nat) -> Fin K × Real) => Preorder.frestrictLe n sample.2) (latentArmStreamTrajectoryMeasure algorithm env nu) ⊗ₘ algorithm.policy n
theorem
BanditRLProof.Thompson.latentArmStreamVisibleNextReward_eq_selectedCoordinate_ae
Compiled
On the coupling, the actual successor reward is the latent coordinate encoded by the visible prefix and the sampled next action. This is pathwise support; conditional freshness still requires the branchwise product proof.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisibleNextReward_eq_selectedCoordinate_aeReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisibleNextReward_eq_selectedCoordinate_ae {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) : ∀ᵐ sample ∂latentArmStreamTrajectoryMeasure algorithm env nu, latentArmStreamVisibleNextReward n sample.2 = UCB.armStreamCoordinate (UCB.armStreamCoordinateOfHistoryAction n (latentArmStreamVisiblePrefixNextAction n sample.2)) sample.1
theorem
BanditRLProof.Thompson.measurable_latentArmStreamSelectedCoordinate
Compiled
The reward coordinate selected by a visible history/action condition is a measurable function of the latent stream and that condition.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.measurable_latentArmStreamSelectedCoordinateReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem measurable_latentArmStreamSelectedCoordinate {K : Nat} (n : Nat) : Measurable (fun sample : UCB.ArmRewardStream K × (History.FinitePairHistory (Fin K) Real n × Fin K) => UCB.armStreamCoordinate (UCB.armStreamCoordinateOfHistoryAction n sample.2) sample.1)
theorem
BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextAction_selectedCoordinate_branch_eq_prod
Compiled
On a fixed pull-count/arm branch, the dynamically selected latent reward coordinate has the restricted condition marginal times the selected arm law.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextAction_selectedCoordinate_branch_eq_prodReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisiblePrefixNextAction_selectedCoordinate_branch_eq_prod {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) (target : Nat × Fin K) : let conditionKernel := (latentArmStreamTrajectoryKernel algorithm env).map (latentArmStreamVisiblePrefixNextAction n) let fullMixed := UCB.armStreamMeasure nu ⊗ₘ conditionKernel let branch := UCB.armStreamHistoryActionCoordinateBranch n target let branchKernel := conditionKernel.restrict (UCB.measurableSet_armStreamHistoryActionCoordinateBranch n target) let branchMixed := UCB.armStreamMeasure nu ⊗ₘ branchKernel Measure.map (fun sample : UCB.ArmRewardStream K × (History.FinitePairHistory (Fin K) Real n × Fin K) => (sample.2, UCB.armStreamCoordinate (UCB.armStreamCoordinateOfHistoryAction n sample.2) sample.1)) branchMixed = ((Measure.map Prod.snd fullMixed).restrict branch).prod (nu target.2)
theorem
BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextAction_selectedCoordinate_mixed_eq_compProd
Compiled
Summing the countable pull-count/arm partition gives the selected-coordinate joint law under the mixed latent-stream/visible-condition measure.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextAction_selectedCoordinate_mixed_eq_compProdReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisiblePrefixNextAction_selectedCoordinate_mixed_eq_compProd {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) : let conditionKernel := (latentArmStreamTrajectoryKernel algorithm env).map (latentArmStreamVisiblePrefixNextAction n) let fullMixed := UCB.armStreamMeasure nu ⊗ₘ conditionKernel Measure.map (fun sample : UCB.ArmRewardStream K × (History.FinitePairHistory (Fin K) Real n × Fin K) => (sample.2, UCB.armStreamCoordinate (UCB.armStreamCoordinateOfHistoryAction n sample.2) sample.1)) fullMixed = Measure.map Prod.snd fullMixed ⊗ₘ UCB.armStreamSelectedRewardKernel n nu
theorem
BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextAction_selectedCoordinate_eq_compProd
Compiled
Transport the selected-coordinate product law from the mixed representation back to the original latent-stream trajectory coupling.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisiblePrefixNextAction_selectedCoordinate_eq_compProdReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisiblePrefixNextAction_selectedCoordinate_eq_compProd {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) : Measure.map (fun sample : UCB.ArmRewardStream K × ((t : Nat) -> Fin K × Real) => (latentArmStreamVisiblePrefixNextAction n sample.2, UCB.armStreamCoordinate (UCB.armStreamCoordinateOfHistoryAction n (latentArmStreamVisiblePrefixNextAction n sample.2)) sample.1)) (latentArmStreamTrajectoryMeasure algorithm env nu) = Measure.map (fun sample : UCB.ArmRewardStream K × ((t : Nat) -> Fin K × Real) => latentArmStreamVisiblePrefixNextAction n sample.2) (latentArmStreamTrajectoryMeasure algorithm env nu) ⊗ₘ UCB.armStreamSelectedRewardKernel n nu
theorem
BanditRLProof.Thompson.latentArmStreamVisibleNextReward_joint_eq_compProd
Compiled
Given the visible prefix through `n` and the action at `n + 1`, the actual next reward in the latent-stream coupling has exactly the selected arm law.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisibleNextReward_joint_eq_compProdReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisibleNextReward_joint_eq_compProd {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) : Measure.map (fun sample : UCB.ArmRewardStream K × ((t : Nat) -> Fin K × Real) => (latentArmStreamVisiblePrefixNextAction n sample.2, latentArmStreamVisibleNextReward n sample.2)) (latentArmStreamTrajectoryMeasure algorithm env nu) = Measure.map (fun sample : UCB.ArmRewardStream K × ((t : Nat) -> Fin K × Real) => latentArmStreamVisiblePrefixNextAction n sample.2) (latentArmStreamTrajectoryMeasure algorithm env nu) ⊗ₘ UCB.armStreamSelectedRewardKernel n nu
theorem
BanditRLProof.Thompson.latentArmStreamVisibleNextReward_condDistrib_ae_eq_nu
Compiled
Conditional-law form of one-step selected-reward freshness on the full latent-stream trajectory coupling.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisibleNextReward_condDistrib_ae_eq_nuReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisibleNextReward_condDistrib_ae_eq_nu {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) : condDistrib (fun sample : UCB.ArmRewardStream K × ((t : Nat) -> Fin K × Real) => latentArmStreamVisibleNextReward n sample.2) (fun sample : UCB.ArmRewardStream K × ((t : Nat) -> Fin K × Real) => latentArmStreamVisiblePrefixNextAction n sample.2) (latentArmStreamTrajectoryMeasure algorithm env nu) =ᵐ[ (latentArmStreamTrajectoryMeasure algorithm env nu).map (fun sample => latentArmStreamVisiblePrefixNextAction n sample.2)] UCB.armStreamSelectedRewardKernel n nu
theorem
BanditRLProof.Thompson.latentArmStreamVisibleTrajectoryMeasure_nextReward_joint_eq_compProd
Compiled
Observable-marginal form of the one-step selected-reward joint law. This removes the latent arm stream from the theorem's source space without claiming that the entire visible trajectory already equals the native construction.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisibleTrajectoryMeasure_nextReward_joint_eq_compProdReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisibleTrajectoryMeasure_nextReward_joint_eq_compProd {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) : let visibleMeasure := (latentArmStreamTrajectoryMeasure algorithm env nu).map Prod.snd Measure.map (fun trajectory : (t : Nat) -> Fin K × Real => (latentArmStreamVisiblePrefixNextAction n trajectory, latentArmStreamVisibleNextReward n trajectory)) visibleMeasure = Measure.map (latentArmStreamVisiblePrefixNextAction n) visibleMeasure ⊗ₘ UCB.armStreamSelectedRewardKernel n nu
theorem
BanditRLProof.Thompson.latentArmStreamVisibleTrajectoryMeasure_nextReward_condDistrib_ae_eq_nu
Compiled
Conditional-law form of one-step selected-reward freshness on the visible trajectory marginal.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamVisibleTrajectoryMeasure_nextReward_condDistrib_ae_eq_nuReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamVisibleTrajectoryMeasure_nextReward_condDistrib_ae_eq_nu {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) : let visibleMeasure := (latentArmStreamTrajectoryMeasure algorithm env nu).map Prod.snd condDistrib (latentArmStreamVisibleNextReward n) (latentArmStreamVisiblePrefixNextAction n) visibleMeasure =ᵐ[ visibleMeasure.map (latentArmStreamVisiblePrefixNextAction n)] UCB.armStreamSelectedRewardKernel n nu
theorem
BanditRLProof.Thompson.latentArmStreamTrajectoryMeasure_map_stream_visiblePrefix_eq
Compiled
Exact finite mixture law for the latent stream box and the visible SGB trajectory prefix. This is the deferred-decisions representation that the remaining native-prefix comparison must consume.
Used in these reading views: Bandit Book
10. Automation, resources, and open routes
Canonical node identity
declaration:BanditRLProof.Thompson.latentArmStreamTrajectoryMeasure_map_stream_visiblePrefix_eqReading membership is not a proof dependency. Exact assumptions remain in the Lean statement.
theorem latentArmStreamTrajectoryMeasure_map_stream_visiblePrefix_eq {Env : Type u} {K : Nat} [MeasurableSpace Env] [StandardBorelSpace Env] [NeZero K] (algorithm : HistoryAlgorithm (Fin K) Real) (env : Env) (nu : Kernel (Fin K) Real) [IsMarkovKernel nu] (n : Nat) : Measure.map (fun sample : UCB.ArmRewardStream K × ((t : Nat) -> Fin K × Real) => (Preorder.frestrictLe n sample.1, Preorder.frestrictLe n sample.2)) (latentArmStreamTrajectoryMeasure algorithm env nu) = Measure.pi (fun _ : Finset.Iic n => Measure.infinitePi fun arm : Fin K => nu arm) ⊗ₘ latentArmStreamVisiblePrefixKernel algorithm env n