Documentation

TauCeti.Probability.Exchangeability.Arrays.AldousHoover.Basic

Aldous--Hoover array codings are exchangeable #

The functional forms in the Aldous--Hoover representation use four independent kinds of uniform randomness. A separately exchangeable array is coded from a global variable, one variable for each row, one for each column, and one for each cell:

X i j = f(U, U_row i, U_col j, U_cell i j).

For a jointly exchangeable array, the row and column variables are replaced by one family of vertex variables:

X i j = f(U, U_vert i, U_vert j, U_cell {i, j}).

This file defines canonical product probability spaces carrying those sources and proves the easy direction of the Aldous--Hoover representation theorem: every measurable coding of the first form is separately exchangeable, and every measurable coding of the second form is jointly exchangeable. The proof reindexes the independent source family. Row and column permutations act on their respective vertex variables and together on the cell variables, while leaving the global variable fixed.

Dropping the global variable — coding through a function that ignores its first argument — gives the ergodic form of the representation, whose arrays are dissociated as well as exchangeable. That is proved in Arrays.AldousHoover.Dissociated. The converse representation direction, which constructs the coding function from an exchangeable array, is proved for separately exchangeable arrays in Arrays.AldousHoover.Separate.Representation and for jointly exchangeable arrays in Arrays.AldousHoover.Joint.Representation.

Main definitions #

Main results #

References #

No material is adapted from cameronfreer/exchangeability, which treats sequences rather than exchangeable arrays.

inductive TauCeti.Probability.AldousHoover.NoiseIndex (κ : Type u_1) (ι : Type u_2) :
Type (max u_1 u_2)

Indices for the independent noise in an Aldous--Hoover coding. The parameter κ indexes families of vertex variables, while ι indexes the cell variables.

