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.CausalHeterogeneous

Genuinely dependent node laws and their common-alphabet encoding.

Module map

Declarations
30
Placeholders
0

Imports

BanditRLProof.Algorithms.CausalMarginalLaw

Imported by

BanditRLProof.Algorithms.CausalHeterogeneousLaw, BanditRLProof.Algorithms.CausalHeterogeneousSampling

Declarations

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

abbrev BanditRLProof.Causal.NodeHistory 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.Causal.NodeHistory

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

abbrev NodeHistory {n : ℕ} (V : Fin n → Type*) (i : Fin n)
abbrev BanditRLProof.Causal.NodeTables 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.Causal.NodeTables

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

abbrev NodeTables {n : ℕ} (V : Fin n → Type*)
def BanditRLProof.Causal.NodeTables.prefix 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.Causal.NodeTables.prefix

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

def NodeTables.prefix {n : ℕ} {V : Fin (n+1) → Type*} (p : NodeTables V) : NodeTables (fun i : Fin n => V i.castSucc)
def BanditRLProof.Causal.nodeJoint 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

Indexed settings: Causal bandits

Canonical node identitydeclaration:BanditRLProof.Causal.nodeJoint

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

noncomputable def nodeJoint : {n : ℕ} → {V : Fin n → Type*} → NodeTables V → PMF ((i : Fin n) → V i) | 0, _, _ => PMF.pure (fun i => Fin.elim0 i) | n+1, _, p => (nodeJoint p.prefix).bind fun h => (p (Fin.last n) h).bind fun x => PMF.pure (Fin.snoc h x) structure NodeCodec {n : ℕ} (V : Fin n → Type*) (W : Type*) where
structure BanditRLProof.Causal.NodeCodec 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.Causal.NodeCodec

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

structure NodeCodec {n : ℕ} (V : Fin n → Type*) (W : Type*) where
def BanditRLProof.Causal.NodeCodec.prefix 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.Causal.NodeCodec.prefix

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

def NodeCodec.prefix {n : ℕ} {V : Fin (n+1) → Type*} {W : Type*} (c : NodeCodec V W) : NodeCodec (fun i : Fin n => V i.castSucc) W where
def BanditRLProof.Causal.NodeCodec.encodeAssignment 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.Causal.NodeCodec.encodeAssignment

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

def NodeCodec.encodeAssignment {n : ℕ} {V : Fin n → Type*} {W : Type*} (c : NodeCodec V W) (x : (i : Fin n) → V i) : Fin n → W
def BanditRLProof.Causal.NodeCodec.decodeAssignment 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.Causal.NodeCodec.decodeAssignment

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

def NodeCodec.decodeAssignment {n : ℕ} {V : Fin n → Type*} {W : Type*} (c : NodeCodec V W) (x : Fin n → W) : (i : Fin n) → V i
theorem BanditRLProof.Causal.NodeCodec.decode_encodeAssignment 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.Causal.NodeCodec.decode_encodeAssignment

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

theorem NodeCodec.decode_encodeAssignment {n : ℕ} {V : Fin n → Type*} {W : Type*} (c : NodeCodec V W) (x : (i : Fin n) → V i) : c.decodeAssignment (c.encodeAssignment x) = x
def BanditRLProof.Causal.NodeCodec.encodeTables 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.Causal.NodeCodec.encodeTables

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

noncomputable def NodeCodec.encodeTables {n : ℕ} {V : Fin n → Type*} {W : Type*} (c : NodeCodec V W) (p : NodeTables V) : Tables W n
theorem BanditRLProof.Causal.NodeCodec.encodeAssignment_snoc 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.Causal.NodeCodec.encodeAssignment_snoc

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

