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.LowerBounds.HuffmanAlphabet

Generated source map for this Lean module.

Module map

Declarations
8
Placeholders
0

Imports

BanditRLProof.LowerBounds.HuffmanStep

Imported by

BanditRLProof, BanditRLProof.LowerBounds.HuffmanConstruction

Declarations

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

theorem BanditRLProof.LowerBounds.expectedCodeLength_relabel 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.LowerBounds.expectedCodeLength_relabel

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

theorem expectedCodeLength_relabel {α β : Type*} [Fintype α] [Fintype β] (p : α → ℝ) (code : BinaryPrefixCode α) (e : β ≃ α) : expectedCodeLength (p ∘ e) (code.relabel e) = expectedCodeLength p code
theorem BanditRLProof.LowerBounds.IsOptimalPrefixCode.relabel Compiled

Global optimality is independent of the names of the alphabet symbols.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.LowerBounds.IsOptimalPrefixCode.relabel

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

theorem IsOptimalPrefixCode.relabel {α β : Type*} [Fintype α] [Fintype β] (p : α → ℝ) (code : BinaryPrefixCode α) (e : β ≃ α) (hopt : IsOptimalPrefixCode p code) : IsOptimalPrefixCode (p ∘ e) (code.relabel e)
def BanditRLProof.LowerBounds.HuffmanRemainder Compiled

The unmerged symbols, retaining their original labels.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.LowerBounds.HuffmanRemainder

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

def HuffmanRemainder {α : Type*} (a b : α)
def BanditRLProof.LowerBounds.huffmanSplitEquiv Compiled

Separate two selected symbols as the false and true leaves.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.LowerBounds.huffmanSplitEquiv

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

def huffmanSplitEquiv {α : Type*} [DecidableEq α] (a b : α) (hab : a ≠ b) : HuffmanRemainder a b ⊕ Bool ≃ α where
theorem BanditRLProof.LowerBounds.huffmanSplitEquiv_false 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.LowerBounds.huffmanSplitEquiv_false

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

@[simp] theorem huffmanSplitEquiv_false {α : Type*} [DecidableEq α] (a b : α) (hab : a ≠ b) : huffmanSplitEquiv a b hab (.inr false) = a
theorem BanditRLProof.LowerBounds.huffmanSplitEquiv_true 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.LowerBounds.huffmanSplitEquiv_true

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

@[simp] theorem huffmanSplitEquiv_true {α : Type*} [DecidableEq α] (a b : α) (hab : a ≠ b) : huffmanSplitEquiv a b hab (.inr true) = b
theorem BanditRLProof.LowerBounds.huffman_merged_card_lt Compiled

Merging two distinct symbols reduces the recursive alphabet size by one.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.LowerBounds.huffman_merged_card_lt

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

theorem huffman_merged_card_lt {α : Type*} [Fintype α] [DecidableEq α] (a b : α) (hab : a ≠ b) : Fintype.card (Option (HuffmanRemainder a b)) < Fintype.card α
theorem BanditRLProof.LowerBounds.exists_two_least_weights Compiled

A finite nontrivial alphabet has two least weights, including ties.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Canonical node identitydeclaration:BanditRLProof.LowerBounds.exists_two_least_weights

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

theorem exists_two_least_weights {α : Type*} [Fintype α] [DecidableEq α] [Nontrivial α] (p : α → ℝ) : ∃ a b, a ≠ b ∧ (∀ i, p a ≤ p i) ∧ (∀ i, i ≠ a → p b ≤ p i)