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

Lean module · Foundations

BanditRLProof.Algorithms.HOOTree

Finite implementation of the infinite HOO binary-tree search. Fuel is an implementation device; the depth proofs show it cannot truncate the search.

Module map

Declarations
23
Placeholders
0

Imports

No project-local imports.

Imported by

BanditRLProof.Algorithms.HOOHistory, BanditRLProof.HOOGeometry

Declarations

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

abbrev BanditRLProof.HOO.Node Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.Node

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

abbrev Node
def BanditRLProof.HOO.child Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.child

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

def child (v : Node) (b : Bool) : Node
theorem BanditRLProof.HOO.child_length Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.child_length

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

@[simp] theorem child_length (v : Node) (b : Bool) : (child v b).length = v.length + 1
theorem BanditRLProof.HOO.prefix_child Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.prefix_child

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

theorem prefix_child (v : Node) (b : Bool) : v <+: child v b
def BanditRLProof.HOO.depthBound Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.depthBound

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

def depthBound (S : Finset Node) : ℕ
theorem BanditRLProof.HOO.length_le_depthBound Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.length_le_depthBound

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

theorem length_le_depthBound {S : Finset Node} {v : Node} (hv : v ∈ S) : v.length ≤ depthBound S
theorem BanditRLProof.HOO.not_mem_of_depth_lt Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.not_mem_of_depth_lt

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

theorem not_mem_of_depth_lt {S : Finset Node} {v : Node} (hv : depthBound S < v.length) : v ∉ S
def BanditRLProof.HOO.backward Compiled

Unexpanded nodes have infinity; expanded nodes use the source min/max rule.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.backward

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

noncomputable def backward (S : Finset Node) (U : Node → WithTop ℝ) : ℕ → Node → WithTop ℝ | 0, _ => ⊤ | k+1, v => if v ∈ S then min (U v) (max (backward S U k (child v false)) (backward S U k (child v true))) else ⊤ theorem backward_not_mem (S : Finset Node) (U : Node → WithTop ℝ) (k : ℕ) (v : Node) (hv : v ∉ S) : backward S U k v = ⊤
theorem BanditRLProof.HOO.backward_not_mem Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.backward_not_mem

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

theorem backward_not_mem (S : Finset Node) (U : Node → WithTop ℝ) (k : ℕ) (v : Node) (hv : v ∉ S) : backward S U k v = ⊤
theorem BanditRLProof.HOO.backward_stable_succ Compiled

Increasing already sufficient fuel has no effect on B.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.backward_stable_succ

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

theorem backward_stable_succ (S : Finset Node) (U : Node → WithTop ℝ) (k : ℕ) (v : Node) (hk : depthBound S < v.length + k) : backward S U (k+1) v = backward S U k v
def BanditRLProof.HOO.bValue Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.bValue

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

noncomputable def bValue (S : Finset Node) (U : Node → WithTop ℝ) (v : Node) : WithTop ℝ
theorem BanditRLProof.HOO.bValue_not_mem Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.bValue_not_mem

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

theorem bValue_not_mem (S : Finset Node) (U : Node → WithTop ℝ) (v : Node) (hv : v ∉ S) : bValue S U v = ⊤
theorem BanditRLProof.HOO.bValue_eq Compiled

The actual finite computation satisfies the exact recursive B equation.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.bValue_eq

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

theorem bValue_eq (S : Finset Node) (U : Node → WithTop ℝ) (v : Node) (hv : v ∈ S) : bValue S U v = min (U v) (max (bValue S U (child v false)) (bValue S U (child v true)))
def BanditRLProof.HOO.preferred Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.preferred

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

noncomputable def preferred (B : Node → WithTop ℝ) (v : Node) : Bool
theorem BanditRLProof.HOO.preferred_max Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.preferred_max

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

theorem preferred_max (B : Node → WithTop ℝ) (v : Node) : B (child v (preferred B v)) = max (B (child v false)) (B (child v true))
def BanditRLProof.HOO.walk Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.walk

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

noncomputable def walk (S : Finset Node) (B : Node → WithTop ℝ) : ℕ → Node → Node | 0, v => v | k+1, v => if v ∈ S then walk S B k (child v (preferred B v)) else v theorem walk_not_mem (S : Finset Node) (B : Node → WithTop ℝ) (k : ℕ) (v : Node) (hk : depthBound S < v.length + k) : walk S B k v ∉ S
theorem BanditRLProof.HOO.walk_not_mem Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.walk_not_mem

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

theorem walk_not_mem (S : Finset Node) (B : Node → WithTop ℝ) (k : ℕ) (v : Node) (hk : depthBound S < v.length + k) : walk S B k v ∉ S
theorem BanditRLProof.HOO.prefix_walk Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.prefix_walk

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

theorem prefix_walk (S : Finset Node) (B : Node → WithTop ℝ) (k : ℕ) (v : Node) : v <+: walk S B k v
theorem BanditRLProof.HOO.walk_length_le Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.walk_length_le

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

theorem walk_length_le (S : Finset Node) (B : Node → WithTop ℝ) (k : ℕ) (v : Node) : (walk S B k v).length ≤ v.length + k
def BanditRLProof.HOO.select Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.select

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

noncomputable def select (S : Finset Node) (U : Node → WithTop ℝ) : Node
theorem BanditRLProof.HOO.select_not_mem Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.select_not_mem

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

theorem select_not_mem (S : Finset Node) (U : Node → WithTop ℝ) : select S U ∉ S
theorem BanditRLProof.HOO.select_length_le Compiled

No declaration docstring is present; use the chapter context and exact statement below.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.select_length_le

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

theorem select_length_le (S : Finset Node) (U : Node → WithTop ℝ) : (select S U).length ≤ depthBound S + 1
theorem BanditRLProof.HOO.bValue_le_walk Compiled

The recursive optimistic value cannot decrease along the selected path.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.HOO.bValue_le_walk

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

theorem bValue_le_walk (S : Finset Node) (U : Node → WithTop ℝ) (k : ℕ) (v : Node) : bValue S U v ≤ bValue S U (walk S (bValue S U) k v)