Generic i.i.d. random sources for samplers (directed umbrella #84, shared infrastructure) #
The reusable i.i.d. product sources underlying the explicit graph and digraph samplers, phrased
generically (no graph/digraph-specific index types) so the directed sampler need not duplicate the
InfiniteGraph-namespaced infrastructure:
OffDiagPairIndex V— the generic off-diagonal unordered-pair index (one uniform per pair of distinct vertices);InfiniteGraph.EdgeIndexis definitionallyOffDiagPairIndex ℕ;uniform01— the uniform probability measure on[0,1], withuniform01_Iicgiving the mass of an initial segment, andmeasurable_decideLethe measurability of thresholding at1/2;iidVertexSource μ— i.i.d. positionsℕ → αwith lawμ(viaMeasure.infinitePi);iidUniformSource ι— i.i.d. uniforms on[0,1]indexed by an arbitrary typeι;Measure.infinitePi_map_comp_equiv— invariance/reindexing under an index equivalence;Measure.infinitePi_map_sumPiEquivProdPi— the product decomposition over a sum of possibly infinite index types;Measure.infinitePi_map_comp_of_injective— the finite-projection identity: pushing an infinite product forward along precomposition with an injection from a finite index type gives the finite product of the selected factors (the marginal computations of both samplers).
The undirected graph sampler (Graphon.InfiniteSampler) and the directed digraph sampler both
draw one vertex position per vertex (iidVertexSource) and one [0,1]-uniform per unordered pair
(iidUniformSource (OffDiagPairIndex ℕ)); the categorical-vs-Bernoulli distinction is downstream
of the sources.
The off-diagonal unordered-pair index #
The off-diagonal unordered-pair index over a vertex type V: an unordered pair of
distinct vertices. The samplers draw one [0,1]-uniform per such pair (loops are separate).
Instances For
The off-diagonal pair index on two distinct vertices.
Instances For
The uniform distribution on [0,1].
Equations
Instances For
Thresholding a measurable real at 1/2 is measurable.
The lower-interval mass of the uniform distribution on [0,1].
The vertex source: i.i.d. positions ℕ → α with law μ.
Equations
- MeasureTheory.iidVertexSource μ = MeasureTheory.Measure.infinitePi fun (x : ℕ) => μ
Instances For
The uniform source: i.i.d. uniforms on [0,1], one per index i : ι.
Equations
Instances For
Reindexing invariance of infinite product sources #
Precomposition with an index equivalence reindexes an infinite product source: pushing
an infinite product of probability measures forward along precomposition with an equivalence of
index types gives the reindexed infinite product — the Equiv form of
Measure.infinitePi_map_piCongrLeft, and the source-invariance engine of the evaluated-law
exchangeability.
Splitting an infinite product over a sum of index types gives a product of infinite
products. This is the possibly-infinite counterpart of measurePreserving_sumPiEquivProdPi,
whose statement is for finite Measure.pi.
Finite projections of infinite product sources #
Pushing an infinite product of probability measures forward along precomposition
with an injection from a finite index type gives the finite product of the selected
factors — Measure.infinitePi_map_restrict for an arbitrary injection (constant-fiber
form; Mathlib upstreaming candidate, issue #24).
Disjoint finite projections of an infinite product source are independent (product form): pushing an infinite product of probability measures forward along a pair of precompositions with injections from finite index types with disjoint ranges gives the product of the two finite products — the factorization behind dissociation of sampler pushforwards.