Faster Algorithms for Rectangular Matrix Multiplication

François Le Gall

Introduction

Finding the optimal value of the exponent of square matrix multiplication is naturally one of the most important open problems in algebraic complexity. It is widely believed that the product of two n×nn\times n matrices can be computed with O(n2+ϵ)O(n^{2+\epsilon}) arithmetic operations for any constant ϵ>0\epsilon>0. Several conjectures, including conjectures about combinatorial structures and about group theory , would, if true, lead to this result (see also for recent work on these conjectures). Another way to interpret this open problem is by considering the multiplication of an n×mn\times m matrix by an m×nm\times n matrix. Suppose that the matrices are defined over a field. For any k>0k>0, define the exponent of such a rectangular matrix multiplication as follows:

where C(n,n,⌊nk⌋)C(n,n,\lfloor n^{k}\rfloor) denotes the minimum number of arithmetic operations needed to multiply an n×⌊nk⌋n\times\lfloor n^{k}\rfloor matrix by an ⌊nk⌋×n\lfloor n^{k}\rfloor\times n matrix. Note that, while the value ω(1,1,k)\omega(1,1,k) may depend on the field under consideration, it is known that it can depend only on the characteristic of the field . Define ω=ω(1,1,1)\omega=\omega(1,1,1) and α=sup⁡{k ∣ ω(1,1,k)=2}\alpha=\sup\{k\>|\>\omega(1,1,k)=2\}. The value ω\omega represents the exponent of square matrix multiplication, and the value α\alpha essentially represents the largest value such that the product of an n×nαn\times n^{\alpha} matrix by an nα×nn^{\alpha}\times n matrix can be computed with O(n2+ϵ)O(n^{2+\epsilon}) arithmetic operations for any constant ϵ\epsilon. Since ω=2\omega=2 if and only if α=1\alpha=1, one possible strategy towards showing that ω=2\omega=2 is to give lower bounds on α\alpha. Coppersmith showed in 1982 that α>0.172\alpha>0.172. Then, based on the techniques developed in , Coppersmith improved this lower bound to α>0.29462\alpha>0.29462. This is the best lower bound on α\alpha known so far.

Excepting Coppersmith’s works on the value α\alpha, there have been relatively few algorithms that focused specifically on rectangular matrix multiplication. Since it is well known (see, e.g, ) that multiplying an n×nn\times n matrix by an n×mn\times m matrix, or an m×nm\times n matrix by an n×nn\times n matrix, can be done with the same number of arithmetic operations as multiplying an n×mn\times m matrix by an m×nm\times n matrix, the value ω(1,1,k)\omega(1,1,k) represents the exponent of all these three types of rectangular matrix multiplications. Note that, by decomposing the product into smaller matrix products, it is easy to obtain (see, e.g, ) the following upper bound:

Lotti and Romani obtained nontrivial upper bounds on ω(1,1,k)\omega(1,1,k) based on the seminal result by Coppersmith and on early works on square matrix multiplication. Huang and Pan showed how to apply ideas from to the rectangular setting and obtained the upper bound ω(1,1,2)<3.333954\omega(1,1,2)<3.333954, but this approach did not lead to any upper bound better than (1) for k≤1k\leq 1. Ke, Zeng, Han and Pan further improved Huang and Pan’s result to ω(1,1,2)<3.2699\omega(1,1,2)<3.2699, by using again the approach from , and also reported the upper bounds ω(1,1,0.8)<2.2356\omega(1,1,0.8)<2.2356 and ω(1,1,0.5356)<2.0712\omega(1,1,0.5356)<2.0712, which are better than those obtained by (1). Their approach, nevertheless, did not give any improvement for the value of α\alpha.

Besides the fact that a better understanding of ω(1,1,k)\omega(1,1,k) gives insights into the nature of matrix multiplication and ultimately may help showing that ω=2\omega=2, fast algorithms for multiplying an n×nkn\times n^{k} matrix by an nk×nn^{k}\times n with k≠1k\neq 1 have also a multitude of applications. Typical examples not directly related to linear algebra include the construction of fast algorithms for the all-pairs shortest paths problem , the dynamic computation of the transitive closure , finding ancestors , detecting directed cycles , or computing the diameter of a graph . Rectangular matrix multiplication has also been used in computational complexity , and to speed-up sparse square matrix multiplication or tasks in computational geometry . Obtaining new upper bounds on ω(1,1,k)\omega(1,1,k) would thus reduce the asymptotic time complexity of algorithms in a wide range of areas. We nevertheless stress that such improvements are only of theoretical interest, since the huge constants involved in the complexity of fast matrix multiplication usually make these algorithms impractical.

Short description of the approach by Coppersmith and Winograd.

In view of the last result, it was natural to ask if taking larger tensor powers of FqF_{q} as the basic construction leads to better bounds on ω\omega. The case r=3r=3 was explicitly mentioned as an open problem in but did not seem to lead to any improvement. Stothers and Vassilevska Williams succeeded in analyzing the fourth tensor product Fq⊗4F_{q}^{\otimes 4} and obtained a better upper bound on ω\omega, the first improvement in more that twenty years. Vassilevska Williams further presented a general framework that enables a systematic analysis for higher tensor products of the basis construction, and used this framework to show that ω<2.3727\omega<2.3727, for the basic construction F⊗8F^{\otimes 8}, the best upper bound obtained so far.

The algorithms for rectangular matrix multiplication already mentioned use a similar approach. Huang and Pan obtained their improvement on ω(1,1,2)\omega(1,1,2) by taking the easiest of the three construction in and carefully modifying the analysis to evaluate the complexity of rectangular matrix multiplication. Ke, Zeng, Han and Pan obtained their improvements similarly, but by using the second basic construction from (the construction FqF_{q}) instead, which lead to better upper bounds. These approaches, while very natural, do not provide any nontrivial lower bounds on α\alpha: the upper bounds on ω(1,1,k)\omega(1,1,k) obtained are strictly larger than 2 even for small values of kk. In order to obtain the lower bound α>0.29462\alpha>0.29462, Coppersmith relied on a more complex approach: the basic construction considered is still FqF_{q}, but several instances for distinct values of qq are combined together in a subtle way in order to keep the complexity of the resulting algorithm small enough (i.e., not larger than n2+o(1)n^{2+o(1)}).

Statement of our results and discussion.

In this paper we construct new algorithms for rectangular matrix multiplication, by taking the tensor power Fq⊗FqF_{q}\otimes F_{q} as basic construction and analyzing this construction in the framework of rectangular matrix multiplication. We use these ideas to prove that ω(1,1,k)=2\omega(1,1,k)=2 for any k≤0.3029805k\leq 0.3029805, as stated in the following theorem.

For any value k<0.3029805...k<0.3029805..., the product of an n×nkn\times n^{k} matrix by an nk×nn^{k}\times n matrix can be computed with O(n2+ϵ)O(n^{2+\epsilon}) arithmetic operations for any constant ϵ>0\epsilon>0.

Theorem 1.1 shows that α>0.30298\alpha>0.30298, which improves the previous record α>0.29462\alpha>0.29462 by Coppersmith. More generally, in the present work we present an algorithm for multiplying an n×nkn\times n^{k} matrix by an nk×nn^{k}\times n matrix, for any value kk. We show that the complexity of this algorithm can be expressed as a (nonlinear) optimization problem, and use this formulation to derive upper bounds on ω(1,1,k)\omega(1,1,k). Table 1 shows the bounds we obtain for several values of kk. The bounds obtained for 0≤k≤10\leq k\leq 1 are represented in Figure 1 as well.

The results of this paper can be seen as a generalization of Coppersmith-Winograd’s approach to the rectangular setting. In the case of square matrix multiplication (i.e., for k=1k=1), we recover naturally the same upper bound ω(1,1,1)<2.375477\omega(1,1,1)<2.375477 as the one obtained in . Let us mention that we can, in a rather straightforward way, combine our results with the upper bound ω<2.3727\omega<2.3727 by Vassilevska Williams to obtain slightly improved bounds for k≈1k\approx 1. The idea is, very similarly to how Equation (1) was obtained, to exploit the convexity of the function ω(1,1,k)\omega(1,1,k). Concretely, for any fixed value 0≤k0<10\leq k_{0}<1, the inequality

holds for any kk such that k0≤k≤1k_{0}\leq k\leq 1. This enables us to combine an upper bound on ω(1,1,k0)\omega(1,1,k_{0}), for instance one of the values in Table 1, with the improved upper bound ω<2.3727\omega<2.3727 by Vassilevska Williams. Since the improvement is small and concerns only the case k≈1k\approx 1, we will not discuss it further.

For k>0.29462k>0.29462 and k≠1k\neq 1, the complexity of our algorithms is better than all known algorithms for rectangular matrix multiplication, including the algorithms mentioned above. Moreover, for 0.30298<k<10.30298<k<1, our new bounds are significantly better than what can be obtained solely from the bound α>0.30298\alpha>0.30298 and ω<2.375477\omega<2.375477 through Equation (1), as illustrated in Figure 1. This suggests that non-negligible improvements can be obtained for all applications of rectangular matrix multiplications that rely on this simple linear interpolation — we will elaborate on this subject in Subsection 1.1.

Let us compare more precisely our results with those reported in . For k=2k=2, we obtain ω(1,1,2)<3.256689\omega(1,1,2)<3.256689 while Ke et al. obtained ω(1,1,2)<3.2699\omega(1,1,2)<3.2699 by using the basic construction FqF_{q}. Our improvements are of the same order for the other two values (k=0.8k=0.8 and k=0.5356k=0.5356) analyzed in , as can be seen from Table 1. Note that the order of magnitude of the improvements here is similar to what was obtained in by changing the basic construction from FqF_{q} to Fq⊗FqF_{q}\otimes F_{q} for square matrix multiplication, which led to a improvement from ω<2.38719\omega<2.38719 to ω<2.375477\omega<2.375477.

A noteworthy point is that our algorithm directly leads to improved lower bounds on α\alpha while, as already mentioned, to obtain a nontrivial lower bound on α\alpha using the basic construction FqF_{q} (as done in ) a specific methodology was needed. Our approach can then be considered as a general framework to study rectangular matrix multiplication, which leads to a unique optimization problem that gives upper bounds on ω(1,1,k)\omega(1,1,k) for any value of kk.