theorem NodeCodec.encodeAssignment_snoc {n : ℕ} {V : Fin (n+1) → Type*} {W : Type*} (c : NodeCodec V W) (h : (i : Fin n) → V i.castSucc) (x : V (Fin.last n)) : c.encodeAssignment (Fin.snoc h x) = Fin.snoc (c.prefix.encodeAssignment h) (c.encode (Fin.last n) x)
theorem BanditRLProof.Causal.NodeCodec.joint_encodeTables 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

Indexed settings: Causal bandits

Canonical node identitydeclaration:BanditRLProof.Causal.NodeCodec.joint_encodeTables

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

theorem NodeCodec.joint_encodeTables {n : ℕ} {V : Fin n → Type*} {W : Type*} (c : NodeCodec V W) (p : NodeTables V) : joint (c.encodeTables p) = (nodeJoint p).map c.encodeAssignment
theorem BanditRLProof.Causal.NodeCodec.decode_joint_encodeTables 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.Causal.NodeCodec.decode_joint_encodeTables

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

theorem NodeCodec.decode_joint_encodeTables {n : ℕ} {V : Fin n → Type*} {W : Type*} (c : NodeCodec V W) (p : NodeTables V) : (joint (c.encodeTables p)).map c.decodeAssignment = nodeJoint p
def BanditRLProof.Causal.productNodeCodec Compiled

A finite common alphabet is constructed, not assumed: use the finite product. Each node stores its value at its own coordinate and defaults elsewhere.

Used in these reading views: Bandit Book

1. Finite bandits, traces, and regret

Indexed settings: Causal bandits

Canonical node identitydeclaration:BanditRLProof.Causal.productNodeCodec

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

noncomputable def productNodeCodec {n : ℕ} (V : Fin n → Type*) [∀ i, Inhabited (V i)] : NodeCodec V ((i : Fin n) → V i) where
def BanditRLProof.Causal.nodeIntervene 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.Causal.nodeIntervene

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

noncomputable def nodeIntervene {n : ℕ} {V : Fin n → Type*} (p : NodeTables V) (a : (i : Fin n) → Option (V i)) : NodeTables V
def BanditRLProof.Causal.NodeCodec.encodeAction 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.Causal.NodeCodec.encodeAction

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

def NodeCodec.encodeAction {n : ℕ} {V : Fin n → Type*} {W : Type*} (c : NodeCodec V W) (a : (i : Fin n) → Option (V i)) : Fin n → Option W
theorem BanditRLProof.Causal.NodeCodec.encodeTables_intervene 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.Causal.NodeCodec.encodeTables_intervene

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

theorem NodeCodec.encodeTables_intervene {n : ℕ} {V : Fin n → Type*} {W : Type*} (c : NodeCodec V W) (p : NodeTables V) (a : (i : Fin n) → Option (V i)) : c.encodeTables (nodeIntervene p a) = intervene (c.encodeTables p) (c.encodeAction a)
theorem BanditRLProof.Causal.NodeCodec.joint_intervene 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.Causal.NodeCodec.joint_intervene

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

theorem NodeCodec.joint_intervene {n : ℕ} {V : Fin n → Type*} {W : Type*} (c : NodeCodec V W) (p : NodeTables V) (a : (i : Fin n) → Option (V i)) : joint (intervene (c.encodeTables p) (c.encodeAction a)) = (nodeJoint (nodeIntervene p a)).map c.encodeAssignment
structure BanditRLProof.Causal.NodeGraphModel 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.Causal.NodeGraphModel

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

structure NodeGraphModel {n : ℕ} (V : Fin n → Type*) where
def BanditRLProof.Causal.NodeGraphModel.encodeGraph 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.Causal.NodeGraphModel.encodeGraph

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

noncomputable def NodeGraphModel.encodeGraph {n : ℕ} {V : Fin n → Type*} {W : Type*} (g : NodeGraphModel V) (c : NodeCodec V W) : GraphModel W n where
theorem BanditRLProof.Causal.NodeGraphModel.intervention_joint_encoded 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.Causal.NodeGraphModel.intervention_joint_encoded

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

