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.Algorithms.StochasticGradientBanditTwoArmRecurrence

This module instantiates the generated conditional Equation (8) at the two action-dependent coefficients used in the proof of Theorem 1 of Baudry--Johnson--Vary--Pike-Burke--Rebeschini (NeurIPS 2025). It proves both one-step exponential recurrences over the actual generated history-step kernel, under the source initialization theta = 0.

Module map

Declarations
10
Placeholders
0

Imports

BanditRLProof.Algorithms.StochasticGradientBanditConditionalExponentialAudit

Imported by

BanditRLProof, BanditRLProof.Algorithms.StochasticGradientBanditTwoArmInitialRecurrence, BanditRLProof.Algorithms.StochasticGradientBanditTwoArmMeasurableRecurrence

Declarations

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

def BanditRLProof.StochasticGradientBandit.twoArmForwardQ Compiled

The action-dependent coefficient in the forward exponential potential. For source arm `1` (Lean arm `0`) it is `2 eta (1-p)`; for source arm `2` (Lean arm `1`) it is `-2 eta p`.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.StochasticGradientBandit.twoArmForwardQ

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

def twoArmForwardQ (eta : Real) (prob : Fin 2 -> Real) (selected : Fin 2) : Real
def BanditRLProof.StochasticGradientBandit.twoArmInverseQ Compiled

The coefficient for the inverse-odds exponential potential.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.StochasticGradientBandit.twoArmInverseQ

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

def twoArmInverseQ (eta : Real) (prob : Fin 2 -> Real) (selected : Fin 2) : Real
theorem BanditRLProof.StochasticGradientBandit.twoArmForwardQ_mul_reward_eq_sourceIncrement Compiled

`q_+ reward` is exactly twice the learning-rate-scaled best-coordinate source update.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.StochasticGradientBandit.twoArmForwardQ_mul_reward_eq_sourceIncrement

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

theorem twoArmForwardQ_mul_reward_eq_sourceIncrement (eta reward : Real) (prob : Fin 2 -> Real) (selected : Fin 2) : twoArmForwardQ eta prob selected * reward = 2 * eta * sourceIncrement prob reward selected 0
theorem BanditRLProof.StochasticGradientBandit.twoArmInverseQ_mul_reward_eq_sourceIncrement Compiled

`q_- reward` is the negative of twice the learning-rate-scaled best-coordinate source update.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.StochasticGradientBandit.twoArmInverseQ_mul_reward_eq_sourceIncrement

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

theorem twoArmInverseQ_mul_reward_eq_sourceIncrement (eta reward : Real) (prob : Fin 2 -> Real) (selected : Fin 2) : twoArmInverseQ eta prob selected * reward = -2 * eta * sourceIncrement prob reward selected 0
theorem BanditRLProof.StochasticGradientBandit.twoArmForwardEqEightRemainder_le Compiled

The two-branch Equation-(8) remainder for the forward potential, after replacing both branch constants by the common source constant `C_eta`.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.StochasticGradientBandit.twoArmForwardEqEightRemainder_le

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

theorem twoArmForwardEqEightRemainder_le (eta p meanZero meanOne Delta : Real) (heta : 0 <= eta) (hp_nonneg : 0 <= p) (hp_le_one : p <= 1) (hgap : meanZero - meanOne = Delta) : p * ((2 * eta * (1 - p)) * meanZero + (2 * eta * (1 - p)) ^ 2 / 2 * sourceC (|2 * eta * (1 - p)| / 2)) + (1 - p) * ((-(2 * eta * p)) * meanOne + (-(2 * eta * p)) ^ 2 / 2 * sourceC (|-(2 * eta * p)| / 2)) <= 2 * p * (1 - p) * (eta * Delta + eta ^ 2 * sourceC eta)
theorem BanditRLProof.StochasticGradientBandit.twoArmInverseEqEightRemainder_le Compiled

The analogous Equation-(8) remainder for the inverse potential.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.StochasticGradientBandit.twoArmInverseEqEightRemainder_le

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