1 Applications

As mentioned in the beginning of the introduction, improvements on the time complexity of rectangular matrix multiplication give faster algorithms for a multitude of computational problems. In this subsection we describe quantitatively the improvements that our new upper bounds imply for some of these problems: sparse square matrix multiplication, the all-pairs shortest paths problem and computing dynamically the transitive closure of a graph.

Yuster and Zwick have shown how fast algorithms for rectangular matrix multiplication can be used to construct fast algorithms for computing the product of two sparse square matrices (this result has been generalized to the product of sparse rectangular matrices in , and the case where the output matrix is also sparse has been studied in ). More precisely, let MM and M′M^{\prime} be two n×nn\times n matrices such that each matrix has at most mm non-zero entries, where 0≤m≤n20\leq m\leq n^{2}. Yuster and Zwick showed that the product of MM and M′M^{\prime} can be computed in time

where λm\lambda_{m} is the solution of the equation λm+ω(1,1,λm)=2log⁡n(m)\lambda_{m}+\omega(1,1,\lambda_{m})=2\log_{n}(m). Using the upper bounds on ω(1,1,k)\omega(1,1,k) of Equation (1) with the values α<0.294\alpha<0.294 and ω<2.376\omega<2.376, this gives the complexity depicted in Figure 2.

These upper bounds can be of course directly improved by using the new upper bound on ω\omega by Vassilevska Williams and the new lower bound on α\alpha given in the present work, but the improvement is small. A more significant improvement can be obtained by using directly the upper bounds on ω(1,1,k)\omega(1,1,k) presented in Figure 1, which gives the new upper bounds on the complexity of sparse matrix multiplication depicted in Figure 2. For example, for m=n4/3m=n^{4/3}, we obtain complexity O(n2.087)O(n^{2.087}), which is better than the original upper bound O(n2.1293...)O(n^{2.1293...}) obtained from Equation (1) with α>0.294\alpha>0.294 and ω<2.376\omega<2.376. Note that replacing ω<2.376\omega<2.376 with the the best known bound ω<2.3727\omega<2.3727 only decreases the latter bound to O(n2.1287...)O(n^{2.1287...}). Thus, even if the algorithms presented in the present paper do not give any improvement on ω\omega (i.e., for the product of dense square matrices), we do obtain improvements for computing the product of two sparse square matrices.

Graph algorithms.

Zwick has shown how to use rectangular matrix multiplication to compute, with high probability, the all-pairs shortest paths in weighted direct graphs where the weights are bounded integers. The time complexity obtained is O(n2+μ+ϵ)O(n^{2+\mu+\epsilon}), for any constant ϵ>0\epsilon>0, where μ\mu is the solution of the equation ω(1,1,μ)=1+2μ\omega(1,1,\mu)=1+2\mu. Using the upper bounds on ω(1,1,k)\omega(1,1,k) of Equation (1) with α>0.294\alpha>0.294 and ω<2.376\omega<2.376, this gives μ<0.575\mu<0.575 and thus complexity O(n2.575+ϵ)O(n^{2.575+\epsilon}). This reduction to rectangular matrix multiplication is the asymptotically fastest known approach for weighted directed graphs with small integer weights.

Our results (see Table 1) show that ω(1,1,0.5302)<2.0604\omega(1,1,0.5302)<2.0604, which gives the upper bound μ<0.5302\mu<0.5302. We thus obtain the following result.

There exists a randomized algorithm that computes the shortest paths between all pairs of vertices in a weighted directed graph with bounded integer weights in time O(n2.5302)O(n^{2.5302}), where nn is the number of vertices in the graph.

Note that, even if ω=2\omega=2, the complexity of Zwick’s algorithm is O(n2.5+ϵ)O(n^{2.5+\epsilon}). In this perspective, our improvements on the complexity of rectangular matrix multiplication offer a non-negligible speed-up for the all-pairs shortest paths problem in this setting.

The same approach can be used to improve several other existing graph algorithms. Let us describe another example: algorithms for computing dynamically the transitive closure of a graph. Demetrescu and Italiano presented a randomized algorithm for the dynamic transitive closure of directly acyclic graph with nn vertices that answers queries in O(nμ)O(n^{\mu}) time, and performs updates in O(n1+μ+ϵ)O(n^{1+\mu+\epsilon}) time, for any ϵ>0\epsilon>0. Here μ\mu is again the solution of the equation ω(1,1,μ)=1+2μ\omega(1,1,\mu)=1+2\mu. This was the first algorithm for this problem with subquadratic time complexity. This result have been generalized later to general graphs, with the same bounds, by Sankowski . Our new upper bounds thus show the existence of an algorithm for the dynamic transitive closure that answers queries in O(n0.5302)O(n^{0.5302}) time and performs updates in O(n1.5302)O(n^{1.5302}) time.

2 Overview of our techniques and organization of the paper

Before presenting an overview of the techniques used in this paper, we will give an informal description of algebraic complexity theory (the contents of which will be superseded by the formal presentation of these notions in Section 2). In this paper we will use, for any positive integer nn, the notation [n][n] to represent the set {1,…,n}\{1,\ldots,n\}.

The matrix multiplication of an m×nm\times n matrix by an n×pn\times p matrix can be represented by the following trilinear form, denoted as ⟨m,n,p⟩\langle m,n,p\rangle:

where xrsx_{rs}, ysty_{st} and zrtz_{rt} are formal variables. This form can be interpreted as follows: the (r,t)(r,t)-th entry of the product of an m×nm\times n matrix MM by an n×pn\times p matrix M′M^{\prime} can be obtained by setting xij=Mijx_{ij}=M_{ij} for all (i,j)∈[m]×[n](i,j)\in[m]\times[n] and yij=Mij′y_{ij}=M^{\prime}_{ij} for all (i,j)∈[n]×[p](i,j)\in[n]\times[p], setting zrt=1z_{rt}=1 and setting all the other zz-variables to zero. One can then think of the zz-variables as formal variables used to record the entries of the matrix product.

More generally, a trilinear form tt is represented as

An exact (bilinear) algorithm computing tt corresponds to an equality of the form

A sum ∑iti\sum_{i}t_{i} of trilinear forms is a direct sum if the tit_{i}’s do not share variables. Informally, Schönhage’s asymptotic sum inequality for rectangular matrix multiplication states that, if the form tt can be converted (in the λ\lambda-approximation sense) into a direct sum of cc trilinear forms, each form being isomorphic to ⟨m,m,mk⟩\langle m,m,m^{k}\rangle, then

This suggests that good bounds on ω(1,1,k)\omega(1,1,k) can be obtained if the form tt can be used to derive many independent (i.e., not sharing any variables) matrix multiplications. This approach has been applied to derive almost all new bounds on matrix multiplication since its discovery in 1981 by Schönhage.

Overview of our techniques.

Our algorithm uses, as its basic construction, the trilinear form Fq⊗FqF_{q}\otimes F_{q} from , which can be written as a sum of fifteen terms TijkT_{ijk}, for all fifteen nonnegative integers i,j,ki,j,k such that i+j+k=4i+j+k=4:

If the sum were direct, then, from Schönhage’s asymptotic sum inequality and since an upper bound on the rank of Fq⊗FqF_{q}\otimes F_{q} is easy to obtain, this would reduce the problem to the analysis of each part TijkT_{ijk}. This is unfortunately not the case: the TijkT_{ijk}’s share variables. To solve this problem, the basic construction is manipulated in order to obtain a direct sum, similarly to . The first step is to take the NN-th tensor product of the basis construction, where NN is a large integer. This gives:

We will take fifteen integers aijka_{ijk} and show how the form (Fq⊗Fq)⊗N(F_{q}\otimes F_{q})^{\otimes N} can be transformed, by zeroing variables, into a direct sum of a large number of forms TIJKT_{IJK} in which each TIJKT_{IJK} is such that

The main difference here is that, in , the symmetry of square multiplication implied that the aijka_{ijk}’s could be taken invariant under permutation of indices, with means that only four parameters (a004a_{004}, a013a_{013}, a022a_{022} and a112a_{112}) needed to be considered. In our case, we still impose the condition aijk=aikja_{ijk}=a_{ikj}, but not more. This reduces the number of parameters to nine: a004a_{004}, a400a_{400}, a013a_{013}, a103a_{103}, a301a_{301}, a022a_{022}, a202a_{202}, a112a_{112} and a211a_{211}. Many nontrivial technical problems arise from this larger number of parameters. In particular, the equations that occur during the analysis do not have a unique solution and an optimization step is necessary. This is similar to the difficulties that appeared in the analysis of the basis construction Fq⊗4F_{q}^{\otimes 4} (for square matrix multiplication) done in . We will show that this further optimization step essentially imposes the additional (nonlinear) constraint a013a202a112=a103a022a211a_{013}a_{202}a_{112}=a_{103}a_{022}a_{211}.

Showing that (Fq⊗Fq)⊗N(F_{q}\otimes F_{q})^{\otimes N} can be transformed into a direct sum of many isomorphic forms, as claimed, was also used in previous works based on the approach by Coppersmith and Winograd. Our setting is nevertheless more general than in , for the following two reasons. First, our approach is asymmetric since our parameters aijka_{ijk} are not invariant under permutations of the indices. Second, the technical problems due to the presence of many parameters require more precise arguments. The former complication was addressed implicitly in , and explicitly in . The latter complication was addressed in . Here we need to deal with these two complications simultaneously, which involves a careful analysis. Instead of approaching this task directly in the language of trilinear forms, we give a graph-theoretic interpretation of it, which will make the exposition more intuitive, and also simplify the analysis. Each form TIJKT_{IJK} will correspond to one vertex in a graph, and an edge in the graph will represent the fact that two forms share one index. We will interpret the task of converting the sum (Fq⊗Fq)⊗N(F_{q}\otimes F_{q})^{\otimes N} into a direct sum (i.e., a sum where the non-zero forms TIJKT_{IJK} do not share any index) as the task of converting the graph, by using only simple graph operations, into an edgeless subgraph. We will present algorithms solving this latter graph-theoretic task and show that a large edgeless subgraph can be obtained, which means that many forms TIJKT_{IJK} not sharing any index can be constructed from (Fq⊗Fq)⊗N(F_{q}\otimes F_{q})^{\otimes N}.

