alphaFeedback

WorksMathematics

The rank of 3×3 matrix multiplication over F2 is 23

AI contributions
  • Generative AI tools
View details
Ancillary data
3 code links, 1 data link
View

Abstract

The rank of the tensor of 3×33\times 3 matrix multiplication over the field with two elements is at most 2323 by Laderman's algorithm, and Rudich and Rousseau recently proved that it is at least 2222. We prove that it equals 2323. Hence Laderman's algorithm uses the fewest multiplications among all bilinear algorithms over F2\mathbb{F}_2 and among all bilinear algorithms with integer coefficients. The proof uses the substitution method in the form developed by D'Ambrosio, Wang and Yang et al., which bounds the number of first factors of a decomposition that lie in a given subspace of the space of first factors. We sharpen these bounds for 111111 of Wang's 496496 classes of subspaces, constrain the ranks of the first factors through a 27×2727\times 27 flattening of the tensor, and list, up to symmetry, all sets of 2222 first factors that satisfy these constraints. An exact completion search shows that none of them is the set of first factors of a decomposition. The computation emits certificates, which are checked in the Lean 4 proof assistant. In one formal proof the largest checks are evaluated as compiled code, and in a second one the kernel evaluates every check, so that its final theorem depends only on the three standard axioms of Lean. The Lean proofs build on the formalization of Rudich and Rousseau and import their table of bounds and their reduction for block algorithms.

arXiv:2610.00548v1

Introduction

Let ⟨3,3,3⟩\langle3,3,3\rangle be the tensor of 3×33 \times3 matrix multiplication. Its rank RK(⟨3,3,3⟩)R_K(\langle3,3,3\rangle) over a field KK is the smallest number of multiplications in a bilinear algorithm over KK that computes the product of two 3×33 \times3 matrices [2 Ch. 14]. Laderman’s algorithm [15] uses 23 multiplications. It does not use commutativity and its coefficients are 0 and ±1\pm1, so it works over any ring, and RK(⟨3,3,3⟩)≤23R_K(\langle3,3,3\rangle) \le23 for all fields KK. For 2×22 \times2 matrices the question was settled half a century ago: Strassen’s algorithm uses 7 multiplications [22], and Hopcroft and Kerr [11] and Winograd [26] proved that 7 are necessary. For 3×33 \times3 matrices, however, the best lower bound valid over all fields is 19, due to Bläser [4], and whether Laderman’s 23 multiplications are necessary has been open since 1976.

Over F2\mathbb{F}_2 the lower bound has risen several times in 2026. C. Wang proved RF2(⟨3,3,3⟩)≥20R_{\mathbb{F}_2}(\langle3,3,3\rangle) \ge20 with an automated method that splits the problem into 496 classes of subspaces [24], and Beuchert checked his certificate independently [3]. Wang [25] and, independently, Yang et al. [Yan26] then proved RF2(⟨3,3,3⟩)≥21R_{\mathbb{F}_2}(\langle3,3,3\rangle) \ge21, and Yang et al. formalized their proof in Lean. Tahir independently obtained 21 conditionally on bounds from Wang’s table [23]. Rudich and Rousseau proved RF2(⟨3,3,3⟩)≥22R_{\mathbb{F}_2}(\langle3,3,3\rangle) \ge22, also in Lean [21]. This left the question whether 22 multiplications suffice over F2\mathbb{F}_2, and we show that they do not.

Theorem 1.1. RF2(⟨3,3,3⟩)=23R_{\mathbb{F}_2}(\langle3,3,3\rangle) = 23.

A bilinear algorithm with integer coefficients becomes a bilinear algorithm over F2\mathbb{F}_2 with the same number of multiplications when its coefficients are reduced modulo 2. An algorithm with integer constants that can be applied to blocks of matrices cannot use commutativity, and by the argument of Hopcroft and Kerr [11] a lower bound over F2\mathbb{F}_2 applies to it as well. Rudich

2020 Mathematics Subject Classification. 68Q17, 15A69; 68V05, 68V15.

Key words and phrases. Matrix multiplication, tensor rank, bilinear complexity, lower bounds, finite fields, substitution method, computer-assisted proof, formal verification, Lean. and Rousseau explain this reduction and formalize it in Lean [21]. Theorem 1.1 therefore has the following consequence.

Corollary 1.2. A bilinear algorithm over F2\mathbb{F}_2 or with integer coefficients that multiplies two 3×33 \times3 matrices uses at least 23 multiplications. In particular RZ(⟨3,3,3⟩)=23R_{\mathbb{Z}}(\langle3,3,3\rangle)=23, and no recursive 3×33 \times3 algorithm with integer constants has an exponent below log⁡323≈2.854\log_3 23 \approx2.854.

Over fields of characteristic zero the rank of ⟨3,3,3⟩\langle3,3,3\rangle is still unknown. It lies between 19 and 23.

The method. The proof is a computation organized by the substitution method [19, 1, 16, 4, 5]. Let AA be the space of first factors. For a subspace S⊆AS \subseteq A let R(S)R(S) be the rank of ⟨3,3,3⟩\langle3,3,3\rangle modulo SS, that is, the rank of the problem in which the first input is restricted to the annihilator of SS. In a decomposition of length rr at most r−R(S)r-R(S) terms have their first factor in SS (Lemma 2.1). For r=22r=22 this bounds the number of first factors that each subspace can contain, the capacity of the subspace. Wang bounded R(S)R(S) for representatives of the 496 orbits of subspaces under the symmetries of ⟨3,3,3⟩\langle3,3,3\rangle [24], and Rudich and Rousseau improved these bounds [21].

In Section 3 we raise the lower bound for 111 classes of their table. For most of them we enumerate the possible first factors of a hypothetical shorter decomposition of the quotient and refute each candidate. The others follow from these by monotonicity. The most useful new bound is R(S)≥21R(S) \ge21 for a point SS spanned by a matrix of rank one. With the bounds of [21] for the other two classes of points it shows that the 22 first factors of a decomposition of length 22 are distinct. By Lemma 2.1, decompositions of length 23 give upper bounds, and those of a collection of Kauers [13] show that most of the new bounds are best possible.

Section 4 constrains the numbers n1n_1, n2n_2, n3n_3 of first factors of rank 1, 2 and 3. These constraints come from a 27×2727 \times27 flattening of ⟨3,3,3⟩\langle3,3,3\rangle to which each term contributes the rank of its first factor, and hence n1+2n2+3n3≥27n_1+2n_2+3n_3 \ge27. A Gram-matrix form of the identity behind this inequality excludes eight types (n1,n2,n3)(n_1,n_2,n_3), three of them by short arguments and five by an exhaustive computation. Section 5 shows that, if at least 14 first factors have rank one, no line in a certain orbit of 441 lines contains two first factors, although the capacity of these lines is 2. The proof assumes two first factors on such a line, enumerates the possible projections of the other 20 terms and shows that none of them lifts back to a decomposition of ⟨3,3,3⟩\langle3,3,3\rangle.

With these constraints we enumerate, up to the symmetry group of order 56,448, all sets of 22 nonzero matrices in F33×3\mathbb{F}_3^{3 \times3} that satisfy them (Section 6). An exact search then tries to complete each set to a decomposition (Section 7), and fails for every one of them.

Relation to earlier work. Capacities, coset profiles, the symmetry-reduced enumeration of first factors and the deduction that the first factors are distinct come from the work of D’Ambrosio [7], Wang [24, 25] and Yang et al. [Yan26], and the split flattening is due to Yang et al. In the proofs of RF2(⟨3,3,3⟩)≥21R_{\mathbb{F}_2}(\langle3,3,3\rangle) \ge21 the conditions on the first factors alone exclude all cases. At r=22r=22 they do not, and most of the work lies in refuting the sets of first factors that survive, by an exhaustive search for the second and third factors (Section 7). Certificates that branch on these factors also occur in the Lean proof of [21]. What is new here is this refutation step, applied to all 75,327,600 sets that survive the search at r=22r=22 (Table 3), the new lower bounds of Table 1, the type exclusions of Proposition 4.5 and Theorem 5.1.

Verification. Sections 8 and 9 describe the verification. The searches emit certificates, which are verified by checkers written in Lean. The soundness of each checker is a theorem of Lean proved with its three standard axioms. There are two formal proofs. In the first, the checks for the search at r=22r=22 and for the largest enumerations are evaluated as compiled code through native_decide, which adds one axiom for each evaluation. This proof therefore depends on the Lean compiler and runtime as well as on the kernel. In the second (§ 9), the kernel evaluates every check, and its final theorem depends only on the axioms propext, Classical.choice and Quot.sound. Laderman’s algorithm is also checked in Lean, which makes the equality RF2(⟨3,3,3⟩)=23R_{\mathbb{F}_2}(\langle3,3,3\rangle)=23 a theorem there, and the bound of Corollary 1.2 for algorithms with integer constants that can be applied to blocks is derived in the formulation of [21]. Statements marked with † depend on a computation.

Preliminaries

The tensor

Let A=B=C=F23×3A=B=C=\mathbb{F}_2^{3\times3} and let eije_{ij} be the matrix units. We write

T=⟨3,3,3⟩=∑i,j,k=13eij⊗ejk⊗eki∈A⊗B⊗C.T=\langle3,3,3\rangle=\sum_{i,j,k=1}^{3}e_{ij}\otimes e_{jk}\otimes e_{ki}\in A\otimes B\otimes C.

A decomposition of length rr is an expression T=∑s=1ras⊗bs⊗csT=\sum_{s=1}^{r}a_s\otimes b_s\otimes c_s, and the rank of TT is the least such rr. We call asa_s the first factors. When TT has a decomposition of length rr it also has one of length r+1r+1: replace a term a⊗b⊗ca\otimes b\otimes c by a⊗b⊗c′+a⊗b⊗(c+c′)a\otimes b\otimes c^{\prime}+a\otimes b\otimes(c+c^{\prime}) with c′∉{0,c}c^{\prime}\notin\{0,c\}. In a decomposition of length 22 all factors are nonzero, since otherwise TT would have a decomposition of length 21, contrary to [21].

For a first factor aa we write BB and CC for the second and third factors read as matrices in the index order of TT. Thus b=∑Bjkejkb=\sum B_{jk}e_{jk} and c=∑Ckiekic=\sum C_{ki}e_{ki}, and the triple (a,b,c)(a,b,c) is identified with (a,B,C)(a,B,C).

Symmetries

For P,Q,R∈GL⁡3(F2)P,Q,R\in\operatorname{GL}_3(\mathbb{F}_2) the map

(a,B,C)↦(PaQ−1,QBR−1,RCP−1)(1)(a,B,C)\mapsto(PaQ^{-1},QBR^{-1},RCP^{-1}) \tag*{(1)}

fixes TT, because Q−1Q^{-1} and QQ cancel on the index jj shared by the first two factors, and RR and PP cancel in the same way on kk and ii. So does (a,B,C)↦(aT,CT,BT)(a,B,C)\mapsto(a^{\mathsf{T}},C^{\mathsf{T}},B^{\mathsf{T}}), which permutes the terms of TT. Both maps send decompositions to decompositions of the same length. On first factors they generate the group GG of maps a↦PaQa\mapsto PaQ and a↦PaTQa\mapsto Pa^{\mathsf{T}}Q with P,Q∈GL⁡3(F2)P,Q\in\operatorname{GL}_3(\mathbb{F}_2). It has order 2⋅1682=56,4482\cdot168^2=56{,}448 and preserves the rank of a matrix. The space AA contains 511 nonzero matrices, of which 49 have rank one, 294 rank two and 168 rank three. The group GG acts transitively on each of these three sets.

Quotients and capacities

For a subspace S⊆AS\subseteq A let πS:A→A/S\pi_S:A\to A/S be the projection and TS=(πS⊗1⊗1)(T)T_S=(\pi_S\otimes1\otimes1)(T). We write R(S)R(S) for the rank of TST_S. If S⊆S′S\subseteq S' then R(S′)≤R(S)R(S')\le R(S), and R(gS)=R(S)R(gS)=R(S) for g∈Gg\in G.

Lemma 2.1 ([7 §4], [25 Lemma 2.1], [Yan26, Lemma 2.2]). If T=∑s=1ras⊗bs⊗csT=\sum_{s=1}^{r}a_s\otimes b_s\otimes c_s, then for every subspace S⊆AS\subseteq A

#{s:as∈S}≤r−R(S).\#\{s:a_s\in S\}\le r-R(S).

Proof. Applying πS⊗1⊗1\pi_S\otimes1\otimes1 removes the terms with as∈Sa_s\in S and leaves a decomposition of TST_S of length #{s:as∉S}\#\{s:a_s\notin S\}.

We call a subspace of dimension 1 a point and one of dimension 2 a line. Wang sorted the subspaces of AA into 496 classes up to the action of GG [24]. A table assigns to each class a number lb⁡(S)≤R(S)\operatorname{lb}(S)\le R(S). At r=22r=22 the capacity of SS is cap⁡(S)=22−lb⁡(S)\operatorname{cap}(S)=22-\operatorname{lb}(S), and Lemma 2.1 says that a subspace contains at most cap⁡(S)\operatorname{cap}(S) first factors of a decomposition of length 22. We start from the table of Rudich and Rousseau, which gives R(S)R(S) exactly for 359 classes and lower bounds for the others [21]. In this table R({0})≥22R(\{0\}) \ge22, and R(S)≥21R(S) \ge21 for the points spanned by matrices of rank two and three. In our data the classes are numbered as in the Lean table of [21], which lists a basis of a representative of each class.

The case S=ker⁡φS = \ker\varphi of a hyperplane will be used often. Here φ:A→F2\varphi: A \to\mathbb{F}_2 is a nonzero linear form, which we write as φ(a)=∑i,jxijaij\varphi(a) = \sum_{i,j} x_{ij}a_{ij} with a matrix x≠0x \ne0, and we set rank⁡φ=rank⁡x\operatorname{rank} \varphi= \operatorname{rank} x. Contracting TT with φ\varphi gives the 9×99 \times9 matrix T(φ)=∑i,j,kxijejk⊗ekiT(\varphi) = \sum_{i,j,k} x_{ij} e_{jk} \otimes e_{ki}. It consists of three copies of xTx^{\mathsf{T}}, one for each value of kk, and so has rank 3rank⁡φ3\operatorname{rank}\varphi. Hence R(ker⁡φ)=3rank⁡φR(\ker\varphi) = 3\operatorname{rank}\varphi, and Lemma 2.1 becomes the statement that at least 3rank⁡φ3\operatorname{rank}\varphi first factors satisfy φ(as)=1\varphi(a_s) = 1.

Lower bounds for quotients

Coset profiles

Let SS be a subspace and ℓ\ell an integer. To prove R(S)≥ℓR(S) \ge\ell we assume that TST_S has a decomposition of length ℓ−1\ell- 1, which we may take with all factors nonzero (§ 2). Its first factors are nonzero cosets aˉ1,…,aˉℓ−1\bar a_1, \ldots, \bar a_{\ell-1} of SS. Let n(x)n(x) be the number of tt with aˉt=x\bar a_t = x. Applying Lemma 2.1 to the decomposition of TST_S and a superspace S′⊇SS' \supseteq S gives (compare [Yan26, Lemma 2.2])

∑0≠x∈S′/Sn(x)≤ℓ−1−R(S′)≤ℓ−1−lb⁡(S′).(2)\sum_{0 \ne x \in S'/S} n(x) \le\ell- 1 - R(S') \le\ell- 1 - \operatorname{lb}(S'). \tag*{(2)}

We call a function nn with ∑xn(x)=ℓ−1\sum_x n(x) = \ell- 1 that satisfies (2) for all S′S' a coset profile. The coset profiles are the integer points of a polytope with one coordinate per nonzero coset. We enumerate them up to the stabilizer of SS in GG, or for six classes up to a subgroup of it, by an orderly branch and bound in which linear-programming bounds prune the branches. We then refute each coset profile by the completion search of § 7 with target TST_S. If all coset profiles are refuted, then R(S)≥ℓR(S) \ge\ell. The bounds lb⁡(S′)\operatorname{lb}(S') used in (2) belong to strict superspaces of SS, so we establish new bounds in decreasing order of dim⁡S\dim S.

Points

Theorem 3.1 (†). If SS is spanned by a matrix of rank one, then R(S)≥21R(S) \ge21.

Here A/SA/S has 255 nonzero cosets and the stabilizer of SS in GG has order 1152. The enumeration of coset profiles of size 20 has 809,336,049 nodes and 7,409,768 leaves, and all leaves are refuted.

Corollary 3.2 (†). The 22 first factors of a decomposition of length 22 are pairwise distinct.

Proof. A repeated first factor aa would put two first factors in the point F2a\mathbb{F}_2a. By Theorem 3.1 and [21] all points have R≥21R \ge21 and therefore capacity at most 1. □

The other classes

Table 1 lists the new bounds by dimension. We proved 88 of them, among them Theorem 3.1, by the method of § 3.1. The other 23 follow by monotonicity: for each of them some gSgS with g∈Gg \in G is contained in a subspace S′S' of larger dimension whose new bound is at least as large, and R(S)=R(gS)≥R(S′)R(S) = R(gS) \ge R(S'). These are the bound 19→2019 \to20 for one class of dimension 2, the bound 18→1918 \to19 for eight classes of dimension 3, the bound 16→1716 \to17 for three classes of dimension 4, and the bound 17→1817 \to18 for eleven classes of dimension 4. For 106 of the 111 classes the new bound equals the upper bound of [21].

dim⁡S\dim Sclassesboundsenumeration nodesleaves
1120 →\to 21809,336,0497,409,768
24 (1)19 →\to 20 (1), 20 →\to 21 (3)26,301,783,8275,211,895,431
335 (8)18 →\to 19 (17), 19 →\to 20 (18)3,654,254,117969,245,867
450 (14)16 →\to 17 (8), 17 →\to 18 (23), 18 →\to 19 (19)46,041,27815,998,835
52116 →\to 17 (5), 16 →\to 18 (1), 17 →\to 18 (15)1,089,004349,120

Table 1. New lower bounds on R(S)R(S), by dim⁡S\dim S. A class is listed under the bound of [21] and the new bound. The number in parentheses in the second column counts the classes whose new bound follows by monotonicity. The last two columns give the size of the enumerations of § 3.1.

Proposition 3.3 (†). The lower bounds of Table 1 hold.

Upper bounds

Lemma 2.1 also gives upper bounds: if a decomposition of length 23 has kk first factors in SS, then R(S)≤23−kR(S) \le23-k. We apply this to the collection of schemes of length 23 that Kauers made available [13]. It consists of the 64,150 schemes in the data set of [14 §6], which extends that of [12], and nine named schemes. Of its 64,159 files, 62,239 are decompositions over F2\mathbb{F}_2,1 and we use each of them three times, once with each of its three factors in the role of the first factor. For 406 of the 496 classes, among them 103 of the 111 classes of Table 1, one of these decompositions has 23−lb⁡(S)23-\operatorname{lb}(S) first factors in a subspace of the class, and hence R(S)=lb⁡(S)R(S)=\operatorname{lb}(S). For classes 293 and 488 in the numbering of [21], which keep the bounds of [21], the upper bounds obtained in this way are new, and they give R(S)=17R(S)=17 and R(S)=20R(S)=20, respectively. For class 473 of Table 1 the new upper bound is 20, which equals its new lower bound. Hence R(S)R(S) is now known exactly for 107 of the 111 classes of Table 1, namely class 473 and the 106 whose new bound equals the upper bound of [21]. For class 468 the collection gives R(S)≤20R(S)\le20, against the lower bound 19. For example, one decomposition in the collection has the three matrices II, e12+e13+e31e_{12}+e_{13}+e_{31} and their sum among its first factors. They are the three nonzero elements of a line of class 488 and lie in planes of classes 468 and 473. By Lemma 2.1 this gives the bound 20 for these three classes. For every class, our data list a decomposition with the largest number of first factors in a subspace of the class.