Instances For

    The two vertex-noise families in the separately exchangeable coding.

    Instances For
      def TauCeti.Probability.AldousHoover.indexEquiv {κ : Type u_1} {ι : Type u_2} (vertexPerm : κ → Equiv.Perm ℕ) (cellPerm : ι ≃ ι) :

      Reindex Aldous--Hoover noise by a permutation of each vertex family and of the cell indices.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]
        theorem TauCeti.Probability.AldousHoover.indexEquiv_global {κ : Type u_1} {ι : Type u_2} (vertexPerm : κ → Equiv.Perm ℕ) (cellPerm : ι ≃ ι) :
        @[simp]
        theorem TauCeti.Probability.AldousHoover.indexEquiv_vertex {κ : Type u_1} {ι : Type u_2} (vertexPerm : κ → Equiv.Perm ℕ) (cellPerm : ι ≃ ι) (a : κ) (i : ℕ) :
        (indexEquiv vertexPerm cellPerm) (NoiseIndex.vertex a i) = NoiseIndex.vertex a ((vertexPerm a) i)
        @[simp]
        theorem TauCeti.Probability.AldousHoover.indexEquiv_cell {κ : Type u_1} {ι : Type u_2} (vertexPerm : κ → Equiv.Perm ℕ) (cellPerm : ι ≃ ι) (p : ι) :
        (indexEquiv vertexPerm cellPerm) (NoiseIndex.cell p) = NoiseIndex.cell (cellPerm p)

        The canonical law of the independent uniform variables used by an Aldous--Hoover coding.

        Equations
        Instances For

          The canonical Aldous--Hoover noise law is the product of uniform laws over all noise indices.

          The canonical Aldous--Hoover noise law is a probability measure.

          @[simp]

          Each coordinate of the canonical Aldous--Hoover noise law is uniform on the unit interval.

          The coordinates of the canonical Aldous--Hoover noise law are independent.

          @[reducible, inline]
          abbrev TauCeti.Probability.AldousHoover.noiseCongr {κ : Type u_1} {ι : Type u_2} (vertexPerm : κ → Equiv.Perm ℕ) (cellPerm : ι ≃ ι) :
          (NoiseIndex κ ι → ↑unitInterval) ≃ᵐ (NoiseIndex κ ι → ↑unitInterval)

          Reindexing a realization of the Aldous--Hoover noise by a permutation of each vertex family and of the cell indices, as a measurable equivalence.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            @[simp]
            theorem TauCeti.Probability.AldousHoover.noiseCongr_apply {κ : Type u_1} {ι : Type u_2} (vertexPerm : κ → Equiv.Perm ℕ) (cellPerm : ι ≃ ι) (u : NoiseIndex κ ι → ↑unitInterval) (q : NoiseIndex κ ι) :
            (noiseCongr vertexPerm cellPerm) u q = u ((indexEquiv vertexPerm cellPerm) q)
            @[simp]
            theorem TauCeti.Probability.AldousHoover.map_noiseCongr_noiseMeasure {κ : Type u_1} (vertexPerm : κ → Equiv.Perm ℕ) {ι : Type u_2} (cellPerm : ι ≃ ι) :
            MeasureTheory.Measure.map (⇑(noiseCongr vertexPerm cellPerm)) (noiseMeasure κ ι) = noiseMeasure κ ι

            The independent uniform noise law is invariant under reindexing its vertex and cell coordinates.

            Noise actions for array codings #

            The action on the two vertex-noise families associated to two axis permutations.

            Equations
            Instances For

              The action on cell-noise coordinates associated to two axis permutations.

              Equations
              Instances For
                @[simp]
                theorem TauCeti.Probability.AldousHoover.separateCellPerm_apply (rowPerm colPerm : Equiv.Perm ℕ) (p : ℕ × ℕ) :
                (separateCellPerm rowPerm colPerm) p = (rowPerm p.1, colPerm p.2)

                The measurable equivalence reindexing the separate-coding noise by two axis permutations.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  @[simp]
                  theorem TauCeti.Probability.AldousHoover.separateNoiseCongr_apply_vertex (rowPerm colPerm : Equiv.Perm ℕ) (u : NoiseIndex Axis (ℕ × ℕ) → ↑unitInterval) (a : Axis) (i : ℕ) :
                  (separateNoiseCongr rowPerm colPerm) u (NoiseIndex.vertex a i) = u (NoiseIndex.vertex a ((separateVertexPerm rowPerm colPerm a) i))
                  @[simp]

                  The separate noise reindexing preserves the canonical independent-uniform noise law.

                  The action on unordered-pair cell indices associated to a permutation of the vertex indices.

                  Equations
                  Instances For

                    The measurable equivalence reindexing the joint-coding noise by one vertex permutation.

                    Equations
                    Instances For
                      @[simp]

                      The joint noise reindexing preserves the canonical independent-uniform noise law.

                      The separately exchangeable Aldous--Hoover coding.

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        theorem TauCeti.Probability.AldousHoover.separateArray_reindex {α : Type u_1} (f : ↑unitInterval × ↑unitInterval × ↑unitInterval × ↑unitInterval → α) (rowPerm colPerm : Equiv.Perm ℕ) (u : NoiseIndex Axis (ℕ × ℕ) → ↑unitInterval) (p : ℕ × ℕ) :
                        separateArray f (rowPerm p.1, colPerm p.2) u = separateArray f p ((separateNoiseCongr rowPerm colPerm) u)

                        Pathwise equivariance of the separate coding under the corresponding noise reindexing.

                        A measurable separate Aldous--Hoover coding is measurable as an array-valued random variable.

                        Every measurable separate Aldous--Hoover coding is separately exchangeable.

                        The jointly exchangeable Aldous--Hoover coding, using one common family of vertex variables for the two axes.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For

                          Pathwise equivariance of the joint coding under the corresponding noise reindexing.

                          Swapping the two indices of a joint coding only swaps its two vertex-noise arguments. The cell-noise argument is unchanged because it is indexed by the unordered pair Sym2.mk i j.

                          theorem TauCeti.Probability.AldousHoover.jointArray_symmetric_of {α : Type u_1} (f : ↑unitInterval × ↑unitInterval × ↑unitInterval × ↑unitInterval → α) (hf : ∀ (a b c d : ↑unitInterval), f (a, b, c, d) = f (a, c, b, d)) (u : NoiseIndex Unit (Sym2 ℕ) → ↑unitInterval) (i j : ℕ) :
                          jointArray f (i, j) u = jointArray f (j, i) u

                          A kernel symmetric in its two vertex variables produces a pathwise symmetric array. This is the symmetry condition needed when the jointly exchangeable Aldous--Hoover coding is specialized to random graphs and other undirected arrays.

                          A measurable joint Aldous--Hoover coding is measurable as an array-valued random variable.

                          Every measurable joint Aldous--Hoover coding is jointly exchangeable.