Now that we have a direct sum of many forms, each form being isomorphic to (2), the only thing to do before applying Schönhage’s asymptotic sum inequality is to show that the form (2) is isomorphic to a direct sum of matrix products ⟨m,m,mk⟩\langle m,m,m^{k}\rangle. Some of the TijkT_{ijk}’s (more precisely, all the TijkT_{ijk}’s except T112T_{112}, T121T_{121} and T211T_{211}) can be analyzed in a straightforward way, since they correspond to matrix products, as originally observed in . The forms T112T_{112}, T121T_{121} and T211T_{211} are delicate to analyze since they do not correspond to matrix products. In (see also ), they were analyzed individually through the concept of “value”, a quantity that evaluates the number of square matrix products (and their size) that can be created from the form under consideration. This is nevertheless useless for estimating ω(1,1,k)\omega(1,1,k), except when k=1k=1, because the value is intrinsically symmetric (in particular, the values of T112T_{112}, T121T_{121} and T211T_{211} are identical), while here we are precisely interested in breaking the symmetry in order to obtain bounds for rectangular matrix multiplication. Instead, we will analyze the term

globally. This is the key new idea leading to our new bounds on α\alpha and more generally on ω(1,1,k)\omega(1,1,k) for any k≠1k\neq 1. Note that this difficulty was not present in previous works on rectangular matrix multiplication : for simpler basic constructions such as FqF_{q}, all the smaller parts correspond to matrix products. We will show that T112T_{112}, T121T_{121} and T211T_{211} can be converted into a large number of objects called “C\mathscr{C}-tensors” in Strassen’s terminology . This will be done by relying on the graph-interpretation we introduced and showing how this conversion can be interpreted as finding large cliques in a graph (this is the main reason why we developed this graph-theoretic interpretation). While the fact that the form T112T_{112} corresponds to a sum of C\mathscr{C}-tensors was briefly mentioned in , and a proof sketched, we will need a complete analysis here. We will in particular rely on the fact that the C\mathscr{C}-tensors obtained from T112T_{112}, T121T_{121} and T211T_{211} are not identical. The success of our approach comes from the discovery that these C\mathscr{C}-tensors are actually “complementary”: while the C\mathscr{C}-tensors obtained individually from T112T_{112}, T121T_{121} and T211T_{211} do not give any improvement for the exponent of rectangular matrix multiplication, their combination (i.e., the C\mathscr{C}-tensors corresponding to the whole term (3)) does lead to improvements when analyzed globally by the “laser method” developed by Strassen . This will show that the form (3), and thus the form (2) as well, is isomorphic to a direct sum of matrix products ⟨m,m,mk⟩\langle m,m,m^{k}\rangle.

Finally, Schönhage’s asymptotic sum inequality will give an inequality, depending on the parameters aijka_{ijk}, that involves ω(1,1,k)\omega(1,1,k). Our new upper bounds on ω(1,1,k)\omega(1,1,k) are obtained by optimizing these parameters. While this is done essentially though numerical calculations, the new lower bound on α\alpha requires a more careful analysis where the optimal values of all but a few of the parameters are found analytically.

Higher powers.

A natural question is whether our bounds can be improved by taking higher tensor powers of FqF_{q} as the basic algorithm, i.e., taking Fq⊗rF_{q}^{\otimes r}for r>2r>2. As can be expected from the analysis for r=2r=2 we have outlined above, the analysis is much more difficult than in the square case, for two main reasons. The first reason is that the construction is not symmetric and thus more parameters have to be considered. This problem can be nevertheless addressed through a systematic framework similar to the one described in — this is actually quite accessible without using a computer for r=4r=4. The second, and more fundamental, reason is that the analysis of the smaller parts is different from the square case since it does not use the concept of value. We solved this problem for r=2r=2 by applying Strassen’s laser method globally on the combination of T112T_{112}, T121T_{121} and T211T_{211}, which is the key technical contribution of this paper. For larger values of rr the same approach can in principle be used, but other techniques seem to be necessary to convert these ideas into a systematic framework.

Organization of the paper.

Section 2 describes formally the notions of trilinear forms and Strassen’s laser method. Section 3 presents in details the basic construction Fq⊗FqF_{q}\otimes F_{q} from and some of its properties. Section 4 describes the graph-theoretic problems that will arise in the analysis of our trilinear forms. Section 5 describes our algorithm, and Section 6 shows how to use this algorithm to derive the optimization problem giving our new upper bounds on ω(1,1,k)\omega(1,1,k). Finally, the optimization is done in Section 7.

Preliminaries

In this section we present known results about trilinear forms, Strassen’s laser method and Salem-Spencer sets that we will use in this paper. We refer to for an extensive treatment of the first two topics.

It will be convenient for us to use an abstract approach and represent trilinear forms as tensors. Our presentation is independent from what was informally defined and stated in Subsection 1.2, but describes essentially the same contents. We thus encourage the reader who encounter these notions for the first time to refer at Subsection 1.2 for concrete illustrations.

The tensor corresponding to the matrix multiplication of an m×nm\times n matrix by an n×pn\times p matrix is the tensor of format (m×n,n×p,m×p)(m\times n,n\times p,m\times p) with coefficients

This tensor will be denoted by ⟨m,n,p⟩\langle m,n,p\rangle.

This new tensor is called a restriction of tt. Intuitively, the fact that a tensor t′t^{\prime} is a restriction of tt means that an algorithm computing tt can be converted into an algorithm computing t′t^{\prime} that uses the same amount of multiplications (i.e., an algorithm with essentially the same complexity). We now give the definition of degeneration of tensors.

Intuitively, the fact that a tensor t′t^{\prime} is a degeneration of a tensor tt means that an algorithm computing tt can be converted into an “approximate algorithm” computing t′t^{\prime} with essentially the same complexity. The notion of degeneration can be used to define the notion of border rank.

Let t∈U⊗V⊗Wt\in U\otimes V\otimes W and t′∈U′⊗V′⊗W′t^{\prime}\in U^{\prime}\otimes V^{\prime}\otimes W^{\prime} be two tensors. We can naturally define the direct sum t⊕t′t\oplus t^{\prime}, which is a tensor in (U⊕U′)⊗(V⊕V′)⊗(W⊕W′)(U\oplus U^{\prime})\otimes(V\oplus V^{\prime})\otimes(W\oplus W^{\prime}), and the tensor product t⊗t′t\otimes t^{\prime}, which is a tensor in (U⊗U′)⊗(V⊗V′)⊗(W⊗W′)(U\otimes U^{\prime})\otimes(V\otimes V^{\prime})\otimes(W\otimes W^{\prime}). For any integer c≥1c\geq 1, we will denote the tensor t⊕⋯⊕tt\oplus\cdots\oplus t (with cc occurrences of tt) by c⋅tc\cdot t and the tensor t⊗⋯⊗tt\otimes\cdots\otimes t (with cc occurrences of tt) by t⊗ct^{\otimes c}. The degeneration of tensors has the following properties.

Let t1,t1′,t2t_{1},t_{1}^{\prime},t_{2} and t2′t_{2}^{\prime} be four tensors. Suppose that t1′⊴t1t^{\prime}_{1}\unlhd t_{1} and t2′⊴t2t^{\prime}_{2}\unlhd t_{2}. Then t1′⊕t2′⊴t1⊕t2t^{\prime}_{1}\oplus t^{\prime}_{2}\unlhd t_{1}\oplus t_{2} and t1′⊗t2′⊴t1⊗t2t^{\prime}_{1}\otimes t^{\prime}_{2}\unlhd t_{1}\otimes t_{2}.

Schönhage’s asymptotic sum inequality will be one of the main tools used to prove our bounds. Its original statement is for estimating the exponent of square matrix multiplication, but it can be easily generalized to estimate the exponent of rectangular matrix multiplication as well. We will use the following form, which has been also used implicitly in . A proof can be found in .

Let kk, mm and cc be three positive integers. Let tt be a tensor such that c⋅⟨m,m,mk⟩⊴tc\cdot\langle m,m,m^{k}\rangle\unlhd t. Then

Theorem 2.1 states that, if the form tt can be degenerated (i.e., approximately converted, in the sense of Definition 2.1) into a direct sum of cc forms, each being isomorphic to ⟨m,m,mk⟩\langle m,m,m^{k}\rangle, then the inequality c⋅mw(1,1,k)≤R‾(t)c\cdot m^{w(1,1,k)}\leq\underline{R}(t) holds. Note that this is a powerful technique, since the concepts of degeneration and border rank refer to “approximate algorithms”, while ω(1,1,k)\omega(1,1,k) refers to the complexity of exact algorithms for rectangular matrix multiplication.

2 Strassen’s laser method and 𝒞\mathscr{C}-tensors

Strassen introduced in 1986 a new approach, often referred as the laser method, to derive upper bounds on the exponent of matrix multiplication. To the best of our knowledge, all the applications of this method have focused so far on square matrix multiplication, in which case several simplifications can be done due to the symmetry of the problem. In this paper we will nevertheless need the full power of the laser method, and in particular the notion of C\mathscr{C}-tensor introduced in , to derive our new bounds on the exponent of rectangular matrix multiplication. The exposition below will mainly follow .

Let t∈U⊗V⊗Wt\in U\otimes V\otimes W be a tensor. Suppose that UU, VV and WW decompose as direct sums of subspaces as follows:

Denote by DD this decomposition. We say that tt is a C\mathscr{C}-tensor with respect to DD if tt can be written as

where each tijkt_{ijk} is a tensor in Ui⊗Vj⊗WkU_{i}\otimes V_{j}\otimes W_{k}. The support of tt is defined as

and the nonzero tijkt_{ijk}’s are called the components of tt. We will usually omit the reference to DD when there is no ambiguity or when the decomposition does not matter.

for all (i,j,k)∈Ψ(i,j,k)\in\Psi, a(i)+b(j)+c(k)=0a(i)+b(j)+c(k)=0;