The ranks of the first factors

In this section we consider a decomposition T=∑t=1rat⊗bt⊗ctT=\sum_{t=1}^{r}a_t\otimes b_t\otimes c_t with all factors nonzero. Its type is (n1,n2,n3)(n_1,n_2,n_3), where nqn_q is the number of first factors of rank qq. We write rt=rank⁡(at)r_t=\operatorname{rank}(a_t) and Δ=∑trt−27\Delta=\sum_t r_t-27.

The split flattening

Index the rows of a 27×2727\times27 matrix by pairs (i,β)(i,\beta) and the columns by pairs (j,γ)(j,\gamma), where i,j∈{1,2,3}i,j\in\{1,2,3\} and β,γ\beta,\gamma run over the nine matrix positions. For a∈Aa\in A, b∈Bb\in B, c∈Cc\in C let M(a,b,c)M(a,b,c) be the matrix with entries aijbβcγa_{ij}b_{\beta}c_{\gamma}. Its rank is rank⁡(a)\operatorname{rank}(a) when b,c≠0b,c\ne0, since M(a,b,c)M(a,b,c) is the Kronecker product of aa and bcTbc^{T} up to the order of indices. Let P=∑tM(at,bt,ct)P=\sum_t M(a_t,b_t,c_t). By linearity PP depends only on TT, and its only nonzero entries are P(i,jk),(j,ki)=1P_{(i,jk),(j,ki)}=1. Thus PP is a permutation matrix.

Lemma 4.1 ([Yan26, (4.2)]). ∑trank⁡(at)≥27\sum_t\operatorname{rank}(a_t)\ge27, that is, Δ≥0\Delta\ge0.

Proof. 27=rank⁡P≤∑trank⁡M(at,bt,ct)=∑trank⁡(at)27=\operatorname{rank}P\le\sum_t\operatorname{rank}M(a_t,b_t,c_t)=\sum_t\operatorname{rank}(a_t).

For a decomposition of length 22 we have Δ=n2+2n3−5\Delta= n_2 + 2n_3 - 5, so Lemma 4.1 gives n2+2n3≥5n_2 + 2n_3 \ge5.

The Gram form

The inequality of Lemma 4.1 does not use how the terms fit together. The following factorization of PP records this information as equations between pairs of terms. Factor each first factor as at=LtRtTa_t = L_tR_t^{\mathsf{T}} with Lt,Rt∈F23×rtL_t, R_t \in\mathbb{F}_2^{3 \times r_t}. Let XX be the 27×(27+Δ)27 \times(27 + \Delta) matrix whose column blocks are Lt⊗btL_t \otimes b_t, with rows indexed like the rows of PP, and let YY be the 27×(27+Δ)27 \times(27 + \Delta) matrix with column blocks Rt⊗ctR_t \otimes c_t, with rows indexed like the columns of PP. Then M(at,bt,ct)=(Lt⊗bt)(Rt⊗ct)TM(a_t,b_t,c_t) = (L_t \otimes b_t)(R_t \otimes c_t)^{\mathsf{T}}, so P=XYTP = XY^{\mathsf{T}}.

Lemma 4.2. The matrix Γ=YTP−1X\Gamma= Y^{\mathsf{T}}P^{-1}X is idempotent of rank 27, and Π=I+Γ\Pi= I + \Gamma is idempotent of rank Δ\Delta. Its blocks are

Γts=RtTBsCtLs.(3)\Gamma_{ts} = R_t^{\mathsf{T}}B_sC_tL_s. \tag*{(3)}

Proof. Γ2=YTP−1(XYT)P−1X=Γ\Gamma^2 = Y^{\mathsf{T}}P^{-1}(XY^{\mathsf{T}})P^{-1}X = \Gamma. The rank of Γ\Gamma is at most 27, and XΓYT=PX\Gamma Y^{\mathsf{T}} = P has rank 27, so rank⁡Γ=27\operatorname{rank}\Gamma= 27. Over F2\mathbb{F}_2 the matrix I+Γ=I−ΓI + \Gamma= I - \Gamma is the complementary idempotent, of rank (27+Δ)−27(27 + \Delta) - 27. For (4.1), P−1=PTP^{-1} = P^{\mathsf{T}} and P(j,γ),(i,β)T=1P^{\mathsf{T}}_{(j,\gamma),(i,\beta)} = 1 exactly when β=jk\beta= jk and γ=ki\gamma= ki for some kk. Hence the (α,α′)(\alpha,\alpha') entry of Γts\Gamma_{ts} is ∑i,j,k(Rt)jα(Bs)jk(Ct)ki(Ls)iα′\sum_{i,j,k}(R_t)_{j\alpha}(B_s)_{jk}(C_t)_{ki}(L_s)_{i\alpha'}. □

Write Π=UVT\Pi= UV^{\mathsf{T}} with U,VU,V of size (27+Δ)×Δ(27 + \Delta) \times\Delta and let Ut,VtU_t,V_t be their row blocks. Multiplying (4.1) by LtL_t on the left and by RsTR_s^{\mathsf{T}} on the right, and setting lt=LtUtl_t = L_tU_t and ms=RsVsm_s = R_sV_s, we obtain

atBsCtas=δtsat+ltmsT(4)a_tB_sC_ta_s = \delta_{ts}a_t + l_tm_s^{\mathsf{T}} \tag*{(4)}

for all t,st,s, with lt,mt∈F23×Δl_t,m_t \in\mathbb{F}_2^{3 \times\Delta} whose columns lie in the column spaces of ata_t and atTa_t^{\mathsf{T}}. For Δ=0\Delta= 0 this is the rank-additive saturation lemma of Yang et al. [Yan26, Lemma 5.1]. Its solutions are invariant under the symmetries (2.1), and under the change (lt,mt)↦(ltg,mtg−T)(l_t,m_t) \mapsto(l_tg,m_tg^{-\mathsf{T}}) with g∈GL⁡Δ(F2)g \in\operatorname{GL}_{\Delta}(\mathbb{F}_2).

Excess zero

Lemma 4.3. If Δ=0\Delta= 0 and some first factor is invertible, then r=25r = 25. In particular, a decomposition of length 22 with Δ=0\Delta= 0 has type (17,5,0)(17,5,0).

Proof. For Δ=0\Delta= 0, (4.2) reads atBsCtas=δtsata_tB_sC_ta_s = \delta_{ts}a_t. Let a0a_0 be invertible. Then a0B0C0a0=a0a_0B_0C_0a_0 = a_0 gives B0C0=a0−1B_0C_0 = a_0^{-1}, so C0C_0 is invertible. For s≠0s \ne0 the equation a0BsC0as=0a_0B_sC_0a_s = 0 shows that BsB_s vanishes on C0col⁡(as)C_0\operatorname{col}(a_s), a space of dimension rsr_s. Hence rank⁡Bs≤3−rs\operatorname{rank}B_s \le3-r_s. The equation asBsCsas=asa_sB_sC_sa_s = a_s gives rs≤rank⁡Bsr_s \le\operatorname{rank}B_s. Therefore rs≤3−rsr_s \le3-r_s, that is rs=1r_s = 1, for all s≠0s \ne0. Then 27=∑trt=3+(r−1)27 = \sum_t r_t = 3 + (r-1). For r=22r = 22 there is therefore no invertible first factor, and n1+n2=22n_1 + n_2 = 22, n1+2n2=27n_1 + 2n_2 = 27 give (17,5,0)(17,5,0). □

Lemma 4.3 sharpens [Yan26, Proposition 5.3 and Corollary 6.1], by which a decomposition with ∑trt=27\sum_t r_t = 27 has at most one invertible first factor. The same argument for ⟨2,2,2⟩\langle2,2,2\rangle shows that a decomposition with ∑trt=8\sum_t r_t = 8 and an invertible first factor has length 7 and all other first factors of rank one, as in Strassen’s algorithm.

Three invertible first factors

Lemma 4.4. A decomposition with three distinct invertible first factors has Δ≥2\Delta\ge2.

Proof. By Lemma 4.3 we may assume Δ=1\Delta= 1, so that Π=pqT\Pi= pq^{\mathsf{T}} with qTp=1q^{\mathsf{T}}p = 1. Let x,yx,y range over the indices of the three invertible terms, take Lx=axL_x = a_x and Rx=IR_x = I, and let px,qx∈F23p_x,q_x \in\mathbb{F}_2^3 be the blocks of pp and $q. Since Γ=I+Π\Gamma= I + \Pi, (4.1) gives

Zyx:=ByCx=(δxyI+pxqyT)ay−1.Z_{yx} := B_yC_x = (\delta_{xy}I + p_xq_y^{\mathsf{T}})a_y^{-1}.

The 9×99 \times9 matrix [Zyx]y,x[Z_{yx}]_{y,x} is the product of the block column [By]y[B_y]_y and the block row [Cx]x[C_x]_x, so its rank is at most 3. (i) Each ZxxZ_{xx} is singular. Otherwise, for y≠xy \ne x, the 6×66 \times6 submatrix on the blocks x,yx,y has rank 3+rank⁡(Zyy−ZyxZxx−1Zxy)≥3+(2−1)3 + \operatorname{rank}(Z_{yy} - Z_{yx}Z_{xx}^{-1}Z_{xy}) \ge3 + (2 - 1), because ZyyZ_{yy} has rank at least 2 and the correction has rank at most 1. This contradicts the bound 3. Hence det⁡(I+pxqxT)=1+qxTpx=0\det(I + p_xq_x^{\mathsf{T}}) = 1 + q_x^{\mathsf{T}}p_x = 0, so qxTpx=1q_x^{\mathsf{T}}p_x = 1, rank⁡Zxx=2\operatorname{rank} Z_{xx} = 2 and im⁡Zxx=qx⊥\operatorname{im} Z_{xx} = q_x^\perp.

(ii) rank⁡Bx=rank⁡Cx=2\operatorname{rank} B_x = \operatorname{rank} C_x = 2. Both ranks are at least rank⁡Zxx=2\operatorname{rank} Z_{xx} = 2. If CxC_x were invertible, then Zyx=ByCxZ_{yx} = B_yC_x would have rank at least 2 for y≠xy \ne x, but Zyx=pxqyTay−1Z_{yx} = p_xq_y^{\mathsf{T}}a_y^{-1} has rank at most 1. The same argument applies to ByB_y.

(iii) qyTpx=δxyq_y^{\mathsf{T}}p_x = \delta_{xy}. By (i) and (ii), im⁡By=im⁡Zyy=qy⊥\operatorname{im} B_y = \operatorname{im} Z_{yy} = q_y^\perp. For x≠yx \ne y the matrix Zyx=pxqyTay−1Z_{yx} = p_xq_y^{\mathsf{T}}a_y^{-1} is nonzero and its image F2px\mathbb{F}_2p_x lies in im⁡By\operatorname{im} B_y, so qyTpx=0q_y^{\mathsf{T}}p_x = 0.

(iv) Let VV be the row space of [Cx]x[C_x]_x, of dimension at most 3. Each block row By[Cx]xB_y[C_x]_x has its rows in VV. For z≠yz \ne y the row qzTBy[Cx]xq_z^{\mathsf{T}}B_y[C_x]_x has qzTay−1q_z^{\mathsf{T}}a_y^{-1} in block yy, qyTay−1q_y^{\mathsf{T}}a_y^{-1} in block zz, and 0 in the third block. Call it vy,zv_{y,z}.

(v) Fix a block x0x_0 and let y,zy,z be the other two indices. The projection of VV to block x0x_0 contains qzTax0−1q_z^{\mathsf{T}}a_{x_0}^{-1} for both z≠x0z \ne x_0, and these are independent. Hence the vectors of VV that vanish on block x0x_0 form a space of dimension at most 1. It contains the nonzero vectors vy,zv_{y,z} and vz,yv_{z,y}, which are therefore equal. This gives qzTay−1=qzTaz−1q_z^{\mathsf{T}}a_y^{-1} = q_z^{\mathsf{T}}a_z^{-1} and qyTay−1=qyTaz−1q_y^{\mathsf{T}}a_y^{-1} = q_y^{\mathsf{T}}a_z^{-1}.

(vi) Over the three choices of x0x_0 we get qxTat−1=qxTas−1=qxTaw−1q_x^{\mathsf{T}}a_t^{-1} = q_x^{\mathsf{T}}a_s^{-1} = q_x^{\mathsf{T}}a_w^{-1} for all xx, where t,s,wt,s,w are the three indices. The qxq_x form a basis by (iii), so the three first factors are equal, a contradiction. □

An exhaustive computation

For larger configurations we solve (4) by computer. Fix a type and a value of Δ\Delta. Using (1) and the action of GL⁡Δ(F2)\operatorname{GL}_{\Delta}(\mathbb{F}_2) we bring one term, the anchor, to a0=Ia_0 = I (or to a fixed matrix of rank two when there is no invertible term) and its data (B0,C0,l0,m0)(B_0,C_0,l_0,m_0) to one of finitely many orbit representatives: 7 for Δ=1\Delta= 1 and 36 for Δ=2\Delta= 2 with an invertible anchor, and 4 for Δ=0\Delta= 0 with an anchor of rank two. The other terms become vertices: tuples (a,B,C,l,m)(a,B,C,l,m) that satisfy (4) with themselves and with the anchor. For fixed aa these conditions are linear in BB once mm is fixed and linear in CC once BB and ll are fixed, so the vertices are found by solving linear systems. Two vertices are adjacent when their first factors differ and (4) holds for the pair. A decomposition of the given type yields a clique with the prescribed number of vertices of each rank. We first list the cliques formed by the anchor’s companions of rank two and three (the cores). For each core we then bound the largest set of pairwise adjacent rank-one vertices compatible with the core and having distinct first factors, using a colouring of the compatibility graph as the certificate.

Proposition 4.5 (†). No decomposition of length 22 has type (17,5,0)(17,5,0), (18,2,2)(18,2,2), (17,4,1)(17,4,1), (17,3,2)(17,3,2) or (18,1,3)(18,1,3).

The computation behind Proposition 4.5. The last column is the number of rank-one terms by which a core would have to be extended, and no core extends that far.

typeΔ\Deltaanchor orbitscoresneeded
(17,5,0)(17,5,0)0423,17517
(18,2,2)(18,2,2)17018
(17,4,1)(17,4,1)1770817
(17,3,2)(17,3,2)23696,71717
(18,1,3)(18,1,3)2366818

Table 2. The computation behind Proposition 4.5. The last column is the number of rank-one terms by which a core would have to be extended, and no core extends that far.

Lemmas 4.3 and 4.4 exclude (18,3,1)(18,3,1), (19,1,2)(19,1,2) and (19,0,3)(19,0,3). Since Δ=0\Delta= 0 forces one of the types (17,5,0)(17,5,0), (18,3,1)(18,3,1), (19,1,2)(19,1,2), we obtain the following.

Corollary 4.6 (†). Every decomposition of length 22 satisfies ∑trank⁡(at)≥28\sum_t \operatorname{rank}(a_t) \ge28, and none has type (19,0,3)(19,0,3), (18,2,2)(18,2,2), (17,4,1)(17,4,1), (17,3,2)(17,3,2) or (18,1,3)(18,1,3).

Two first factors on a line

Let L0L_0 be the line spanned by e11e_{11} and e12+e21e_{12}+e_{21}. Its orbit under GG consists of 441 lines, each containing one matrix of rank one and two of rank two. By Table 1 we have R(L0)≥20R(L_0) \ge20, and Rudich and Rousseau prove R(L0)≤20R(L_0) \le20 in Lean [21]. The capacity of L0L_0 is therefore 2, so Lemma 2.1 allows two first factors of a decomposition of length 22 in a line of this orbit. We show that this does not happen when at least 14 first factors have rank one, which is case (II) of the search in Section 6.

Theorem 5.1 (†). In a decomposition of length 22 with at least 14 first factors of rank one, each line in the GG-orbit of L0L_0 contains at most one first factor.

The proof uses a criterion for lifting a decomposition of a quotient TLT_L to a decomposition of TT. Let LL be a line with nonzero elements pp, qq and p+qp+q, and choose linear forms χ0,χ1\chi_0,\chi_1 on AA with χ0(p)=1\chi_0(p)=1, χ0(q)=0\chi_0(q)=0, χ1(p)=0\chi_1(p)=0 and χ1(q)=1\chi_1(q)=1. Let

TL=∑t=120aˉt⊗bt⊗ctT_L=\sum_{t=1}^{20}\bar{a}_t\otimes b_t\otimes c_t

be a decomposition with nonzero factors. For a linear form φ\varphi on AA put

Vφ={T(φ)−∑t=120φ(at)btctT:at∈aˉt for all t},V_\varphi=\left\{T(\varphi)-\sum_{t=1}^{20}\varphi(a_t)b_tc_t^{\mathsf T}:a_t\in\bar{a}_t\text{ for all }t\right\},

a set of 9×99\times9 matrices, where T(φ)T(\varphi) is the contraction of Section 2.

Lemma 5.2 (Lifting criterion). The following are equivalent.

(a) There are at∈aˉta_t\in\bar{a}_t and two further terms with distinct first factors in LL that together with the terms at⊗bt⊗cta_t\otimes b_t\otimes c_t form a decomposition of TT of length 22.

(b) At least two of the sets Vχ0V_{\chi_0}, Vχ1V_{\chi_1} and Vχ0+χ1V_{\chi_0+\chi_1} contain a matrix of rank one.

Proof. Fix representatives at0∈aˉta_t^0\in\bar{a}_t and write at=at0+eta_t=a_t^0+e_t with et∈Le_t\in L. As ete_t runs through LL, the pair (χ0(et),χ1(et))(\chi_0(e_t),\chi_1(e_t)) takes each value in F2\mathbb{F}_2 once. For a choice of the ete_t the tensor T−∑tat⊗bt⊗ctT-\sum_t a_t\otimes b_t\otimes c_t maps to 0 in (A/L)⊗B⊗C(A/L)\otimes B\otimes C, so it equals p⊗Mp+q⊗Mqp\otimes M_p+q\otimes M_q for some matrices MpM_p and MqM_q. Contracting with χ0\chi_0, χ1\chi_1 and χ0+χ1\chi_0+\chi_1 shows that MpM_p, MqM_q and Mp+MqM_p+M_q are the elements of Vχ0V_{\chi_0}, Vχ1V_{\chi_1} and Vχ0+χ1V_{\chi_0+\chi_1} given by this choice. Two terms with distinct first factors x,y∈Lx,y\in L and nonzero second and third factors have the form x⊗Nx+y⊗Nyx\otimes N_x+y\otimes N_y with rank⁡Nx=rank⁡Ny=1\operatorname{rank}N_x=\operatorname{rank}N_y=1. Since

