Definitions, lemmas and theorems listed in order #
This file contains links to all definitions, lemmas and theorems from the paper.
They are listed roughly in the order they appear in the paper. This file should serve as a jumping off point to navigate and explore the formalization, and not as a reference to how things are defined. We invite the reader to click on the names in each definition to jump to their original definition. In Visual Studio Code one can Ctrl/CMD+Click on symbols to jump to their definition.
See Links for a glossary of list things listed in the paper, including Mathlib
definitions.
Section 4 – Expected Total Costs in Markov Decision Processes #
Equations
Instances For
Equations
- ⋯ = True.intro
Instances For
Equations
Instances For
Equations
- ⋯ = True.intro
Instances For
theorem
Paper.Section4.Theorem6
{S : Type u_5}
{A : Type u_6}
[DecidableEq S]
{M : MDP S A}
[M.FiniteBranching]
{𝒮 : 𝔖[M]}
:
LinkThm (∀ (π : M.Path) (h' : MDP.Path.Prob 𝒮 π ≠ 0), MarkovChain.Pr (π.toMC' h' ⋯).Cyl = MDP.Path.Prob 𝒮 π)
Equations
- ⋯ = True.intro
Instances For
Equations
- ⋯ = True.intro
Instances For
theorem
Paper.Section4.Lemma9
{S : Type u_5}
[DecidableEq S]
:
LinkLem (CompleteLattice (S → ENNReal))
Equations
- ⋯ = True.intro
Instances For
theorem
Paper.Section4.Lemma11
{S : Type u_5}
{A : Type u_6}
[DecidableEq S]
{M : MDP S A}
[M.FiniteBranching]
{c : M.Costs}
:
theorem
Paper.Section4.Theorem12
{S : Type u_5}
{A : Type u_6}
[DecidableEq S]
{M : MDP S A}
[M.FiniteBranching]
{c : M.Costs}
:
LinkThm (⨆ (n : ℕ), ⨆ (𝒮 : 𝔖[M]), MDP.EC c 𝒮 n = OrderHom.lfp (MDP.Φ Optimization.Angelic c))
theorem
Paper.Section4.Lemma13
{S : Type u_5}
{A : Type u_6}
[DecidableEq S]
{M : MDP S A}
[M.FiniteBranching]
{c : M.Costs}
:
theorem
Paper.Section4.Lemma14
{S : Type u_5}
{A : Type u_6}
[DecidableEq S]
{M : MDP S A}
[M.FiniteBranching]
{c : M.Costs}
:
LinkLem (⨆ (n : ℕ), ⨅ (𝒮 : 𝔖[M]), MDP.EC c 𝒮 n = OrderHom.lfp (MDP.Φ Optimization.Demonic c))
Equations
- ⋯ = True.intro
Instances For
theorem
Paper.Section4.Lemma16
{S : Type u_5}
{A : Type u_6}
[DecidableEq S]
{M : MDP S A}
[M.FiniteBranching]
{c : M.Costs}
:
LinkLem (∀ (ℒ : 𝔏[M]) [M.FiniteBranching], ⨆ (n : ℕ), MDP.EC c (↑ℒ) n = MDP.lfp_Φℒ ℒ c)
Equations
- ⋯ = True.intro
Instances For
theorem
Paper.Section4.Lemma18
{S : Type u_5}
{A : Type u_6}
[DecidableEq S]
{M : MDP S A}
[M.FiniteBranching]
{c : M.Costs}
:
LinkLem (MDP.lfp_Φℒ (MDP.optℒ c) c = OrderHom.lfp (MDP.Φ Optimization.Demonic c))
theorem
Paper.Section4.Theorem19
{S : Type u_5}
{A : Type u_6}
[DecidableEq S]
{M : MDP S A}
[M.FiniteBranching]
{c : M.Costs}
:
LinkThm (⨅ (𝒮 : 𝔖[M]), ⨆ (n : ℕ), MDP.EC c 𝒮 n = OrderHom.lfp (MDP.Φ Optimization.Demonic c))
Section 5 – pGCL: probabilistic Guarded Command Language #
def
Paper.Section5.Definition20
{𝒱 : Type u_1}
{Γ : 𝒱 → Type u_2}
:
Link (Conf (pGCL Γ) (pGCL.State Γ) pGCL.Termination)
Equations
- ⋯ = True.intro
Instances For
Equations
- ⋯ = True.intro
Instances For
Equations
- ⋯ = True.intro
Instances For
In Lean the cost functions are split for programs and terminations where ct = cost_p, cost_t
and cp = cost_p', cost_t'.
Equations
- ⋯ = True.intro
Instances For
def
Paper.Section5.Definition24
{𝒱 : Type u_1}
[DecidableEq 𝒱]
{Γ : 𝒱 → Type u_2}
{f : (pGCL.State Γ → ENNReal) →o pGCL.Termination × pGCL.State Γ → ENNReal}
{g : pGCL Γ × pGCL.State Γ → ENNReal}
:
Equations
- ⋯ = True.intro
Instances For
theorem
Paper.Section5.Lemma25
{𝒱 : Type u_1}
[DecidableEq 𝒱]
{Γ : 𝒱 → Type u_2}
{O : Optimization}
{f : (pGCL.State Γ → ENNReal) →o pGCL.Termination × pGCL.State Γ → ENNReal}
{g : pGCL Γ × pGCL.State Γ → ENNReal}
[O.ΦContinuous SmallStepSemantics.mdp]
{C C' : pGCL Γ}
:
LinkLem
(∀ (seq : pGCL Γ → pGCL Γ → pGCL Γ)
(after : pGCL Γ → (pGCL Γ ⊕ pGCL.Termination) × pGCL.State Γ → (pGCL Γ ⊕ pGCL.Termination) × pGCL.State Γ)
(t_const : pGCL.State Γ → ENNReal),
(∀ (C C' : pGCL Γ) (σ : pGCL.State Γ),
SmallStepSemantics.cost_p pGCL.Termination pGCL.Act (seq C C', σ) = SmallStepSemantics.cost_p pGCL.Termination pGCL.Act (C, σ)) →
(∀ (C C' : pGCL Γ) (σ : pGCL.State Γ),
SmallStepSemantics.act (Conf.prog (seq C C') σ) = SmallStepSemantics.act (Conf.prog C σ)) →
(∀ {C C' : pGCL Γ} {σ : pGCL.State Γ} {p : ENNReal} {α : pGCL.Act}
{s : (pGCL Γ ⊕ pGCL.Termination) × pGCL.State Γ},
(p, s) ∈ SmallStepSemantics.psucc C σ α → (p, after C' s) ∈ SmallStepSemantics.psucc (seq C C') σ α) →
(∀ {C C' : pGCL Γ} {σ : pGCL.State Γ}, after C' (Sum.inl C, σ) = (Sum.inl (seq C C'), σ)) →
(∀ {t : pGCL.Termination} {C : pGCL Γ} {C' : (pGCL Γ ⊕ pGCL.Termination) × pGCL.State Γ} {σ : pGCL.State Γ},
after C (Sum.inr t, σ) = C' →
C' = (Sum.inl C, σ) ∨ C' = (Sum.inr t, σ) ∧ ∀ (X : pGCL.State Γ → ENNReal),
(SmallStepSemantics.cost_t (pGCL Γ) pGCL.Act) X (t, σ) = t_const σ) →
(∀ {X : pGCL.State Γ → ENNReal} {t : pGCL.Termination} {σ : pGCL.State Γ} {C' : pGCL Γ},
after C' (Sum.inr t, σ) = (Sum.inl C', σ) →
(SmallStepSemantics.cost_t (pGCL Γ) pGCL.Act) ((SmallStepSemantics.op O C') X) (t, σ) ≤ (SmallStepSemantics.op O C') X σ) →
(∀ (x : pGCL Γ), Function.Injective (after x)) →
⇑(SmallStepSemantics.op O C) ∘ ⇑(SmallStepSemantics.op O C') ≤ ⇑(SmallStepSemantics.op O (seq C C')))
def
Paper.Section5.Definition26
{𝒱 : Type u_1}
[DecidableEq 𝒱]
{Γ : 𝒱 → Type u_2}
{f : (pGCL.State Γ → ENNReal) →o pGCL.Termination × pGCL.State Γ → ENNReal}
{g : pGCL Γ × pGCL.State Γ → ENNReal}
:
Equations
- ⋯ = True.intro
Instances For
theorem
Paper.Section5.Lemma27
{𝒱 : Type u_1}
[DecidableEq 𝒱]
{Γ : 𝒱 → Type u_2}
{O : Optimization}
{f : (pGCL.State Γ → ENNReal) →o pGCL.Termination × pGCL.State Γ → ENNReal}
{g : pGCL Γ × pGCL.State Γ → ENNReal}
[O.ΦContinuous SmallStepSemantics.mdp]
:
theorem
Paper.Section5.Lemma28
{𝒱 : Type u_1}
[DecidableEq 𝒱]
{Γ : 𝒱 → Type u_2}
{O : Optimization}
{f : (pGCL.State Γ → ENNReal) →o pGCL.Termination × pGCL.State Γ → ENNReal}
{g : pGCL Γ × pGCL.State Γ → ENNReal}
[O.ΦContinuous SmallStepSemantics.mdp]
{et : pGCL Γ → (pGCL.State Γ → ENNReal) →o pGCL.State Γ → ENNReal}
[(pGCL.𝕊 f g).ET O et]
:
LinkLem (et = SmallStepSemantics.op O)
theorem
Paper.Section5.Theorem30
{𝒱 : Type u_1}
[DecidableEq 𝒱]
{Γ : 𝒱 → Type u_2}
{O : Optimization}
{C : pGCL Γ}
:
Equations
- ⋯ = True.intro
Instances For
theorem
Paper.Section5.Lemma32
{𝒱 : Type u_1}
[DecidableEq 𝒱]
{Γ : 𝒱 → Type u_2}
{O : Optimization}
{C : pGCL Γ}
:
theorem
Paper.Section5.Theorem35
{𝒱 : Type u_1}
[DecidableEq 𝒱]
{Γ : 𝒱 → Type u_2}
{O : Optimization}
{b : pGCL.BExpr Γ}
{C : pGCL Γ}
{φ I : pGCL.State Γ → ENNReal}
:
theorem
Paper.Section5.Theorem36
{𝒱 : Type u_1}
[DecidableEq 𝒱]
{Γ : 𝒱 → Type u_2}
{O : Optimization}
{b : pGCL.BExpr Γ}
{C : pGCL Γ}
{φ I : pGCL.ProbExp Γ}
:
Equations
- ⋯ = True.intro
Instances For
theorem
Paper.Section5.Theorem38
{𝒱 : Type u_1}
[DecidableEq 𝒱]
{Γ : 𝒱 → Type u_2}
{O : Optimization}
{b : pGCL.BExpr Γ}
{C : pGCL Γ}
{φ I : pGCL.State Γ → ENNReal}
{σ₀ : pGCL.State Γ}
:
theorem
Paper.Section5.Theorem39
{𝒱 : Type u_1}
[DecidableEq 𝒱]
{Γ : 𝒱 → Type u_2}
{O : Optimization}
{b : pGCL.BExpr Γ}
{C : pGCL Γ}
{φ I : pGCL.State Γ → ENNReal}
{σ₀ : pGCL.State Γ}
: