Module-valued uniform finite sums for project distributions #
This module contains the module-valued finite-sum algebra for the project
Distribution type. The statements keep the paper-facing
uniformDistribution notation, but their proofs reduce the probability
calculation to the finite-expectation API for Mathlib probability mass
functions.
Main declarations #
Distribution.sum_smul_eq_toPMF_support_sumDistribution.sum_smul_eq_toPMF_sumuniformDistribution_sum_smul_eq_pmf_sumuniformDistribution_sum_smul_equivuniformDistribution_sum_smul_produniformDistribution_sum_smul_communiformDistribution_sum_smul_prod_swapuniformDistribution_sum_smul_equiv_produniformDistribution_sum_smul_equiv_fstuniformDistribution_sum_smul_equiv_snduniformDistribution_map_sum_smul_eq_uniform_of_factor_equivuniformOnFinset_sum_smul_eq_subtypeuniformOnFinset_filter_sum_smul_equiv
References #
These are formalization-internal finite probability lemmas for the low individual degree test development.
A module-valued finite weighted sum against a probabilistic project distribution may be written with the real weights of the associated Mathlib probability mass function, over the stored support.
A module-valued finite weighted sum against a probabilistic project distribution may be written as a full finite sum with the real weights of the associated Mathlib probability mass function.
Module-valued finite-sum expression for the uniform distribution, stated without measurable-space assumptions.
A finite-support uniform weighted sum is the corresponding Mathlib uniform PMF-weighted sum.
A constant family has uniform module-valued average equal to that constant.
This is the project-distribution form of PMF.sum_const_smul.
Reindex a uniform module-valued average along an equivalence.
Split a uniform module-valued average over a product into iterated uniform module-valued averages.
Swap two nested uniform module-valued averages over finite nonempty types.
Split a uniform module-valued average over a product into iterated uniform module-valued averages, with the second coordinate averaged first.
Transport a uniform module-valued average through an equivalence whose target is a product, then split the product average.
Transport a uniform module-valued average through an equivalence whose target is a product, then split the product average in the other order.
A function depending only on the first coordinate of a product equivalence has the first-coordinate uniform module-valued marginal.
A function depending only on the second coordinate of a product equivalence has the second-coordinate uniform module-valued marginal.
A uniformly sampled seed has the uniform module-valued average of an equivalent observed coordinate.
A uniformly sampled seed has the first-coordinate uniform module-valued marginal when the observed coordinate factors through a product equivalence.
A uniformly sampled seed has the second-coordinate uniform module-valued marginal when the observed coordinate factors through a product equivalence.
A uniform push-forward has the uniform module-valued average induced by an equivalent observed coordinate.
A uniform push-forward has the first-coordinate uniform module-valued marginal when the observed coordinate factors through a product equivalence.
A uniform push-forward has the second-coordinate uniform module-valued marginal when the observed coordinate factors through a product equivalence.
A finite-support uniform module-valued average is the corresponding uniform average over the support subtype.
A finite-support uniform module-valued average may be reindexed by any finite type equivalent to the support subtype.
A uniform module-valued average over a filtered finite support is the uniform average over the finite subtype satisfying the predicate.
A uniform module-valued average over a filtered finite type may be reindexed by any finite seed type equivalent to the predicate subtype.