p⊗Mp+q⊗Mq=p⊗(Mp+Mq)+(p+q)⊗Mq=q⊗(Mp+Mq)+(p+q)⊗Mp,p\otimes M_p+q\otimes M_q=p\otimes(M_p+M_q)+(p+q)\otimes M_q=q\otimes(M_p+M_q)+(p+q)\otimes M_p,

the two terms exist for this choice exactly when two of MpM_p, MqM_q and Mp+MqM_p+M_q have rank one. The element of Vχ0V_{\chi_0} depends only on the bits χ0(et)\chi_0(e_t), that of Vχ1V_{\chi_1} only on the bits χ1(et)\chi_1(e_t), and that of Vχ0+χ1V_{\chi_0+\chi_1} only on their sums. Any two of these three families of bits can be chosen independently. Hence two of the three matrices can be made of rank one by the same choice if and only if each of them can be made of rank one by some choice. □\square

For a single term whose slice has rank one, a related statement is part of [16 Proposition 3.1], and Wang’s forced-product technique [24] also enumerates the free coefficients of a residual and tests its rank. To test whether VφV_\varphi, an affine space of matrices, contains a matrix bcTbc^{\mathsf T} of rank one, we solve for each of the 511 nonzero vectors bb a linear system in cc and the coefficients.

Proof of Theorem 5.1. By symmetry it suffices to treat L0L_0. Suppose two first factors lie in L0L_0. They are distinct by Corollary 3.2, and the capacity of L0L_0 is 2, so the third nonzero matrix of L0L_0 is not a first factor. The other 20 terms project to a decomposition of TL0T_{L_0} of length 20 with nonzero factors, and its coset profile nn satisfies (2) with ℓ−1=20\ell- 1 = 20. At most one of the two first factors in L0L_0 has rank one, so at least 13 of the other 20 have rank one. Only 39 of the 127 nonzero cosets of L0L_0 contain a matrix of rank one, which gives the additional inequality

∑x∈C1n(x)≥13,\sum_{x \in C_1} n(x) \ge13,

where C1C_1 is the set of these 39 cosets. We enumerate the coset profiles that satisfy these inequalities, as in § 3.1, and run the completion search with target TL0T_{L_0} on each. When it finds decompositions of TL0T_{L_0} with a given profile, we list all of them and check that for each at most one of the three sets in Lemma 5.2(b) contains a matrix of rank one. By Lemma 5.2 no profile comes from a decomposition of TT of length 22. The enumeration has 737,787,637,822 nodes and 189,298,650,178 leaves. For 10 of the profiles the completion search finds decompositions of TL0T_{L_0}, 540 in all, and none of them lifts. □

The reduction to coset profiles works for any subspace in place of L0L_0 and any number of first factors in it, with the inequality for C1C_1 adjusted to the matrices of rank one in the subspace. The formalization proves it in this generality, together with the refutation of profiles that admit no decomposition of the quotient.

The search at r=22r = 22

Admissible sets

By Corollary 3.2 the first factors of a decomposition of length 22 form a set F⊂A∖{0}F \subset A \setminus\{0\} with ∣F∣=22|F| = 22. Let kk be the number of elements of rank one in FF. We split the proof into three cases: (I) k≤12k \le12, (I′) k=13k = 13 and (II) k≥14k \ge14, which is the range of Theorem 5.1.

Definition 6.1. A set F⊂A∖{0}F \subset A \setminus\{0\} with ∣F∣=22|F| = 22 is admissible if

(a) ∣F∩S∣≤cap⁡(S)|F \cap S| \le\operatorname{cap}(S) for every subspace SS in the family K\mathcal{K} described below, and

(b) ∣{a∈F:φ(a)=1}∣≥3rank⁡φ|\{a \in F : \varphi(a) = 1\}| \ge3\operatorname{rank}\varphi for every nonzero linear form φ\varphi on AA,

and, in case (II), in addition

(c) the type of FF is not excluded by Corollary 4.6, and

(d) each line in the GG-orbit of L0L_0 (§ 5) contains at most one element of FF.

The family K\mathcal{K} consists of the subspaces whose capacity is not implied by the capacity of another subspace, about 3.8⋅1063.8 \cdot10^6 of them. For a subspace SS of dimension at most 4 the capacity can be lowered further. Since the elements of FF are distinct, ∣F∩S∣≤k|F \cap S| \le k whenever no k+1k + 1 nonzero elements of SS respect the capacities of all subspaces of SS. We use the bound obtained in this way for five classes of subspaces, for which it is smaller than cap⁡(S)\operatorname{cap}(S). By Lemma 2.1, Corollary 4.6 and Theorem 5.1, the set of first factors of a decomposition of length 22 is admissible, and so are its images under GG.

Orderly generation

We order the 511 nonzero matrices by rank, and matrices of equal rank by the integer ∑i,jaij23i+j−4\sum_{i,j} a_{ij}2^{3i+j-4}. In case (II) the order is rank one, rank two, rank three. In cases (I) and (I′) it is rank three, rank two, rank one, which keeps the search tree small when there are few elements of rank one. For finite sets F≠F′F \ne F' of the same size we write F<F′F < F' if the smallest element of the symmetric difference belongs to FF. A set is canonical if it is the smallest set in its GG-orbit. The search follows the design of Wan’s proof enumerator [Wan26b, §3.3]. Orderly generation goes back to Read [Rea78] (see also [McK98]).

Lemma 6.2. Every GG-orbit of sets contains a canonical set, and every initial segment of a canonical set is canonical.

Proof. The first claim is clear, since orbits are finite. For the second, let FF be canonical, let cc be a nonzero matrix and let F0={a∈F:a<c}F_0=\{a\in F:a<c\}. Suppose that gF0<F0gF_0<F_0 for some g∈Gg\in G, and let mm be the smallest element of gF0△F0gF_0\mathbin{\triangle}F_0. Then m∈gF0∖F0m\in gF_0\setminus F_0. If m≥cm\ge c, every element of F0F_0 is smaller than mm and therefore lies in gF0gF_0, so F0=gF0F_0=gF_0 because both have the same size. This is impossible, so m<cm<c. Every element of FF smaller than mm then lies in F0F_0, hence in gF0⊆gFgF_0\subseteq gF, while m∈gF∖Fm\in gF\setminus F. Hence the smallest element of gF△FgF\mathbin{\triangle}F lies in gFgF, that is, gF<FgF<F. This contradicts the choice of FF.

The search builds sets in increasing order. A node is a canonical set F0F_0 of size less than 22 that satisfies all constraints restricted to F0F_0. Its children are the sets F0∪{u}F_0\cup\{u\} with uu larger than all elements of F0F_0. By Lemma 6.2 the search reaches each canonical admissible set through its initial segments. It may therefore discard any child that has no canonical admissible completion.

Discarding children

A child F0∪{u}F_0\cup\{u\} is discarded if one of the following holds. Each condition shows that no admissible canonical set has F0∪{u}F_0\cup\{u\} as an initial segment.

  1. F0∪{u}F_0\cup\{u\} violates a capacity in K\mathcal{K}.

  2. For some nonzero φ\varphi, the elements of F0∪{u}F_0\cup\{u\} with φ(a)=1\varphi(a)=1, together with all larger matrices with φ(a)=1\varphi(a)=1 that can still be added, number fewer than 3rank⁡φ3\operatorname{rank}\varphi.

  3. The case condition on kk cannot be met by the matrices that can still be added.

  4. In case (II), every type that a completion can have is excluded by Corollary 4.6.

  5. Fewer than 21−∣F0∣21-|F_0| matrices larger than uu remain that can still be added.

  6. No set of 21−∣F0∣21-|F_0| further matrices can be added without violating a capacity in K\mathcal{K}. The search proves this by a small branch and bound over the remaining candidates. When such a tree would be large, the child is kept as a node instead.

  7. F0∪{u}F_0\cup\{u\} is not canonical, as witnessed by an element g∈Gg\in G with g(F0∪{u})<F0∪{u}g(F_0\cup\{u\})<F_0\cup\{u\}.

The same tests applied to a node itself may discard all of its children at once. The leaves of the search are the canonical admissible sets.

Results

Table 3 gives the size of the search in each case.

casenodesadmissible setsrefuted
(I) k≤12k\le12629,4243,580all
(I′^\prime) k=13k=1319,547,416146,319all
(II) k≥14k\ge143,377,202,24275,177,701all

Table 3. Size of the search at r=22r=22.

Proposition 6.3 (†). Every canonical admissible set appears as a leaf of the search, and no leaf is the set of first factors of a decomposition of TT.

Proof of Theorem 1.1. Suppose TT has a decomposition of length 22. By Corollary 3.2 its first factors form a set FF of size 22, admissible by the remark after Definition 6.1. By Lemma 6.2 some gFgF with g∈Gg\in G is canonical, and gFgF is the set of first factors of a decomposition because gg extends to a symmetry of TT. This contradicts Proposition 6.3. Hence RF2(⟨3,3,3⟩)≥23R_{\mathbb{F}_2}(\langle3,3,3\rangle)\ge23, and Laderman’s algorithm gives equality.

The completion search

Given nonzero first factors a1,…,ara_1,\ldots,a_r and a target tensor T′T' (either TT or a quotient TST_S, written in suitable coordinates), the completion search decides whether there are nonzero bt,ctb_t,c_t with ∑tat⊗bt⊗ct=T′\sum_t a_t \otimes b_t \otimes c_t=T'. For a linear form φ\varphi on the space of first factors let T′(φ)T'(\varphi) be the contraction, a 9×99\times9 matrix.

The search assigns the pairs (bt,ct)(b_t,c_t) one term at a time. For a partial assignment and each nonzero φ\varphi it keeps the residual

Res⁡(φ)=T′(φ)−∑t assignedφ(at)=1btctT\operatorname{Res}(\varphi)=T'(\varphi)-\sum_{\substack{t\ \mathrm{assigned}\\\varphi(a_t)=1}}b_tc_t^{\mathsf T}

and the number u(φ)u(\varphi) of unassigned terms with φ(at)=1\varphi(a_t)=1. A completion exists only if rank⁡Res⁡(φ)≤u(φ)\operatorname{rank}\operatorname{Res}(\varphi)\leq u(\varphi) for all φ\varphi, since the unassigned terms with φ(at)=1\varphi(a_t)=1 decompose Res⁡(φ)\operatorname{Res}(\varphi). When all terms are assigned, the decomposition identity holds exactly when Res⁡(φ)=0\operatorname{Res}(\varphi)=0 for all φ\varphi.

The candidates for the next term tt are restricted by necessary conditions only, so the search is exhaustive.

  • If φ(at)=1\varphi(a_t)=1 and φ\varphi is tight, that is rank⁡Res⁡(φ)=u(φ)\operatorname{rank}\operatorname{Res}(\varphi)=u(\varphi), then the unassigned terms of φ\varphi give a decomposition of Res⁡(φ)\operatorname{Res}(\varphi) into u(φ)u(\varphi) matrices of rank one. Their vectors bb form a basis of the column space and their vectors cc a basis of the row space. Hence btb_t lies in the column space of Res⁡(φ)\operatorname{Res}(\varphi), and ctc_t lies in the row space and satisfies ctTx=1c_t^{\mathsf T}x=1 for every xx with Res⁡(φ)x=bt\operatorname{Res}(\varphi)x=b_t.

  • If φ(at)=1\varphi(a_t)=1 and rank⁡Res⁡(φ)=u(φ)−1\operatorname{rank}\operatorname{Res}(\varphi)=u(\varphi)-1, then btb_t lies in the column space or ctc_t lies in the row space of Res⁡(φ)\operatorname{Res}(\varphi).

These rules are dynamic versions of the restriction lemmas of [7 Lemmas 2 and 3] and [25 Lemma 4.1]. The maps b↦bS−1b\mapsto bS^{-1}, c↦Scc\mapsto Sc with S∈GL⁡3(F2)S\in\operatorname{GL}_3(\mathbb{F}_2) fix all first factors, TT and the quotient targets we use. We may therefore restrict the first term to one representative bb of each orbit, and its third factor cc to one representative of each orbit of the stabilizer of bb.

Verification with compiled checks

The formal statement

8.1. The formal statement. The final theorem states that n≥23n\geq23 whenever maps aa, bb and cc from {1,…,n}\{1,\ldots,n\} to F23×3\mathbb{F}_2^{3\times3} satisfy ∑sas⊗bs⊗cs=T\sum_s a_s\otimes b_s\otimes c_s=T. The factors are arbitrary matrices, F2\mathbb{F}_2 is the field ZMod 2 of Mathlib, and the definitions of the matrices, of TT and of a decomposition are the elementary ones, written out in a short file. Further theorems show that the statement does not change when TT is replaced by the tensor of the bilinear map (A,B)↦AB(A,B)\mapsto AB, and that Laderman’s algorithm reduced modulo 2 is a decomposition of length 23, so that RF2(⟨3,3,3⟩)=23R_{\mathbb{F}_2}(\langle3,3,3\rangle)=23 is a theorem in Lean. Rudich and Rousseau formalized the reduction from algorithms with integer constants that can be applied to blocks [21]. Through their formalization the final theorem gives that such an algorithm for 3×33\times3 matrices uses at least 23 multiplications, which is their result with 23 in place of 22.

Two layers

8.2. Two layers. The first layer consists of theorems proved in Lean 4 [8] with Mathlib [mC20], using only the axioms propext, Classical.choice and Quot.sound. For each kind of certificate it defines a checker, a function with Boolean values, and proves that the checker is sound: if it returns true on some data, the statement that the data certify holds. There are checkers for the nodes of the search at r=22r=22 and the reasons for discarding their children, for canonicity, for the enumerations of coset profiles, for the refutation of profiles by the completion search, and for the type exclusions of § 4. The same layer contains the arguments of § 2–§ 6: Lemma 4.2 and its use in Proposition 4.5, Lemma 4.3 for decompositions of length 22, the implication (a)⇒(b) of Lemma 5.2 for the line L0L_0 and the deduction of Theorem 5.1 from its enumeration, the capacity table from the bounds of [21], the 23 bounds of Table 1 that follow by monotonicity, and the deduction of Theorem 1.1 from Proposition 6.3. Lemma 4.4 is not formalized; instead, the type (19,0,3)(19, 0, 3) is excluded by the computation behind Proposition 4.5, with Δ=1\Delta= 1 and the seven anchor orbits. The formal proof thus excludes six types by computation and two, (18,3,1)(18, 3, 1) and (19,1,2)(19, 1, 2), by Lemma 4.3.

The second layer evaluates the checkers on the certificates. We check the certificates as the search programs produce them and, apart from small samples, discard them once checked, since at about 13 terabytes in total they are too large to keep. The kernel evaluates the checks for the type exclusions of Proposition 4.5, for the enumerations of 64 classes of Table 1, for the top levels of all other enumerations, and for the branch of the search in cases (I) and (I′) whose sets begin with a matrix of rank one, which contains no set with k≤13k \le13. The other checks are evaluated as compiled code: those for the rest of the search at r=22r = 22 and, below their top levels, those for the enumerations of the point, of 23 further classes and of § 5. The bounds of these 24 classes therefore depend on compiled evaluations, and so, through monotonicity, do seven further bounds of Table 1. In the enumeration of § 5 the compiled checks leave out the 10 profiles that admit decompositions of TL0T_{L_0}, and for each of them a kernel proof shows that none of these decompositions lifts.

A compiled evaluation is a call of native_decide. It runs the compiled checker on the data and adds to the environment an axiom stating that the checker returns true on these data. There is one such call for each of the 4,381,024 batches of certificates and for each of 23 further evaluations in the enumerations. The batches are combined through Lean’s module system. Each batch is checked in its own module. Its data and its axiom are private to that module, which exports only a statement about the interface of the batch: the part of the search it covers and the subtrees it leaves to other batches. Further modules import these statements and prove in the kernel that the batches together cover the whole search and all enumerations. A theorem of the first layer turns this covering statement into Theorem 1.1. For this purpose the first layer is written in module form, and each of its more than two million constants that also occur in the non-module development has the same statement and the same axioms there. The covering statement and the final theorem are therefore in one environment, and #print axioms for the final theorem lists the three standard axioms and the 4,381,047 axioms added by these calls.

Each of these axioms is tied by name to a batch and to the checker that the batch evaluates. The checker is recorded with each batch, except for 187,578 batches checked before such records were kept. For those it is determined by the kernel-checked statement that the batch exports, because only one soundness theorem in the build concludes that statement. For the 23 evaluations outside the batches we checked directly that each axiom states that the intended checker returns true. The search programs and the programs that distribute the batches over the machines are not trusted: a wrong or missing batch makes a check or a covering proof fail.

What the proof relies on

The proof relies on the Lean kernel and, in addition, on the Lean compiler and runtime, the C compiler that builds the compiled checkers, and the arithmetic library they use, because native_decide accepts the result of a compiled evaluation without a kernel check. For this reason Mathlib does not accept proofs that use native_decide. This basis is weaker than that of the proofs by Yang et al. [Yan26] and by Rudich and Rousseau [21], which use only the kernel. An independent kernel replay, as carried out in [21], re-checks the first layer and the covering proofs but not the evaluations. Checking a large finite computation by compiled evaluation of a checker proved sound is the method of the Coq proof of the four colour theorem [9] and of the enumeration of tame graphs in the formal proof of the Kepler conjecture [Hall17].

A second point concerns the library of compiled code. The compiled checkers are found by name, and Lean does not check that this library was built from the definitions to which the statement of a batch refers. With a library left over from an earlier build, a false evaluation would become an axiom that looks like any other. With a toy checker whose library had been compiled from an earlier version of its definition, we did obtain in this way a proof of False that Lean accepted. We therefore build each library into a directory named by a hash of its contents. Each batch records the SHA-256 hashes of the library and of the compiled checker modules that it loaded, and the script that generates the combining modules accepts a batch only if these hashes are those of the build used for the final theorem.

As a further check, we selected about one percent of the batches of each kind by a hash of their names and evaluated them again with Lean’s interpreter, which runs the compiled code stored in the checker modules and does not use the library. Because the interpreter is 45 to 200 times slower than compiled code, we re-checked 382 of the 744 selected batches, mostly the smaller ones. Each of them reproduced the module of its batch byte for byte (Table 4). This check does not depend on the library or on the C compiler, but it still depends on Lean’s compiler, which produced the code that the interpreter runs. § 9 describes a second formal proof, in which every check is evaluated by the kernel.