theorem twoArmInverseEqEightRemainder_le (eta p meanZero meanOne Delta : Real) (heta : 0 <= eta) (hp_nonneg : 0 <= p) (hp_le_one : p <= 1) (hgap : meanZero - meanOne = Delta) : p * ((-(2 * eta * (1 - p))) * meanZero + (-(2 * eta * (1 - p))) ^ 2 / 2 * sourceC (|-(2 * eta * (1 - p))| / 2)) + (1 - p) * ((2 * eta * p) * meanOne + (2 * eta * p) ^ 2 / 2 * sourceC (|2 * eta * p| / 2)) <= -2 * eta * p * (1 - p) * (Delta - eta * sourceC eta)
theorem BanditRLProof.StochasticGradientBandit.integral_twoArmHistoryStepKernel_exp_forwardSuccessor_le Compiled

Multiplicative forward one-step recurrence at a fixed generated history. The current parameter is source `theta_{.,n+2}` and the integrand is the source successor `theta_{1,n+3}`.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.StochasticGradientBandit.integral_twoArmHistoryStepKernel_exp_forwardSuccessor_le

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

theorem integral_twoArmHistoryStepKernel_exp_forwardSuccessor_le (eta Delta : Real) (heta : 0 <= eta) (environment : Thompson.HistoryEnvironment (Fin 2) Real) (n : Nat) (history : History.FinitePairHistory (Fin 2) Real n) (mean : Fin 2 -> Real) (hreward : forall selected, ∀ᵐ reward ∂environment.feedback n (history, selected), |reward| <= 1) (hmean : forall selected, integral (environment.feedback n (history, selected)) id = mean selected) (hgap : mean 0 - mean 1 = Delta) : integral (Thompson.historyStepKernel (historyAlgorithm (fun _ : Fin 2 => 0) eta) environment n history) (fun pair : Fin 2 × Real => Real.exp (2 * (historyParameter (fun _ : Fin 2 => 0) eta n history 0 + eta * sourceIncrement (softmaxProbability (historyParameter (fun _ : Fin 2 => 0) eta n history)) pair.2 pair.1 0))) <= Real.exp (2 * historyParameter (fun _ : Fin 2 => 0) eta n history 0) * (1 + 2 * softmaxProbability (historyParameter (fun _ : Fin 2 => 0) eta n history) 0 * (1 - softmaxProbability (historyParameter (fun _ : Fin 2 => 0) eta n history) 0) * (eta * Delta + eta ^ 2 * sourceC eta))
theorem BanditRLProof.StochasticGradientBandit.integral_twoArmHistoryStepKernel_exp_forwardSuccessor_le_add_success_sq Compiled

Forward recurrence in the additive source form `E_t exp(2 theta_{1,t+1}) <= exp(2 theta_{1,t}) + 2 p_t^2 (eta Delta + eta^2 C_eta)`.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.StochasticGradientBandit.integral_twoArmHistoryStepKernel_exp_forwardSuccessor_le_add_success_sq

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

theorem integral_twoArmHistoryStepKernel_exp_forwardSuccessor_le_add_success_sq (eta Delta : Real) (heta : 0 <= eta) (environment : Thompson.HistoryEnvironment (Fin 2) Real) (n : Nat) (history : History.FinitePairHistory (Fin 2) Real n) (mean : Fin 2 -> Real) (hreward : forall selected, ∀ᵐ reward ∂environment.feedback n (history, selected), |reward| <= 1) (hmean : forall selected, integral (environment.feedback n (history, selected)) id = mean selected) (hgap : mean 0 - mean 1 = Delta) : integral (Thompson.historyStepKernel (historyAlgorithm (fun _ : Fin 2 => 0) eta) environment n history) (fun pair : Fin 2 × Real => Real.exp (2 * (historyParameter (fun _ : Fin 2 => 0) eta n history 0 + eta * sourceIncrement (softmaxProbability (historyParameter (fun _ : Fin 2 => 0) eta n history)) pair.2 pair.1 0))) <= Real.exp (2 * historyParameter (fun _ : Fin 2 => 0) eta n history 0) + 2 * softmaxProbability (historyParameter (fun _ : Fin 2 => 0) eta n history) 0 ^ 2 * (eta * Delta + eta ^ 2 * sourceC eta)
theorem BanditRLProof.StochasticGradientBandit.integral_twoArmHistoryStepKernel_exp_inverseSuccessor_le Compiled

