LeanMachineLearning exposition

Bandits.ArrayModel.instIsProbabilityMeasureProbSpaceArrayMeasureOfIsMarkovKernel🔗

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.

Minimal Lean file

instIsProbabilityMeasureProbSpaceArrayMeasureOfIsMarkovKernel🔗

InstanceBandits.ArrayModel.instIsProbabilityMeasureProbSpaceArrayMeasureOfIsMarkovKernel

No docstring.

🔗theorem
Bandits.ArrayModel.instIsProbabilityMeasureProbSpaceArrayMeasureOfIsMarkovKernel.{u_1, u_2} {𝓐 : Type u_1} {R : Type u_2} {m𝓐 : MeasurableSpace 𝓐} {mR : MeasurableSpace R} (ν : ProbabilityTheory.Kernel 𝓐 R) [ProbabilityTheory.IsMarkovKernel ν] : MeasureTheory.IsProbabilityMeasure (arrayMeasure ν)
Bandits.ArrayModel.instIsProbabilityMeasureProbSpaceArrayMeasureOfIsMarkovKernel.{u_1, u_2} {𝓐 : Type u_1} {R : Type u_2} {m𝓐 : MeasurableSpace 𝓐} {mR : MeasurableSpace R} (ν : ProbabilityTheory.Kernel 𝓐 R) [ProbabilityTheory.IsMarkovKernel ν] : MeasureTheory.IsProbabilityMeasure (arrayMeasure ν)

Code

instance (ν : Kernel 𝓐 R) [IsMarkovKernel ν] : IsProbabilityMeasure (arrayMeasure ν)
Type uses (3)
Body uses (2)
Used by (10)

Actions: Source · Open Issue

Proof
Measure.prod.instIsProbabilityMeasure _ _

Dependency graph

Type dependencies (3)

probSpace🔗

DefinitionBandits.ArrayModel.probSpace

Probability space for the array model of stochastic bandits.

🔗def
Bandits.ArrayModel.probSpace.{u_1, u_2} (𝓐 : Type u_1) (R : Type u_2) : Type (max u_1 u_2)
Bandits.ArrayModel.probSpace.{u_1, u_2} (𝓐 : Type u_1) (R : Type u_2) : Type (max u_1 u_2)

Code

def probSpace : Type _ := (ℕ → I) × (ℕ → 𝓐 → R)
Used by (64)

Actions: Source · Open Issue

instMeasurableSpaceProbSpace🔗

InstanceBandits.ArrayModel.instMeasurableSpaceProbSpace

No docstring.

🔗def
Bandits.ArrayModel.instMeasurableSpaceProbSpace.{u_3, u_4} {𝓐 : Type u_3} {R : Type u_4} [MeasurableSpace R] : MeasurableSpace (probSpace 𝓐 R)
Bandits.ArrayModel.instMeasurableSpaceProbSpace.{u_3, u_4} {𝓐 : Type u_3} {R : Type u_4} [MeasurableSpace R] : MeasurableSpace (probSpace 𝓐 R)

Code

instance {𝓐 R : Type*} [MeasurableSpace R] : MeasurableSpace (probSpace 𝓐 R)
Type uses (1)
Used by (41)

Actions: Source · Open Issue

Proof
inferInstanceAs (MeasurableSpace ((ℕ → I) × (ℕ → 𝓐 → R)))

arrayMeasure🔗

DefinitionBandits.ArrayModel.arrayMeasure

Probability measure for the array model of stochastic bandits.

🔗def
Bandits.ArrayModel.arrayMeasure.{u_1, u_2} {𝓐 : Type u_1} {R : Type u_2} {m𝓐 : MeasurableSpace 𝓐} {mR : MeasurableSpace R} (ν : ProbabilityTheory.Kernel 𝓐 R) : MeasureTheory.Measure (probSpace 𝓐 R)
Bandits.ArrayModel.arrayMeasure.{u_1, u_2} {𝓐 : Type u_1} {R : Type u_2} {m𝓐 : MeasurableSpace 𝓐} {mR : MeasurableSpace R} (ν : ProbabilityTheory.Kernel 𝓐 R) : MeasureTheory.Measure (probSpace 𝓐 R)

Code

noncomputable
def arrayMeasure (ν : Kernel 𝓐 R) : Measure (probSpace 𝓐 R) :=
  (Measure.infinitePi fun _ ↦ volume).prod (streamMeasure ν)
Type uses (2)
Body uses (1)
Used by (29)

Actions: Source · Open Issue

All dependencies, transitively (2)

streamMeasure🔗

DefinitionBandits.streamMeasure

Measure of an infinite stream of rewards from each action.

🔗def
Bandits.streamMeasure.{u_1, u_2} {𝓐 : Type u_1} {R : Type u_2} {m𝓐 : MeasurableSpace 𝓐} {mR : MeasurableSpace R} (ν : ProbabilityTheory.Kernel 𝓐 R) : MeasureTheory.Measure ( 𝓐 R)
Bandits.streamMeasure.{u_1, u_2} {𝓐 : Type u_1} {R : Type u_2} {m𝓐 : MeasurableSpace 𝓐} {mR : MeasurableSpace R} (ν : ProbabilityTheory.Kernel 𝓐 R) : MeasureTheory.Measure ( 𝓐 R)

Code

noncomputable
def streamMeasure (ν : Kernel 𝓐 R) : Measure (ℕ → 𝓐 → R) :=
  Measure.infinitePi fun _ ↦ Measure.infinitePi ν
Used by (56)

Actions: Source · Open Issue

instIsProbabilityMeasureForallNatForallStreamMeasureOfIsMarkovKernel🔗

InstanceBandits.instIsProbabilityMeasureForallNatForallStreamMeasureOfIsMarkovKernel

No docstring.

🔗theorem
Bandits.instIsProbabilityMeasureForallNatForallStreamMeasureOfIsMarkovKernel.{u_1, u_2} {𝓐 : Type u_1} {R : Type u_2} {m𝓐 : MeasurableSpace 𝓐} {mR : MeasurableSpace R} (ν : ProbabilityTheory.Kernel 𝓐 R) [ProbabilityTheory.IsMarkovKernel ν] : MeasureTheory.IsProbabilityMeasure (streamMeasure ν)
Bandits.instIsProbabilityMeasureForallNatForallStreamMeasureOfIsMarkovKernel.{u_1, u_2} {𝓐 : Type u_1} {R : Type u_2} {m𝓐 : MeasurableSpace 𝓐} {mR : MeasurableSpace R} (ν : ProbabilityTheory.Kernel 𝓐 R) [ProbabilityTheory.IsMarkovKernel ν] : MeasureTheory.IsProbabilityMeasure (streamMeasure ν)

Code

instance (ν : Kernel 𝓐 R) [IsMarkovKernel ν] : IsProbabilityMeasure (streamMeasure ν)
Type uses (1)
Used by (22)

Actions: Source · Open Issue

Proof
by
  unfold streamMeasure
  infer_instance