for all (i,j,k)∈Φ\Ψ(i,j,k)\in\Phi\backslash\Psi, a(i)+b(j)+c(k)>0a(i)+b(j)+c(k)>0.

Finally, we mention that the concept of C\mathscr{C}-tensor is preserved by the tensor product. We will just state this property for the restricted class of C\mathscr{C}-tensors that we will encounter in this paper (for which the precise decompositions do not matter), and refer to or to Section 7 in for a complete treatment.

3 Salem-Spencer sets

Salem and Spenser have shown the existence of very dense sets with no length-3 arithmetic progression.

We refer to these sets as Salem-Spencer sets. They can be constructed in time polynomial in MM. Note that this construction has been improved by Behrend , but the above statement will be enough for our purpose.

Coppersmith-Winograd’s construction

In this section we describe the construction by Coppersmith and Winograd , which we will use as the basis of our algorithm, and several of its properties.

In this trilinear form the xx-variables are x0,x1,…,xq+1x_{0},x_{1},\ldots,x_{q+1}. Similarly, the number of yy-variables is (q+2)(q+2) and the number of zz-variables is (q+2)(q+2) as well. Define the form

It is easy to check that the form FqF_{q} can be written as Fq=Fq′+λ⋅Fq′′F_{q}=F^{\prime}_{q}+\lambda\cdot F^{\prime\prime}_{q}, where Fq′′F^{\prime\prime}_{q} is a polynomial in λ\lambda and in the xx-variables, yy-variables and zz-variables. In the language of Section 2, this means that Fq′⊴FqF^{\prime}_{q}\unlhd F_{q} and, informally, this means that an algorithm computing FqF_{q} can be converted into an algorithm computing Fq′F^{\prime}_{q} with the same complexity. Note that R‾(Fq)≤q+2\underline{R}(F_{q})\leq q+2 since, by definition, FqF_{q} is the sum of q+2q+2 products.

A more complex construction is proposed in Section 8 of . It is obtained by taking the tensor product of FqF_{q} by itself. By Proposition 2.1 we know that Fq′⊗Fq′⊴Fq⊗FqF^{\prime}_{q}\otimes F^{\prime}_{q}\unlhd F_{q}\otimes F_{q}. Consider the tensor product of Fq′F^{\prime}_{q} by itself:

Moreover we know that R‾(Fq⊗Fq)≤(q+2)2\underline{R}(F_{q}\otimes F_{q})\leq(q+2)^{2}, since Fq⊗FqF_{q}\otimes F_{q} can be written using (q+2)2(q+2)^{2} multiplications.

We will later need to analyze all the forms TijkT_{ijk}. It happens, as observed in , that most of these forms (all the forms except T112T_{112}, T121T_{121} and T211T_{211}) can be analyzed in a straightforward way, since they are isomorphic to the following matrix products:

Graph-Theoretic Problems

In this section we describe and solve several graph-theoretic problems that will arise in the analysis of our trilinear forms. While the presentation given here is independent from the remaining of the paper, the reader may prefer to read Section 5 before going through this section.

Let τ\tau be a fixed positive integer. Let NN be a large integer and define the set

Define the three coordinate functions f1,f2,f3 ⁣:[τ]N×[τ]N×[τ]N→[τ]Nf_{1},f_{2},f_{3}\colon[\tau]^{N}\times[\tau]^{N}\times[\tau]^{N}\to[\tau]^{N} as follows.

From the definition of Λ\Lambda, two distinct elements in Λ\Lambda cannot agree on more than one coordinate. Since this simple observation will be crucial in our analysis, we state it explicitly as follows.

Let uu and vv be two elements in Λ\Lambda. If fi(u)=fi(v)f_{i}(u)=f_{i}(v) for more than one index i∈{1,2,3}i\in\{1,2,3\}, then u=vu=v.

Let UU be a subset of Λ\Lambda such that there exist integers N1,N2\mathcal{N}_{1},\mathcal{N}_{2} and N3\mathcal{N}_{3} for which the following property holds: for any I∈[τ]NI\in[\tau]^{N},

This means that, for any i∈{1,2,3}i\in\{1,2,3\} and any I∈[τ]NI\in[\tau]^{N}, the size of the set fi(I)−1f_{i}(I)^{-1} is either 00 or Ni\mathcal{N}_{i}. Let us write ∣f1(U)∣=T1|f_{1}(U)|=T_{1}, ∣f2(U)∣=T2|f_{2}(U)|=T_{2} and ∣f3(U)∣=T3|f_{3}(U)|=T_{3}. It is easy to see that

We are interested in stating asymptotic results holding when NN goes to infinity. Through this section the Ni\mathcal{N}_{i}’s and the TiT_{i}’s will be strictly increasing functions of NN.

Let GG be the (simple and undirected) graph with vertex set UU in which two distinct vertices uu and vv are connected if and only there exists one index i∈{1,2,3}i\in\{1,2,3\} such that fi(u)=fi(v)f_{i}(u)=f_{i}(v). The goal will be to modify the graph GG to obtain a subgraph satisfying some specific properties. The only modification we allow is to remove all the vertices with a given sequence at a given position: given a sequence I∈[τ]NI\in[\tau]^{N} and a position s∈{1,2,3}s\in\{1,2,3\}, remove all the vertices uu (if any) such that fi(u)=If_{i}(u)=I. We call such an operation a removal operation. The reason why only such removal operations are allowed is that they will correspond, when considering trilinear forms, to setting to zero some variables, which is one of the only operations that can be performed on trilinear forms.

While not stated explicitly in graph-theoretic terms, the key technical result by Coppersmith and Winograd is a method to convert, when N1=N2=N3\mathcal{N}_{1}=\mathcal{N}_{2}=\mathcal{N}_{3}, the graph GG into an edgeless graph that still contains a non-negligible fraction of the vertices. We state this result in the following theorem.

Suppose that N1=N2=N3\mathcal{N}_{1}=\mathcal{N}_{2}=\mathcal{N}_{3}. Then, for any constant ϵ>0\epsilon>0, the graph GG can be converted, with only removal operations, into an edgeless graph with Ω(T1N1ϵ)\Omega\left(\frac{T_{1}}{\mathcal{N}_{1}^{\epsilon}}\right) vertices.

In this section we will give several generalizations of this result. In Subsection 4.2 we state our generalizations. Then, in Subsections 4.3–4.6, we describe the algorithms and prove the results. We stress that, in this section as in , the number of removal operations (i.e., the time complexity of the algorithms) is irrelevant. This is because, in the applications of these results to matrix multiplication, the parameter NN will be treated as a large constant independent of the size of the matrices considered.

2 Statement of our results

The generalization we consider assume the existence of a known set U∗⊆UU^{\ast}\subseteq U such that

∣fi(U∗)∣=Ti|f_{i}(U^{\ast})|=T_{i} for each i∈{1,2,3}i\in\{1,2,3\};

there exist integers N1∗,N2∗\mathcal{N}^{\ast}_{1},\mathcal{N}^{\ast}_{2} and N3∗\mathcal{N}^{\ast}_{3} such that

for each I∈[τ]NI\in[\tau]^{N} and each i∈{1,2,3}i\in\{1,2,3\}.

Note that we have necessarily T1N1∗=T1N2∗=T1N2∗T_{1}\mathcal{N}^{\ast}_{1}=T_{1}\mathcal{N}^{\ast}_{2}=T_{1}\mathcal{N}^{\ast}_{2}.

The first problem considered is again to convert the graph GG into an edgeless subgraph that contains a non-negligible fraction of the vertices using only removal operations, but we additionally require that all the remaining vertices are in U∗U^{\ast}. Our first result is the following theorem.

For any constant ϵ>0\epsilon>0, the graph GG can be converted, with only removal operations, into an edgeless graph with

vertices, all of them being in U∗U^{\ast}.

Theorem 4.1 is a special case of Theorem 4.2, for U∗=UU^{\ast}=U. The case N1=N2=N3\mathcal{N}_{1}=\mathcal{N}_{2}=\mathcal{N}_{3} has been proved implicitly by Stothers and Vassilevska Williams .

Our second problem deals with another kind of conversion. Remember that, from the definition of the graph GG and Fact 1, for any edge connecting two vertices uu and vv in GG there exists exactly one index i∈{1,2,3}i\in\{1,2,3\} such that fi(u)=fi(v)f_{i}(u)=f_{i}(v). Let us define the concept of 1-clique as follows.

A 1-clique in the graph GG is a set U′⊆UU^{\prime}\subseteq U for which there exists a sequence I∈[τN]I\in[\tau^{N}] such that f1(u)=If_{1}(u)=I for all u∈U′u\in U^{\prime}. The size of the 1-clique is ∣U′∣|U^{\prime}|.

Our second result shows how to convert, using only removal operations, the graph GG into a graph with vertices in U∗U^{\ast} that is the disjoint union of many large 1-cliques. The formal statement follows.

Suppose that N1≥N2≥N3\mathcal{N}_{1}\geq\mathcal{N}_{2}\geq\mathcal{N}_{3}. Assume that N2T1N1∗+N2T1<11024\frac{\mathcal{N}_{2}T_{1}}{\mathcal{N}_{1}^{\ast}}+\frac{\mathcal{N}_{2}}{T_{1}}<\frac{1}{1024}. Then, for any constant ϵ>0\epsilon>0, the graph GG can be converted, with only removal operations, into a graph satisfying the following conditions:

all the vertices of the graph are in U∗U^{\ast};

each connected component is a 1-clique (i.e., the graph is a disjoint union of 1-cliques);

among these 1-cliques, there are Ω(T1N2ϵ)\Omega\left(\frac{T_{1}}{\mathcal{N}_{2}^{\epsilon}}\right) 1-cliques that have size Ω(N1∗N2)\Omega\left(\frac{\mathcal{N}_{1}^{\ast}}{\mathcal{N}_{2}}\right).

