BanditRLlib
Lean gate passed before this site build; local proof declarations are shown as compiled.Lean-verified build · exact declarations linked.

Lean module · Frontier

BanditRLProof.DelayedFeedback.OrderedNoSwitchTrace

This module composes the source-faithful one-item transition from OrderedProcessingTransition.lean across an arbitrary finite trace. A trace may either process one member of B(t) \ S through the no-switch structural projection of Algorithm 5 lines 3--4 and 7--8, or close an exhausted inner loop and advance to the next action round.

Module map

Declarations
12
Placeholders
0

Imports

BanditRLProof.DelayedFeedback.OrderedProcessingTransition

Imported by

BanditRLProof

Declarations

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

structure BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose Compiled

Certificate that the no-switch inner loop for one action round is exhausted and that its final intra-round active set is the line-15 active set recorded by the source-round trace. The second field is a structural consistency contract. It is not a claim that EAP has already constructed a valid probability vector.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

structure DelayedSAPONoSwitchRoundClose {K : Nat} (state : DelayedSAPOStructuralRoundState K) : Prop where
theorem BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose.processedOrder_toFinset_eq_observedBefore Compiled

Exhausting `B(t) \ S` means that the ordered ledger contains exactly the feedback available before action `t`. The equality is set-level only and does not impose a chronological order on simultaneous arrivals.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose.processedOrder_toFinset_eq_observedBefore

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

theorem processedOrder_toFinset_eq_observedBefore {K : Nat} {state : DelayedSAPOStructuralRoundState K} (closed : DelayedSAPONoSwitchRoundClose state) : state.processedOrder.toFinset = observedBefore state.delayAt state.currentActionRound
def BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose.nextRoundState Compiled

Structural state at the start of the next action round. The processed ledger and active set are unchanged; the round-start invariant follows from the close certificate's identification with the just-finished source-round active set.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose.nextRoundState

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

def nextRoundState {K : Nat} {state : DelayedSAPOStructuralRoundState K} (closed : DelayedSAPONoSwitchRoundClose state) : DelayedSAPOStructuralRoundState K where
theorem BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose.nextRoundState_currentActionRound 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 identitydeclaration:BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose.nextRoundState_currentActionRound

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

theorem nextRoundState_currentActionRound {K : Nat} {state : DelayedSAPOStructuralRoundState K} (closed : DelayedSAPONoSwitchRoundClose state) : closed.nextRoundState.currentActionRound = state.currentActionRound + 1
theorem BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose.nextRoundState_processedOrder 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 identitydeclaration:BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose.nextRoundState_processedOrder

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

theorem nextRoundState_processedOrder {K : Nat} {state : DelayedSAPOStructuralRoundState K} (closed : DelayedSAPONoSwitchRoundClose state) : closed.nextRoundState.processedOrder = state.processedOrder
theorem BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose.nextRoundState_currentActive 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 identitydeclaration:BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchRoundClose.nextRoundState_currentActive

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

theorem nextRoundState_currentActive {K : Nat} {state : DelayedSAPOStructuralRoundState K} (closed : DelayedSAPONoSwitchRoundClose state) : closed.nextRoundState.currentActive = state.currentActive
inductive BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchStructuralStep Compiled

One edge of the deterministic no-switch structural trace. Processing uses the exact line-8 successor; advancing rounds requires an exhausted-loop certificate.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchStructuralStep

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

inductive DelayedSAPONoSwitchStructuralStep {K : Nat} (horizon : Nat) : DelayedSAPOStructuralRoundState K → DelayedSAPOStructuralRoundState K → Prop | process {state : DelayedSAPOStructuralRoundState K} (step : DelayedSAPONoSwitchProcessOne state) : DelayedSAPONoSwitchStructuralStep horizon state (step.afterLine8 horizon) | nextRound {state : DelayedSAPOStructuralRoundState K} (closed : DelayedSAPONoSwitchRoundClose state) : DelayedSAPONoSwitchStructuralStep horizon state closed.nextRoundState /-- Finite reflexive-transitive no-switch reachability. It is a structural relation, not a generated stochastic trajectory. -/ abbrev DelayedSAPONoSwitchStructuralReachable {K : Nat} (horizon : Nat)
abbrev BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchStructuralReachable Compiled

Finite reflexive-transitive no-switch reachability. It is a structural relation, not a generated stochastic trajectory.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.DelayedFeedback.DelayedSAPONoSwitchStructuralReachable

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

abbrev DelayedSAPONoSwitchStructuralReachable {K : Nat} (horizon : Nat)
theorem BanditRLProof.DelayedFeedback.currentActive_subset_of_structuralStep Compiled

Every primitive no-switch structural edge can only remove arms.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.DelayedFeedback.currentActive_subset_of_structuralStep

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

theorem currentActive_subset_of_structuralStep {K horizon : Nat} {initial final : DelayedSAPOStructuralRoundState K} (step : DelayedSAPONoSwitchStructuralStep horizon initial final) : final.currentActive <= initial.currentActive
theorem BanditRLProof.DelayedFeedback.currentActive_subset_of_structuralReachable Compiled

Active sets are antitone along every finite no-switch structural trace.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.DelayedFeedback.currentActive_subset_of_structuralReachable

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

theorem currentActive_subset_of_structuralReachable {K horizon : Nat} {initial final : DelayedSAPOStructuralRoundState K} (run : DelayedSAPONoSwitchStructuralReachable horizon initial final) : final.currentActive <= initial.currentActive
theorem BanditRLProof.DelayedFeedback.mem_earlierRemainingActive_of_laterEliminated Compiled

An arm eliminated by a later processing step was still present after an earlier line-8 removal whenever the two steps are connected by a no-switch structural trace. This is the temporal premise previously left to callers.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.DelayedFeedback.mem_earlierRemainingActive_of_laterEliminated

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

theorem mem_earlierRemainingActive_of_laterEliminated {K horizon : Nat} {initial laterState : DelayedSAPOStructuralRoundState K} (earlierStep : DelayedSAPONoSwitchProcessOne initial) (between : DelayedSAPONoSwitchStructuralReachable horizon (earlierStep.afterLine8 horizon) laterState) (laterStep : DelayedSAPONoSwitchProcessOne laterState) (iLater : Fin K) (hLaterEliminated : iLater ∈ (laterStep.toPreEliminationSummary.toConfidenceSnapshot horizon).eliminated) : iLater ∈ (earlierStep.toPreEliminationSummary.toConfidenceSnapshot horizon).remainingActive
theorem BanditRLProof.DelayedFeedback.gap_le_twenty_mul_gap_of_ordered_no_switch_eliminations Compiled

Ordered two-elimination factor-20 consumer. Unlike the one-snapshot consumer, this theorem derives later-arm survival at the earlier snapshot from the exact structural trace. It remains conditional on the earlier D.4 count clause and elimination-good projection.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.DelayedFeedback.gap_le_twenty_mul_gap_of_ordered_no_switch_eliminations

Reading membership is not a proof dependency. Exact assumptions remain in the Lean statement.

theorem gap_le_twenty_mul_gap_of_ordered_no_switch_eliminations {K : Nat} [Nonempty (Fin K)] {initial laterState : DelayedSAPOStructuralRoundState K} (horizon : Nat) (hhorizon : 1 < horizon) (earlierStep : DelayedSAPONoSwitchProcessOne initial) (between : DelayedSAPONoSwitchStructuralReachable horizon (earlierStep.afterLine8 horizon) laterState) (laterStep : DelayedSAPONoSwitchProcessOne laterState) (mean : Fin K → Real) (optimal iEarlier iLater : Fin K) (hoptimal : ∀ i, mean optimal <= mean i) (hmeanBounds : ∀ i, mean i ∈ Set.Icc (0 : Real) 1) (hD4 : earlierStep.toPreEliminationSummary.D4CountClause horizon) (hgood : (earlierStep.toPreEliminationSummary.toConfidenceSnapshot horizon).EliminationGoodEvent mean) (hoptimalActive : optimal ∈ initial.currentActive) (hEarlierEliminated : iEarlier ∈ (earlierStep.toPreEliminationSummary.toConfidenceSnapshot horizon).eliminated) (hLaterEliminated : iLater ∈ (laterStep.toPreEliminationSummary.toConfidenceSnapshot horizon).eliminated) : mean iLater - mean optimal <= 20 * (mean iEarlier - mean optimal)