Matroid correlation constants

Choose a basis of a matroid uniformly at random. Elements usually repel: seeing element i in the random basis makes element j less likely to be there. But in some matroids a pair of elements attracts — and nobody knows how strong the attraction can get. The challenge: find a concrete matroid whose correlation constant reaches 4/3.

For a matroid M on {0, …, n−1} and distinct elements i, j, write B[∋i, ∋j] for the number of bases containing both i and j, B[∌i, ∌j] for the number avoiding both, and so on. The correlation ratio of the pair and the correlation constant of M are

Rij(M) = B[∋i, ∋j] · B[∌i, ∌j]B[∋i, ∌j] · B[∌i, ∋j] α(M) = maxij Rij(M)

taking the maximum over pairs of nonloop, noncoloop elements (for which both denominator factors are positive). Rij(M) ≤ 1 says i and j are negatively correlated in a uniformly random basis; this holds for all pairs in graphic, regular, and rank ≤ 3 matroids, in every matroid with at most 7 elements, and in every matroid representable over both GF(3) and GF(4). It does not hold in general. Huh, Schröter, and Wang proved that α(M) ≤ 2 for every matroid, and gave matroids with α = 8/7. The largest value verified for a concrete matroid is 100/81, on 12 elements over GF(3) (Eur–Renshaw and Huh, independently, August 2026). Known infinite families approach 4/3 without reaching it — whether any single matroid attains α(M) ≥ 4/3 is open.

Each dot is the largest verified α among submitted matroids on n elements. Huh–Schröter–Wang: α(M) ≤ 2 for every matroid. Matroids on at most 7 elements never exceed 1.

Browse all matroids →  ·  Recent activity →  ·  Discuss on Zulip

Download all records (JSON) ↓

Submit a matroid

Verification is exact: the matroid axioms are checked, every basis is enumerated, and all ratios are compared by integer cross multiplication. Limits: n ≤ 24, at most 5,000 listed sets or 5,000 matrix entries; matrix fields are ℚ or a prime GF(p) (GF(pd) not yet supported). Over ℚ, entries may be integers or fraction strings like "-3/5".

API

POST /api/verify with JSON body {"n": 4, "type": "matrix", "field": "3", "data": [[1,0,1,1],[0,1,1,2]]} returns the same verdict as JSON. See the API docs.