DiscreteLaplaceSample
Properties #
This file proves evaluation and normalization properties of DiscreteLaplaceSample
.
@[simp]
theorem
SLang.DiscreteLaplaceSampleLoopIn1Aux_normalizes
(t : ℕ+)
:
∑' (x : ℕ × Bool), SLang.DiscreteLaplaceSampleLoopIn1Aux t x = 1
theorem
SLang.DiscreteLaplaceSampleLoopIn1Aux_apply_true
(t : ℕ+)
(n : ℕ)
:
SLang.DiscreteLaplaceSampleLoopIn1Aux t (n, true) = if n < ↑t then ENNReal.ofReal (Real.exp (-(↑n / ↑↑t))) / ↑↑t else 0
theorem
SLang.DiscreteLaplaceSampleLoopIn1Aux_apply_false
(t : ℕ+)
(n : ℕ)
:
SLang.DiscreteLaplaceSampleLoopIn1Aux t (n, false) = if n < ↑t then (1 - ENNReal.ofReal (Real.exp (-(↑n / ↑↑t)))) / ↑↑t else 0
theorem
SLang.DiscreteLaplaceSampleLoopIn1_apply_pre
(t : ℕ+)
(n : ℕ)
:
SLang.DiscreteLaplaceSampleLoopIn1 t n = SLang.DiscreteLaplaceSampleLoopIn1Aux t (n, true) * (∑' (a : ℕ), SLang.DiscreteLaplaceSampleLoopIn1Aux t (a, true))⁻¹
@[simp]
theorem
SLang.DiscreteLaplaceSampleLoopIn2_eq
(num : ℕ)
(den : ℕ+)
:
SLang.DiscreteLaplaceSampleLoopIn2 num den = (SLang.BernoulliExpNegSample num den).probGeometric
@[simp]
theorem
SLang.DiscreteLaplaceSampleLoop_normalizes
(num : ℕ+)
(den : ℕ+)
:
∑' (x : Bool × ℕ), SLang.DiscreteLaplaceSampleLoop num den x = 1
@[simp]
Closed form for the evaluation of the SLang
Laplace sampler.
@[simp]
theorem
SLang.DiscreteLaplaceSample_normalizes
(num : ℕ+)
(den : ℕ+)
:
∑' (x : ℤ), SLang.DiscreteLaplaceSample num den x = 1
SLang
Laplace sampler is a proper distribution.