Multiplicative inverse-potential one-step recurrence at the same time fence.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.StochasticGradientBandit.integral_twoArmHistoryStepKernel_exp_inverseSuccessor_le

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

theorem integral_twoArmHistoryStepKernel_exp_inverseSuccessor_le (eta Delta : Real) (heta : 0 <= eta) (environment : Thompson.HistoryEnvironment (Fin 2) Real) (n : Nat) (history : History.FinitePairHistory (Fin 2) Real n) (mean : Fin 2 -> Real) (hreward : forall selected, ∀ᵐ reward ∂environment.feedback n (history, selected), |reward| <= 1) (hmean : forall selected, integral (environment.feedback n (history, selected)) id = mean selected) (hgap : mean 0 - mean 1 = Delta) : integral (Thompson.historyStepKernel (historyAlgorithm (fun _ : Fin 2 => 0) eta) environment n history) (fun pair : Fin 2 × Real => Real.exp (-2 * (historyParameter (fun _ : Fin 2 => 0) eta n history 0 + eta * sourceIncrement (softmaxProbability (historyParameter (fun _ : Fin 2 => 0) eta n history)) pair.2 pair.1 0))) <= Real.exp (-2 * historyParameter (fun _ : Fin 2 => 0) eta n history 0) * (1 - 2 * eta * softmaxProbability (historyParameter (fun _ : Fin 2 => 0) eta n history) 0 * (1 - softmaxProbability (historyParameter (fun _ : Fin 2 => 0) eta n history) 0) * (Delta - eta * sourceC eta))
theorem BanditRLProof.StochasticGradientBandit.integral_twoArmHistoryStepKernel_exp_inverseSuccessor_le_sub_failure_sq Compiled

Inverse recurrence in the source telescoping form `E_t exp(-2 theta_{1,t+1}) <= exp(-2 theta_{1,t}) - 2 eta (1-p_t)^2 (Delta-eta C_eta)`.

Used in these reading views: Bandit Book

10. Automation, resources, and open routes

Canonical node identitydeclaration:BanditRLProof.StochasticGradientBandit.integral_twoArmHistoryStepKernel_exp_inverseSuccessor_le_sub_failure_sq

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

theorem integral_twoArmHistoryStepKernel_exp_inverseSuccessor_le_sub_failure_sq (eta Delta : Real) (heta : 0 <= eta) (environment : Thompson.HistoryEnvironment (Fin 2) Real) (n : Nat) (history : History.FinitePairHistory (Fin 2) Real n) (mean : Fin 2 -> Real) (hreward : forall selected, ∀ᵐ reward ∂environment.feedback n (history, selected), |reward| <= 1) (hmean : forall selected, integral (environment.feedback n (history, selected)) id = mean selected) (hgap : mean 0 - mean 1 = Delta) : integral (Thompson.historyStepKernel (historyAlgorithm (fun _ : Fin 2 => 0) eta) environment n history) (fun pair : Fin 2 × Real => Real.exp (-2 * (historyParameter (fun _ : Fin 2 => 0) eta n history 0 + eta * sourceIncrement (softmaxProbability (historyParameter (fun _ : Fin 2 => 0) eta n history)) pair.2 pair.1 0))) <= Real.exp (-2 * historyParameter (fun _ : Fin 2 => 0) eta n history 0) - 2 * eta * (1 - softmaxProbability (historyParameter (fun _ : Fin 2 => 0) eta n history) 0) ^ 2 * (Delta - eta * sourceC eta)