Learning.pullCount_add_one
This page has the declaration's own card below, then its dependency graph, then a card for each dependency (type dependencies first, then the rest of the transitive closure). For a theorem, the graph and the dependency cards only follow its statement's dependencies (its proof is replaced by sorry, so what it proves doesn't depend on how); for everything else, both the type and the body/value are followed, since their content is part of what later declarations build on.
pullCount_add_one🔗
Learning.pullCount_add_oneNo docstring.
Learning.pullCount_add_one.{u_1, u_3} {𝓐 : Type u_1} {Ω : Type u_3} [DecidableEq 𝓐] {A : ℕ → Ω → 𝓐} {a : 𝓐} {t : ℕ} {ω : Ω} : pullCount A a (t + 1) ω = pullCount A a t ω + if A t ω = a then 1 else 0Learning.pullCount_add_one.{u_1, u_3} {𝓐 : Type u_1} {Ω : Type u_3} [DecidableEq 𝓐] {A : ℕ → Ω → 𝓐} {a : 𝓐} {t : ℕ} {ω : Ω} : pullCount A a (t + 1) ω = pullCount A a t ω + if A t ω = a then 1 else 0
Code
lemma pullCount_add_one :
pullCount A a (t + 1) ω = pullCount A a t ω + if A t ω = a then 1 else 0Type uses (1)
Used by (7)
Actions: Source · Open Issue
Proof
by split_ifs with h · rw [← h, pullCount_action_eq_pullCount_add_one] · rw [pullCount_eq_pullCount_of_action_ne h, add_zero]
Dependency graph
Type dependencies (1)
pullCount🔗
Learning.pullCount
Number of times action a was chosen up to time t (excluding t).
Learning.pullCount.{u_1, u_3} {𝓐 : Type u_1} {Ω : Type u_3} [DecidableEq 𝓐] (A : ℕ → Ω → 𝓐) (a : 𝓐) (t : ℕ) (ω : Ω) : ℕLearning.pullCount.{u_1, u_3} {𝓐 : Type u_1} {Ω : Type u_3} [DecidableEq 𝓐] (A : ℕ → Ω → 𝓐) (a : 𝓐) (t : ℕ) (ω : Ω) : ℕ
Code
noncomputable def pullCount (A : ℕ → Ω → 𝓐) (a : 𝓐) (t : ℕ) (ω : Ω) : ℕ := #(filter (fun s ↦ A s ω = a) (range t))
Actions: Source · Open Issue