Evaluation Distributions of Computations with Prod #
Lemmas about evalDist and support involving Prod, ported to generic [HasEvalSPMF m].
theorem
probOutput_seq_map_prod_map_eq_mul
{m : Type u → Type v}
[Monad m]
[LawfulMonad m]
[HasEvalSPMF m]
{α β γ δ : Type u}
[DecidableEq γ]
[DecidableEq δ]
(mx : m α)
(my : m β)
(f : α → γ)
(g : β → δ)
(z : γ × δ)
:
theorem
probOutput_bind_bind_prod_mk_eq_mul
{m : Type u → Type v}
[Monad m]
[LawfulMonad m]
[HasEvalSPMF m]
{α β γ δ : Type u}
[DecidableEq γ]
[DecidableEq δ]
(mx : m α)
(my : m β)
(f : α → γ)
(g : β → δ)
(z : γ × δ)
:
@[simp]
theorem
probOutput_bind_bind_prod_mk_eq_mul'
{m : Type u → Type v}
[Monad m]
[LawfulMonad m]
[HasEvalSPMF m]
{α β γ δ : Type u}
[DecidableEq γ]
[DecidableEq δ]
(mx : m α)
(my : m β)
(f : α → γ)
(g : β → δ)
(x : γ)
(y : δ)
: