⚠️ WORK IN PROGRESS — This catalog is actively under construction. Some entries may be missing, incorrect, or mis-attributed. Treat all values as provisional until cross-checked against the cited source. See DISCOVERIES_PENDING_ANALYSIS.md and ROADMAP.md for known gaps.

MMC — Matrix Multiplication Catalog

Browse 2,300+ verified factor matrices for fast matrix-multiplication algorithms, drawn from Strassen 1969 → AlphaEvolve 2025. Every entry here has its factor matrices on disk and round-trips through a Java verifier. See the repository for the methodology and source.

Fields covered — what each algebra means (and why ZT is not one)
TagAlgebraCoefficientsNotes
F2 (= Z2) GF(2) {0, 1}, integers mod 2 Characteristic 2 — its own universe, no inclusion into the characteristic-0 chain. AlphaTensor's home field.
F3 (= Z3) GF(3) {0, 1, 2}, integers mod 3 Ternary modular — three residues in a characteristic-3 field. Distinct from ZT below: same "three values" count, completely different arithmetic.
Z integers ℤ any integer Characteristic 0. Z ⊂ Q ⊂ R ⊂ C.
ZT sub-class of Z — not a field {−1, 0, +1} ⊂ ℤ Ternary integer: a Z scheme whose every factor-matrix coefficient is −1, 0 or +1 (Perminov's "ternary" schemes). Carried as the per-scheme boolean ZT, present only when Z is covered. It is NOT F₂/Z₂ — that was a historical conflation; ZT is integer arithmetic, not mod-2.
Q rationals ℚ any rational Characteristic 0; implies R, C.
R reals ℝ any real Characteristic 0; implies C.
C complex ℂ any complex Accepts every R/Q/Z scheme; plus C-only schemes (e.g. AlphaEvolve's complex-coefficient originals — its ⟨4,4,4⟩=48 rank is no longer C-only since Dumas–Pernet–Sedoglavic 2025 rationalised it to Q/R).

"Ternary" is overloaded: F3/Z3 is ternary modular (GF(3)), whereas ZT is ternary integer (coefficients in {−1,0,1} over ℤ). They are unrelated algebras that happen to share the word.

loading…
format field ω rank (UB) + adds buds lineage source scheme

⟨∞,∞,∞⟩ — asymptotic exponent ω over time

The matrix-multiplication exponent ω — smallest constant such that ⟨n,n,n⟩ can be done in O(n^ω) operations as n → ∞. Lower bound is the information-theoretic ω ≥ 2; whether ω = 2 is open. Data from docs/omega-history.json. The plot also overlays the commutative exponent ωc (data from docs/omega-history-commutative.json) — each green point is a single-shape upper bound logn(Rc(n)); commutative algorithms do NOT lift to recursive matrix matmul, so the commutative series is not an aggregated asymptotic like NC ω.

y-axis is bounded [2, max(ω) + 0.05]; linear by default.
kind year ω ≤ method source notes

ω heatmap — per-format effective exponent

Each cell is a format ⟨n,m,p⟩ coloured by its effective exponent ω = 3·ln(r)/ln(n·m·p) (the best non-commutative rank we hold; lower = closer to optimal, 3 = naïve). Rows are the largest axis maxDim = p (2…32), labelled on the right. Each row is right-anchored on the cube axis: the rightmost cell of every row is the cube ⟨p,p,p⟩ (outlined), so the cubes line up in a single vertical column on the right. Moving left within a row visits the smaller shapes ⟨n,m,p⟩ (n≤m≤p), so the left edge is ragged — the lone ⟨2,2,2⟩ cell up top, the full ⟨…,…,32⟩ row at the bottom. Prime maxDim rows are flagged — they are the smoothness floor where serendipity and cube-projection have least to exploit. Block width tapers with distance from the cube so the cube and near-cube columns stay legible while the long tail stays compact. Hover a cell for the exact rank and ω.

  — same cells (best held NC rank per shape), recoloured / reordered.

Colour is self-calibrated to the best/worst ω actually held (not a fixed 2…3 window): bestworst   no scheme   ω < Strassen (log₂7 ≈ 2.807) — better-than-Strassen shape. Heatmap respects the Field filter.

References

Lower-bound citations referenced in the table above. Numbers are stable across filter changes.