Note that, when only removal operations are allowed, the graph obtained is necessary a subgraph of GG induced be a subset of its vertices. Theorem 4.3 thus states that there exist 1-cliques Ur⊆U∗U_{r}\subseteq U^{\ast} such that the graph obtained after the removal operations is the subgraph of GG induced by ∪rUr\cup_{r}U_{r}, at least Ω(T1/N2ϵ)\Omega\left(T_{1}/\mathcal{N}_{2}^{\epsilon}\right) of these UrU_{r}’s have size Ω(N1∗/N2)\Omega\left(\mathcal{N}_{1}^{\ast}/\mathcal{N}_{2}\right), and for any r≠r′r\neq r^{\prime} there is no edge with one extremity in UrU_{r} and the other extremity in Ur′U_{r^{\prime}}. We mention that the constant 1/10241/1024 in the assumption of Theorem 4.3 is chosen only for concreteness. The same theorem actually holds even for weaker conditions on N1∗,T1\mathcal{N}^{\ast}_{1},T_{1} and N2\mathcal{N}_{2}, but this simpler version will be sufficient for our purpose.

3 Choice of the weight functions

Let us introduce the notion of a compatible vertex.

A vertex u∈Uu\in{U} is compatible if bi(fi(u))∈Γb_{i}(f_{i}(u))\in\Gamma for each i∈{1,2,3}i\in\{1,2,3\}. Let VV be the set of vertices in UU that are compatible, and denote V∗=V∩U∗V^{\ast}=V\cap U^{\ast}.

We stress that the definition of compatibility (and thus the definitions of VV and V∗V^{\ast} too) depend of the choice of Γ\Gamma and of the weights ωi\omega_{i}. Using the fact that Γ\Gamma is a Salem-Spencer set we can give the following simple but very useful characterization of compatible vertices.

Let i∈{1,2,3}i\in\{1,2,3\} and i′∈{1,2,3}i^{\prime}\in\{1,2,3\} be any two distinct indexes. Then a vertex u∈Uu\in U is compatible if and only if bi(fi(u))=bi′(fi′(u))=bb_{i}(f_{i}(u))=b_{i^{\prime}}(f_{i^{\prime}}(u))=b for some b∈Γb\in\Gamma.

Let us take a vertex u∈Uu\in U, and write f1(u)=If_{1}(u)=I, f2(u)=Jf_{2}(u)=J and f3(u)=Kf_{3}(u)=K.

Suppose that bi(fi(u))=bi′(fi′(u))=bb_{i}(f_{i}(u))=b_{i^{\prime}}(f_{i^{\prime}}(u))=b for some b∈Γb\in\Gamma, where ii and i′i^{\prime} are distinct. For instance, suppose that i=1i=1 and i′=2i^{\prime}=2. Then, since MM is a prime, the above property implies that b3(K)=bb_{3}(K)=b, which means that uu is compatible. The same conclusion is true for the other choices of ii and i′i^{\prime}.

Now suppose that uu is compatible. From the definition of a Spencer-Salem set, we can conclude that there exists an element b∈Γb\in\Gamma such that b1(I)=b2(J)=b3(K)=bb_{1}(I)=b_{2}(J)=b_{3}(K)=b. ∎

4 The first pruning

Similarly to , the first pruning simply eliminates all the nodes u∈Uu\in U that are not compatible. Note that this can be done using removal operations: for each i∈{1,2,3}i\in\{1,2,3\}, we remove all the vertices ww such that fi(w)∉bi−1(Γ)f_{i}(w)\notin b_{i}^{-1}(\Gamma). The vertices remaining are precisely those in VV. Among those remaining vertices, the vertices in U∗U^{\ast} are precisely those in V∗=V∩U∗V^{\ast}=V\cap U^{\ast}.

We now evaluate the expectation of ∣V∗∣|V^{\ast}|. The proof is very similar to what was shown in for the case U=U∗U=U^{\ast}, and to what was shown in for N1∗=N2∗=N3∗\mathcal{N}^{\ast}_{1}=\mathcal{N}^{\ast}_{2}=\mathcal{N}^{\ast}_{3}.

Let EE be the edge set of the subgraph of GG induced by VV: it consists of all edges connecting two distinct vertices uu and vv in VV such that fi(u)=fi(v)f_{i}(u)=f_{i}(v) for some i∈{1,2,3}i\in\{1,2,3\}. Let E′⊆EE^{\prime}\subseteq E be the subset of edges in EE with (at least) one extremity in V∗V^{\ast}. Let E′′⊆E′E^{\prime\prime}\subseteq E^{\prime} be the subset of edges in E′E^{\prime} connecting two vertices uu and vv such that f1(u)≠f1(v)f_{1}(u)\neq f_{1}(v) (which means that either f2(u)=f2(v)f_{2}(u)=f_{2}(v) or f3(u)=f3(v)f_{3}(u)=f_{3}(v)). The following lemma gives upper bounds on the expectations of ∣E′∣|E^{\prime}| and ∣E′′∣|E^{\prime\prime}|. The proof can be considered as a generalization of similar statements in .

We show that, for any index i∈{1,2,3}i\in\{1,2,3\}, the expected number of ordered pairs (u,v)(u,v) with u∈V∗u\in V^{\ast} and v∈V\{u}v\in V\backslash\{u\} such that fi(u)=fi(v)f_{i}(u)=f_{i}(v) is exactly

The expectation of the number of edges (i.e., unordered pairs) is necessarily smaller.

The factor T1N1∗T_{1}\mathcal{N}_{1}^{\ast} counts the number of vertices in U∗U^{\ast}. For any vertex u∈U∗u\in U^{\ast}, there are exactly Ni−1\mathcal{N}_{i}-1 vertices v∈U\{u}v\in U\backslash\{u\} such that fi(v)=fi(u)f_{i}(v)=f_{i}(u).

Let uu be a vertex in U∗U^{\ast} and vv be a vertex in U\{u}U\backslash\{u\} such that fi(v)=fi(u)f_{i}(v)=f_{i}(u). Take another index i′∈{1,2,3}\{i}i^{\prime}\in\{1,2,3\}\backslash\{i\} arbitrarily. From Lemma 4.1, both uu and vv are in VV if and only if

for some element b∈Γb\in\Gamma. This happens with probability ∣Γ∣/M3|\Gamma|/M^{3} since the random variables bi(fi(u))b_{i}(f_{i}(u)), bi′(fi′(u))b_{i^{\prime}}(f_{i^{\prime}}(u)), and bi′(fi′(v))b_{i^{\prime}}(f_{i^{\prime}}(v)) are mutually independent. From the linearity of the expectation, the expected number of ordered pairs is T1N1∗(Ni−1)T_{1}\mathcal{N}_{1}^{\ast}(\mathcal{N}_{i}-1) times this probability. ∎

Lemmas 4.2 and 4.3 focused on expected values and were proven, essentially, by the linearity of the expectation. This was sufficient for the applications to square matrix multiplication presented in , and this will be sufficient for proving Theorem 4.2 as well. Since, in order to prove Theorem 4.3, we will need a more precise analysis of the behavior of the random variables considered, we now prove the following lemma, which gives a lower bound on the probability that the subgraph induced by V∗V^{\ast} has many large 11-cliques.

With probability (on the choice of the weights ωi\omega_{i}) at least 1−4MT1N1∗−4MT1∣Γ∣1-\frac{4MT_{1}}{\mathcal{N}_{1}^{\ast}}-\frac{4M}{T_{1}|\Gamma|}, there exists a set R⊆[τ]NR\subseteq[\tau]^{N} satisfying the following two conditions:

for any I∈RI\in R, there exist at least N1∗2M\frac{\mathcal{N}_{1}^{\ast}}{2M} vertices u∈V∗u\in V^{\ast} such that f1(u)=If_{1}(u)=I.

Let us consider the set f1(U∗)={f1(u) ∣ u∈U∗}f_{1}(U^{\ast})=\{f_{1}(u)\>|\>u\in U^{\ast}\}. For each element I∈f1(U∗)I\in f_{1}(U^{\ast}), define the set

Note that ∣f1(U∗)∣=T1|f_{1}(U^{\ast})|=T_{1}, and ∣SI∣=N1∗|S_{I}|=\mathcal{N}_{1}^{\ast} for each I∈f1(U∗)I\in f_{1}(U^{\ast}).

Fix an element I∈f1(U∗)I\in f_{1}(U^{\ast}) and define

This random variable represents the number of vertices from SIS_{I} that are mapped by b2∘f2b_{2}\circ f_{2} into b1(I)b_{1}(I). For any vertex u=(I,J,K)∈SIu=(I,J,K)\in S_{I}, we have the equivalence

where the second inequality is obtained by Chebyshev’s inequality.

From the union bound we can conclude that, with probability at least 1−4MT1N1∗−4MT1∣Γ∣1-\frac{4MT_{1}}{\mathcal{N}_{1}^{\ast}}-\frac{4M}{T_{1}|\Gamma|}, the inequality ∣R∣≥T1∣Γ∣/(2M)\left|R\right|\geq T_{1}|\Gamma|/(2M) holds and simultaneously, for each element I∈RI\in R, there exist at least N1∗/(2M)\mathcal{N}_{1}^{\ast}/(2M) vertices u∈U∗u\in U^{\ast} such that f1(u)=If_{1}(u)=I and b2(f2(u))=b1(I)b_{2}(f_{2}(u))=b_{1}(I). These vertices are in V∗V^{\ast} by Lemma 4.1. ∎

5 The second pruning: first version and proof of Theorem 4.2

In this subsection MM is an arbitrary prime number such that 2(N1+N2+N3)<M<4(N1+N2+N3)2(\mathcal{N}_{1}+\mathcal{N}_{2}+\mathcal{N}_{3})<M<4(\mathcal{N}_{1}+\mathcal{N}_{2}+\mathcal{N}_{3}).

The first pruning has transformed the graph GG into the subgraph induced by VV. The second pruning, similarly to , will further modify this subgraph by removing vertices in order to obtain a subgraph consisting of isolated vertices from V∗V^{\ast} (i.e., an edgeless graph). This is done by constructing greedily a set L⊆V∗L\subseteq V^{\ast} of isolated vertices. Initially L=∅L=\emptyset and, at each iteration, either one remaining vertex in V∗\LV^{\ast}\backslash L will be added to LL or several vertices in VV will be removed. This will be repeated until there is no remaining vertex in V∗\LV^{\ast}\backslash L. Finally, all the remaining vertices not in LL will be removed. The detailed procedure is described in Figure 3, where V‾\overline{V} represents the set of remaining vertices (initially V‾=V\overline{V}=V). Note that the procedure slightly differs from what was done in since we need to take in consideration the asymmetry of the problem.

Let Vf‾\overline{V_{f}} denote the contents of V‾\overline{V} at the end of the procedure. The following proposition, shown using the same ideas as in , shows that what we obtain is a large set of isolated vertices from V∗V^{\ast}.

The subgraph of GG induced by Vf‾\overline{V_{f}} is an edgeless graph. Moreover, Vf‾⊆V∗\overline{V_{f}}\subseteq V^{\ast} and the expectation of ∣Vf‾∣|\overline{V_{f}}| (over the choices of ωj\omega_{j}) is

Let LfL_{f} denote the contents of LL at the end of the procedure. First observe that Vf‾⊆Lf\overline{V_{f}}\subseteq L_{f}, due to Step 3. Note that any vertex added to LL cannot be later removed from V‾\overline{V}, since it has no neighbor. Thus Lf⊆Vf‾L_{f}\subseteq\overline{V_{f}}, and we conclude that Vf‾=Lf\overline{V_{f}}=L_{f}. This shows in particular that Vf‾⊆V∗\overline{V_{f}}\subseteq V^{\ast}. Moreover, since each vertex in LL has no neighbor, the subgraph induced by Vf‾\overline{V_{f}} is edgeless.

To prove the second part, we will show an upper bound on the number of vertices in V∗V^{\ast} removed from V‾\overline{V} during the loop of Step 2. The bound will be obtained by considering the number of edges from E′E^{\prime} remaining in the subgraph induced by V‾\overline{V}.

Let us consider what happens during Step 2.2. Let u∈(V‾∩V∗)\Lu\in(\overline{V}\cap V^{\ast})\backslash L be the vertex currently examined. Suppose that another vertex in V‾\overline{V} sharing one index with uu is found. For example, suppose that we find another vertex v∈V‾v\in\overline{V} with f1(v)=f1(u)f_{1}(v)=f_{1}(u). Let S={w∈V‾∩V∗ ∣ f2(w)=f2(u)}S=\{w\in\overline{V}\cap V^{\ast}\>|\>f_{2}(w)=f_{2}(u)\} be the set of vertices in V∗V^{\ast} eliminated by the consequent removal operation. Observe that this removal operation will eliminate at least (∣S∣2)+1{|S|\choose 2}+1 new edges from E′E^{\prime}: the edges between two vertices in SS, and the edge connecting uu and vv. Since (∣S∣2)+1≥∣S∣{|S|\choose 2}+1\geq|S|, the number of vertices in V∗V^{\ast} removed during one execution of Step 2.2 is at most the number of edges eliminated from E′E^{\prime}.

The total number of vertices from V∗V^{\ast} that are removed by the procedure during the loop of Step 2 is thus at most ∣E′∣|E^{\prime}|, which means that ∣Vf‾∩V∗∣≥∣V∗∣−∣E′∣|\overline{V_{f}}\cap V^{\ast}|\geq|V^{\ast}|-|E^{\prime}|. Since V‾⊆V∗\overline{V}\subseteq V^{\ast}, Lemmas 4.2 and 4.3 imply that the expected number of vertices in Vf‾\overline{V_{f}} is at least

6 The second pruning: second version and proof of Theorem 4.3

In this subsection MM is an arbitrary prime such that 64N2<M<128N264\mathcal{N}_{2}<M<128\mathcal{N}_{2}.

The first version of the pruning described in Subsection 4.5 was designed to obtain an edgeless subgraph of GG. In this subsection we describe how to modify it to obtain a union of many large 1-cliques instead. The detailed procedure of the new pruning algorithm is described in Figure 4. The only difference is that, at Step 2.2, a vertex is not added in LL only if it is connected to another vertex with the same second or third index.

Let Vf‾\overline{V_{f}} denote the contents of V‾\overline{V} at the end of the procedure. By slightly modifying the arguments of the previous subsection, it is easy to see that the resulting graph has only vertices from V∗V^{\ast} and is a disjoint union of 1-cliques (i.e., each connected component is a 1-clique).

The subgraph of GG induced by Vf‾\overline{V_{f}} is a disjoint union of 1-cliques. Moreover, Vf‾⊆V∗\overline{V_{f}}\subseteq V^{\ast} and ∣Vf‾∣≥∣V∗∣−∣E′′∣|\overline{V_{f}}|\geq|V^{\ast}|-|E^{\prime\prime}|.

Let LfL_{f} denote the contents of LL at the end of the procedure. Due to Step 3, we know that Vf‾⊆Lf\overline{V_{f}}\subseteq L_{f}. Moreover, any vertex added to LL cannot be later removed from V‾\overline{V}, since it has no neighbor with the same second or third index. Thus Lf⊆Vf‾L_{f}\subseteq\overline{V_{f}}, and we conclude that Vf‾=Lf\overline{V_{f}}=L_{f}, which shows in particular that Vf‾⊆V∗\overline{V_{f}}\subseteq V^{\ast}. Furthermore, since each vertex in LL has no neighbor with the same second or third index, the subgraph induced by Vf‾\overline{V_{f}} is a disjoint union of 1-cliques.

The inequality ∣Vf‾∣≥∣V∗∣−∣E′′∣|\overline{V_{f}}|\geq|V^{\ast}|-|E^{\prime\prime}| is obtained as in the proof of Proposition 4.1, but replacing the edge set E′E^{\prime} by E′′E^{\prime\prime}. ∎

We now give the proof of Theorem 4.3, by using Lemmas 4.3 and 4.4 to evaluate the size and the numbers of 1-cliques in the resulting graph.

Using Lemma 4.3 with the value M>64N2M>64\mathcal{N}_{2} and Markov’s bound, we conclude that

Note that the conditions M<128N2M<128\mathcal{N}_{2} and N2T1N1∗+N2T1<11024\frac{\mathcal{N}_{2}T_{1}}{\mathcal{N}_{1}^{\ast}}+\frac{\mathcal{N}_{2}}{T_{1}}<\frac{1}{1024} imply that

Thus the probability that a set RR as in Lemma 4.4 exists and the inequality ∣E′′∣≤T1N1∗∣Γ∣16M2|E^{\prime\prime}|\leq\frac{T_{1}\mathcal{N}_{1}^{\ast}|\Gamma|}{16M^{2}} simultaneously holds is positive. There then exists a choice of the weights ω0,ω1,…,ωN+1\omega_{0},\omega_{1},\ldots,\omega_{N+1} such that this happens. Let us take such a choice.

From Proposition 4.2 we know that at most ∣E′′∣|E^{\prime\prime}| vertices in V∗V^{\ast} are removed by the second pruning. Then there exists a set R′⊆RR^{\prime}\subseteq R of size ∣R′∣≥T1∣Γ∣/(4M)|R^{\prime}|\geq T_{1}|\Gamma|/(4M) such that, for any r′∈R′r^{\prime}\in R^{\prime}, there are at least N1∗/(4M)\mathcal{N}_{1}^{\ast}/(4M) vertices uu with f1(u)=r′f_{1}(u)=r^{\prime} remaining after the second pruning. This is because, otherwise, from the properties of the set RR stated in Lemma 4.4 it would be necessary to remove more than T1N1∗∣Γ∣/(16M2)T_{1}\mathcal{N}_{1}^{\ast}|\Gamma|/(16M^{2}) vertices during the second pruning. ∎

Algorithm for Rectangular Matrix Multiplication

In this section we present our algorithm, which essentially consists in the two algorithmic steps described in Subsections 5.2 and 5.4. We first start by explaining the construction we will use.

Let a004,a400,a013,a103,a301,a022,a202,a112,a211a_{004},a_{400},a_{013},a_{103},a_{301},a_{022},a_{202},a_{112},a_{211} be nine arbitrary positive The hypothesis that each aijka_{ijk} is not zero is made only for convenience (all the bounds presented in this paper are obtained using positive values for these parameters). More specifically, this hypothesis is used only when approximating quantities like (aijkN)!(a_{ijk}N)! using Stirling’s inequality. Without the hypothesis it would be necessary to treat the (trivial) case aijk=0a_{ijk}=0 separately. rational numbers such that

Let us define rational numbers A0,A1,A2,A3,A4,B0,B1,B2,B3,B4A_{0},A_{1},A_{2},A_{3},A_{4},B_{0},B_{1},B_{2},B_{3},B_{4} as follows:

Note that ∑i=04Ai=∑i=04Bi=1.\sum_{i=0}^{4}A_{i}=\sum_{i=0}^{4}B_{i}=1.

It will be convenient to define six additional numbers a040a_{040}, a031a_{031}, a130a_{130}, a310a_{310}, a220a_{220} and a121a_{121} as a040=a004a_{040}=a_{004}, a031=a013a_{031}=a_{013}, a130=a103a_{130}=a_{103}, a310=a301a_{310}=a_{301}, a220=a202a_{220}=a_{202} and a121=a112a_{121}=a_{112}. We can then rewrite concisely the AiA_{i}’s and the BjB_{j}’s as follows.

Let NN be a large enough positive integer such each NaijkNa_{ijk} is an integer. We rise the construction Fq⊗FqF_{q}\otimes F_{q} described in Section 3 to the NN-th power. Observe that (Fq′⊗Fq′)⊗N⊴(Fq⊗Fq)⊗N(F^{\prime}_{q}\otimes F^{\prime}_{q})^{\otimes N}\unlhd(F_{q}\otimes F_{q})^{\otimes N} and

Let us introduce the following definition.

Let a‾004\overline{a}_{004}, a‾040\overline{a}_{040}, a‾400\overline{a}_{400}, a‾013\overline{a}_{013}, a‾031\overline{a}_{031}, a‾103\overline{a}_{103}, a‾130\overline{a}_{130}, a‾301\overline{a}_{301}, a‾310\overline{a}_{310}, a‾022\overline{a}_{022}, a‾202\overline{a}_{202}, a‾220\overline{a}_{220}, a‾112\overline{a}_{112}, a‾121\overline{a}_{121}, a‾211\overline{a}_{211} be fifteen nonnegative rational numbers. We say that a triple IJKIJK is of type [a‾ijk][\overline{a}_{ijk}] if

for all 15 combinations of positive i,j,ki,j,k with i+j+k=4i+j+k=4.

With a slight abuse of notation, we will say that a form TIJKT_{IJK} is of type [a‾ijk][\overline{a}_{ijk}] if the triple IJKIJK is of type [a‾ijk][\overline{a}_{ijk}].

2 The first step

sequences II of type AA (the approximation is done using Stirling’s formula). After the zeroing operation, all forms TIJKT_{IJK} such that II is not of type AA disappear (i.e., become zero).

After these three zeroing operations, the forms TIJKT_{IJK} remaining are precisely those such that II is of type AA, JJ is of type BB, and KK is of type BB. Equivalently, the forms remaining are precisely the forms TIJKT_{IJK} that are of type [a‾ijk][\overline{a}_{ijk}] with fifteen numbers a‾ijk\overline{a}_{ijk} (for all fifteen combinations of positive i,j,ki,j,k such that i+j+k=4i+j+k=4) satisfying the following four conditions:

Let II be a fixed sequence of type AA. The number of non-zeros forms TIJKT_{IJK} with this sequence II as its first index is thus precisely

where the sum is over all the choices of fifteen parameters a‾ijk\overline{a}_{ijk}’s satisfying conditions (4)–(7).

For a fixed sequence JJ of type BB, the number of non-zeros forms TIJKT_{IJK} with this sequence JJ as its second index is

where the sum is again over all the choices of fifteen parameters a‾ijk\overline{a}_{ijk}’s satisfying conditions (5)–(7). Similarly, for a fixed sequence KK of type BB, the number of non-zeros forms TIJKT_{IJK} with this sequence KK as its third index is

Note that this implies that NY=NZ\mathcal{N}_{Y}=\mathcal{N}_{Z}.

We will also be interested in the number of remaining forms TIJKT_{IJK} of type [aijk][a_{ijk}]. For a fixed sequence II of type AA, the number of non-zeros forms TIJKT_{IJK} of type [aijk][a_{ijk}] with this sequence II as its first index is

For a fixed sequence JJ of type BB, the number of non-zeros forms TIJKT_{IJK} of type [aijk][a_{ijk}] with this sequence JJ as its second index is

3 Approximation

In this subsection we will use the notation [a‾ijk][\overline{a}_{ijk}] to represent an arbitrary set of fifteen parameters a‾ijk\overline{a}_{ijk} such that 0≤a‾ijk≤10\leq\overline{a}_{ijk}\leq 1 for each i,j,ki,j,k. Let c([a‾ijk])c([\overline{a}_{ijk}]) denote the number of nonzero elements among these fifteen parameters. Consider the following expression:

Using Stirling’s formula, we can give the following approximations.

The first two sums are again over all the choices of fifteen parameters a‾ijk\overline{a}_{ijk}’s satisfying conditions (4)–(7). Note that, for any [a‾ijk][\overline{a}_{ijk}] satisfying these four conditions, c([a‾ijk])≥5c([\overline{a}_{ijk}])\geq 5, since the AiA_{i}’s are non-zero.

We know that NX∗≤NX\mathcal{N}_{X}^{\ast}\leq\mathcal{N}_{X} and NY∗≤NY\mathcal{N}_{Y}^{\ast}\leq\mathcal{N}_{Y}, by definition. The following proposition shows that NX\mathcal{N}_{X} and NY\mathcal{N}_{Y} can actually be approximated by NX∗\mathcal{N}_{X}^{\ast} and NY∗\mathcal{N}_{Y}^{\ast}, respectively.

NX=O(N8NX∗)   and   NY=O(N8NY∗)\mathcal{N}_{X}=O(N^{8}\mathcal{N}_{X}^{\ast})\>\>\textrm{ and }\>\>\mathcal{N}_{Y}=O(N^{8}\mathcal{N}_{Y}^{\ast}).

Any set of values [a‾ijk][\overline{a}_{ijk}] that satisfies conditions (4)–(7) is such that a‾004=a004\overline{a}_{004}=a_{004}, a‾040=a040\overline{a}_{040}=a_{040} and a‾400=a400\overline{a}_{400}=a_{400}. Moreover, the other values aijka_{ijk} depend only on a‾103,a‾031\overline{a}_{103},\overline{a}_{031} and a‾301\overline{a}_{301}:

Note that there are at most (N+1)(N+1) choices for each a‾103,a‾031\overline{a}_{103},\overline{a}_{031} and a‾301\overline{a}_{301}, from condition (4). There are thus at most (N+1)3(N+1)^{3} choices for the values [a‾ijk][\overline{a}_{ijk}] satisfying conditions (4)–(7).

We now show that the expression g([a‾ijk])g([\overline{a}_{ijk}]) is maximized for the values [a‾ijk]=[aijk][\overline{a}_{ijk}]=[a_{ijk}]. Let us take the logarithm of the expression gg. Since this is a concave function on a convex domain, a local optimum of log⁡g\log g is a global maximum of gg. The partial derivatives of log⁡g\log g are as follows.

The values [a‾ijk]=[aijk][\overline{a}_{ijk}]=[a_{ijk}] satisfy ∂log⁡g∂a‾103=∂log⁡g∂a‾031=∂log⁡g∂a‾301=0\frac{\partial\log g}{\partial\overline{a}_{103}}=\frac{\partial\log g}{\partial\overline{a}_{031}}=\frac{\partial\log g}{\partial\overline{a}_{301}}=0 since a013a202a112=a103a022a211a_{013}a_{202}a_{112}=a_{103}a_{022}a_{211}.

and similarly NY=O(N8NY∗)\mathcal{N}_{Y}=O\left(N^{8}\mathcal{N}_{Y}^{\ast}\right). ∎

4 The second step

We will now apply the results of Section 4, by associating to UU the set of all forms TIJKT_{IJK} that are of type [a‾ijk][\overline{a}_{ijk}] for values a‾ijk\overline{a}_{ijk} satisfying conditions (4)–(7), and to U∗U^{\ast} the set of all forms TIJKT_{IJK} of type [aijk][a_{ijk}]. Note that all the conditions of Subsection 4.1 are satisfied: we have τ=4\tau=4, and values T1=TXT_{1}=T_{X}, T2=T3=TYT_{2}=T_{3}=T_{Y}, N1=NX\mathcal{N}_{1}=\mathcal{N}_{X}, N2=N3=NY\mathcal{N}_{2}=\mathcal{N}_{3}=\mathcal{N}_{Y}, N1∗=NX∗\mathcal{N}_{1}^{\ast}=\mathcal{N}_{X}^{\ast} and N2∗=N3∗=NY∗\mathcal{N}_{2}^{\ast}=\mathcal{N}_{3}^{\ast}=\mathcal{N}_{Y}^{\ast}.

holds. Then TX=O(TY)T_{X}=O(T_{Y}), and Equalities (8) and (9) imply that NY=O(NX)\mathcal{N}_{Y}=O(\mathcal{N}_{X}) and NY∗=O(NX∗)\mathcal{N}_{Y}^{\ast}=O(\mathcal{N}_{X}^{\ast}). From Proposition 5.1 we then obtain the relation N1+N2+N3=O(N8NX∗)\mathcal{N}_{1}+\mathcal{N}_{2}+\mathcal{N}_{3}=O(N^{8}\mathcal{N}_{X}^{\ast}). By the above discussion and Theorem 4.2, we can obtain a direct sum of

forms, all of type [aijk][a_{ijk}]. By using the trivial upper bound NX∗≤15N\mathcal{N}_{X}^{\ast}\leq 15^{N}, we obtain the following theorem.

Let qq be any positive integer and a004a_{004}, a400a_{400}, a013a_{013}, a103a_{103}, a301a_{301}, a022a_{022}, a202a_{202}, a112a_{112} and a211a_{211} be any nine positive rational numbers satisfying the following three conditions:

2a004+a400+2a013+2a103+2a301+a022+2a202+2a112+a211=12a_{004}+a_{400}+2a_{013}+2a_{103}+2a_{301}+a_{022}+2a_{202}+2a_{112}+a_{211}=1;

a013a202a112=a103a022a211a_{013}a_{202}a_{112}=a_{103}a_{022}a_{211};

A0A0A1A1A2A2A3A3A4A4≥B0B0B1B1B2B2B3B3B4B4A_{0}^{A_{0}}A_{1}^{A_{1}}A_{2}^{A_{2}}A_{3}^{A_{3}}A_{4}^{A_{4}}\geq B_{0}^{B_{0}}B_{1}^{B_{1}}B_{2}^{B_{2}}B_{3}^{B_{3}}B_{4}^{B_{4}}.

Then, for any constant ϵ>0\epsilon>0, the trilinear form (Fq⊗Fq)⊗N(F_{q}\otimes F_{q})^{\otimes N} can be converted (i.e., degenerated in the sense of Definition 2.1) into a direct sum of

Upper Bounds on the Exponent of Rectangular Matrix Multiplication

Theorem 5.1 showed how the form (Fq⊗Fq)⊗N(F_{q}\otimes F_{q})^{\otimes N} can be used to obtain a direct sum of many forms TIJKT_{IJK} such that

In order to apply Schönhage’s asymptotic sum inequality (Theorem 2.1), we need to analyze the smaller forms TijkT_{ijk}. All the forms except T112T_{112}, T121T_{121} and T211T_{211} correspond to matrix multiplications, as described in Section 3. In Subsection 6.1 we analyze the forms T112T_{112}, T121T_{121} and T211T_{211}. Then, in Subsection 6.2, we put all our results together and prove our main result.

Let us recall the definition of these three forms.

We first focus on the form T211T_{211}. It will be convenient to write T211=t011+t101+t110+t200T_{211}=t_{011}+t_{101}+t_{110}+t_{200}, where

The following proposition states that tensor powers of T211T_{211} can be used to construct a direct sum of several trilinear forms, each one being a C\mathscr{C}-tensor in which the support and all the components are isomorphic to a rectangular matrix product.

Let bb be any constant such that 0.916027<b≤10.916027<b\leq 1. Then there exists a constant c≥1c\geq 1 depending only on bb such that, for any ϵ>0\epsilon>0 and any large enough integer mm, the form T211⊗2mT_{211}^{\otimes 2m} can be converted into a direct sum of

trilinear forms, each form being a C\mathscr{C}-tensor in which:

each component is isomorphic to ⟨q2bm,q2bm,q2(1−b)m⟩\langle q^{2bm},q^{2bm},q^{2(1-b)m}\rangle;

For simplicity we suppose that bmbm is an integer (otherwise, we can work with ⌊bm⌋\left\lfloor bm\right\rfloor, which gives the same asymptotic complexity).

This means that each form tIJKt_{IJK} in this new sum (i.e., each component in the corresponding C\mathscr{C}-tensor) is isomorphic to

We now analyze the support of the new sum (the decomposition considered is unchanged).

To analyze the case b<1b<1, we will interpret the sum in the framework developed in Section 4, by letting UU be the set of triples IJKIJK satisfying the above four conditions. Indeed, all the requirements for UU are satisfied: we have τ=2\tau=2 and

and thus T1N2/N1=o(1)T_{1}\mathcal{N}_{2}/\mathcal{N}_{1}=o(1). By Theorem 4.3, for any ϵ>0\epsilon>0 we can then convert the sum into a direct sum of

and components isomorphic to ⟨q2bm,q2bm,q2(1−b)m⟩\langle q^{2bm},q^{2bm},q^{2(1-b)m}\rangle. Finally, note that

for some constant c≥1c\geq 1 depending only on bb, since bb(1−b)1−b<1b^{b}(1-b)^{1-b}<1. ∎

In all these C\mathscr{C}-tensors, each component is isomorphic to the rectangular matrix multiplication

2 Main theorem

Let us define the following three quantities.

Our main theorem gives an upper bound on ω(1,1,k)\omega(1,1,k) that depends on these quantities.

2a004+a400+2a013+2a103+2a301+a022+2a202+2a112+a211=12a_{004}+a_{400}+2a_{013}+2a_{103}+2a_{301}+a_{022}+2a_{202}+2a_{112}+a_{211}=1;

a013a202a112=a103a022a211a_{013}a_{202}a_{112}=a_{103}a_{022}a_{211};

A0A0A1A1A2A2A3A3A4A4≥B0B0B1B1B2B2B3B3B4B4A_{0}^{A_{0}}A_{1}^{A_{1}}A_{2}^{A_{2}}A_{3}^{A_{3}}A_{4}^{A_{4}}\geq B_{0}^{B_{0}}B_{1}^{B_{1}}B_{2}^{B_{2}}B_{3}^{B_{3}}B_{4}^{B_{4}}.

Let ϵ>0\epsilon>0 be an arbitrary positive value. Let NN be a large integer and consider the trilinear form (Fq⊗Fq)⊗N(F_{q}\otimes F_{q})^{\otimes N}. Theorem 5.1 shows that this form can be used to obtain a direct sum of

All the terms TijkT_{ijk} in this form, except T112T_{112}, T121T_{121} and T211T_{211}, correspond to matrix multiplications and have been analyzed in Section 3. By Proposition 6.2 the part T112⊗a121N⊗T112⊗a112N⊗T211⊗a211NT_{112}^{\otimes a_{121}N}\otimes T_{112}^{\otimes a_{112}N}\otimes T_{211}^{\otimes a_{211}N} can be used to obtain a direct sum of

This means that the trilinear form (Fq⊗Fq)⊗N(F_{q}\otimes F_{q})^{\otimes N} can be converted into a direct sum of r1r2r_{1}r_{2} matrix multiplications ⟨QN,QN,RN⟩\langle Q^{N},Q^{N},R^{N}\rangle. In other words:

Since R‾(Fq⊗Fq)≤(q+2)2\underline{R}\left(F_{q}\otimes F_{q}\right)\leq(q+2)^{2}, as mentioned in Section 3, we know that R‾((Fq⊗Fq)⊗N)≤(q+2)2N\underline{R}\left((F_{q}\otimes F_{q})^{\otimes N}\right)\leq(q+2)^{2N}. By Schönhage’s asymptotic sum inequality (Theorem 2.1) we then conclude that

For any ϵ>0\epsilon>0 the above inequality holds for large enough integers NN. By letting NN grow to infinity, and then letting ϵ\epsilon decrease to zero, we conclude that MQω(1,1,log⁡Rlog⁡Q)≤(q+2)2.\mathcal{M}Q^{\omega(1,1,\frac{\log R}{\log Q})}\leq(q+2)^{2}. ∎

Optimization

In this section we use Theorem 6.1 to derive numerical upper bounds on the exponent of rectangular matrix multiplication, and prove Theorem 1.1.

In this subsection we briefly show that our results give, for the exponent of square matrix multiplication, the same upper bound as the bound obtained by Coppersmith and Winograd .

By choosing q=6q=6, b=0.9724317b=0.9724317, a103=0.012506a_{103}=0.012506, a202=0.102546a_{202}=0.102546, a112=0.205542a_{112}=0.205542 and a004=0.0007/3a_{004}=0.0007/3, we obtain the upper bound ω(1,1,1)<2.375477\omega(1,1,1)<2.375477.

This upper bound on the exponent of square matrix multiplication is exactly the same value as in . This is not a coincidence. Indeed, by setting b=qω(1,1,1)qω(1,1,1)+2b=\frac{q^{\omega(1,1,1)}}{q^{\omega(1,1,1)}+2}, which is larger than 0.916027 for q≥5q\geq 5, we obtain

which is exactly the same optimization problem as in Section 8 of .

2 Rectangular matrix multiplication

In this subsection we explain how to use Theorem 6.1 to derive an upper bound on ω(1,1,k)\omega(1,1,k) for an arbitrary value kk, and show how to obtain the results stated in Table 1 and Figure 1.

The conditions that have to be satisfied are:

A0A0A1A1A2A2A3A3A4A4≥B0B0B1B1B2B2B3B3B4B4A_{0}^{A_{0}}A_{1}^{A_{1}}A_{2}^{A_{2}}A_{3}^{A_{3}}A_{4}^{A_{4}}\geq B_{0}^{B_{0}}B_{1}^{B_{1}}B_{2}^{B_{2}}B_{3}^{B_{3}}B_{4}^{B_{4}}.

If these conditions are satisfied, by Theorem 6.1 this gives the upper bound

The above discussion reduces the problem of finding an upper bound on ω(1,1,k)\omega(1,1,k) to solving a nonlinear optimization problem. The upper bounds presented in Table 1 are obtained precisely by solving this optimization problem using Maple. We show exact values of the parameters proving that ω(1,1,0.5302)<2.060396\omega(1,1,0.5302)<2.060396, ω(1,1,0.75)<2.190087\omega(1,1,0.75)<2.190087 and ω(1,1,2)<3.256689\omega(1,1,2)<3.256689 in Table 2.

3 The value 𝜶\alpha

In this subsection we describe how to use Theorem 6.1 to obtain a lower bound on the value α\alpha, the largest value such that the product of an n×nαn\times n^{\alpha} matrix by an nα×nn^{\alpha}\times n matrix can be computed with O(n2+ϵ)O(n^{2+\epsilon}) arithmetic operations for any ϵ>0\epsilon>0. The analysis is more delicate than in the previous subsection, since we will need to exhibit parameters such that MQ2=(q+2)2\mathcal{M}Q^{2}=(q+2)^{2}, with an equality rather than an inequality, and is done by finding analytically the optimal values of all but a few parameters.

Putting these values in the formula for QQ, we obtain:

Observe that A1=A3=2qκA_{1}=A_{3}=2q\kappa, A2=(q2+2)κA_{2}=(q^{2}+2)\kappa, A4=κA_{4}=\kappa and A0=1−(A1+A2+A3+A4)=κA_{0}=1-(A_{1}+A_{2}+A_{3}+A_{4})=\kappa. Then we obtain the following equality.

The following lemma shows that, when a112a_{112} is small enough, the condition MQ2=(q+2)2\mathcal{M}Q^{2}=(q+2)^{2} is satisfied.

which gives MQ2=(q+2)2\mathcal{M}Q^{2}=(q+2)^{2}. ∎

We now explain how to determine the three remaining parameters a004a_{004}, a013a_{013} and a022a_{022}. Remember that the parameters should satisfy the equalities

From our choice of parameters, the second equality can be rewritten as 2a004+2a013+a022=κ2a_{004}+2a_{013}+a_{022}=\kappa. Since the parameter a004a_{004} should be positive, we obtain the condition

If a022a_{022}, a112a_{112} and a211a_{211} satisfy this inequality, then the parameter a004a_{004} is fixed:

Note that Inequality (11) forces the value a013a_{013} to be at most 11.

All the values are thus determined by the choice of qq, a022a_{022}, a112a_{112} and a211a_{211}. In particular, we obtain

We can similarly express the values of B0B_{0}, B1B_{1}, B2B_{2}, B3B_{3} and B4B_{4} in function of these four parameters. We then want to solve the following optimization problem.

By taking the values q=5q=5, a022=0.0174853a_{022}=0.0174853, a112=0.0945442a_{112}=0.0945442 and a211=0.1773724a_{211}=0.1773724, we obtain the value α≥log⁡Rlog⁡Q>0.30298\alpha\geq\frac{\log R}{\log Q}>0.30298. These parameters satisfy all the constraints. We obtain in particular the following numerical values.

A more precise lower bound on α\alpha can be found using optimization software and high precision arithmetic. Using Maple and truncating the result of the optimization after the 25th digit, we find that for q=5q=5 the values

Acknowledgments

The author is grateful to Virginia Vassilevska Williams and Ryan Williams for helpful correspondence about Andrew Stothers’ work, and to Virginia Vassilevska Williams for suggesting that the next step is to use higher tensor powers of the basic construction to improve rectangular matrix multiplication. He also acknowledges support from the JSPS and the MEXT, under the grant-in-aids Nos. 22800006 and 24700005.

References