theorem NodeGraphModel.intervention_joint_encoded {n : ℕ} {V : Fin n → Type*} {W : Type*} (g : NodeGraphModel V) (c : NodeCodec V W) (a : (i : Fin n) → Option (V i)) : joint ((g.encodeGraph c).doModel (c.encodeAction a)).table = (nodeJoint (nodeIntervene g.table a)).map c.encodeAssignment
theorem BanditRLProof.Causal.NodeCodec.encoded_joint_valid 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.Causal.NodeCodec.encoded_joint_valid

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

theorem NodeCodec.encoded_joint_valid {n : ℕ} {V : Fin n → Type*} {W : Type*} (c : NodeCodec V W) (p : NodeTables V) (w : Fin n → W) (hw : w ∈ (joint (c.encodeTables p)).support) : c.encodeAssignment (c.decodeAssignment w) = w
def BanditRLProof.Causal.nodeHistory 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.Causal.nodeHistory

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

def nodeHistory {n : ℕ} {V : Fin n → Type*} (x : (i : Fin n) → V i) (i : Fin n) : NodeHistory V i
abbrev BanditRLProof.Causal.NodeGraphModel.ParentConfig 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.Causal.NodeGraphModel.ParentConfig

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

abbrev NodeGraphModel.ParentConfig {n : ℕ} {V : Fin n → Type*} (g : NodeGraphModel V) (i : Fin n)
def BanditRLProof.Causal.NodeGraphModel.parentConfig 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.Causal.NodeGraphModel.parentConfig

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

def NodeGraphModel.parentConfig {n : ℕ} {V : Fin n → Type*} (g : NodeGraphModel V) (i : Fin n) (h : NodeHistory V i) : g.ParentConfig i
def BanditRLProof.Causal.NodeGraphModel.encodeParent 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.Causal.NodeGraphModel.encodeParent

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

def NodeGraphModel.encodeParent {n : ℕ} {V : Fin n → Type*} {W : Type*} (g : NodeGraphModel V) (c : NodeCodec V W) (i : Fin n) (z : g.ParentConfig i) : (g.encodeGraph c).ParentConfig i
def BanditRLProof.Causal.NodeGraphModel.decodeParent 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.Causal.NodeGraphModel.decodeParent

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

def NodeGraphModel.decodeParent {n : ℕ} {V : Fin n → Type*} {W : Type*} (g : NodeGraphModel V) (c : NodeCodec V W) (i : Fin n) (z : (g.encodeGraph c).ParentConfig i) : g.ParentConfig i
theorem BanditRLProof.Causal.NodeGraphModel.decode_encodeParent 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.Causal.NodeGraphModel.decode_encodeParent

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

theorem NodeGraphModel.decode_encodeParent {n : ℕ} {V : Fin n → Type*} {W : Type*} (g : NodeGraphModel V) (c : NodeCodec V W) (i : Fin n) (z : g.ParentConfig i) : g.decodeParent c i (g.encodeParent c i z) = z
def BanditRLProof.Causal.NodeGraphModel.parentLaw 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.Causal.NodeGraphModel.parentLaw

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

noncomputable def NodeGraphModel.parentLaw {n : ℕ} {V : Fin n → Type*} (g : NodeGraphModel V) (a : (i : Fin n) → Option (V i)) (i : Fin n) : PMF (g.ParentConfig i)
theorem BanditRLProof.Causal.NodeGraphModel.parentLaw_encoded 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.Causal.NodeGraphModel.parentLaw_encoded

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

theorem NodeGraphModel.parentLaw_encoded {n : ℕ} {V : Fin n → Type*} {W : Type*} (g : NodeGraphModel V) (c : NodeCodec V W) (a : (i : Fin n) → Option (V i)) (i : Fin n) : (g.encodeGraph c).parentLaw (c.encodeAction a) i = (g.parentLaw a i).map (g.encodeParent c i)