Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

FiniteMartingaleCoupling

Abstract

Finite laws have arbitrary nonnegative weights summing to one, including repeated atoms and zero weights. A transition matrix produces one genuine joint probability measure with both exact marginals and every bounded measurable martingale test. Uniform finite laws in convex order admit such a matrix and coupling. The coupling predicate reuses CostTransport.IsCoupling from the frozen optimal-transport library.

The construction of Daniel Lyng in Econlib revision d7bd9477476cade1c6695c8891746048ceddc52f is adapted under Apache-2.0. Apache-2.0 license: docs/reports/licenses/econlib-strassen/LICENSE.txt. Strassen (1965) provides the historical martingale-transport context. In formulas, coe denotes the canonical coercion, dmu the integration measure, iUnion indexed union, smul scalar multiplication, and ae almost everywhere. Namespace-qualified Lean names and interval constructors retain their mathematical meaning; separated identifier words denote the corresponding underscored Lean constant.

Definition 1.1 (IsCoupling).

Formalization. D5/S3/Analytic/Probability/FiniteMartingaleCoupling.IsCoupling (✓ std3).

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

An actual joint law is a coupling exactly when its two pushforward measures are the specified marginals. This predicate is the existing general measure coupling predicate specialized to probability laws.

Lemma 1.2 (fst_probability_marginal).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.fst_probability_marginal (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

The first probability-law pushforward agrees with the first specified marginal.

Lemma 1.3 (snd_probability_marginal).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.snd_probability_marginal (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

The second probability-law pushforward agrees with the second specified marginal.

Lemma 1.4 (supportsOn_Icc_prod).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.supportsOn_Icc_prod (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

A genuine coupling of two laws concentrated on the same closed interval is concentrated on its Cartesian square.

Definition 1.5 (IsMartingaleCoupling).

Formalization. D5/S3/Analytic/Probability/FiniteMartingaleCoupling.IsMartingaleCoupling (✓ std3).

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

A tested martingale coupling has both exact marginals, integrable real coordinates, and vanishing displacement integral against every globally bounded measurable function of its first coordinate.

Lemma 1.6 (fst_measure).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.fst_measure (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

The first measure marginal of a tested martingale coupling is the first specified law.

Lemma 1.7 (snd_measure).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.snd_measure (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

The second measure marginal of a tested martingale coupling is the second specified law.

Lemma 1.8 (marginal_mean_eq).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.marginal_mean_eq (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

The two marginal means of a tested martingale coupling are equal.

Lemma 1.9 (convex_expect_le).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.convex_expect_le (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

Conditional Jensen gives the convex-test inequality using only convexity and continuity on the common compact interval.

Definition 1.10 (DiscreteLaw).

Formalization. D5/S3/Analytic/Probability/FiniteMartingaleCoupling.DiscreteLaw (✓ std3).

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

A finite real law consists of a natural cardinality, real atoms, and nonnegative real weights of total one. Zero weights and repeated atoms are allowed.

Definition 1.11 (toProbDist).

Formalization. D5/S3/Analytic/Probability/FiniteMartingaleCoupling.toProbDist (✓ std3).

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

Finite weighted Dirac sums define genuine native probability laws; for a transition matrix the joint atom weights are the first-law weights multiplied by the transition entries.

Lemma 1.12 (toProbDist_toMeasure).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.toProbDist_toMeasure (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

The underlying measure is the finite sum of weighted Dirac measures, with real nonnegative weights converted to ENNReal.

Lemma 1.13 (toProbDist_supportsOn_of_atoms_mem).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.toProbDist_supportsOn_of_atoms_mem (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

If every listed atom belongs to a measurable set, the finite probability law assigns that set mass one.

Definition 1.14 (mean).

Formalization. D5/S3/Analytic/Probability/FiniteMartingaleCoupling.mean (✓ std3).

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

The mean of a finite law is its weighted sum of atoms.

Definition 1.15 (ConvexOrder).

Formalization. D5/S3/Analytic/Probability/FiniteMartingaleCoupling.ConvexOrder (✓ std3).

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

Finite-law convex order compares weighted sums of every globally convex real test.

Definition 1.16 (uniform).

Formalization. D5/S3/Analytic/Probability/FiniteMartingaleCoupling.uniform (✓ std3).

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

A positive finite cardinality and a real vector define the law with equal weights reciprocal to that cardinality.

Lemma 1.17 (uniform_mean).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.uniform_mean (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

The mean of an equal-weight finite law is the arithmetic average of its atom vector.

Definition 1.18 (BistochasticMartingaleMatrix).

Formalization. D5/S3/Analytic/Probability/FiniteMartingaleCoupling.BistochasticMartingaleMatrix (✓ std3).

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

A transition matrix is nonnegative, has row sum one and the prescribed conditional mean on every positive-weight row, and has the exact weighted column marginal. Zero-weight rows impose no artificial row or mean restriction.

Definition 1.19 (toJointProbDist).

Formalization. D5/S3/Analytic/Probability/FiniteMartingaleCoupling.toJointProbDist (✓ std3).

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

Finite weighted Dirac sums define genuine native probability laws; for a transition matrix the joint atom weights are the first-law weights multiplied by the transition entries.

Lemma 1.20 (isMartingaleCoupling).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.isMartingaleCoupling (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

The weighted Dirac joint law built from such a matrix satisfies both actual marginals, coordinate integrability, and every bounded measurable martingale test.

Theorem 1.21 (exists_martingaleCoupling_uniform).

Proof. Machine-checked in Lean as D5/S3/Analytic/Probability/FiniteMartingaleCoupling.exists_martingaleCoupling_uniform (✓ std3). ∎

Citation. Daniel Lyng (2026). Econlib compact scalar Strassen construction. URL: https://github.com/danlyng/Econlib/blob/d7bd9477476cade1c6695c8891746048ceddc52f/Econlib/Probability/Order/Strassen.lean.

Commentary.

Two positive equal-cardinality equal-weight finite laws in convex order have a genuine martingale coupling.

References