Learning.rewardByCount_of_stepsUntil_eq_coe
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.
rewardByCount_of_stepsUntil_eq_coe๐
Learning.rewardByCount_of_stepsUntil_eq_coeNo docstring.
Learning.rewardByCount_of_stepsUntil_eq_coe.{u_1, u_2, u_3} {๐ : Type u_1} {R : Type u_2} {ฮฉ : Type u_3} [DecidableEq ๐] {A : โ โ ฮฉ โ ๐} {R' : โ โ ฮฉ โ R} {a : ๐} {m n : โ} {ฯ : ฮฉ ร (โ โ ๐ โ R)} (h : stepsUntil A a m (Prod.fst ฯ) = โn) : rewardByCount A R' a m ฯ = R' n (Prod.fst ฯ)Learning.rewardByCount_of_stepsUntil_eq_coe.{u_1, u_2, u_3} {๐ : Type u_1} {R : Type u_2} {ฮฉ : Type u_3} [DecidableEq ๐] {A : โ โ ฮฉ โ ๐} {R' : โ โ ฮฉ โ R} {a : ๐} {m n : โ} {ฯ : ฮฉ ร (โ โ ๐ โ R)} (h : stepsUntil A a m (Prod.fst ฯ) = โn) : rewardByCount A R' a m ฯ = R' n (Prod.fst ฯ)
Code
lemma rewardByCount_of_stepsUntil_eq_coe (h : stepsUntil A a m ฯ.1 = n) :
rewardByCount A R' a m ฯ = R' n ฯ.1Type uses (2)
Body uses (1)
Used by (1)
Actions: Source ยท Open Issue
Proof
by simp [rewardByCount_eq_ite, h]
Dependency graph
Type dependencies (2)
stepsUntil๐
Learning.stepsUntil
Number of steps until action a was pulled exactly m times.
Learning.stepsUntil.{u_1, u_3} {๐ : Type u_1} {ฮฉ : Type u_3} [DecidableEq ๐] (A : โ โ ฮฉ โ ๐) (a : ๐) (m : โ) (ฯ : ฮฉ) : โโLearning.stepsUntil.{u_1, u_3} {๐ : Type u_1} {ฮฉ : Type u_3} [DecidableEq ๐] (A : โ โ ฮฉ โ ๐) (a : ๐) (m : โ) (ฯ : ฮฉ) : โโ
Code
noncomputable
def stepsUntil (A : โ โ ฮฉ โ ๐) (a : ๐) (m : โ) (ฯ : ฮฉ) : โโ :=
sInf ((โ) '' {s | pullCount A a (s + 1) ฯ = m})Body uses (1)
Used by (46)
Actions: Source ยท Open Issue
rewardByCount๐
Learning.rewardByCount
Reward obtained when pulling action a for the m-th time.
If it is never pulled m times, the reward is given by the second component of ฯ, which in
applications will be indepedent with same law.
Learning.rewardByCount.{u_1, u_2, u_3} {๐ : Type u_1} {R : Type u_2} {ฮฉ : Type u_3} [DecidableEq ๐] (A : โ โ ฮฉ โ ๐) (R' : โ โ ฮฉ โ R) (a : ๐) (m : โ) (ฯ : ฮฉ ร (โ โ ๐ โ R)) : RLearning.rewardByCount.{u_1, u_2, u_3} {๐ : Type u_1} {R : Type u_2} {ฮฉ : Type u_3} [DecidableEq ๐] (A : โ โ ฮฉ โ ๐) (R' : โ โ ฮฉ โ R) (a : ๐) (m : โ) (ฯ : ฮฉ ร (โ โ ๐ โ R)) : R
Code
noncomputable def rewardByCount (A : โ โ ฮฉ โ ๐) (R' : โ โ ฮฉ โ R) (a : ๐) (m : โ) (ฯ : ฮฉ ร (โ โ ๐ โ R)) : R := match (stepsUntil A a m ฯ.1) with | โค => ฯ.2 m a | (n : โ) => R' n ฯ.1
Body uses (1)
Used by (15)
Actions: Source ยท Open Issue
All dependencies, transitively (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