Documentation

Graphon.CutDistance

Cut Distance for Graphons #

This file defines the cut distance (also called cut metric) between graphons, which is the fundamental metric for graphon convergence theory.

Main definitions #

Main results #

Implementation notes #

The cut distance is defined as an infimum over measure-preserving maps. In general, one needs to consider maps from a common probability space to both graphons.

The cut distance is a pseudometric: δ□(U, W) = 0 does not imply U = W, but rather that U and W are weakly isomorphic (differ only by measure-preserving reparametrization).

References #

Rectangle integral of difference #

noncomputable def Graphon.rectIntegralDiff {α : Type u_1} [MeasurableSpace α] {μ : MeasureTheory.Measure α} (U W : Graphon α μ) (S T : Set α) :

The integral of the difference of two graphons over a measurable rectangle S × T.

Equations
Instances For

    Rectangle integral of difference equals difference of rectangle integrals.

    Cut norm of difference #

    noncomputable def Graphon.cutNormDiff {α : Type u_1} [MeasurableSpace α] {μ : MeasureTheory.Measure α} (U W : Graphon α μ) :

    The cut norm of the difference of two graphons.

    ‖U - W‖_□ = sup_{S,T measurable} |∫_{S×T} (U - W)|

    Since graphons take values in [0,1], their difference takes values in [-1,1].

    Equations
    Instances For

      Cut norm difference is non-negative.

      Helper: absolute value of rectangle integral difference is bounded by 1.

      Rectangle integral difference is bounded by cut norm difference.

      Cut norm difference with self is zero.

      Cut norm difference is symmetric.

      Cut norm difference is bounded by 1.

      Since U, W ∈ [0,1], we have U - W ∈ [-1,1], so |∫(U-W)| ≤ μ(S×T) ≤ 1.

      Rectangle integral difference satisfies the triangle inequality.

      Cut norm difference satisfies the triangle inequality.

      Weighted integrals of differences #

      theorem Graphon.abs_weighted_integral_diff_indicator_le {α : Type u_1} [MeasurableSpace α] {μ : MeasureTheory.Measure α} [MeasureTheory.IsProbabilityMeasure μ] (U W : Graphon α μ) (S T : Set α) (hS : MeasurableSet S) (hT : MeasurableSet T) :
      | (x : α), (y : α), S.indicator (fun (x : α) => 1) x * T.indicator (fun (x : α) => 1) y * (U.toAEEqFun (x, y) - W.toAEEqFun (x, y)) μ μ| U.cutNormDiff W

      Weighted integral of graphon difference bounded by cut norm difference (indicator case).

      For measurable sets S, T: |∫∫ 1_S(x) 1_T(y) (U(x,y) - W(x,y)) dμ(x) dμ(y)| ≤ ‖U - W‖_□

      This follows directly from the cut norm definition.

      theorem Graphon.abs_weighted_integral_diff_le {α : Type u_1} [MeasurableSpace α] {μ : MeasureTheory.Measure α} [MeasureTheory.IsProbabilityMeasure μ] (U W : Graphon α μ) (f g : α) (hf_meas : Measurable f) (hg_meas : Measurable g) (hf_bound : ∀ (x : α), f x Set.Icc 0 1) (hg_bound : ∀ (x : α), g x Set.Icc 0 1) :
      | (x : α), (y : α), f x * g y * (U.toAEEqFun (x, y) - W.toAEEqFun (x, y)) μ μ| U.cutNormDiff W

      General weighted integral of graphon difference bounded by cut norm difference.

      For f, g : α → [0, 1] measurable and graphons U, W: |∫∫ f(x) g(y) (U(x,y) - W(x,y)) dμ(x) dμ(y)| ≤ ‖U - W‖_□

      Uses nested layer cake: first on f (reducing to indicator case), then on g. This is Lemma 10.21 in Lovász [2012].

      Cut distance #

      noncomputable def Graphon.cutDistance {α : Type u_1} [MeasurableSpace α] {μ : MeasureTheory.Measure α} [MeasureTheory.IsProbabilityMeasure μ] (U W : Graphon α μ) :

      The cut distance between two graphons on the same probability space.

      δ□(U, W) = inf_{φ,ψ} ‖U^φ - W^ψ‖_□

      where the infimum is over all measure-preserving maps φ, ψ : α → α.

      Design note: This two-sided definition reparametrizes BOTH graphons, making symmetry trivial by construction (swap φ and ψ). This matches the standard definition in Lovász which uses measure-preserving maps from a common probability space to both graphon spaces.

      The one-sided definition inf_φ ‖U - W^φ‖_□ requires [StandardBorelSpace α] to prove symmetry (via invertibility of measure-preserving maps). The two-sided definition avoids this requirement while giving the same value on standard Borel spaces.

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

        Cut distance is non-negative.

        theorem Graphon.cutDistance_set_nonempty {α : Type u_1} [MeasurableSpace α] {μ : MeasureTheory.Measure α} [MeasureTheory.IsProbabilityMeasure μ] (U W : Graphon α μ) :
        {d : | ∃ (φ : αα) (ψ : αα) ( : MeasureTheory.MeasurePreserving φ μ μ) ( : MeasureTheory.MeasurePreserving ψ μ μ), d = (U.pullback φ ).cutNormDiff (W.pullback ψ )}.Nonempty

        The set defining cut distance is nonempty (identity maps always work).

        Cut distance of a graphon to itself is zero.

        Cut distance is bounded by cut norm difference (using identity maps).

        Cut distance is bounded by 1.

        theorem Graphon.MeasurePreserving.exists_common_extension {α : Type u_1} [MeasurableSpace α] {μ : MeasureTheory.Measure α} [MeasureTheory.IsProbabilityMeasure μ] [StandardBorelSpace α] (ψ₁ : αα) (hψ₁ : MeasureTheory.MeasurePreserving ψ₁ μ μ) (φ₂ : αα) (hφ₂ : MeasureTheory.MeasurePreserving φ₂ μ μ) (P Q : MeasurablePartition α μ) :
        (∃ (χ₁ : α ≃ᵐ α) (χ₂ : α ≃ᵐ α) (_ : MeasureTheory.MeasurePreserving (⇑χ₁) μ μ) (_ : MeasureTheory.MeasurePreserving (⇑χ₂) μ μ), ψ₁ χ₁ =ᵐ[μ] φ₂ χ₂) (∃ (e : α ≃ᵐ α) (_ : MeasureTheory.MeasurePreserving (⇑e) μ μ), SP.parts, TQ.parts, μ (S \ e ⁻¹' T) = 0 μ (e ⁻¹' T \ S) = 0) ∀ {k : } (ι_S ι_T : Fin kSet α), (∀ (i : Fin k), ι_S i P.parts)(∀ (i : Fin k), ι_T i Q.parts)Function.Injective ι_SFunction.Injective ι_T(∀ (i : Fin k), μ (ι_S i) = μ (ι_T i))∃ (e : α ≃ᵐ α) (_ : MeasureTheory.MeasurePreserving (⇑e) μ μ), ∀ (i : Fin k), ∀ᵐ (x : α) μ, x ι_S ie x ι_T i

        Rokhlin consequence: Two measure-preserving maps into a standard Borel probability space can be "aligned" via measure-preserving bijections, and any two measurable partitions can be aligned by a measure-preserving bijection.

        This is a consequence of Rokhlin's theorem: every standard Borel probability space is measure-theoretically isomorphic to [0,1] with Lebesgue measure.

        The theorem provides two outputs:

        1. Map alignment: Given MP maps ψ₁, φ₂ : α → α, there exist MP bijections χ₁, χ₂ such that ψ₁ ∘ χ₁ =ᵐ[μ] φ₂ ∘ χ₂.
        2. Partition alignment: Given measurable partitions P, Q, there exists a MP bijection e mapping each P-cell a.e. into some Q-cell.

        Both follow from the fact that (α, μ) ≅ ([0,1], λ). Map alignment is Kechris [1995], Theorem 17.41. Partition alignment follows because any finite measurable partition of [0,1] can be mapped to any other by a measure-preserving bijection (rearranging intervals).

        Sorry: Requires Rokhlin's theorem, which is not yet in Mathlib. This is well-established mathematics. This is one of three sorry declarations in the formalization and the only one that requires genuinely new Mathlib infrastructure. All other Rokhlin consequences (partition transfer, alignment chains, controlled cell alignment) are derived from this.

        The conclusion has three parts:

        1. Coupling: The two MP maps can be aligned via MP bijections.
        2. Partition alignment: Each cell of P maps a.e. to some cell of Q.
        3. Controlled cell alignment: Given a specific measure-matching correspondence between cells, the alignment can be chosen to realize it. This follows from Rokhlin's classification theorem applied cell-by-cell.
        theorem Graphon.MeasurePreserving.exists_common_extension_maps {α : Type u_1} [MeasurableSpace α] {μ : MeasureTheory.Measure α} [MeasureTheory.IsProbabilityMeasure μ] [StandardBorelSpace α] (ψ₁ : αα) (hψ₁ : MeasureTheory.MeasurePreserving ψ₁ μ μ) (φ₂ : αα) (hφ₂ : MeasureTheory.MeasurePreserving φ₂ μ μ) :
        ∃ (χ₁ : α ≃ᵐ α) (χ₂ : α ≃ᵐ α) (_ : MeasureTheory.MeasurePreserving (⇑χ₁) μ μ) (_ : MeasureTheory.MeasurePreserving (⇑χ₂) μ μ), ψ₁ χ₁ =ᵐ[μ] φ₂ χ₂

        Map-alignment consequence of exists_common_extension: given two MP maps, there exist MP bijections aligning them. This is the interface used by cutDistance_triangle.

        theorem Graphon.MeasurePreserving.exists_partition_alignment {α : Type u_1} [MeasurableSpace α] {μ : MeasureTheory.Measure α} [MeasureTheory.IsProbabilityMeasure μ] [StandardBorelSpace α] (P Q : MeasurablePartition α μ) :
        ∃ (e : α ≃ᵐ α) (_ : MeasureTheory.MeasurePreserving (⇑e) μ μ), SP.parts, TQ.parts, μ (S \ e ⁻¹' T) = 0 μ (e ⁻¹' T \ S) = 0

        Partition-alignment consequence of exists_common_extension: given two measurable partitions, there exists a MP bijection mapping each cell of the first a.e. into a cell of the second.

        theorem Graphon.MeasurePreserving.exists_controlled_cell_alignment {α : Type u_1} [MeasurableSpace α] {μ : MeasureTheory.Measure α} [MeasureTheory.IsProbabilityMeasure μ] [StandardBorelSpace α] (P Q : MeasurablePartition α μ) {k : } (ι_S ι_T : Fin kSet α) (hS : ∀ (i : Fin k), ι_S i P.parts) (hT : ∀ (i : Fin k), ι_T i Q.parts) (hS_inj : Function.Injective ι_S) (hT_inj : Function.Injective ι_T) (h_meas : ∀ (i : Fin k), μ (ι_S i) = μ (ι_T i)) :
        ∃ (e : α ≃ᵐ α) (_ : MeasureTheory.MeasurePreserving (⇑e) μ μ), ∀ (i : Fin k), ∀ᵐ (x : α) μ, x ι_S ie x ι_T i

        Controlled cell alignment: given indexed families of cells from two partitions with matching measures, there exists a MP bijection mapping each cell a.e. to the corresponding cell. This is a direct consequence of the third conjunct of exists_common_extension.

        Cut norm difference is invariant under applying the same MeasurableEquiv to both graphons.

        If e : α ≃ᵐ α is measure-preserving, then ‖U^e − W^e‖□ = ‖U − W‖

        The key insight: applying bijectivity of e, the sup over measurable S, T of |∫{S×T} (U^e − W^e)| equals the sup over measurable S', T' (images under e) of |∫{S'×T'} (U − W)|, which ranges over all measurable sets.

        Cut distance from a graphon to its pullback by a MP bijection is zero.

        For any graphon V and measure-preserving bijection e, δ□(V, V^e) = 0.

        Proof: Use φ = id and ψ = e⁻¹ as witnesses in the cutDistance infimum. Then V^id = V and (V^e)^{e⁻¹} = V^{e ∘ e⁻¹} = V^id = V, so ‖V − V‖_□ = 0.

        theorem Graphon.cutDistance_lt_add_of_pos {α : Type u_1} [MeasurableSpace α] {μ : MeasureTheory.Measure α} [MeasureTheory.IsProbabilityMeasure μ] (U W : Graphon α μ) {ε : } ( : 0 < ε) :
        ∃ (φ : αα) (ψ : αα) ( : MeasureTheory.MeasurePreserving φ μ μ) ( : MeasureTheory.MeasurePreserving ψ μ μ), (U.pullback φ ).cutNormDiff (W.pullback ψ ) < U.cutDistance W + ε

        For any ε > 0, there exist measure-preserving maps achieving cutDistance + ε.

        Triangle inequality for cut distance on standard Borel spaces.

        δ□(U, W) ≤ δ□(U, V) + δ□(V, W)

        This is the key property making cut distance a pseudometric.

        Proof: For any ε > 0:

        1. Choose (φ₁, ψ₁) with ‖U^φ₁ − V^ψ₁‖_□ < d(U,V) + ε
        2. Choose (φ₂, ψ₂) with ‖V^φ₂ − W^ψ₂‖_□ < d(V,W) + ε
        3. By Rokhlin's theorem, align ψ₁ and φ₂ via bijections χ₁, χ₂
        4. Compose maps and use cutNormDiff_triangle to get d(U,W) ≤ d(U,V) + d(V,W) + 2ε
        5. Take ε → 0.

        Depends on: MeasurePreserving.exists_common_extension (Rokhlin sorry).

        Cut distance is symmetric.

        δ□(U, W) = δ□(W, U)

        With the two-sided definition, this is immediate by swapping φ and ψ and using the symmetry of cutNormDiff. No StandardBorelSpace needed!