checkresult
The completion search on the first factors of a known decomposition of length 23, with target TT, and on its quotients by 12 subspaces of AAa completion is found in all 13 cases
Six decompositions of length 23 (listed in the data): the system (4.2) and its analogues for the second and third factors, 18 cases in allsatisfied, with Δ∈{1,2,3}\Delta\in\{1, 2, 3\}
The 62,239 decompositions of length 23 of § 3.4, each factor in the role of the first factor: the system (4.2) and Lemmas 4.1, 4.3 and 4.4, 186,717 casessatisfied in all cases, with Δ\Delta from 0 to 11
The same 186,717 cases against the bounds of [21] and Table 1: at most 23−lb⁡(S)23-\operatorname{lb}(S) first factors in each subspace SS of AA (Lemma 2.1)satisfied for all 8,283,458 subspaces
Re-evaluation by Lean’s interpreter, without the library, of 382 of the batches selected by a hash of their names (§ 8), namely 240 of the 602 selected for case (II), the one selected for each of cases (I) and (I′) and all 140 selected for the enumerations, and of all 89 parts of the search kept as a sample of about one in a thousandidentical modules in every case
Replay by Lean’s checker of a random sample of 0.1% of the private parts of the proof of § 9, drawn from the enumerations for the point, the classes and the external leaves, which have 9.1 million modulesnone of the sampled parts fails
all 9,538 sampled parts5,914 replay, 3,258 cannot be replayed because a private part they import was not kept, and 366 lie in packages that the final proof does not use
the 9,165 sampled parts in packages of the final proof5,912 replay and 3,253 cannot be replayed
Regeneration, with all private parts kept, of 24 packages (6,433 modules) chosen at random in advance from the search at r=22r=22 in the same proof, which has 5.0 million modules: 20 of the 18,110 packages of case (II), the package of case (I) and 3 of the 80 packages of case (I′)all 24 packages export the statement of the original build
6 packages (503 modules)a byte-identical replay of the original modules
5 packages (576 modules)the same statement re-derived independently, with every module replayed by Lean’s checker
the other 13 packages (5,354 modules)the same statement re-derived independently, with the combining modules replayed at the exported level
the 6,433 regenerated modules6,390 replay by Lean’s checker and none fails; the other 43, which combine the results of a package, replay in the kernel at the level of exported statements

Table 4. Independent checks. In the last two checks, a package is a group of Lean modules of the proof of § 9, and the private part of a module consists of its certificates, which are private declarations (§ 9.1).

The computation. Compiled, the checkers handle a node of the search at r=22r = 22 in about 1–2 ms, a node of an enumeration in 0.004–0.03 ms and a leaf in about 0.02 ms. This is between one hundred and one thousand times faster than evaluation by the kernel. The computation used Lean v4.30.0 and about 478,000 vCPU-hours of machine time.

Further checks. Table 4 lists checks that are not part of the proof. Their programs and outputs are in the accompanying data.

Data and code. The programs, the tables, the certificate formats, the Lean development and a list of all batches of the computation with their hashes are available at https://github.com/tejasvi/rank333-f2 and archived at https://doi.org/10.5281/zenodo.23236154. The kernel-only proof of § 9, with the generators and scripts that regenerate its modules, is at https://github.com/tejasvi/rank333-f2-kernel and archived at https://doi.org/10.5281/zenodo.23304899.

Verification by the kernel

The second formal proof evaluates every check in the Lean kernel. Its final theorem, R22K.Final.rank_ge_23, has the statement of § 8, and #print axioms lists only propext, Classical.choice and Quot.sound. The same module proves the consequences stated in § 8, with the same axioms. The proof follows Sections 2–7 except in case (II), where the enumeration behind Theorem 5.1, with 7.4⋅10117.4 \cdot10^{11} nodes, is too large for the kernel. We replace it by Lemma 9.1, which has a short proof, and by Theorem 9.2, whose enumerations are together ten times smaller.

Two caps for case (II). The first lemma bounds the number of first factors in a subspace of dimension six.

Lemma 9.1. Let W={a∈A:uTa=0}W = \{a \in A : u^{\mathsf{T}}a = 0\} or W={a∈A:av=0}W = \{a \in A : av = 0\} with u,v∈F23u,v \in\mathbb{F}_2^3 nonzero. In a decomposition of length at most 22, at most 11 first factors lie in WW.

Proof. The transposition symmetry of § 2 exchanges the two kinds of subspaces, and the symmetries (2.1) act transitively on each kind. So we may assume that W=W0W = W_0 is the space

of matrices with zero third row. Let OO be the set of terms with at∉W0a_t \notin W_0 and II the set of the others. Let π:A→A/W0\pi:A \to A/W_0 be the projection, which records the third row. Then

∑t∈Oπ(at)⊗bt⊗ct=(π⊗1⊗1)(T)=∑j,kπ(e3j)⊗ejk⊗ek3.\sum_{t\in O}\pi(a_t)\otimes b_t\otimes c_t=(\pi\otimes1\otimes1)(T)=\sum_{j,k}\pi(e_{3j})\otimes e_{jk}\otimes e_{k3}.

Read as a linear map from B∗B^* to (A/W0)⊗C(A/W_0)\otimes C, the right side is injective with image (A/W0)⊗C′(A/W_0)\otimes C', where C′C' is spanned by e13,e23,e33e_{13},e_{23},e_{33}. The left side factors through the map N:B∗→F2ON:B^*\to\mathbb{F}_2^O, β↦(β(bt))t\beta\mapsto(\beta(b_t))_t, so NN is injective, ∣O∣≥9|O|\geq9, and the map et↦π(at)⊗cte_t\mapsto\pi(a_t)\otimes c_t sends the image of NN, of dimension 9, onto (A/W0)⊗C′(A/W_0)\otimes C'. With ρ:C→C/C′\rho:C\to C/C', the tensors π(at)⊗ρ(ct)\pi(a_t)\otimes\rho(c_t) for t∈Ot\in O therefore span a space of dimension at most s=∣O∣−9s=|O|-9. Each of them has rank at most one, and π(at)≠0\pi(a_t)\neq0, so all ρ(ct)\rho(c_t) lie in the span of at most ss of the vectors ρ(ct)\rho(c_t). Hence the third factors ctc_t with t∈Ot\in O lie in a subspace D⊇C′D\supseteq C' of CC of dimension at most 3+s3+s. Projecting the third factor to C/DC/D removes the terms of OO, so the rank of TT modulo DD in the third factor is at most ∣I∣|I|. Since TT is invariant under the cyclic permutation of its three factors, this rank equals R(D′)R(D'), where D′⊆AD'\subseteq A has the same matrices as DD. If s≤1s\leq1, then D′D' is a subspace of dimension at most 4 containing the space of matrices supported on the third column, and by [21] each such subspace has R(D′)≥14R(D')\geq14. This contradicts R(D′)≤∣I∣≤22−∣O∣=13−sR(D')\leq|I|\leq22-|O|=13-s. So s≥2s\geq2 and ∣I∣≤11|I|\leq11.

Let

E436=⟨e11,e12+e23,e22+e31⟩andE422=⟨e11,e13+e22,e12+e31⟩.E_{436}=\langle e_{11},e_{12}+e_{23},e_{22}+e_{31}\rangle\quad\text{and}\quad E_{422}=\langle e_{11},e_{13}+e_{22},e_{12}+e_{31}\rangle.

In each of these planes the nonzero matrices have ranks 1, 2, 2, 2, 2, 3, 3. The GG-orbit of E436E_{436} has 14,112 planes and that of E422E_{422} has 7,056. Their stabilizers have orders 4 and 8, respectively. The table gives R≥19R\geq19 for both, so Lemma 2.1 allows three first factors in such a plane.

Theorem 9.2 (†). In a decomposition of length 22 with at least 14 first factors of rank one, each plane in the GG-orbit of E436E_{436} or of E422E_{422} contains at most two first factors.

The proof uses a lifting test and a symmetry reduction of the completion search.

Lemma 9.3. Let EE be a plane and TE=∑t=119aˉt⊗bt⊗ctT_E=\sum_{t=1}^{19}\bar{a}_t\otimes b_t\otimes c_t a decomposition with nonzero factors. For a linear form φ\varphi on AA let Wφ=T(φ)+span⁡{btctT:1≤t≤19}W_\varphi=T(\varphi)+\operatorname{span}\{b_tc_t^{\mathsf{T}}:1\leq t\leq19\}. Suppose that for each set PP of three nonzero elements of EE there is a form φ\varphi such that every matrix in WφW_\varphi has rank greater than the number of x∈Px\in P with φ(x)=1\varphi(x)=1. Then there are no at∈aˉta_t\in\bar{a}_t and three terms with distinct first factors in EE that complete the 19 terms to a decomposition of TT.

Proof. Suppose such terms exist, with first factors in a set PP. Contracting the decomposition of TT with φ\varphi gives T(φ)+∑tφ(at)btctT=∑x∈P,φ(x)=1uxvxTT(\varphi)+\sum_t\varphi(a_t)b_tc_t^{\mathsf{T}}=\sum_{x\in P,\varphi(x)=1}u_xv_x^{\mathsf{T}} for some vectors ux,vxu_x,v_x. The left side lies in WφW_\varphi, and the right side has rank at most the number of x∈Px\in P with φ(x)=1\varphi(x)=1, contrary to the choice of φ\varphi.

Unlike Lemma 5.2, Lemma 9.3 gives only a sufficient condition. Its hypothesis is certified by vectors w1,…,wrw_1,\ldots,w_r and, for each nonzero λ∈F2r\lambda\in\mathbb{F}_2^r, a vector zλz_\lambda with wλTT(φ)zλ=1w_\lambda^{\mathsf{T}}T(\varphi)z_\lambda=1 and (wλTbt)(ctTzλ)=0(w_\lambda^{\mathsf{T}}b_t)(c_t^{\mathsf{T}}z_\lambda)=0 for all tt, where wλ=∑iλiwiw_\lambda=\sum_i\lambda_iw_i. Then wλTMzλ=1w_\lambda^{\mathsf{T}}Mz_\lambda=1 for every M∈WφM\in W_\varphi, so the rows wiTMw_i^{\mathsf{T}}M are independent and rank⁡M≥r\operatorname{rank}M\geq r. Where no single form suffices for a set PP, the certificate fixes one element of PP and splits over the possible terms uvTuv^{\mathsf{T}} at that element, refuting each case in the same way.

The completion search on these leaves uses one more reduction. Two of the 19 terms whose first factors lie in the same coset of EE can exchange their pairs (bt,ct)(b_t,c_t), and the result is again a decomposition of TET_E that lifts if and only if the original one does. Call a decomposition canonical if within each such group of terms, apart from the group of the term on which the search branches first, the integers 512bt+ct512b_t+c_t do not decrease with tt (here btb_t and ctc_t are read as 9-bit integers).

