Documentation

Graphon.CouplingTriangle

The arbitrary-carrier coupling-cost triangle #

Step 5b of the step-approximation programme (#107 remains open): the assembly.

Everything here is at the level of the coupling cost at fixed couplings — the cut-norm difference of the two pullbacks. No infimum over couplings is taken, so nothing here is a statement about a coupling distance; this repository does not define a cross-carrier one.

cutNormDiff_gluedOuterCoupling_lethe finite-level cost triangle: on standard-Borel factors, the cost of the glued outer coupling is at most the sum of the two input costs. Every cost is pulled back to the glued triple law, where a single cutNormDiff_triangle applies; the cross-carrier isometry identifies each pulled-back cost with the original one, so no error is incurred by the transport.

The standard-Borel hypothesis here is discharged at the point of use by the finite factors of FiniteFactorApproximation; the graphon carriers themselves stay arbitrary.

theorem Graphon.cutNormDiff_gluedOuterCoupling_le {ι₁ : Type u_1} {ι₂ : Type u_2} {ι₃ : Type u_3} [MeasurableSpace ι₁] [StandardBorelSpace ι₁] [Nonempty ι₁] [MeasurableSpace ι₂] [StandardBorelSpace ι₂] [Nonempty ι₂] [MeasurableSpace ι₃] [StandardBorelSpace ι₃] [Nonempty ι₃] {ν₁ : MeasureTheory.Measure ι₁} {ν₂ : MeasureTheory.Measure ι₂} {ν₃ : MeasureTheory.Measure ι₃} [MeasureTheory.IsProbabilityMeasure ν₁] [MeasureTheory.IsProbabilityMeasure ν₂] [MeasureTheory.IsProbabilityMeasure ν₃] {lam₁₂ : MeasureTheory.Measure (ι₁ × ι₂)} {lam₂₃ : MeasureTheory.Measure (ι₂ × ι₃)} [MeasureTheory.IsProbabilityMeasure lam₁₂] [MeasureTheory.IsProbabilityMeasure lam₂₃] (K₁ : Graphon ι₁ ν₁) (K₂ : Graphon ι₂ ν₂) (K₃ : Graphon ι₃ ν₃) (hmid : MeasureTheory.Measure.map Prod.fst lam₂₃ = MeasureTheory.Measure.map Prod.snd lam₁₂) (hfst₁₂ : MeasureTheory.MeasurePreserving Prod.fst lam₁₂ ν₁) (hsnd₁₂ : MeasureTheory.MeasurePreserving Prod.snd lam₁₂ ν₂) (hfst₂₃ : MeasureTheory.MeasurePreserving Prod.fst lam₂₃ ν₂) (hsnd₂₃ : MeasureTheory.MeasurePreserving Prod.snd lam₂₃ ν₃) (hfst₁₃ : MeasureTheory.MeasurePreserving Prod.fst (MeasureTheory.gluedOuterCoupling lam₁₂ lam₂₃) ν₁) (hsnd₁₃ : MeasureTheory.MeasurePreserving Prod.snd (MeasureTheory.gluedOuterCoupling lam₁₂ lam₂₃) ν₃) :
(K₁.pullback Prod.fst hfst₁₃).cutNormDiff (K₃.pullback Prod.snd hsnd₁₃) (K₁.pullback Prod.fst hfst₁₂).cutNormDiff (K₂.pullback Prod.snd hsnd₁₂) + (K₂.pullback Prod.fst hfst₂₃).cutNormDiff (K₃.pullback Prod.snd hsnd₂₃)

The coupling-cost triangle at the factor level. The cost of the glued outer coupling is at most the sum of the two input costs — exactly, with no error term. All three costs are pulled back to the glued triple law, where one application of cutNormDiff_triangle finishes; the cross-carrier isometry (cutNormDiff_pullback_eq_measurePreserving) identifies each pulled-back cost with the corresponding original, so the transport is lossless.

theorem Graphon.exists_coupling_cutNormDiff_le_add_add {Ω₁ : Type u_1} {Ω₂ : Type u_2} {Ω₃ : Type u_3} [MeasurableSpace Ω₁] [MeasurableSpace Ω₂] [MeasurableSpace Ω₃] {μ₁ : MeasureTheory.Measure Ω₁} {μ₂ : MeasureTheory.Measure Ω₂} {μ₃ : MeasureTheory.Measure Ω₃} [MeasureTheory.IsProbabilityMeasure μ₁] [MeasureTheory.IsProbabilityMeasure μ₂] [MeasureTheory.IsProbabilityMeasure μ₃] {U₁ : Graphon Ω₁ μ₁} {U₂ : Graphon Ω₂ μ₂} {U₃ : Graphon Ω₃ μ₃} {e₁ e₂ e₃ : } (A₁ : U₁.FiniteFactorApproximation e₁) (A₂ : U₂.FiniteFactorApproximation e₂) (A₃ : U₃.FiniteFactorApproximation e₃) (π₁₂ : MeasureTheory.Measure (Ω₁ × Ω₂)) [MeasureTheory.IsProbabilityMeasure π₁₂] (hfst₁₂ : MeasureTheory.MeasurePreserving Prod.fst π₁₂ μ₁) (hsnd₁₂ : MeasureTheory.MeasurePreserving Prod.snd π₁₂ μ₂) (π₂₃ : MeasureTheory.Measure (Ω₂ × Ω₃)) [MeasureTheory.IsProbabilityMeasure π₂₃] (hfst₂₃ : MeasureTheory.MeasurePreserving Prod.fst π₂₃ μ₂) (hsnd₂₃ : MeasureTheory.MeasurePreserving Prod.snd π₂₃ μ₃) :
∃ (π₁₃ : MeasureTheory.Measure (Ω₁ × Ω₃)) (x : MeasureTheory.IsProbabilityMeasure π₁₃) (h₁ : MeasureTheory.MeasurePreserving Prod.fst π₁₃ μ₁) (h₃ : MeasureTheory.MeasurePreserving Prod.snd π₁₃ μ₃), (U₁.pullback Prod.fst h₁).cutNormDiff (U₃.pullback Prod.snd h₃) (U₁.pullback Prod.fst hfst₁₂).cutNormDiff (U₂.pullback Prod.snd hsnd₁₂) + (U₂.pullback Prod.fst hfst₂₃).cutNormDiff (U₃.pullback Prod.snd hsnd₂₃) + 2 * (e₁ + e₂ + e₃)

The arbitrary-carrier coupling-cost triangle. Given couplings of (U₁, U₂) and (U₂, U₃) and a finite-factor approximation of each graphon — with the same approximation of the middle graphon used on both sides — there is a coupling of (U₁, U₃) whose cost is at most the sum of the two given costs plus 2 * (e₁ + e₂ + e₃).

The carriers Ω₁, Ω₂, Ω₃ are arbitrary probability spaces: no standard-Borel hypothesis. Gluing happens on the finite factors, where standard Borel is automatic. The chain is: push both couplings to the finite factors (their middle marginals agree precisely because the middle approximation is shared), glue there, lift the glued factor law back to the carriers by countableFactorLift, transport the cost exactly, and pay one approximation error at each of the three cost comparisons — (e₁ + e₃) + (e₁ + e₂) + (e₂ + e₃) = 2 * (e₁ + e₂ + e₃).

theorem Graphon.exists_coupling_cutNormDiff_le_add_add_of_pos {Ω₁ : Type u_1} {Ω₂ : Type u_2} {Ω₃ : Type u_3} [MeasurableSpace Ω₁] [MeasurableSpace Ω₂] [MeasurableSpace Ω₃] {μ₁ : MeasureTheory.Measure Ω₁} {μ₂ : MeasureTheory.Measure Ω₂} {μ₃ : MeasureTheory.Measure Ω₃} [MeasureTheory.IsProbabilityMeasure μ₁] [MeasureTheory.IsProbabilityMeasure μ₂] [MeasureTheory.IsProbabilityMeasure μ₃] (U₁ : Graphon Ω₁ μ₁) (U₂ : Graphon Ω₂ μ₂) (U₃ : Graphon Ω₃ μ₃) {ε : } ( : 0 < ε) (π₁₂ : MeasureTheory.Measure (Ω₁ × Ω₂)) [MeasureTheory.IsProbabilityMeasure π₁₂] (hfst₁₂ : MeasureTheory.MeasurePreserving Prod.fst π₁₂ μ₁) (hsnd₁₂ : MeasureTheory.MeasurePreserving Prod.snd π₁₂ μ₂) (π₂₃ : MeasureTheory.Measure (Ω₂ × Ω₃)) [MeasureTheory.IsProbabilityMeasure π₂₃] (hfst₂₃ : MeasureTheory.MeasurePreserving Prod.fst π₂₃ μ₂) (hsnd₂₃ : MeasureTheory.MeasurePreserving Prod.snd π₂₃ μ₃) :
∃ (π₁₃ : MeasureTheory.Measure (Ω₁ × Ω₃)) (x : MeasureTheory.IsProbabilityMeasure π₁₃) (h₁ : MeasureTheory.MeasurePreserving Prod.fst π₁₃ μ₁) (h₃ : MeasureTheory.MeasurePreserving Prod.snd π₁₃ μ₃), (U₁.pullback Prod.fst h₁).cutNormDiff (U₃.pullback Prod.snd h₃) (U₁.pullback Prod.fst hfst₁₂).cutNormDiff (U₂.pullback Prod.snd hsnd₁₂) + (U₂.pullback Prod.fst hfst₂₃).cutNormDiff (U₃.pullback Prod.snd hsnd₂₃) + ε

The coupling-cost triangle up to an arbitrarily small error. No approximation data is supplied: exists_finiteFactorApproximation is invoked at scale ε / 6 for each graphon, and the three shared errors contribute 2 * (ε/6 + ε/6 + ε/6) = ε. The middle graphon's approximation is chosen once and reused on both sides, which is what makes the two factor laws share a middle marginal and lets them be glued.