Lemma 9.4. Each decomposition of TET_E becomes canonical after exchanges within the groups, and the exchanges do not change whether it lifts.

Proof. Let Φ=∑t(512bt+ct)\Phi=\sum_t(512b_t+c_t). Exchanging an inverted pair u<vu<v in a group raises Φ\Phi by a positive amount, and Φ\Phi is bounded, so repeated exchanges end at a canonical decomposition. Both properties are invariant under exchanges because they depend only on the multiset of terms.

The search therefore refutes only canonical decompositions. On four leaves for which the search was run both with and without this reduction, the number of complete assignments drops by exactly the order of the exchange group: 8, 48, 48 and 96.

Proof of Theorem 9.2. We follow the proof of Theorem 5.1. Suppose that three first factors lie in E=E436E=E_{436} or E=E422E=E_{422}. They are distinct by Corollary 3.2, and at most one of them has rank one, so at least 13 of the other 19 have rank one. The other terms project to a decomposition of TET_E of length 19, whose coset profile on the 63 nonzero cosets of EE satisfies (3.1) and ∑x∉C1n(x)≤6\sum_{x\notin C_1}n(x)\leq6, where C1C_1 is the set of cosets that contain a matrix of rank one. We enumerate these profiles up to the stabilizer of EE. Table 5 gives the size of the two enumerations. Inside the enumeration, the completion search with target TET_E refutes every leaf except the external ones, whose certificates are too long, whose search exceeds a budget, or which admit decompositions of TET_E. A separate run of the completion search refutes most external leaves. For the others, decompositions of TET_E exist, and Lemma 9.3 shows that none of them lifts, with Lemma 9.4 reducing the decompositions to be tested.

planenodesleavesexternal leaveswith decompositionsassignments
E436E_{436}60,864,120,39622,519,627,971392,5253,382343,609,305
E422E_{422}12,944,107,3074,503,216,71396,469277,254

Table 5. The enumerations behind Theorem 9.2. External leaves are refuted outside the enumeration; for those with decompositions of TET_E, the last column counts the complete assignments that the completion search tests with Lemma 9.3.

In case (II), the search of § 6 uses Lemma 9.1 and Theorem 9.2 in place of Theorem 5.1: in Definition 6.1(d), each plane in the orbits of E436E_{436} and E422E_{422} contains at most two elements of FF, and each subspace of Lemma 9.1 at most eleven.

The other checks

The point, the 23 classes of Table 1 whose enumerations the first proof evaluates as compiled code, and the search at r=22r=22 are checked by the kernel in the same way as the other enumerations. For 21 of the 23 classes, none of their 7,446 external leaves admits a decomposition of the quotient. For classes 303 and 321 the kernel proves the bound R(S)≥19R(S)\geq19 directly, and these proofs include the refutation of 3,587 and 3,541 external leaves, respectively.

The certificates are grouped into packages of Lean modules. The certificates of a module are private declarations, and the module exports a statement about the part of the proof it covers, as in § 8. The kernel checks every declaration when the module is built. The final theorem depends on about 151,000 packages with 14.2 million modules, built in about 530,000 vCPU-hours. We read off the axioms of the final theorem in two independent ways: with #print axioms, and as the union of the axioms that the kernel records for every module when it is built, private declarations included, over the 20,470 modules that the final theorem uses. Both give propext, Classical.choice and Quot.sound. A search of all modules for sorryAx, Lean.ofReduceBool, Lean.trustCompiler and the auxiliary declarations of native_decide finds none. We also checked that every module and every import matches its recorded hash, that no two modules share a name, and that all modules were checked by the same build of the kernel. The private parts of the modules were deleted after these checks, so a complete independent replay must first regenerate them with the published generators and rebuild the modules.

Remarks

The constraints of § 4 hold for all decompositions of length 22, independently of the search. The Gram system (4) applies to decompositions of any length, and the computation behind Proposition 4.5 can be applied to other types. It would be interesting to know whether the method says anything about the structure of decompositions of length 23, of which there are many inequivalent ones over F2\mathbb{F}_2 [6, 12].

The rank of ⟨3,3,3⟩\langle3, 3, 3\rangle over F3\mathbb{F}_3, over Q\mathbb{Q} and over C\mathbb{C} remains open, as does its border rank over F2\mathbb{F}_2. Our method relies on enumerating finite sets of first factors over F2\mathbb{F}_2, and it does not extend to fields of characteristic zero.

Acknowledgment

The author thanks Manuel Kauers for sharing the collection of schemes [13]. This research received no specific funding.

Use of AI tools

Generative AI tools contributed to this work as follows. They did not contribute to choosing the question, a long-standing open problem that the author chose to work on. They helped with the conceptual approach and made central technical contributions: they were used to find and prove the results, including the plan of the proof in Sections 3 to 7, and to write the programs and both Lean formalizations. They were also used for writing and exposition (drafting and revising the text), for checking for errors (reviewing the proofs, the programs and the text), and for other supporting tasks (searching the literature and running the computations). The author takes full responsibility for the content of the paper, including the parts produced with these tools.

References

ORCID: https://orcid.org/0000-0003-4668-3639

References

  1. [1][AFT11] B. Alexeev, M. A. Forbes and J. Tsimerman, Tensor rank: some lower and upper bounds, in: 26th Annual IEEE Conference on Computational Complexity (CCC 2011), 2011, 283–291.DOI
  2. [2][BCS97] P. Bürgisser, M. Clausen and M. A. Shokrollahi, Algebraic Complexity Theory, Grundlehren der mathematischen Wissenschaften 315, Springer, 1997.
  3. [3][Beu26] S. Beuchert, Independent verification of the Wang F₂-certificate for R(⟨3, 3, 3⟩) ≥ 20, Zenodo, 2026, https://doi.org/10.5281/zenodo.20691957.
  4. [4][Blä03] M. Bläser, On the complexity of the multiplication of matrices of small formats, J. Complexity 19 (2003), 43–60.DOI
  5. [5][Blä13] M. Bläser, Fast matrix multiplication, Theory of Computing Library, Graduate Surveys 5, 2013.
  6. [6][CBH11] N. T. Courtois, G. V. Bard and D. Hulme, A new general-purpose method to multiply 3 × 3 matrices using only 23 multiplications, arXiv:1108.2830, 2011.arxiv.org/abs/1108.2830
  7. [7][D’Am26] I. D’Ambrosio, The exact F₂-rank of 2 × 3 by 3 × 4 matrix multiplication, Zenodo, 2026, https://doi.org/10.5281/zenodo.21895176.
  8. [8][dMU21] L. de Moura and C. Ullrich, The Lean 4 theorem prover and programming language, in: Automated Deduction – CADE 28, Lecture Notes in Comput. Sci. 12699, Springer, 2021, 625–635.DOI
  9. [9]G. Gonthier, Formal proof—the four-color theorem, Notices Amer. Math. Soc. 55 (2008), 1382–1393.
  10. [11]J. E. Hopcroft and L. R. Kerr, On minimizing the number of multiplications necessary for matrix multiplication, SIAM J. Appl. Math. 20 (1971), 30–36.DOI
  11. [12]M. J. H. Heule, M. Kauers and M. Seidl, New ways to multiply 3 × 3-matrices, J. Symbolic Comput. 104 (2021), 899–916.DOI
  12. [13]M. Kauers, collection of schemes of length 23 for 3 × 3 matrix multiplication over F₂, file 333x23.tgz, http://www.algebra.uni-linz.ac.at/people/mkauers/333x23.tgz, SHA-256 bfe79080120ab9eb55e04126d943df7b2c279544bf13ba623488a1f527ca1923, retrieved 18 October 2026.
  13. [14]M. Kauers and J. Moosbauer, A normal form for matrix multiplication schemes, in: Algebraic Informatics – CAI 2022, Lecture Notes in Comput. Sci. 13706, Springer, 2022, 149–160.arxiv.org/abs/2206.00550
  14. [15]J. D. Laderman, A noncommutative algorithm for multiplying 3 × 3 matrices using 23 multiplications, Bull. Amer. Math. Soc. 82 (1976), 126–128.DOI
  15. [16]J. M. Landsberg and M. Michalek, Abelian tensors, J. Math. Pures Appl. 108 (2017), 333–371.
  16. [19]V. Y. Pan, Methods of computing values of polynomials, Russian Math. Surveys 21 (1966), 105–136.DOI
  17. [21]I. Rudich and L.-M. Rousseau, Lower bound of 22 for 3 × 3 matrix multiplication over ℤ, arXiv:2610.01639, 2026; Lean proof at https://doi.org/10.5281/zenodo.23047901.
  18. [22]V. Strassen, Gaussian elimination is not optimal, Numer. Math. 13 (1969), 354–356.DOI
  19. [23]B. Tahir, A certificate-based conditional lower bound of 21 for 3 × 3 matrix multiplication over F₂, public review draft, 2026, https://github.com/btahir/rank21-f2-review.
  20. [24]C. Wang, Automated lower bounds for bilinear complexity over finite fields, arXiv:2603.07280, 2026.arxiv.org/abs/2603.07280
  21. [25]C. Wang, A lower bound of 21 for 3 × 3 matrix multiplication over F₂, arXiv:2609.06725, 2026.arxiv.org/abs/2609.06725
  22. [26]S. Winograd, On multiplication of 2 × 2 matrices, Linear Algebra Appl. 4 (1971), 381–388.DOI

Paper details

vlnc:W_rg76n2wd
v1 · latestHistory (1)

published · Fresh — added to the Hub within the last 30 days

added ·

Usage

views · 9

downloads · 0

A view counts once per browser per day, a download each time the PDF is requested.

CC BY 4.0

Original source

  • Mathematics

Generative AI tools · View statement →

Looking for related papers…
Contents