Faster Matrix Multiplication via Asymmetric Hashing

Ran Duan, Hongxun Wu, Renfei Zhou

Introduction

The time complexity of multiplying two n×nn\times n matrices is usually denoted by O(nω+o(1))O(n^{\omega+o(1)}) for some real number ω\omega. (It is easy to see that 2≤ω≤32\leq\omega\leq 3.) Although it has been studied for more than 50 years, the exact value of ω\omega is still unknown, and many people believe that ω=2\omega=2. The determination of the constant ω\omega would have wide implications. Not only do many matrix operations have similar complexities as fast matrix multiplication (FMM) algorithms, such as LUP decomposition, matrix inversion, determinant [AH74, BH74], algorithms for many combinatorial problems can also be accelerated by FMM algorithms, including graph problems like transitive closure (see [AH74]), unweighted all-pair shortest paths [Sei95, Zwi02], all-pair bottleneck path [DP09], and other problems such as context-free grammar parsing [Val75] and RNA-folding [BGSW19].

In this paper, we identify a more implicit “combination loss”, which is our main contribution. Such loss arises not from a single recursion level, but from the structure of adjacent levels. To demonstrate that this observation indeed leads to an improved algorithm, we compensate for this loss using an asymmetric hashing method. This improves the analysis of the second power by Coppersmith and Winograd [CW90] to ω<2.374631\omega<2.374631. We also generalize it to higher powers and obtain the improved bound of ω<2.371866\omega<2.371866.This bound is slightly better than the previous version of this paper due to more flexibility in optimizing parameters. A similar asymmetric hashing method was used in [CW90] to analyze an asymmetric tensor. Fast rectangular matrix multiplication algorithms (e.g. [Cop82, Cop97, HP98, LG12, LGU18]) also use asymmetric hashing to degenerate the tensor power T⊗NT^{\otimes N} in the laser method into independent rectangular matrix multiplications. In this paper, we use asymetric hashing for a different purpose, that is, to compensate for the “combination loss”.

Another approach to fast matrix multiplication is the group theoretical method of Cohn and Umans [CU03, CKSU05, CU13]. There are also works on its limitations [ASU12, BCC+16, BCC+17, BCG+22].

In Section 2, we will first give an overview of the laser method and our improved algorithm. In Section 3, we introduce the concepts and notations that we will use in this paper, as well as some basic building blocks, for example, the asymmetric hashing method. To better illustrate our ideas, in Section 4, we give an improved analysis of the second power of the CW tensor. In Sections 5, 6, and 7, we will extend the analysis to higher powers. In Section 8, we discuss our optimization program and give the numerical results.

Technical Overview

It is helpful to start with a high-level description of Coppersmith-Winograd [CW90]. Our exposition here differs a little from their original work. Specifically, their work uses the values of subtensors in a black-box way. We open up this black box and look at the structure inside those subtensors. This change will make the combination loss visible.

In the following, we will assume some familiarity with the Coppersmith-Winograd Algorithm. For an exposition of their algorithm, the reader may also refer to the excellent survey by Bläser [Blä13].

For X~=X×X\widetilde{X}=X\times X, the product of two level-1 partitions gives X~=⋃i′,i′′Xi′×Xi′′\widetilde{X}=\bigcup_{i^{\prime},i^{\prime\prime}}X_{i^{\prime}}\times X_{i^{\prime\prime}}. We define the level-2 partition to be a coarsening of this. For each i∈{0,1,2,3,4}i\in\{0,1,2,3,4\}, we define

For example, X~2=(X0×X2)∪(X1×X1)∪(X2×X0)\widetilde{X}_{2}=(X_{0}\times X_{2})\cup(X_{1}\times X_{1})\cup(X_{2}\times X_{0}). The level-2 partition is given by X~=X~0∪X~1∪⋯∪X~4\widetilde{X}=\widetilde{X}_{0}\cup\widetilde{X}_{1}\cup\cdots\cup\widetilde{X}_{4}, Y~=Y~0∪Y~1∪⋯∪Y~4\widetilde{Y}=\widetilde{Y}_{0}\cup\widetilde{Y}_{1}\cup\cdots\cup\widetilde{Y}_{4}, and Z~=Z~0∪Z~1∪⋯∪Z~4\widetilde{Z}=\widetilde{Z}_{0}\cup\widetilde{Z}_{1}\cup\cdots\cup\widetilde{Z}_{4}.

For example, T1,1,2=T1,1,0⊗T0,0,2+T0,0,2⊗T1,1,0+T1,0,1⊗T0,1,1+T0,1,1⊗T1,0,1T_{1,1,2}=T_{1,1,0}\otimes T_{0,0,2}+T_{0,0,2}\otimes T_{1,1,0}+T_{1,0,1}\otimes T_{0,1,1}+T_{0,1,1}\otimes T_{1,0,1}.For notational convenience, we let Ti,j,k=0T_{i,j,k}=0 if any of i,j,ki,j,k is negative.

The Laser Method.

These subtensors are supported on disjoint variables.

Such a single-level analysis gives a bound of ω<2.38719\omega<2.38719. By considering the second power, Coppersmith and Winograd [CW90] get an improved bound of ω<2.375477\omega<2.375477. Note in the analysis above, for any two non-independent matrix multiplication tensors, only one of them will survive the zeroing-out. Looking ahead, the two-level analysis will further exploit the tensor power structure and “merge” some non-independent matrix multiplication tensors into a larger one.

Variable Blocks.

Two-level Analysis.

We are now ready to describe the two-level analysis of Coppersmith-Winograd in detail.

We will zero out some level-2 blocks to obtain independent copies of Tα\mathcal{T}^{\alpha}. By the symmetry of X, Y, and Z variables, we can assume that αX=αY=αZ{\alpha}_{\scriptscriptstyle\textup{X}}={\alpha}_{\scriptscriptstyle\textup{Y}}={\alpha}_{\scriptscriptstyle\textup{Z}}. So we only focus on Z-variable blocks. Let NBZN_{\textup{BZ}} be the number of ZKZ_{K}’s that obey αZ{\alpha}_{\scriptscriptstyle\textup{Z}}. In order to make the Z blocks of all isomorphic copies of Tα\mathcal{T}^{\alpha} independent, there can be at most NBZN_{\textup{BZ}} copies of them.

In fact, using an elegant construction using hashing and the Salem-Spencer set [SS42, Beh46], Coppersmith and Winograd [CW90] showed that one could get NBZ1−o(1)N_{\textup{BZ}}^{1-o(1)} such independent tensors. The o(1)o(1) factor is negligible for our purpose.

Here, each T1,1,2α~,m\mathcal{T}_{1,1,2}^{\widetilde{\alpha},m} is a subtensor of T1,1,2⊗mT_{1,1,2}^{\otimes m} that splits according to α~(1,1,2)\widetilde{\alpha}^{(1,1,2)}. A single T1,1,2⊗mT_{1,1,2}^{\otimes m} contains many such isomorphic copies. We also get α~(1,2,1)\widetilde{\alpha}^{(1,2,1)} and α~(2,1,1)\widetilde{\alpha}^{(2,1,1)} from the symmetry under rotation, which defines T1,2,1α~,m\mathcal{T}_{1,2,1}^{\widetilde{\alpha},m} and T2,1,1α~,m\mathcal{T}_{2,1,1}^{\widetilde{\alpha},m}.

For concreteness, let us first specify the minimum number of parameters that determine α~(1,1,2)\widetilde{\alpha}^{(1,1,2)}. Since there is a symmetry between T0,0,2⊗T1,1,0T_{0,0,2}\otimes T_{1,1,0} and T1,1,0⊗T0,0,2T_{1,1,0}\otimes T_{0,0,2}, we can w.l.o.g. assume that α~(1,1,2)(0,0,2)=α~(1,1,2)(1,1,0)=μ\widetilde{\alpha}^{(1,1,2)}(0,0,2)=\widetilde{\alpha}^{(1,1,2)}(1,1,0)=\mu and α~(1,1,2)(0,1,1)=α~(1,1,2)(1,0,1)=1/2−μ\widetilde{\alpha}^{(1,1,2)}(0,1,1)=\widetilde{\alpha}^{(1,1,2)}(1,0,1)=1/2-\mu for some 0≤μ≤120\leq\mu\leq\frac{1}{2}.

In T1,2,1⊗mT_{1,2,1}^{\otimes m} and T2,1,1⊗mT_{2,1,1}^{\otimes m}, the marginal distribution for Z-variables is α~Z(1,2,1)(0)=α~Z(1,2,1)(1)=α~Z(2,1,1)(0)=α~Z(2,1,1)(1)=1/2\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,2,1)}(0)=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,2,1)}(1)=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(2,1,1)}(0)=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(2,1,1)}(1)=1/2. In T1,1,2⊗mT_{1,1,2}^{\otimes m}, the marginal for Z-variables is α~Z(1,1,2)(0)=α~Z(1,1,2)(2)=μ,  α~Z(1,1,2)(1)=1−2μ\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}(0)=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}(2)=\mu,\;\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}(1)=1-2\mu.

many independent matrix multiplication tensors with (q+2)2n(q+2)^{2n} many multiplications. The distributions α\alpha and α~(1,1,2)\widetilde{\alpha}^{(1,1,2)} are carefully chosen to balance between the size of each matrix multiplication tensor and the total number of them.

Merging after splitting.

Essentially, this can be equivalently viewed as (1) splitting them into non-independent matrix multiplication subtensors and (2) merging these non-independent subtensors back into a single matrix multiplication tensor. As pointed out by [AFLG15], such merging is the reason why higher power analyses improve the bound of ω\omega.

In our algorithm, we cannot view T0,j,kT_{0,j,k} as a large matrix multiplication, since we need its split distribution α~(0,j,k)\widetilde{\alpha}^{(0,j,k)}. Hence we have to split it and merge it back. This gives a result as good as directly treating T0,j,kT_{0,j,k} as a single matrix multiplication tensor.

Let us simply look at T0,2,2T_{0,2,2} as an example. Let m=α(0,2,2)nm=\alpha(0,2,2)n. We know that T0,2,2⊗mT_{0,2,2}^{\otimes m} is isomorphic to the matrix multiplication tensor ⟨1,1,(q2+2)m⟩\langle 1,1,(q^{2}+2)^{m}\rangle.

Now we are going to split it. First, choose a distribution α~(0,2,2)\widetilde{\alpha}^{(0,2,2)} over {(0,0,2),(0,2,0),(0,1,1)}\{(0,0,2),(0,2,0),(0,1,1)\}. We pick α~(0,2,2)(0,0,2)=α~(0,2,2)(0,2,0)=λ\widetilde{\alpha}^{(0,2,2)}(0,0,2)=\widetilde{\alpha}^{(0,2,2)}(0,2,0)=\lambda, and α~(0,2,2)(0,1,1)=1−2λ\widetilde{\alpha}^{(0,2,2)}(0,1,1)=1-2\lambda for some 0≤λ≤120\leq\lambda\leq\frac{1}{2}. Then, the tensor T0,2,2⊗mT_{0,2,2}^{\otimes m} alone contains N022=(mλm,λm,(1−2λ)m)N_{022}=\binom{m}{\lambda m,\lambda m,(1-2\lambda)m} many (non-disjoint) isomorphic copies of

We need the fact that each T0,0,2T_{0,0,2} is isomorphic to the matrix multiplication tensor ⟨1,1,1⟩\langle 1,1,1\rangle while each T0,1,1T_{0,1,1} is isomorphic to the matrix multiplication tensor ⟨1,1,q⟩\langle 1,1,q\rangle. This implies each T0,2,2α~,mT^{\widetilde{\alpha},m}_{0,2,2} is isomorphic to the matrix multiplication tensor ⟨1,1,q2(1−2λ)⟩\langle 1,1,q^{2(1-2\lambda)}\rangle.

After zeroing out all the X, Y, and Z variables that do not obey our choice of α~(0,2,2)\widetilde{\alpha}^{(0,2,2)}, we merge all these N022N_{022} non-disjoint isomorphic copies back into a matrix multiplication tensor ⟨1,1,N022⋅q2(1−2λ)⟩\langle 1,1,N_{022}\cdot q^{2(1-2\lambda)}\rangle. Taking λ=12+q2\lambda=\frac{1}{2+q^{2}}, we get ⟨1,1,N022⋅q2(1−2λ)⟩=⟨1,1,(q2+2)m(1−o(1))⟩\langle 1,1,N_{022}\cdot q^{2(1-2\lambda)}\rangle=\langle 1,1,(q^{2}+2)^{m(1-o(1))}\rangle, which is as good as ⟨1,1,(q2+2)m⟩\langle 1,1,(q^{2}+2)^{m}\rangle when mm goes to infinity.

2 Combination Loss

The key insight in our paper is that this analysis is actually wasteful. To see this, let us first summarize all the zeroing-outs we performed in the above analysis.

Taking the merging point of view for T0,j,kT_{0,j,k}’s, we get the following procedure:

Fix any XI,YJ,ZKX_{I},Y_{J},Z_{K} and the corresponding subtensor TI,J,K\mathcal{T}_{I,J,K}. Consider level-1 blocks XI^∈XI,  YJ^∈YJ,  ZK^∈ZKX_{\widehat{I}}\in X_{I},\;Y_{\widehat{J}}\in Y_{J},\;Z_{\widehat{K}}\in Z_{K}. For sequence K^\widehat{K}, we define its split distribution over set SS as

Let Si,j,k={t∣it=i,jt=j,kt=k}S_{i,j,k}=\{t\mid i_{t}=i,j_{t}=j,k_{t}=k\} be the set of positions that belong to Ti,j,kT_{i,j,k}. We say ZK^Z_{\widehat{K}} obeys α~Z\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}} if and only if for all i,j,ki,j,k, we have split(K^,Si,j,k)(k^′,k−k^′)=α~Z(i,j,k)(k^′)\textsf{split}(\widehat{K},S_{i,j,k})(\widehat{k}^{\prime},k-\widehat{k}^{\prime})=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(i,j,k)}(\widehat{k}^{\prime}).For simplicity, we write split(K^,Si,j,k)=α~Z(i,j,k)\textsf{split}(\widehat{K},S_{i,j,k})=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(i,j,k)} when there is no ambiguity. (Since we are taking the merging viewpoint, T0,1,1T_{0,1,1} and T0,0,2T_{0,0,2} have their split distributions as well.)

First, we zero out all the blocks ZK^Z_{\widehat{K}} that do not obey α~Z\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}. Same for the X and Y blocks. Then we further zero out some level-1 blocks according to hashing and the Salem-Spencer set. Note that this hashing is only over indices in S1,1,2∪S1,2,1∪S2,1,1S_{1,1,2}\cup S_{1,2,1}\cup S_{2,1,1} because T0,j,kT_{0,j,k}’s are handled differently.

The subtensor of TI,J,K\mathcal{T}_{I,J,K} over each remaining triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) is an isomorphic copy of

where T1,1,2α~,m\mathcal{T}_{1,1,2}^{\widetilde{\alpha},m} (and T1,2,1α~,m\mathcal{T}_{1,2,1}^{\widetilde{\alpha},m}, T2,1,1α~,m\mathcal{T}_{2,1,1}^{\widetilde{\alpha},m}) is defined in (2) and other T0,j,kα~,m\mathcal{T}_{0,j,k}^{\widetilde{\alpha},m}’s are defined in the same way as (4). Finally, some copies of Tα~\mathcal{T}^{\widetilde{\alpha}} are merged together, and we get independent matrix multiplication tensors.

Fix any remaining level-2 triple M=(XI,YJ,ZK)M=(X_{I},Y_{J},Z_{K}). We will show that many level-1 Z-blocks ZK^∈ZKZ_{\widehat{K}}\in Z_{K} are actually not used.

To answer this, note that in the second step, we zeroed out the blocks ZK^Z_{\widehat{K}}’s that do not obey α~Z\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}. By definition, all remaining ZK^Z_{\widehat{K}}’s satisfy the following:

We let ZM={ZK^∈ZK∣\eqrefequ:splitcondition holds for K^}Z^{M}=\{Z_{\widehat{K}}\in Z_{K}\mid\eqref{equ:split_condition}\text{ holds for }\widehat{K}\} denote this set of ZK^Z_{\widehat{K}}’s. This is the set of ZK^Z_{\widehat{K}}’s that we actually used in M=(XI,YJ,ZK)M=(X_{I},Y_{J},Z_{K}). We will argue that there are some other level-1 Z-blocks outside ZMZ^{M}, that in a certain sense, is as “useful” as those in ZMZ^{M}. To identify these blocks, we first define the average split distribution of kk as

Let Sk=∪i+j=4−k Si,j,kS_{k}=\cup_{i+j=4-k}\,S_{i,j,k} be the set of positions where Zt=kZ_{t}=k. By definition, the condition (5) implies the following weaker condition which is independent of II and JJ:

Let Z′={ZK^∈ZK∣\eqrefequ:avgcondition holds for K^}Z^{\prime}=\{Z_{\widehat{K}}\in Z_{K}\mid\eqref{equ:avg_condition}\text{ holds for }\widehat{K}\} be the set of level-1 Z-blocks that satisfy this weaker condition. Clearly, ZM⊆Z′Z^{M}\subseteq Z^{\prime}; below we will further show that ∣ZM∣=∣Z′∣⋅2−Θ(n)|Z^{M}|=|Z^{\prime}|\cdot 2^{-\Theta(n)}. However, all ZK^∈Z′Z_{\widehat{K}}\in Z^{\prime} are “equivalent” in the sense that they are isomorphic up to a permutation over [2n][2n]. We could take a bold guess: Those ZK^Z_{\widehat{K}}’s in Z′∖ZMZ^{\prime}\setminus Z^{M} should be as useful as those in ZMZ^{M}! We call such ratio ∣Z′∣/∣ZM∣|Z^{\prime}|/|Z^{M}| the combination loss.

A Closer Look.

How large is the combination loss, ∣Z′∣/∣ZM∣|Z^{\prime}|/|Z^{M}|? In order to affect the bound on ω\omega, the loss needs to be exponentially large. Let us examine the number of ways to split KK according to (5), and compare it with that of (6). Recall that Si,j,k={t∣it=i,jt=j,kt=k}S_{i,j,k}=\{t\mid i_{t}=i,j_{t}=j,k_{t}=k\} and Sk=∪i+j=4−k Si,j,kS_{k}=\cup_{i+j=4-k}\,S_{i,j,k}. We use h(p)h(p) to denote the binary entropy function h(p)=−plog⁡p−(1−p)log⁡(1−p)h(p)=-p\log p-(1-p)\log(1-p).

When kt∈{0,4}k_{t}\in\{0,4\}, there is only one way to split it (i.e., 0=0+0,  4=2+20=0+0,\;4=2+2). So such tt has no contributionHere “contribution” means giving a multiplicative factor to ∣Z′∣|Z^{\prime}| or ∣ZM∣|Z^{M}|. ∣Z′∣|Z^{\prime}| equals the product of all contributions to it; so does ∣ZM∣|Z^{M}|. to either ∣Z′∣|Z^{\prime}| or ∣ZM∣|Z^{M}|.

When kt∈{1,3}k_{t}\in\{1,3\}, there are two symmetric ways to split it (i.e., 1=0+1=1+01=0+1=1+0 and 3=1+2=2+13=1+2=2+1). By this symmetry, we know α~Z(i,j,k)\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(i,j,k)} is simply the uniform distribution, half and half. Fix k=1k=1 or 33, the contribution to ∣ZM∣|Z^{M}| from all t∈[n]t\in[n] such that kt=kk_{t}=k is

which equals their contribution to ∣Z′∣|Z^{\prime}|. So in this case, their contributions to ∣Z′∣|Z^{\prime}| and ∣ZM∣|Z^{M}| are equal.

The only nontrivial case is when kt=2k_{t}=2. There are three ways to split it: 2=0+2=1+1=2+02=0+2=1+1=2+0. Taking its symmetry into account, there is still one degree of freedom. Recall that α~Z(0,2,2)(0)=α~Z(0,2,2)(2)=λ\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(0,2,2)}(0)=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(0,2,2)}(2)=\lambda and α~Z(0,2,2)(1)=1−2λ\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(0,2,2)}(1)=1-2\lambda, while α~Z(1,1,2)(0)=α~Z(1,1,2)(2)=μ,α~Z(1,1,2)(1)=1−2μ\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}(0)=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}(2)=\mu,\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}(1)=1-2\mu.

Each t∈S0,2,2∪S2,0,2t\in S_{0,2,2}\cup S_{2,0,2} is either 0+20+2 or 2+02+0 with probability 2λ2\lambda and is 1+11+1 with probability 1−2λ1-2\lambda. So the logarithm of their contribution to ∣ZM∣|Z^{M}| approximately equals the entropy h(2λ)⋅∣S0,2,2∪S2,0,2∣h(2\lambda)\cdot|S_{0,2,2}\cup S_{2,0,2}|. Similarly, the logarithm of the contribution of t∈S1,1,2t\in S_{1,1,2} to ∣ZM∣|Z^{M}| is approximately h(2μ)⋅∣S1,1,2∣h(2\mu)\cdot|S_{1,1,2}|. In total, the contribution of all t∈S2t\in S_{2} to ∣ZM∣|Z^{M}| is approximately

On the other hand, let \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111p=λ∣S0,2,2∪S2,0,2∣+μ∣S1,1,2∣∣S2∣\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{p}=\frac{\lambda|S_{0,2,2}\cup S_{2,0,2}|+\mu|S_{1,1,2}|}{|S_{2}|} be the weighted average of λ\lambda and μ\mu. (That is, \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111Z(2)(0)=\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111Z(2)(2)=\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111p\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{\scriptscriptstyle\textup{Z}}^{(2)}(0)=\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{\scriptscriptstyle\textup{Z}}^{(2)}(2)=\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{p} and \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111Z(2)(1)=1−2\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111p\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{\scriptscriptstyle\textup{Z}}^{(2)}(1)=1-2\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{p}.) The contribution of all t∈S2t\in S_{2} to ∣Z′∣|Z^{\prime}| is approximately

This is larger than their contribution to ZMZ^{M} because the even distribution has the maximum entropy.

In the analysis of Coppersmith and Winograd, λ=12+q2\lambda=\frac{1}{2+q^{2}}, μ=12+q3τ\mu=\frac{1}{2+q^{3\tau}} (where τ=ω3\tau=\frac{\omega}{3}). So there is a constant gap between λ\lambda and μ\mu when ω>2\omega>2. This implies an exponential gap between ∣Z′∣|Z^{\prime}| and ∣ZM∣|Z^{M}|. The combination loss is indeed exponentially large. Hence, compensating for such loss might improve ω\omega.

3 Compensate for Combination Loss

As we discussed above, since a level-2 variable block ZKZ_{K} is in only one independent copy of Tα\mathcal{T}^{\alpha}, some index 22’s in it will split according to λ\lambda while other 22’s will split according to μ\mu. This causes the combination loss. The same holds for all X, Y and Z dimensions. One natural attempt to compensate for it is to match a level-2 variable block multiple times, i.e., to let it appear in multiple triples.

During the hashing step, we randomly match a level-2 Z-variable block ZKZ_{K}. Any index 2 in ZKZ_{K} will be in the parts of T0,2,2T_{0,2,2}, T2,0,2T_{2,0,2}, or T1,1,2T_{1,1,2} randomly. Those index 2 of ZKZ_{K} in T0,2,2T_{0,2,2} and T2,0,2T_{2,0,2} parts will split according to λ\lambda while those in T1,1,2T_{1,1,2} part will split according to μ\mu. Even if ZKZ_{K} is matched multiple times, since each time the positions of these three parts are different, we will be using different level-1 blocks in ZKZ_{K}. This observation allows us to obtain a subtensor that is mostly disjoint from other subtensors from each matching.

Asymmetric Hashing.

In the original two-level analysis (Section 2.1), the marginal distributions αX=αY=αZ{\alpha}_{\scriptscriptstyle\textup{X}}={\alpha}_{\scriptscriptstyle\textup{Y}}={\alpha}_{\scriptscriptstyle\textup{Z}} are picked to balance the number of level-2 blocks and the number of variables in a block. So after zeroing-out, every remaining block can only be in one triple. We carefully pick αX=αY{\alpha}_{\scriptscriptstyle\textup{X}}={\alpha}_{\scriptscriptstyle\textup{Y}} and αZ{\alpha}_{\scriptscriptstyle\textup{Z}} so that there will be more level-2 X and Y-blocks than Z-blocks. (This asymmetric hashing method also appears in [CW90], but the base tensor is Strassen’s tensor [Str86, Pan78].) In return, in each level-2 Z-block, we can now have more variables. We will match each Z-variable block to multiple pairs of X and Y-blocks while keeping the matching for each X and Y-block unique, that is, every remaining X or Y-block is only in one triple but a remaining Z-block can be in multiple triples. Such uniqueness for X and Y-blocks is necessary for our method of removing the interfering terms.

Sanity Check.

As a sanity check, let us first try to match a level-2 variable block ZKZ_{K} twice. (Recall that we defined the notations for variable blocks in Section 2.1.) We say ZKZ_{K} can be matched to XIX_{I} and YJY_{J} with respect to α\alpha if and only if (1) it+jt+kt=4i_{t}+j_{t}+k_{t}=4 for all t∈[n]t\in[n]; and (2) the distribution [(it,jt,kt)]t∈[n][(i_{t},j_{t},k_{t})]_{t\in[n]} equals α\alpha.

Let ZMZ^{M} be the set of level-1 Z-variable blocks in TMα~\mathcal{T}^{\widetilde{\alpha}}_{M}, and let ZM′Z^{M^{\prime}} be that of TM′α~\mathcal{T}^{\widetilde{\alpha}}_{M^{\prime}}. Our key observation is that ZMZ^{M} and ZM′Z^{M^{\prime}} are mostly disjoint. Recall that Si,j,k={t∈[n]∣(it,jt,kt)=(i,j,k)}S_{i,j,k}=\{t\in[n]\mid(i_{t},j_{t},k_{t})=(i,j,k)\} is the positions of the Ti,j,kT_{i,j,k} part in MM. Similarly, let Si,j,k′S^{\prime}_{i,j,k} be that of M′M^{\prime}. (See Figure 1.) For any set S⊆[n]S\subseteq[n] and a level-1 Z-variable block ZK^=Z(k^1,k^2,…,k^2n)Z_{\widehat{K}}=Z_{(\widehat{k}_{1},\widehat{k}_{2},\dots,\widehat{k}_{2n})}, we use split(K^,S)\textsf{split}(\widehat{K},S) to denote the split distribution for Z(k^1,k^2,…,k^2n)Z_{(\widehat{k}_{1},\widehat{k}_{2},\dots,\widehat{k}_{2n})} restricted to set SS. Recall that it is defined as

Fix any ZK^∈ZMZ_{\widehat{K}}\in Z^{M}. We claim that, by the randomness of S1,1,2′S^{\prime}_{1,1,2}, w.h.p. split(K^,S1,1,2′)=\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111Z(2)\textsf{split}(\widehat{K},S^{\prime}_{1,1,2})=\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{\scriptscriptstyle\textup{Z}}^{(2)} which is the average split distribution. On the contrary, for any ZK^′∈ZM′Z_{\widehat{K}^{\prime}}\in Z^{M^{\prime}}, we must have split(K^′,S1,1,2′)=α~Z(1,1,2)\textsf{split}(\widehat{K}^{\prime},S^{\prime}_{1,1,2})=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}. Since \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111Z(2)≠α~Z(1,1,2)\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{\scriptscriptstyle\textup{Z}}^{(2)}\neq\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}, this shows w.h.p. ZK^∉ZM′Z_{\widehat{K}}\not\in Z^{M^{\prime}}, which implies that ZMZ^{M} and ZM′Z^{M^{\prime}} are mostly disjoint.

Now let us justify our claim. Since we uniformly sampled the pair (XI′,YJ′)(X_{I^{\prime}},Y_{J^{\prime}}), by symmetry, S1,1,2′S^{\prime}_{1,1,2} is uniform among all α(1,1,2)n\alpha(1,1,2)n-sized subsets of S2={t∈[n]∣kt=2}S_{2}=\{t\in[n]\mid k_{t}=2\}. Regardless of whether a position t∈S2t\in S_{2} is in S0,2,2,S2,0,2,S_{0,2,2},S_{2,0,2}, or S1,1,2S_{1,1,2}, such position is in S1,1,2′S^{\prime}_{1,1,2} with equal probability. As we fixed ZK^∈ZMZ_{\widehat{K}}\in Z^{M}, the corresponding split distribution split(K^,S1,1,2′)\textsf{split}(\widehat{K},S^{\prime}_{1,1,2}) is mostly likely to be the weighted average of α~Z(0,2,2)\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(0,2,2)}, α~Z(2,0,2)\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(2,0,2)}, and α~Z(1,1,2)\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}, i.e., the average distribution \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111Z(2)\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{\scriptscriptstyle\textup{Z}}^{(2)}.

The idea above is generalized in our main algorithm so that each level-2 Z-block can be matched in 2Θ(n)2^{\Theta(n)} triples. However, there are two remaining challenges:

In order to be independent, being mostly disjoint is not sufficient. TMα~\mathcal{T}^{\widetilde{\alpha}}_{M} and TM′α~\mathcal{T}^{\widetilde{\alpha}}_{M^{\prime}} has to be completely disjoint. An easy fix would be zeroing out the intersecting variables. But this introduces missing Z-variables in the final matrix multiplication tensors we get. We use a random shuffling technique similar to that of [KK19] to fix these “holes” in Z-variables.

Moreover, even being perfectly disjoint does not guarantee independence. There is also a second condition in the definition of independence: no additional terms, i.e., we have to make sure that we get exactly TMα~+TM′α~\mathcal{T}^{\widetilde{\alpha}}_{M}+\mathcal{T}^{\widetilde{\alpha}}_{M^{\prime}} without any extra terms. For example, let XI^′,YJ^′,ZK^X_{\widehat{I}^{\prime}},Y_{\widehat{J}^{\prime}},Z_{\widehat{K}} be level-1 blocks in XI′X_{I^{\prime}}, YJ′Y_{J^{\prime}}, and ZMZ^{M}, respectively, then the subtensor of TM∪M′α~\mathcal{T}^{\widetilde{\alpha}}_{M\cup M^{\prime}} over these level-1 blocks should be zero. Vice versa for level-1 blocks in XI,YJX_{I},Y_{J}, and ZM′Z^{M^{\prime}}. If these conditions are not satisfied, TMα~T_{M}^{\widetilde{\alpha}} and TM′α~T_{M^{\prime}}^{\widetilde{\alpha}} are not independent.

Fixing Holes.

We now address the first challenge. Suppose we have a broken matrix multiplication tensor of size \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N×\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M×\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}\times\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M}\times\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P} (i.e., it corresponds to the matrix multiplication of an \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N×\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}\times\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M} matrix and an \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M×\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M}\times\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P} matrix), in which half of the Z-variables are zeroed out. Let us denote the two multiplying matrices as XX and YY. The product is (XY)i,j:=∑k=1\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111MXi,kYk,j(XY)_{i,j}:=\sum_{k=1}^{\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M}}X_{i,k}Y_{k,j}, but we can only get half of the entries in XYXY. If we randomly select three permutations π1,π2,π3\pi_{1},\pi_{2},\pi_{3} of [\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N],[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M],[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P][\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}],[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M}],[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}], respectively, and fill in Xi,k←Aπ1 ⁣(i),π2 ⁣(k),  Yk,j←Bπ2 ⁣(k),π3 ⁣(j)X_{i,k}\leftarrow A_{\pi_{1}\!(i),\pi_{2}\!(k)},\;Y_{k,j}\leftarrow B_{\pi_{2}\!(k),\pi_{3}\!(j)} instead, we would get the correct answer to a random half of the entries in ABAB. Then we just repeat this multiple times using other broken matrix multiplication tensors. Combine the answers to the entries in ABAB together, we would get the correct answer for ABAB with high probability. In other words, we solve the first challenge by “gluing” many randomly permuted broken matrix multiplication tensors together.

Compatibility.

For the second challenge, we need the following key observation. Let XI^′∈XI′,  YJ^′∈YJ′,  ZK^∈ZMX_{\widehat{I}^{\prime}}\in X_{I^{\prime}},\;Y_{\widehat{J}^{\prime}}\in Y_{J^{\prime}},\;Z_{\widehat{K}}\in Z^{M} be three level-1 blocks. If there is an interfering term involving variables in XI^′X_{\widehat{I}^{\prime}}, YJ^′Y_{\widehat{J}^{\prime}} and ZK^Z_{\widehat{K}}, for those t∈S2,0,2′t\in S^{\prime}_{2,0,2}, we must have (i^2t−1′,i^2t′)=(2−k^2t−1, 2−k^2t)(\widehat{i}^{\prime}_{2t-1},\widehat{i}^{\prime}_{2t})=(2-\widehat{k}_{2t-1},\,2-\widehat{k}_{2t}), because j^2t−1′=j^2t′=0\widehat{j}^{\prime}_{2t-1}=\widehat{j}^{\prime}_{2t}=0 and (i^2t−1′,i^2t′)+(j^2t−1′,j^2t′)+(k^2t−1,k^2t)=(2,2)(\widehat{i}^{\prime}_{2t-1},\widehat{i}^{\prime}_{2t})+(\widehat{j}^{\prime}_{2t-1},\widehat{j}^{\prime}_{2t})+(\widehat{k}_{2t-1},\widehat{k}_{2t})=(2,2). This implies

If this holds, we say split(I^′,S2,0,2′)\textsf{split}(\widehat{I}^{\prime},S^{\prime}_{2,0,2}) agrees with split(K^,S2,0,2′)\textsf{split}(\widehat{K},S^{\prime}_{2,0,2}).

We claim that for any fixed XI^′∈XI′X_{\widehat{I}^{\prime}}\in X_{I^{\prime}}, YJ^′∈YJ′Y_{\widehat{J}^{\prime}}\in Y_{J^{\prime}}, and ZK^∈ZMZ_{\widehat{K}}\in Z^{M} that are retained in TM∪M′α~\mathcal{T}^{\widetilde{\alpha}}_{M\cup M^{\prime}}, the condition (2.3) is not satisfied with high probability:

split(I^′,S2,0,2′)\textsf{split}(\widehat{I}^{\prime},S^{\prime}_{2,0,2}) agrees with α~Z(2,0,2)\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(2,0,2)}, the split distribution of Z indices for T2,0,2T_{2,0,2}. This is a necessary condition for XI^′X_{\widehat{I}^{\prime}} to form a triple with ZK^∈ZM′Z_{\widehat{K}}\in Z^{M^{\prime}}, because split(K^,S2,0,2′)=α~Z(2,0,2)\textsf{split}(\widehat{K},S^{\prime}_{2,0,2})=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(2,0,2)} holds for all ZK^∈ZM′Z_{\widehat{K}}\in Z^{M^{\prime}}. Otherwise, if this condition does not hold, XI^′X_{\widehat{I}^{\prime}} cannot form any triple with Z-blocks ZK^∈ZM′Z_{\widehat{K}}\in Z^{M^{\prime}}, so it has been zeroed out before forming TM∪M′α~\mathcal{T}^{\widetilde{\alpha}}_{M\cup M^{\prime}}. (In this argument, it is crucial that XI′X_{I^{\prime}} is only matched in a unique triple M′M^{\prime}.)

split(K^,S2,0,2′)\textsf{split}(\widehat{K},S^{\prime}_{2,0,2}) is equal to \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111Z(2)\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{\scriptscriptstyle\textup{Z}}^{(2)}, the average split distribution of index 2, with high probability. This can be deduced from a similar argument as in the sanity check.

These two arguments, combined with the fact that \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111Z(2)≠α~Z(2,0,2)\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{\scriptscriptstyle\textup{Z}}^{(2)}\neq\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(2,0,2)}, concludes that (2.3) is unlikely to hold.

Similarly, one could also look at the positions S0,2,2′S^{\prime}_{0,2,2}, which is symmetric to the case above.The same argument would not work with t∈S1,1,2′t\in S^{\prime}_{1,1,2}, because now (j^2t−1′,j^2t′)(\widehat{j}^{\prime}_{2t-1},\widehat{j}^{\prime}_{2t}) could be either (1,0)(1,0) or (0,1)(0,1). This degree of freedom prevents us from getting a compatibility constraint between split(I^′,S1,1,2′)\textsf{split}(\widehat{I}^{\prime},S^{\prime}_{1,1,2}) and split(K^,S1,1,2′)\textsf{split}(\widehat{K},S^{\prime}_{1,1,2}). For any level-2 blocks XIX_{I}, YJ{Y}_{J}, and level-1 block ZK^∈ZMZ_{\widehat{K}}\in Z^{M} where M=(XI,YJ,ZK)M=(X_{I},Y_{J},Z_{K}), when split(K^,S2,0,2)\textsf{split}(\widehat{K},S_{2,0,2}) and split(K^,S0,2,2)\textsf{split}(\widehat{K},S_{0,2,2}) are both equal to α~Z(2,0,2)\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(2,0,2)} (S2,0,2S_{2,0,2} and S0,2,2S_{0,2,2} are defined w.r.t. MM), we say ZK^Z_{\widehat{K}} is compatible with XIX_{I} and YJ{Y}_{J}. Our argument above shows that w.h.p. a level-1 block will only be compatible with one pair of XIX_{I} and YJ{Y}_{J}, and there is no interfering term involving ZK^Z_{\widehat{K}} and XIX_{I}, YJ{Y}_{J} if they are not compatible. If ZK^Z_{\widehat{K}} happens to be compatible with two pairs, we will zero out ZK^Z_{\widehat{K}} and leave it as a hole. Then it will be fixed by our hole-fixing technique. See Section 4 and Section 5 for more details.

4 Beyond the Second Power

In the analysis of higher and higher powers of the CW tensor, because we can perform merging for T0,j,kT_{0,j,k} at each level, we get better and better upper bounds of ω\omega. Together with such gain, we also incur combination loss at each level. Our approach generalizes to high powers as well. For higher powers of the CW tensor, we apply this method to analyze both the global value (i.e., the value of the CW tensor) and the component values (e.g., the values of T1,2,5,T1,3,4,T2,2,4,T2,3,3T_{1,2,5},T_{1,3,4},T_{2,2,4},T_{2,3,3} and their permutations for the 4th power). Same as in previous works, we optimize all parameters by a computer program to obtain an upper bound of ω\omega.

Recall that in our two-level analysis, we obtained a subtensor TMα~\mathcal{T}^{\widetilde{\alpha}}_{M} for each retained level-2 triple M=(XI,YJ,ZK)M=(X_{I},Y_{J},Z_{K}), in which some Z-blocks ZK^∈ZMZ_{\widehat{K}}\in Z^{M} are zeroed out and become holes. We first pretend there are no holes, zeroing out these tensors TMα~\mathcal{T}^{\widetilde{\alpha}}_{M} to form matrix multiplication tensors, and then fix the holes in the matrix multiplication tensors. However, for higher powers, this approach meets a difficulty: The process of transforming TMα~\mathcal{T}^{\widetilde{\alpha}}_{M} to matrix multiplication tensors is more involvedIt will be a more general degeneration instead of just zeroing out., so it is not clear how one can control the number of holes in the final matrix multiplication tensors.

To solve this difficulty, we will fix the holes in TMα~\mathcal{T}^{\widetilde{\alpha}}_{M} before transforming them to matrix multiplication tensors. Suppose all TMα~\mathcal{T}^{\widetilde{\alpha}}_{M} are isomorphic to some tensor T∗\mathcal{T}^{*} except for the holes in their Z-variables. As long as T∗\mathcal{T}^{*} has a desired symmetric structure, we can shift the holes in each copy TMα~\mathcal{T}^{\widetilde{\alpha}}_{M} to random places, like we did in Section 2.3 to repair the holes in matrix multiplication tensors. Then, by gluing several copies together, we can fix all the holes, resulting in a copy of T∗\mathcal{T}^{*} without holes. In Section 5, we will show how to fix the holes: We will first define the desired tensor structure T∗\mathcal{T}^{*} which will naturally appear in Sections 6 and 7, then define a group of permutations used to move the holes, and finally fix the holes in T∗\mathcal{T}^{*} using the idea we discussed above.

Compatibility for higher powers.

Recall that in Section 2.3, we defined the compatibility for the second power. A level-1 Z-block ZK^Z_{\widehat{K}} is compatible with XI,YJX_{I},Y_{J}, if the following conditions hold:

split(K^,S0,2,2)=split(K^,S2,0,2)=α~Z(0,2,2)\textsf{split}(\widehat{K},S_{0,2,2})=\textsf{split}(\widehat{K},S_{2,0,2})=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(0,2,2)}, where S0,2,2S_{0,2,2} and S2,0,2S_{2,0,2} are defined with respect to the triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K});

split(K^,S2)=\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111Z(2)\textsf{split}(\widehat{K},S_{2})=\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{\scriptscriptstyle\textup{Z}}^{(2)}.

Here, we can make a constraint for the split distribution of T0,2,2T_{0,2,2} because the index 0 ensures a one-to-one correspondence between the split distributions of Y and Z-indices. Similar for T2,0,2T_{2,0,2}. We generalize this definition to higher powers, creating a similar constraint for every component Ti,j,kT_{i,j,k} with i=0i=0 or j=0j=0:

For all components Ti,j,kT_{i,j,k} with i=0i=0 or j=0j=0, split(K^,Si,j,k)=α~Z(i,j,k)\textsf{split}(\widehat{K},S_{i,j,k})=\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{(i,j,k)}, where Si,j,kS_{i,j,k} is defined with respect to the triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}).

split(K^,Sk)=\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111Z(k)\textsf{split}(\widehat{K},S_{k})=\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{\scriptscriptstyle\textup{Z}}^{(k)} for all kk.

Based on this definition, we will show in Section 6 that there are no interfering terms between ZK^Z_{\widehat{K}} and XI,YJX_{I},Y_{J} that are incompatible. Once some ZK^Z_{\widehat{K}} is compatible with two remaining triples, we zero it out as we did in Section 2.3.

Analyzing component values.

like in previous works, we would have NBX=NBY=NBZN_{\textup{BX}}=N_{\textup{BY}}=N_{\textup{BZ}} since X, Y, Z variables are symmetric. Our solution is to pick three different numbers A1,A2,A3A_{1},A_{2},A_{3} and apply hashing on

This makes Z-variables asymmetric from X and Y. Starting with this tensor T\mathcal{T} and performing similar analysis as in Section 6, we obtain desired lower bounds for the components.

Why did we break the 2.3725 lower bound?

By compensating for the combination loss at each level, we get the new upper bound of ω<2.37187\omega<2.37187 from the eighth power of the CW tensor. In the paper by Ambainis, Filmus, and Le Gall [AFLG15], they proved that certain algorithms could not give a better upper bound than ω<2.3725\omega<2.3725. These algorithms include previous improvements in analyzing higher powers and the refined laser method [AW21b]. Our algorithm is the first algorithm to break this lower bound.

In their lower bound, they start with an estimated partitioned tensor, which is a partitioned tensor with an estimated value for each subtensor. Then they defined the merging value of it, which, roughly speaking, is the maximum value one can get from (1) zeroing it out into independent subtensors; and (2) merging non-independent subtensors that are matrix multiplication tensors into larger matrix multiplications.

Preliminaries

In this paper, log⁡x\log x means log⁡2x\log_{2}x by default, and [n]={1,…,n}[n]=\{1,\ldots,n\}. For a sequence a1,…,aka_{1},\ldots,a_{k} which sums to 1, (na1n, ⋯ ,akn)\binom{n}{a_{1}n,\,\cdots,a_{k}n} can be written as (n[ain]i∈[k])\binom{n}{[a_{i}n]_{i\in[k]}}, or simply (n[ain])\binom{n}{[a_{i}n]} if there is no ambiguity. The notation A1⊔A2⊔⋯⊔AkA_{1}\sqcup A_{2}\sqcup\cdots\sqcup A_{k} means the disjoint union of sets A1,…,AkA_{1},\ldots,A_{k}.

Most of our notations about tensors are similar to [AW21b].

The matrix multiplication tensor ⟨n,m,p⟩\langle n,m,p\rangle is a tensor over sets {xi,j}i∈[n],j∈[m]\{x_{i,j}\}_{i\in[n],j\in[m]}, {yj,k}j∈[m],k∈[p]\{y_{j,k}\}_{j\in[m],k\in[p]}, and {zk,i}k∈[p],i∈[n]\{z_{k,i}\}_{k\in[p],i\in[n]}, defined as

Tensor isomorphisms.

If two tensors TT and T′T^{\prime} are equal up to a renaming of their variables, we say they are isomorphic or equivalent, denoted as T≅T′T\cong T^{\prime}. Formally, we have the following definition.

Let TT be a tensor over variables X,Y,ZX,Y,Z, written as

and T′T^{\prime} be a tensor over variables X′,Y′,Z′X^{\prime},Y^{\prime},Z^{\prime}. We say TT is isomorphic to T′T^{\prime} if there are bijections

ϕ=(ϕ1,ϕ2,ϕ3)\phi=(\phi_{1},\phi_{2},\phi_{3}) is called an isomorphism from TT to T′T^{\prime}, denoted by \phi\big{(}T\big{)}=T^{\prime}.

Moreover, an isomorphism ϕ\phi from TT to itself is called an automorphism of TT. All automorphisms of TT form a group, called the group of automorphisms of TT, written Aut(T)\textup{Aut}(T).

Tensor operations.

Let TT and T′T^{\prime} be two tensors over X,Y,ZX,Y,Z and X′,Y′,Z′X^{\prime},Y^{\prime},Z^{\prime}, respectively, written as

The direct sum T⊕T′T\oplus T^{\prime} is a tensor over (X⊔X′),(Y⊔Y′)(X\sqcup X^{\prime}),(Y\sqcup Y^{\prime}), and (Z⊔Z′)(Z\sqcup Z^{\prime}), defined as

When performing the direct sum T⊕T′T\oplus T^{\prime}, we always regard the variables in TT and T′T^{\prime} as distinct variables. Specifically, T⊕nT^{\oplus n} is defined as T⊕T⊕⋯⊕TT\oplus T\oplus\cdots\oplus T, i.e., the direct sum of nn copies of TT.

The tensor product T⊗T′T\otimes T^{\prime} is a tensor over (X×X′), (Y×Y′), (Z×Z′)(X\times X^{\prime}),~{}(Y\times Y^{\prime}),~{}(Z\times Z^{\prime}) defined as

Specifically, the tensor power T⊗nT^{\otimes n} is defined as the tensor product T⊗T⊗⋯⊗TT\otimes T\otimes\cdots\otimes T of nn copies.

The summation T+T′T+T^{\prime} is well-defined only when (X,Y,Z)=(X′,Y′,Z′)(X,Y,Z)=(X^{\prime},Y^{\prime},Z^{\prime}). We define T+T′T+T^{\prime} to be a tensor over X,Y,ZX,Y,Z:

Rotation, swapping, and symmetrization.

be a tensor over X={x1,…,xn}X=\left\{x_{1},\ldots,x_{n}\right\}, Y={y1,…,ym}Y=\left\{y_{1},\ldots,y_{m}\right\}, and Z={z1,…,zp}Z=\left\{z_{1},\ldots,z_{p}\right\}. We define the rotation of TT, denoted by TrotT^{\textup{rot}}, as

over X′={x1,…,xm}X^{\prime}=\left\{x_{1},\ldots,x_{m}\right\}, Y′={y1,…,yp}Y^{\prime}=\left\{y_{1},\ldots,y_{p}\right\}, and Z′={z1,…,zn}Z^{\prime}=\left\{z_{1},\ldots,z_{n}\right\}. Intuitively, rotation is changing the order of dimensions from (∣X∣,∣Y∣,∣Z∣)(|X|,|Y|,|Z|) to (∣Y∣,∣Z∣,∣X∣)(|Y|,|Z|,|X|) while keeping the structure of the tensor unchanged.

Similarly, we define the swapping of TT, denoted by TswapT^{\textup{swap}}, as

over X′={x1,…,xm}X^{\prime}=\left\{x_{1},\ldots,x_{m}\right\}, Y′={y1,…,yn}Y^{\prime}=\left\{y_{1},\ldots,y_{n}\right\}, and Z′={z1,…,zp}Z^{\prime}=\left\{z_{1},\ldots,z_{p}\right\}. Swapping is changing the order of dimensions from (∣X∣,∣Y∣,∣Z∣)(|X|,|Y|,|Z|) to (∣Y∣,∣X∣,∣Z∣)(|Y|,|X|,|Z|), i.e., swapping X and Y dimensions.

Based on these two operations, we define the symmetrization of TT. The rotational symmetrization, or 3-symmetrization of TT, is defined by sym3(T)=T⊗Trot⊗Trot  rot\textup{sym}_{3}(T)=T\otimes T^{\textup{rot}}\otimes T^{\textup{rot}\;\textup{rot}}. In sym3(T)\textup{sym}_{3}(T), the X, Y and Z variables are symmetric. Further, we define the full symmetrization, or 6-symmetrization of TT, as sym6(T)=sym3(T)⊗sym3(T)swap\textup{sym}_{6}(T)=\textup{sym}_{3}(T)\otimes\textup{sym}_{3}(T)^{\textup{swap}}.

Tensor rank.

The rank R(T)R(T) of a tensor TT is the minimum integer r≥0r\geq 0 such that we can decompose TT into

This equation is also called the rank decomposition of TT.

The asymptotic rank R~(T)\widetilde{R}(T) is defined as

We need the following theorem linking asymptotic rank to the matrix multiplication exponent ω\omega.

2 Restrictions, Degenerations, and Values

It is easy to verify that R(T′)≤R(T)R(T^{\prime})\leq R(T) and R~(T′)≤R~(T)\widetilde{R}(T^{\prime})\leq\widetilde{R}(T) by applying f1,f2,f3f_{1},f_{2},f_{3} on each variable that appeared in the rank decomposition.

Degenerations.

Suppose TT is a tensor over X,Y,ZX,Y,Z while T′T^{\prime} is a tensor over X′,Y′,Z′X^{\prime},Y^{\prime},Z^{\prime}. Also, there are mappings

then we say T′T^{\prime} is a degeneration of TT, written T⊵T′T\unrhd T^{\prime}. It is clear that restriction is a special type of degeneration. One can also verify that R~(T′)≤R~(T)\widetilde{R}(T^{\prime})\leq\widetilde{R}(T).

Zeroing out.

Zeroing out is a special case of restrictions. While zeroing out, we select a subset X′⊆XX^{\prime}\subseteq X and set all X-variables outside X′X^{\prime} to zero. Similarly, Y′⊆YY^{\prime}\subseteq Y and Z′⊆ZZ^{\prime}\subseteq Z are chosen and all other Y and Z-variables are set to zero. Namely, zeroing out is the degeneration with

and f2,f3f_{2},f_{3} are defined similarly. The resulting tensor T′T^{\prime} is also called the subtensor of TT over X′,Y′,Z′X^{\prime},Y^{\prime},Z^{\prime}, written T′=T∣X′,Y′,Z′T^{\prime}=T|_{X^{\prime},Y^{\prime},Z^{\prime}}.

Zeroing out suffices for previous works, but we need one more type of degeneration below for technical reasons.

Identifications.

Let X(1)X^{(1)} and X(2)X^{(2)} be two disjoint sets that identify with the same set XX, in the sense that there exists bijections iX(1):X(1)→Xi_{X^{(1)}}:X^{(1)}\rightarrow X and iX(2):X(2)→Xi_{X^{(2)}}:X^{(2)}\rightarrow X. Similarly, for Y,  Y(1),Y(2)Y,\;Y^{(1)},Y^{(2)} and Z,  Z(1),Z(2)Z,\;Z^{(1)},Z^{(2)}, there are bijections iY(1),iY(2)i_{Y^{(1)}},i_{Y^{(2)}} and iZ(1),iZ(2)i_{Z^{(1)}},i_{Z^{(2)}} similarly.

Suppose T(1)T^{(1)} is a tensor defined on the sets X(1),Y(1),Z(1)X^{(1)},Y^{(1)},Z^{(1)}, and T(2)T^{(2)} is defined on X(2),Y(2),Z(2)X^{(2)},Y^{(2)},Z^{(2)}. For their direct sum T(1)⊕T(2)T^{(1)}\oplus T^{(2)}, we can define the following degeneration.

The definitions of f2,f3f_{2},f_{3} are similar. The resulting tensor after degeneration is exactly T(1)+T(2)T^{(1)}+T^{(2)} as if they were both defined on X,Y,ZX,Y,Z. We call such a degeneration an identification because it identifies the different copies of the same variable.

Moreover, for mm tensors T(1),T(2),T(3),…,T(m)T^{(1)},T^{(2)},T^{(3)},\dots,T^{(m)}, we can similarly define their identification, written as

Values.

The value of a tensor captures the asymptotic ability of its symmetrization, sym3(T)\textup{sym}_{3}(T) or sym6(T)\textup{sym}_{6}(T), in computing matrix multiplication.

The 3-symmetrized τ\tau-value of a tensor TT, denoted as Vτ(3)(T)V^{(3)}_{\tau}(T), is defined as

The 6-symmetrized τ\tau-value is defined by replacing sym3\textup{sym}_{3} with sym6\textup{sym}_{6} (and replacing 3n3n with 6n6n) in the above definition, denoted by Vτ(6)(T)V^{(6)}_{\tau}(T).

Note that the previous works only use the 3-symmetrized values; however, we need 6-symmetrized values due to technical reasons. Vτ(6)(T)≥Vτ(3)(T)V^{(6)}_{\tau}(T)\geq V^{(3)}_{\tau}(T) holds for any tensor TT.

It is easy to verify that, for tensors TT and T′T^{\prime}, their values satisfy Vτ(6)(T⊗T′)≥Vτ(6)(T)⋅Vτ(6)(T′)V^{(6)}_{\tau}(T\otimes T^{\prime})\geq V^{(6)}_{\tau}(T)\cdot V^{(6)}_{\tau}(T^{\prime}) and Vτ(6)(T⊕T′)≥Vτ(6)(T)+Vτ(6)(T′)V^{(6)}_{\tau}(T\oplus T^{\prime})\geq V^{(6)}_{\tau}(T)+V^{(6)}_{\tau}(T^{\prime}). Similar properties hold for 3-symmetrized values. These properties are called the super-multiplicative and super-additive properties, which allow us to bound the values of some complex tensors based on the values of their ingredients.

3 Partitions of a Tensor

The partition of variable sets X,Y,ZX,Y,Z is defined as the disjoint unions

Partitions of a tensor power.

Consider the tensor power T≔T⊗n\mathcal{T}\coloneqq T^{\otimes n}, which is a tensor over XnX^{n}, YnY^{n}, and ZnZ^{n}. Here TT is called the base tensor, and the partition of TT we take is called the base partition. Given any base tensor together with a base partition, it naturally induces the partition for the tensor power T\mathcal{T}, as described below.

Using such notations, T\mathcal{T} is partitioned into

where TI,J,K=T∣XI,YJ,ZK\mathcal{T}_{I,J,K}=\mathcal{T}|_{X_{I},Y_{J},Z_{K}} is the subtensor of T\mathcal{T} over blocks XIX_{I}, YJY_{J}, and ZKZ_{K}. The index sequence of a variable is defined as the index sequence of the block it belongs to, i.e., any variable x∈XIx\in X_{I} has the index sequence II (similar for Y and Z-variables).

4 Coppersmith-Winograd Tensor

The most important tensor in the fast matrix multiplication literature is the Coppersmith-Winograd tensor [CW90]. It is a partitioned tensor over

We define X0={x0},X1={x1,x2,…,xq}X_{0}=\{x_{0}\},X_{1}=\{x_{1},x_{2},\dots,x_{q}\}, and X2={xq+1}X_{2}=\{x_{q+1}\}. The partition is therefore X=X0⊔X1⊔X2X=X_{0}\sqcup X_{1}\sqcup X_{2}.Here we let the index start from to be consistent with previous works. Similarly, we define the partitioned sets for YY and ZZ.

5 Leveled Partitions of CW Tensor Power

6 Distributions and Entropy

Throughout this paper, we only need to consider discrete distributions supporting on a finite set. For such a distribution α\alpha supporting on SS, we require it to be normalized (i.e. ∑s∈Sα(s)=1\sum_{s\in S}\alpha(s)=1) and non-negative (i.e., ∀s∈S, α(s)≥0\forall s\in S,\ \alpha(s)\geq 0). We define its entropy in the standard way:

We need the following lemma in our analysis.

Let α\alpha be a discrete distribution that α(1)+⋯+α(k)=1\alpha(1)+\cdots+\alpha(k)=1, then

By Stirling’s approximation, log⁡(N!)=Nlog⁡N−Nlog⁡e+O(ln⁡N)\log(N!)=N\log N-N\log e+O(\ln N), so

7 Distributions of Index Sequences

A joint component distribution α\alpha induces marginal component distributions αX{\alpha}_{\scriptscriptstyle\textup{X}}, αY{\alpha}_{\scriptscriptstyle\textup{Y}}, and αZ{\alpha}_{\scriptscriptstyle\textup{Z}}, by

These induced marginal distributions are called the marginals of α\alpha.

Denote the set of all distributions α(i,j,k)\alpha(i,j,k) as DD. As in [CW90, Wil12], we have the following fact:

In the level-1 partition, given marginal distributions αX(i),αY(j),αZ(k){\alpha}_{\scriptscriptstyle\textup{X}}(i),{\alpha}_{\scriptscriptstyle\textup{Y}}(j),{\alpha}_{\scriptscriptstyle\textup{Z}}(k), the joint distribution α(i,j,k)\alpha(i,j,k) is uniquely determined if exists.

Suppose the marginals αX{\alpha}_{\scriptscriptstyle\textup{X}}, αY{\alpha}_{\scriptscriptstyle\textup{Y}}, and αZ{\alpha}_{\scriptscriptstyle\textup{Z}} are given. We can determine α(0,0,2)=αZ(2)\alpha(0,0,2)={\alpha}_{\scriptscriptstyle\textup{Z}}(2) and α(0,1,1)=αX(0)−αY(2)−αZ(2)\alpha(0,1,1)={\alpha}_{\scriptscriptstyle\textup{X}}(0)-{\alpha}_{\scriptscriptstyle\textup{Y}}(2)-{\alpha}_{\scriptscriptstyle\textup{Z}}(2). Other entries can be determined similarly. ∎

In higher levels, marginal distributions usually do not uniquely determine the joint distribution.This is the cause of a loss in moduli in the analysis of higher powers, which can be reduced by the refined laser method [AW21b]. Given marginal distributions αX,αY,αZ{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}, define D(αX,αY,αZ)⊆DD({\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}})\subseteq D to be the set of joint distributions inducing marginal distributions αX,αY,αZ{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}:

For convenience, we further define Dα≔D(αX,αY,αZ)D_{\alpha}\coloneqq D({\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}) to be the collection of distributions that share the same marginals with α\alpha; define D∗(αX,αY,αZ)≔arg max⁡α′∈D(αX,αY,αZ)H(α′)D^{*}({\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}})\coloneqq\operatorname*{arg\,max}_{\alpha^{\prime}\in D({\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}})}H(\alpha^{\prime}).

(I.e., α(i,j,k)(il,jl,kl)\alpha^{(i,j,k)}(i_{l},j_{l},k_{l}) fraction of the factors Ti,j,kT_{i,j,k} split into Til,jl,kl⊗Ti−il, j−jl, k−klT_{i_{l},j_{l},k_{l}}\otimes T_{i-i_{l},\,j-j_{l},\,k-k_{l}}.)

(The only difference from the earlier variant is that we replaced [n][n] with Si,j,kS_{i,j,k}.)

8 Salem-Spencer Set

As in previous works, we also need the Salem-Spencer set to construct independent matrix products.

For any positive integer MM, there is a set A⊂{0,⋯ ,M−1}A\subset\{0,\cdots,M-1\} with no three-term arithmetic progression modulo MM, which satisfies ∣A∣>M1−o(1)|A|>M^{1-o(1)}. (Namely if a,b,c∈Aa,b,c\in A satisfy a+c≡2b(modM)a+c\equiv 2b\pmod{M}, then a=b=ca=b=c.) AA is called a Salem-Spencer set.

9 Restricted-Splitting Tensor Power

In addition to values, we also define the restricted-splitting values to capture the ability of the subtensor of Ti,j,k⊗nT_{i,j,k}^{\otimes n} with a specific split distribution on Z-variable blocks. We first define the restricted-splitting tensor power. (It is a new concept introduced in this paper.)

We similarly define Ti,j,k⊗n[αX(i,j,k)]T_{i,j,k}^{\otimes n}[{\alpha}_{\scriptscriptstyle\textup{X}}^{(i,j,k)}] and Ti,j,k⊗n[αY(i,j,k)]T_{i,j,k}^{\otimes n}[{\alpha}_{\scriptscriptstyle\textup{Y}}^{(i,j,k)}] to capture the cases when the split distribution of X or Y dimension is restricted.

In this paper, we often use the notation α~i,j,k\widetilde{\alpha}_{i,j,k} instead of αZ(i,j,k){\alpha}_{\scriptscriptstyle\textup{Z}}^{(i,j,k)} to denote the Z-split distribution of component (i,j,k)(i,j,k). Under this notation, the restricted dimension is Z by default if not otherwise stated.

Furthermore, we define the value with restricted-splitting distribution:

It is easy to verify that the above definition is equivalent to

We call this concept restricted-splitting values. We also denote by Vτ(3)(Ti,j,k,α~i,j,k)V^{(3)}_{\tau}(T_{i,j,k},\widetilde{\alpha}_{i,j,k}) the 3-symmetrized restricted-splitting value:

10 Hashing Methods

Most previous works use the hashing method with Salem-Spencer set to zero out some blocks, so that finally each block XIX_{I}, YJY_{J}, or ZKZ_{K} only appears in at most one retained triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}). Here, X, Y, and Z variables are symmetric, so we call this setting symmetric hashing. In our paper, besides the symmetric setting, we also use a generalized asymmetric setting appeared in [CW90] so that an X or Y-block only appears in a single retained triple, but a Z-block can be in multiple retained triples.

The very first step is to zero out variable blocks inconsistent with αX,αY{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}}, and αZ{\alpha}_{\scriptscriptstyle\textup{Z}}, since these blocks do not appear in good triples. After that, let NBXN_{\textup{BX}} be the number of remaining X-blocks XIX_{I}, and define NBY,NBZN_{\textup{BY}},N_{\textup{BZ}} similarly. We expect that the distribution α\alpha satisfies the following:

NBX=NBY≥NBZN_{\textup{BX}}=N_{\textup{BY}}\geq N_{\textup{BZ}}.

Let NαX,αY,αZN_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}} be the number of triples whose blocks are consistent with αX,αY,αZ{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}} (i.e., the remaining blocks so far). For every block XIX_{I} or YJY_{J}, we require the number of triples containing it to be exactly NαX,αY,αZ/NBXN_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}/N_{\textup{BX}}, which is the same for all such blocks.

Let NαN_{\alpha} be the number of triples consistent with the joint distribution α\alpha, i.e., the number of good triples. For every block XIX_{I} or YJY_{J}, we require that the number of good triples containing it equals the same number Nα/NBXN_{\alpha}/N_{\textup{BX}}.

The number of triples containing every ZKZ_{K} is NαX,αY,αZ/NBZN_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}/N_{\textup{BZ}}, and the number of good triples containing every ZKZ_{K} is Nα/NBZN_{\alpha}/N_{\textup{BZ}}.

Pick MM as a prime which is at least 4NαX,αY,αZ/NBX4N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}/N_{\textup{BX}}, and construct a Salem-Spencer set BB of size M1−o(1)M^{1-o(1)} in which no three numbers form an arithmetic progression (modulo MM). Select n+1n+1 independently uniformly random integers 0≤b0,wt<M0\leq b_{0},w_{t}<M for t∈{0,⋯ ,n}t\in\{0,\cdots,n\}. For blocks XI,YJ,ZKX_{I},Y_{J},Z_{K}, compute the hash functions:

(Since MM is odd, division by 2 modulo MM is well defined.) We can see that for any triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) in T\mathcal{T}, hX(I)+hY(J)≡2hZ(K)(modM)h_{\textup{X}}(I)+h_{\textup{Y}}(J)\equiv 2h_{\textup{Z}}(K)\pmod{M}. Zero out all blocks XI,YJ,ZKX_{I},Y_{J},Z_{K} whose hash values hX(I)h_{\textup{X}}(I), hY(J)h_{\textup{Y}}(J), or hZ(K)h_{\textup{Z}}(K) are not in BB, then all remaining triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) must satisfy hX(I)=hY(J)=hZ(K)∈Bh_{\textup{X}}(I)=h_{\textup{Y}}(J)=h_{\textup{Z}}(K)\in B by Theorem 3.8.

We may think the hash function maps all variable blocks into buckets b∈{0,…,M−1}b\in\left\{0,\ldots,M-1\right\}; for a triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), it is retained in this zeroing-out step only if the three variable blocks are mapped to the same bucket b∈Bb\in B.

It is easy to calculate the expected number of remaining triples after the above zeroing-out step. For each of the NαN_{\alpha} good triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), the probability that hX(I)=hY(J)=hZ(K)=bh_{\textup{X}}(I)=h_{\textup{Y}}(J)=h_{\textup{Z}}(K)=b is M−2M^{-2} since hZ(K)h_{\textup{Z}}(K) can be determined by hX(I)h_{\textup{X}}(I) and hY(J)h_{\textup{Y}}(J). (hX(I)h_{\textup{X}}(I) and hY(J)h_{\textup{Y}}(J) are independent because of the randomness of w0w_{0}.) So the expected number of remaining good triples with hash value bb is Nα/M2N_{\alpha}/M^{2}. Multiplied by the size ∣B∣=M1−o(1)|B|=M^{1-o(1)} of the Salem-Spencer set, we get Nα⋅M−1−o(1)N_{\alpha}\cdot M^{-1-o(1)} which is the expected number of remaining good triples in total.

For each b∈Bb\in B, we have a list of remaining (not necessarily good) triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) satisfying hX(I)=hY(J)=hZ(K)=bh_{\textup{X}}(I)=h_{\textup{Y}}(J)=h_{\textup{Z}}(K)=b. If all remaining triples with hash value bb were disjoint (i.e., do not share variables), then our goal could be achieved easily. Otherwise, we resolve collisions by zeroing out some blocks. This second zeroing-out step depends on the setting: whether we allow sharing Z-blocks or not.

We first see the case where sharing Z-blocks is allowed. Then what we need to do is just to eliminate remaining triples sharing an X or Y-block. We greedily find a pair of triples sharing X or Y-blocks, and zero out any involvedFor example, when (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) and (XI,YJ′,ZK′)(X_{I},Y_{J^{\prime}},Z_{K^{\prime}}) share a block XIX_{I}, we may zero out all of XI,YJ,YJ′X_{I},Y_{J},Y_{J^{\prime}}, or just any of them. But we cannot zero out Z-blocks. X or Y-blocks to resolve the collision; this process is repeated until no X or Y-blocks are shared. After that, no two remaining triples can share X or Y-blocks. Finally, we zero out every XIX_{I} if its triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) is not consistent with α\alpha (i.e., the triple is not good).

To analyze the expected number of remaining good triples, we only need to count the number of good triples (with hash value bb) that do not share X or Y-blocks with any other triple. These triples will not be removed regardless of the order of checking triples in the greedy process.

Fix a hash value b∈Bb\in B. Initially there are NαM−2N_{\alpha}M^{-2} good triples mapped to bb in expectation. Then, assume (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) and (XI,YJ′,ZK′)(X_{I},Y_{J^{\prime}},Z_{K^{\prime}}) are two triples sharing an X-block, where the former one is good. If they were mapped to the same value bb, the good triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) no longer meets the requirement and we need to substract one from the total number of good triples.Although zeroing out XIX_{I} may affect good triples other than (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) and (XI,YJ′,ZK′)(X_{I},Y_{J^{\prime}},Z_{K^{\prime}}), its loss will be counted when we regard it as the former triple in the pair. This probability for a fixed triple pair is M−3M^{-3} according to the following lemma:

We first show that the events hX(I)=hZ(K)h_{\textup{X}}(I)=h_{\textup{Z}}(K) and hX(I′)=hZ(K)h_{\textup{X}}(I^{\prime})=h_{\textup{Z}}(K) are independent. Fixing the Z-block ZKZ_{K}, we define

The number of such triple pairs (where the former one is a good triple) equals NBX⋅(Nα/NBX)⋅(NαX,αY,αZ/NBX)=NαNαX,αY,αZ/NBXN_{\textup{BX}}\cdot(N_{\alpha}/N_{\textup{BX}})\cdot(N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}/N_{\textup{BX}})=N_{\alpha}N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}/N_{\textup{BX}}. For each pair, with probability ∣B∣⋅M−3|B|\cdot M^{-3} we lose a good triple. The same loss is counted for triples sharing Y-blocks. Thus the expected number of remaining good triples is at least

where the first inequality holds as NαX,αY,αZ/NBX⋅M−1≤1/4N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}/N_{\textup{BX}}\cdot M^{-1}\leq 1/4. A typical value of MM is Θ(NαX,αY,αZ/NBX)\Theta(N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}/N_{\textup{BX}}), which keeps at least NBXNα/NαX,αY,αZ⋅2−o(n)N_{\textup{BX}}N_{\alpha}/N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}\cdot 2^{-o(n)} good triples.

Hash Loss.

Ideally, when R≔Nα/NαX,αY,αZ=2−o(n)R\coloneqq N_{\alpha}/N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}=2^{-o(n)}, almost every of the NBXN_{\textup{BX}} X-blocks can survive the hashing process. (Strictly, NBX⋅2−o(n)N_{\textup{BX}}\cdot 2^{-o(n)} X-blocks are retained, while the factor 2−o(n)2^{-o(n)} will disappear as we only care the exponent when n→∞n\to\infty.) Such utilization rate of X-blocks is the best possible outcome of the hashing process. However, when the factor R=2−Ω(n)R=2^{-\Omega(n)} is non-negligible, 1−R1-R fraction of the X-blocks are wasted, which we call the hash loss. The quantity of the hash loss is measured by RR.

Symmetric Hashing.

In most of the prior work, they do not allow Z-blocks to be shared among triples. In this case, we only need to change the greedy process a bit: Not only when X or Y-blocks are shared, but also when a Z-block ZKZ_{K} is shared between triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) and (XI′,YJ′,ZK)(X_{I^{\prime}},Y_{J^{\prime}},Z_{K}), we zero out all five involved blocks XI,XI′,YJ,YJ′,ZKX_{I},X_{I^{\prime}},Y_{J},Y_{J^{\prime}},Z_{K} or just any of them. This process is repeated until there are no triples sharing any variable blocks.

The symmetric hashing is only applied when NBX=NBY=NBZN_{\textup{BX}}=N_{\textup{BY}}=N_{\textup{BZ}}. The analysis is again similar: we count the number of good triples (i.e., triples consistent with α\alpha) that do not share any blocks with other triples. The expected number of remaining good triples is at least

When we choose M=Θ(NαX,αY,αZ/Nα)M=\Theta(N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}/N_{\alpha}), we can keep NBXNα/NαX,αY,αZ⋅2−o(n)N_{\textup{BX}}N_{\alpha}/N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}\cdot 2^{-o(n)} good triples. Similar to above, when R=Nα/NαX,αY,αZ≠2−o(n)R=N_{\alpha}/N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}\neq 2^{-o(n)}, we cannot utilize all the variables due to the hash loss.

More general settings.

ss is a constant integer, and T1,…,TsT_{1},\ldots,T_{s} are PP-partitioned tensors with the same PP.

For each region r∈[s]r\in[s], a joint distribution α(r)\alpha^{(r)} over the components of TrT_{r} is given in advance, with marginals αX(r){\alpha}_{\scriptscriptstyle\textup{X}}^{(r)}, αY(r){\alpha}_{\scriptscriptstyle\textup{Y}}^{(r)}, and αZ(r){\alpha}_{\scriptscriptstyle\textup{Z}}^{(r)}.

Let NBXN_{\textup{BX}} be the number of X-blocks XIX_{I} that is consistent with αX(r){\alpha}_{\scriptscriptstyle\textup{X}}^{(r)} in all regions r∈[s]r\in[s]. Similarly define NBYN_{\textup{BY}} and NBZN_{\textup{BZ}}. We require NBX=NBY≥NBZN_{\textup{BX}}=N_{\textup{BY}}\geq N_{\textup{BZ}} (for the asymmetric hashing) or NBX=NBY=NBZN_{\textup{BX}}=N_{\textup{BY}}=N_{\textup{BZ}} (for the symmetric hashing).

Let NαX,αY,αZN_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}} be the number of triples consisting of variable blocks satisfying the distribution constraint (there are NBX,NBY,NBZN_{\textup{BX}},N_{\textup{BY}},N_{\textup{BZ}} many such blocks). The number of such triples containing each XIX_{I} or YJY_{J} is the same number NαX,αY,αZ/NBXN_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}/N_{\textup{BX}}. The number of such triples containing each ZKZ_{K} is NαX,αY,αZ/NBZN_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}/N_{\textup{BZ}}.

Let NαN_{\alpha} be the number of triples consistent with α(r)\alpha^{(r)} in all regions rr. We call these triples good triples. The number of good triples containing each XIX_{I} or YJY_{J} should be the same number Nα/NBXN_{\alpha}/N_{\textup{BX}}. That of Z-blocks ZKZ_{K} is Nα/NBZN_{\alpha}/N_{\textup{BZ}}.

Then, we can apply the hashing method to obtain NBXNα/NαX,αY,αZ⋅2−o(n)N_{\textup{BX}}N_{\alpha}/N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}\cdot 2^{-o(n)} independent good triples where n≔n1+⋯+nsn\coloneqq n_{1}+\cdots+n_{s}. The proof of the more general setting is the same as above, so we omit it here.

Improving the Second Power of CW Tensor

This section offers a formal analysis of the second power to illustrate our main ideas. We will obtain a bound ω<2.375234\omega<2.375234 by analyzing the second power, which beats the previous best bound on the second power (ω<2.375477\omega<2.375477 in [CW90]).Since the optimization problem for the second power can be solved exactly by hand, such an improvement can only come from new ideas, rather than new heuristics for optimization. The technique will be generalized to higher powers in later sections. To help the reader keep track of the notation, we will summarize all the notations that will be used in Table 1.

Formally, if (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) is a triple retained in the hashing method, then (1) α(i,j,k)\alpha(i,j,k) equals the proportion of positions t∈[n]t\in[n] which satisfies (It,Jt,Kt)=(i,j,k)(I_{t},J_{t},K_{t})=(i,j,k), and (2) the blocks XI,YJX_{I},Y_{J}, and ZKZ_{K} do not appear in any other retained triples.

Degenerate each retained triple to a direct sum of matrix multiplication tensors. Specifically, we will use the value lower bounds from Step 1 and obtain the value lower bound of each triple. (This implicitly gives a degeneration into matrix multiplications.)

where 3a+3b=13a+3b=1. Let αX,αY,αZ{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}} be its marginal distributions. By Lemma 3.6, α\alpha is the only distribution consistent with these marginal distributions, which allows us to use the hashing method described in Section 3.10 without a hash loss. We can see that αX(0)=a+2b, αX(1)=2a, αX(2)=b{\alpha}_{\scriptscriptstyle\textup{X}}{(0)}=a+2b,\,{\alpha}_{\scriptscriptstyle\textup{X}}{(1)}=2a,\,{\alpha}_{\scriptscriptstyle\textup{X}}{(2)}=b. Since α\alpha is symmetric, αY{\alpha}_{\scriptscriptstyle\textup{Y}} and αZ{\alpha}_{\scriptscriptstyle\textup{Z}} are the same as αX{\alpha}_{\scriptscriptstyle\textup{X}}. Let NBXN_{\textup{BX}} be the number of X-blocks consistent with αX{\alpha}_{\scriptscriptstyle\textup{X}}.

After hashing and zeroing out, the number of remaining triples is

Let q=6q=6 and b=0.016b=0.016, it gives ω<2.38719\omega<2.38719.

Analysis of the Second Power.

The values of level-2 components Ti,j,kT_{i,j,k} are:

Vτ(3)(T0,0,4)=1V_{\tau}^{(3)}(T_{0,0,4})=1, Vτ(3)(T0,1,3)=(2q)τV_{\tau}^{(3)}(T_{0,1,3})=(2q)^{\tau}, Vτ(3)(T0,2,2)=(q2+2)τV_{\tau}^{(3)}(T_{0,2,2})=(q^{2}+2)^{\tau};

Vτ(3)(T1,1,2)≥22/3qτ(q3τ+2)1/3V_{\tau}^{(3)}(T_{1,1,2})\geq 2^{2/3}q^{\tau}(q^{3\tau}+2)^{1/3}.

Note the value Vτ(3)(Ti,j,k)V_{\tau}^{(3)}(T_{i,j,k}) is defined (in Definition 3.3) using the symmetrization of Ti,j,kT_{i,j,k}, i.e. sym3(Ti,j,k)=Ti,j,k⊗Tj,k,i⊗Tk,i,j\textup{sym}_{3}(T_{i,j,k})=T_{i,j,k}\otimes T_{j,k,i}\otimes T_{k,i,j}. This implies that to use these values, we must ensure that α(i,j,k)=α(j,k,i)=α(k,i,j)\alpha(i,j,k)=\alpha(j,k,i)=\alpha(k,i,j) in Step 2.These constraints are incompatible with our algorithm which relies on the asymmetric hashing method. We will relax them in Section 4.2 and Section 4.3. Specifically, Vτ(3)(Ti,j,k)V_{\tau}^{(3)}(T_{i,j,k}) captures the capability of sym3(Ti,j,k)⊗m\textup{sym}_{3}(T_{i,j,k})^{\otimes m} for matrix multiplication, as m→∞m\rightarrow\infty. If we want to apply it to Ti,j,k⊗α(i,j,k)n⊗Tj,k,i⊗α(j,k,i)n⊗Tk,i,j⊗α(k,i,j)nT_{i,j,k}^{\otimes\alpha(i,j,k)n}\otimes T_{j,k,i}^{\otimes\alpha(j,k,i)n}\otimes T_{k,i,j}^{\otimes\alpha(k,i,j)n}, we must ensure α(i,j,k)n=α(j,k,i)n=α(k,i,j)n=m\alpha(i,j,k)n=\alpha(j,k,i)n=\alpha(k,i,j)n=m.

Next, in step 2, we pick a symmetric distribution α\alpha over all level-2 components Ti,j,kT_{i,j,k} where i+j+k=4i+j+k=4:

Step 3 uses the symmetric hashing method to zero out some level-2 triples.

Here is one subtlety (that readers may skip for the first read). Zeroing out can only distinguish between different marginal distributions but not joint distributions (See e.g. [AW21b]). Hence all joint distributions consistent with αX,αY,αZ{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}} will remain after zeroing out. If α\alpha is not the maximum entropy distribution among all joint distributions consistent with αX,αY,αZ{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}} (which we denote by D∗(αX,αY,αZ)D^{*}({\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}})), the symmetric hashing method would incur an extra hash loss. For Coppersmith and Winograd’s analysis, α\alpha indeed equals D∗(αX,αY,αZ)D^{*}({\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}).

Notice that αX(0)=2a+2b+c, αX(1)=2b+2d, αX(2)=2c+d, αX(3)=2b, αX(4)=a{\alpha}_{\scriptscriptstyle\textup{X}}{(0)}=2a+2b+c,\,{\alpha}_{\scriptscriptstyle\textup{X}}{(1)}=2b+2d,\,{\alpha}_{\scriptscriptstyle\textup{X}}{(2)}=2c+d,\,{\alpha}_{\scriptscriptstyle\textup{X}}{(3)}=2b,\,{\alpha}_{\scriptscriptstyle\textup{X}}{(4)}=a. Same for αY{\alpha}_{\scriptscriptstyle\textup{Y}} and αZ{\alpha}_{\scriptscriptstyle\textup{Z}}. Hence after Step 3, the number of retained triples is

Coppersmith and Winograd [CW90] found that when a=0.000233, b=0.012506, c=0.102546, d=0.205542a=0.000233,~{}b=0.012506,~{}c=0.102546,~{}d=0.205542, and q=6q=6, we can get ω<2.375477\omega<2.375477.

2 Non-rotational Values

As explained in Remark 4.2, to apply Vτ(3)(Ti,j,k)V_{\tau}^{(3)}(T_{i,j,k}), we need the distribution α\alpha to be symmetric. However, to apply the asymmetric hashing method in our improved algorithm, at least for some Ti,j,kT_{i,j,k}’s, the distribution α\alpha has to be asymmetric. Hence we must consider the values of some Ti,j,kT_{i,j,k}’s without such symmetrization. We call them non-rotational values.

The non-rotational value of a tensor TT, denoted by Vτ(nrot)(T)V_{\tau}^{(\text{nrot})}(T), is defined as

The only difference between this definition and the original definition of values is that we do not allow TT to be symmetrized before degeneration.

Also, recall the definition of restricted-splitting values Vτ(3)(Ti,j,k,α~)V_{\tau}^{(3)}(T_{i,j,k},\widetilde{\alpha}) in Section 3.9. We further define the non-rotational version of it.

The non-rotational restricted-splitting value is defined as

For matrix multiplication tensors, T0,j,kT_{0,j,k}, their non-rotational value matches its symmetrized value. This is stated in the following lemma. Moreover, for T1,1,2T_{1,1,2}, we only give a lower bound on its symmetrized restricted-splitting value. Since almost all the contributions are from the most typical splitting distribution, it is not surprising that its restricted-splitting value matches the original value. We defer the proof of this lemma to Appendix A.

Vτ(nrot)(T0,0,4)=1V_{\tau}^{(\textup{nrot})}(T_{0,0,4})=1,

Vτ(nrot)(T0,1,3)=(2q)τV_{\tau}^{(\textup{nrot})}(T_{0,1,3})=(2q)^{\tau},

Vτ(nrot)(T2,2,0)=Vτ(nrot)(T0,2,2,α~B)=Vτ(nrot)(T2,0,2,α~B)=(q2+2)τV_{\tau}^{(\textup{nrot})}(T_{2,2,0})=V_{\tau}^{(\textup{nrot})}(T_{0,2,2},\widetilde{\alpha}_{\textup{B}})=V_{\tau}^{(\textup{nrot})}(T_{2,0,2},\widetilde{\alpha}_{\textup{B}})=(q^{2}+2)^{\tau},

Vτ(3)(T1,1,2,α~A)≥22/3qτ(q3τ+2)1/3V_{\tau}^{(3)}(T_{1,1,2},\widetilde{\alpha}_{\textup{A}})\geq 2^{2/3}q^{\tau}(q^{3\tau}+2)^{1/3},

3 Compatibility

In Lemma 4.6, we presented the restricted-splitting values for those Ti,j,kT_{i,j,k}’s with k=2k=2, and these values match their original values in Lemma 4.1. Intuitively, this means that, for any level-2 triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), within ZKZ_{K}, the only useful level-1 Z-blocks are those with a specific splitting distribution over the positions {t∈[n]∣Kt=2}\{t\in[n]\mid K_{t}=2\}. When one such level-1 Z-block is useful for (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), we say that they are compatible.

Before we give the formal definition, we first set up some notations. For each triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), we let S2S_{2} be the set of positions tt where Kt=2K_{t}=2. We define Si,j,k={t∈[n]∣(It,Jt,Kt)=(i,j,k)}S_{i,j,k}=\left\{t\in[n]\mid(I_{t},J_{t},K_{t})=(i,j,k)\right\}. Then S2=S0,2,2∪S2,0,2∪S1,1,2S_{2}=S_{0,2,2}\cup S_{2,0,2}\cup S_{1,1,2}. Let ZK^Z_{\widehat{K}} be a level-1 Z-block in ZKZ_{K}. We define its split distribution over a subset of positions as follows.

Fix a level-1 Z-block ZK^Z_{\widehat{K}} where K^\widehat{K} is the level-1 index sequence (K^1,K^2,⋯ ,K^2n)(\widehat{K}_{1},\widehat{K}_{2},\cdots,\widehat{K}_{2n}). For any subset S⊆[n]S\subseteq[n], we define split(K^,S)\textsf{split}(\widehat{K},S) to be the (marginal) split distribution of positions of SS in K^\widehat{K}.

Since we are only considering the split distribution of 22, we require that S⊆S2S\subseteq S_{2} and kl=0,1,2k_{l}=0,1,2. It has support {(0,2),(1,1),(2,0)}\{(0,2),(1,1),(2,0)\}. For simplicity, we write split(K^,S)(kl)≔split(K^,S)(kl,2−kr)\textsf{split}(\widehat{K},S)(k_{l})\coloneqq\textsf{split}(\widehat{K},S)(k_{l},2-k_{r}). (split(I^,S)\textsf{split}(\widehat{I},S) and split(J^,S)\textsf{split}(\widehat{J},S) can be defined similarly.)

Now we are ready to state the condition for ZK^Z_{\widehat{K}} to be useful for (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}).

A level-1 block ZK^Z_{\widehat{K}} is said to be compatible with a level-2 triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) obeying distribution α\alpha if the following conditions are satisfied:

split(K^,S1,1,2)=α~A\textsf{split}(\widehat{K},S_{1,1,2})=\widetilde{\alpha}_{\textup{A}};

split(K^,S0,2,2)=split(K^,S2,0,2)=α~B\textsf{split}(\widehat{K},S_{0,2,2})=\textsf{split}(\widehat{K},S_{2,0,2})=\widetilde{\alpha}_{\textup{B}}.

Here α~A\widetilde{\alpha}_{\textup{A}} and α~B\widetilde{\alpha}_{\textup{B}} are defined as in Lemma 4.6.

Definition 4.8 directly implies that, in order for a level-1 block ZK^Z_{\widehat{K}} to be compatible with any triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) obeying α\alpha, it must satisfy

We will call this quantity α~avg\widetilde{\alpha}_{\textup{avg}}. To see that this equality holds, note that split(K^.S1,1,2)=α~A\textsf{split}(\widehat{K}.S_{1,1,2})=\widetilde{\alpha}_{\textup{A}} and ∣S1,1,2∣/∣S2∣=α(1,1,2)α(1,1,2)+2α(0,2,2)|S_{1,1,2}|/|S_{2}|=\frac{\alpha(1,1,2)}{\alpha(1,1,2)+2\alpha(0,2,2)}. Similarly for split(K^,S0,2,2)\textsf{split}(\widehat{K},S_{0,2,2}) and split(K^,S2,0,2)\textsf{split}(\widehat{K},S_{2,0,2}).

Next, we will analyze the probability for a fixed ZK^∈ZKZ_{\widehat{K}}\in Z_{K} to be compatible with a random triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}). (Here the randomness is over I,JI,J.) We will call it pcompp_{\textup{comp}}. This probability is exactly the “combination loss”: Suppose ZKZ_{K} is only in one remaining triple after hashing. Inside ZKZ_{K}, each ZK^Z_{\widehat{K}} has only pcompp_{\textup{comp}} probability of being compatible with that triple. Hence intuitively, 1−pcomp1-p_{\textup{comp}} fraction of ZK^Z_{\widehat{K}}’s are simply wasted.

Fix a level-2 block ZKZ_{K} and a level-1 block ZK^∈ZKZ_{\widehat{K}}\in Z_{K} satisfying (4.3). Let (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) be a uniformly random triple among all triples that obey α\alpha and contain ZKZ_{K}. Suppose α(0,2,2)=α(2,0,2)=c\alpha(0,2,2)=\alpha(2,0,2)=c and α(1,1,2)=d\alpha(1,1,2)=d. Then we have

where α~A\widetilde{\alpha}_{\textup{A}}, α~B\widetilde{\alpha}_{\textup{B}}, and α~avg\widetilde{\alpha}_{\textup{avg}} are defined in (9), (10), and (4.3), respectively. This probability is the same for any fixed ZK^Z_{\widehat{K}}.

Consider the following distribution: (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) is a random level-2 triple consistent with α\alpha, and ZK^Z_{\widehat{K}} is a random level-1 Z-block inside ZKZ_{K} satisfying (4.3). We have

In the second line, the content inside the expectation notation is independent of II due to symmetry. Thus we can calculate this probability for any fixed triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) consistent with α\alpha:

4 Variant of the Coppersmith-Winograd Algorithm

We now present a slightly modified version of the Coppersmith-Winograd algorithm, which results in the same bound of ω\omega. It contains an additional zeroing-out step which explicitly emphasizes that only compatible Z-blocks contribute to the algorithm. Illustrating this important idea is to prepare for our improved algorithm in the next subsection. Compared to the original version of the CW algorithm, here are two main differences:

We only ensure that α(1,1,2)=α(1,2,1)=α(2,1,1)\alpha(1,1,2)=\alpha(1,2,1)=\alpha(2,1,1) for T1,1,2T_{1,1,2}. For all other Ti,j,kT_{i,j,k}’s we do not require such symmetry since we will apply their non-rotational value. Here T1,1,2T_{1,1,2} is special because it is the only component that is not a matrix multiplication tensor. As a result, in Lemma 4.6, it is the only component without a non-rotational value bound. Hence we need such symmetry to apply its value bound. This is crucial for our improved algorithm which benefits from asymmetric hashing.

For those Ti,j,kT_{i,j,k} with k=2k=2, we replace the use of its value with its restricted-splitting value. Such change explicitly emphasizes the fact that only a few compatible level-1 blocks are used in each level-2 triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}).

In Step 2, we have to ensure that α(1,1,2)=α(1,2,1)=α(2,1,1)\alpha(1,1,2)=\alpha(1,2,1)=\alpha(2,1,1). For other i,j,ki,j,k’s, α\alpha may not be symmetric. Moreover, we also require that we get the same number of level-2 X, Y, and Z variables blocks obeying α\alpha, i.e., NBX=NBY=NBZN_{\textup{BX}}=N_{\textup{BY}}=N_{\textup{BZ}}.

As a result, in Step 3, we can still apply symmetric hashing. After hashing, we have independent level-2 triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K})’s. Every level-2 variable block can only appear in a single triple. That is, we get a subtensor ⨁I,J,KT∣XI,YJ,ZK\bigoplus_{I,J,K}\mathcal{T}|_{X_{I},Y_{J},Z_{K}}, where the direct sum is taken over all remaining triples (I,J,K)(I,J,K), and T∣XI,YJ,ZK\mathcal{T}|_{X_{I},Y_{J},Z_{K}} is the subtensor of T\mathcal{T} over variable sets XI,YJ,ZKX_{I},Y_{J},Z_{K}. Each T∣XI,YJ,ZK\mathcal{T}|_{X_{I},Y_{J},Z_{K}} is isomorphic to Tα≔⨂i+j+k=4Ti,j,k⊗nα(i,j,k)\mathcal{T}^{\alpha}\coloneqq\bigotimes_{i+j+k=4}T^{\otimes n\alpha(i,j,k)}_{i,j,k}.

Before Step 4, we additionally zero out all level-1 blocks ZK^∈ZKZ_{\widehat{K}}\in Z_{K} that are not compatible with (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), where (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) is the unique remaining triple containing the level-2 block ZKZ_{K}. Let Si,j,kS_{i,j,k} and compatibility be defined as in Definition 4.8. ZK^Z_{\widehat{K}} survives such zeroing-out only when split(K^,S1,1,2)=α~A\textsf{split}(\widehat{K},S_{1,1,2})=\widetilde{\alpha}_{\textup{A}}, split(K^,S0,2,2)=split(K^,S2,0,2)=α~B\textsf{split}(\widehat{K},S_{0,2,2})=\textsf{split}(\widehat{K},S_{2,0,2})=\widetilde{\alpha}_{\textup{B}}. Hence the remaining subtensor in each T∣XI,YJ,ZK\mathcal{T}|_{X_{I},Y_{J},Z_{K}} is isomorphic to

This additional step allows us to restrict the split distribution of all remaining ZK^Z_{\widehat{K}}.

Finally, in Step 4, we will use the following values:

For T0,2,2⊗nα(0,2,2)[α~B]T_{0,2,2}^{\otimes n\alpha(0,2,2)}[\widetilde{\alpha}_{\textup{B}}], we use its non-rotational restricted-splitting value Vτ(nrot)(T0,2,2,α~B)V_{\tau}^{(\textup{nrot})}(T_{0,2,2},\widetilde{\alpha}_{\textup{B}}). Similar for T2,0,2⊗nα(2,0,2)[α~B]T_{2,0,2}^{\otimes n\alpha(2,0,2)}[\widetilde{\alpha}_{\textup{B}}].

Recall that α(1,1,2)=α(1,2,1)=α(2,1,1)=d\alpha(1,1,2)=\alpha(1,2,1)=\alpha(2,1,1)=d. For sym3(T1,1,2⊗nα(1,1,2))\textup{sym}_{3}(T_{1,1,2}^{\otimes n\alpha(1,1,2)}), we use its restricted-splitting value Vτ(3)(T1,1,2,α~A)V_{\tau}^{(3)}(T_{1,1,2},\widetilde{\alpha}_{\textup{A}}).

For other components Ti,j,kT_{i,j,k}, we use their non-rotational value Vτ(nrot)(Ti,j,k)V_{\tau}^{(\textup{nrot})}(T_{i,j,k}).

Note that the values in Lemma 4.6 match the values in the original analysis. So this analysis gives exactly the same bound on ω\omega as the original analysis from the original parameter α\alpha. The difference is that now from (4.4), we can explicitly see that only those level-1 blocks ZK^∈ZKZ_{\widehat{K}}\in Z_{K} with a specific splitting distribution are involved. (More specifically, T0,2,2T_{0,2,2}’s and T2,0,2T_{2,0,2}’s must split according to α~B\widetilde{\alpha}_{\textup{B}} while T1,1,2T_{1,1,2}’s must split according to α~A\widetilde{\alpha}_{\textup{A}}.) All other level-1 blocks are wasted (which we call combination loss) in both the original version and the variant. This motivates our improvement.

5 Our Improved Algorithm

Finally, we are ready to present the improved algorithm for the second power. The algorithm follows almost the same steps as Section 4.4 with the following differences.

Symmetric hashing in Step 3 is replaced with asymmetric hashing. Hence each level-2 block ZKZ_{K} is now in multiple remaining triples after Step 3. This is the crucial step that compensates for the “combination loss”.

Additional Zeroing-Out Step 1 is an adaptation of the additional zeroing-out step in Section 4.4. The difference is that now ZKZ_{K} might be in multiple remaining triples. Fix one of them, say (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}). We cannot simply zero out all level-1 blocks ZK^∈ZKZ_{\widehat{K}}\in Z_{K} that are incompatible with this triple, because there might be another remaining triple (XI′,YJ′,ZK)(X_{I^{\prime}},Y_{J^{\prime}},Z_{K}) that ZK^Z_{\widehat{K}} is compatible with.

There is one more step which we call the Additional Zeroing-Out Step 2. In this step, we zero out all the level-1 blocks in ZKZ_{K} that are compatible with more than one remaining triples. This guarantees the independence of these triples.

After the Additional Zeroing-Out Step 2, there will be holes in Z-variables. We have to fix them in Step 4 with the random shuffling technique similar to [KK19].

Similar as Section 4.4, we use the lower bounds given by Lemma 4.6. Note that for T1,1,2T_{1,1,2} we only have a bound on its symmetrized value, so in Step 2, we must have α(1,1,2)=α(1,2,1)=α(2,1,1)\alpha(1,1,2)=\alpha(1,2,1)=\alpha(2,1,1).

Step 2: Choose a distribution.

We specify the component distribution α\alpha by

where 2a+b+3c+3d+6e=12a+b+3c+3d+6e=1. Although for (i,j,k)(i,j,k)’s other than (1,1,2)(1,1,2), the distribution α\alpha does not necessarily have to be symmetric, we still make some of them symmetric just to reduce the number of our parameters.

Note the joint distribution here may not be the maximum entropy distribution that has the same marginals, i.e. α≠D∗(αX,αY,αZ)\alpha\neq D^{*}({\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}). This may incur the hash loss mentioned in Section 3.10 and Remark 4.3. We will take such loss into account in the analysis (specifically, in Remark 4.15).

The marginal distributions can be calculated accordingly:

By symmetry between X and Y, we always have αY=αX{\alpha}_{\scriptscriptstyle\textup{Y}}={\alpha}_{\scriptscriptstyle\textup{X}}.

Denote by NBX,NBY,NBZN_{\textup{BX}},N_{\textup{BY}},N_{\textup{BZ}} the number of X, Y, and Z-blocks in T\mathcal{T} consistent with these marginal distributions, given by

We require that NBX=NBY>NBZN_{\textup{BX}}=N_{\textup{BY}}>N_{\textup{BZ}}.

Step 3: Asymmetric Hashing.

As explained in Step 2, the distribution α\alpha may not equal to D∗(αX,αY,αZ)D^{*}({\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}). In this case, asymmetric hashing can still be applied with a proper modulus MM at the cost of introducing an extra hash loss. (We will explicitly consider it in Remark 4.15.)

Additional Zeroing-Out Step 1.

Fix any level-2 triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) and level-1 block ZK^∈ZKZ_{\widehat{K}}\in Z_{K}. Similar to the additional zeroing-out step in Section 4.4, this step aims to ensure that, if ZK^Z_{\widehat{K}} is not compatible with (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), there will be no terms between XI,YJX_{I},Y_{J} and ZK^Z_{\widehat{K}}. In other words, for all XI^∈XIX_{\widehat{I}}\in X_{I}, YJ^∈YJY_{\widehat{J}}\in Y_{J} such that I^+J^+K^=(2,2,…,2)\widehat{I}+\widehat{J}+\widehat{K}=(2,2,\ldots,2), at least one of the level-1 blocks XI^X_{\widehat{I}}, YJ^Y_{\widehat{J}} and ZK^Z_{\widehat{K}} has to be zeroed out.

In Section 4.4, since each ZKZ_{K} was in a unique triple, we just zeroed out all ZK^Z_{\widehat{K}}’s that are not compatible with XIX_{I} and YJY_{J}. Now ZKZ_{K} might be in multiple triples due to asymmetric hashing. Even when ZK^Z_{\widehat{K}} is not compatible with XIX_{I} and YJY_{J}, we still cannot zero it out because it might be compatible with some other XI′X_{I^{\prime}} and YJ′Y_{J^{\prime}}.

The fix is to zero out XI^X_{\widehat{I}} or YJ^Y_{\widehat{J}} instead. For any level-2 block XIX_{I} (or YJY_{J}), there is a unique remaining triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) containing it. Recall that we have defined Si,j,k={t∈[n]∣(It,Jt,Kt)=(i,j,k)}S_{i,j,k}=\left\{t\in[n]\mid(I_{t},J_{t},K_{t})=(i,j,k)\right\} and S2=S0,2,2∪S2,0,2∪S1,1,2S_{2}=S_{0,2,2}\cup S_{2,0,2}\cup S_{1,1,2}.

Suppose XI^∈XIX_{\widehat{I}}\in X_{I} and YJ^∈YJY_{\widehat{J}}\in Y_{J} satisfy I^+J^+K^=(2,2,…,2)\widehat{I}+\widehat{J}+\widehat{K}=(2,2,\ldots,2). When Jt=0J_{t}=0, since (I^2t−1,I^2t)+(J^2t−1,J^2t)+(K^2t−1,K^2t)=(2,2)(\widehat{I}_{2t-1},\widehat{I}_{2t})+(\widehat{J}_{2t-1},\widehat{J}_{2t})+(\widehat{K}_{2t-1},\widehat{K}_{2t})=(2,2), we must have (I^2t−1,I^2t)=(2−K^2t−1,2−K^2t)(\widehat{I}_{2t-1},\widehat{I}_{2t})=(2-\widehat{K}_{2t-1},2-\widehat{K}_{2t}). This implies that split(I^,S2,0,2)(i′)=split(K^,S2,0,2)(2−i′)\textsf{split}(\widehat{I},S_{2,0,2})(i^{\prime})=\textsf{split}(\widehat{K},S_{2,0,2})(2-i^{\prime}). Let α~B(rev)\widetilde{\alpha}_{\textup{B}}^{(\textup{rev})} be the marginal split distribution defined by

Suppose ZK^Z_{\widehat{K}} is not compatible with XI,YJX_{I},Y_{J} (violating Definition 4.8) due to split(K^,S2,0,2)≠α~B\textsf{split}(\widehat{K},S_{2,0,2})\neq\widetilde{\alpha}_{\textup{B}}. Then by zeroing out all XI^∈XIX_{\widehat{I}}\in X_{I} where split(I^,S2,0,2)≠α~B(rev)\textsf{split}(\widehat{I},S_{2,0,2})\neq\widetilde{\alpha}_{\textup{B}}^{(\textup{rev})}, we can make sure that there is no term between XI,YJX_{I},Y_{J} and ZK^Z_{\widehat{K}}.

Similarly, if ZK^Z_{\widehat{K}} is not compatible with XI,YJX_{I},Y_{J} due to split(K^,S0,2,2)≠α~B\textsf{split}(\widehat{K},S_{0,2,2})\neq\widetilde{\alpha}_{\textup{B}}, we zero out all YJ^∈YJY_{\widehat{J}}\in Y_{J} with split(K^,S0,2,2)≠α~B(rev)\textsf{split}(\widehat{K},S_{0,2,2})\neq\widetilde{\alpha}_{\textup{B}}^{(\textup{rev})}. Finally, if ZK^Z_{\widehat{K}} is incompatible with XI,YJX_{I},Y_{J} due to split(K^,S1,1,2)≠α~A\textsf{split}(\widehat{K},S_{1,1,2})\neq\widetilde{\alpha}_{\textup{A}} while split(K^,S0,2,2)=split(K^,S2,0,2)=α~B\textsf{split}(\widehat{K},S_{0,2,2})=\textsf{split}(\widehat{K},S_{2,0,2})=\widetilde{\alpha}_{\textup{B}}, we must have split(K^,S2)≠α~avg\textsf{split}(\widehat{K},S_{2})\neq\widetilde{\alpha}_{\textup{avg}}. In this case, ZK^Z_{\widehat{K}} cannot be compatible with any XI,YJX_{I},Y_{J}, and we simply zero out ZK^Z_{\widehat{K}}.

Formally, in this step, we do the following:

For all level-2 block XIX_{I} and level-1 block XI^∈XIX_{\widehat{I}}\in X_{I}, define Si,j,k={t∈[n]∣(It,Jt,Kt)=(i,j,k)}S_{i,j,k}=\left\{t\in[n]\mid(I_{t},J_{t},K_{t})=(i,j,k)\right\} with respect to the unique remaining triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) that XIX_{I} is in. We zero out XI^X_{\widehat{I}} if and only if split(I^,S2,0,2)≠α~B(rev)\textsf{split}(\widehat{I},S_{2,0,2})\neq\widetilde{\alpha}_{\textup{B}}^{(\textup{rev})}.

For all level-2 block YJY_{J} and all level-1 block YJ^∈YJY_{\widehat{J}}\in Y_{J}, define Si,j,kS_{i,j,k} with respect to the unique remaining triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) that YJY_{J} is in. We zero out YJ^Y_{\widehat{J}} if and only if split(J^,S0,2,2)≠α~B(rev)\textsf{split}(\widehat{J},S_{0,2,2})\neq\widetilde{\alpha}_{\textup{B}}^{(\textup{rev})}.

For all level-2 block ZKZ_{K} and level-1 block ZK^∈ZKZ_{\widehat{K}}\in Z_{K}, let S2={t∈[n]∣Kt=2}S_{2}=\{t\in[n]\mid K_{t}=2\}. We zero out ZK^Z_{\widehat{K}} if and only if split(K^,S2)≠α~avg\textsf{split}(\widehat{K},S_{2})\neq\widetilde{\alpha}_{\textup{avg}}.

From our discussion above, we can conclude the following lemma. Its formal proof is deferred to Appendix A.

Let (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) be a remaining level-2 triple. For all XI^∈XI,YJ^∈YJ,ZK^∈ZKX_{\widehat{I}}\in X_{I},Y_{\widehat{J}}\in Y_{J},Z_{\widehat{K}}\in Z_{K} such that I^+J^+K^=(2,2,…,2)\widehat{I}+\widehat{J}+\widehat{K}=(2,2,\ldots,2), if ZK^Z_{\widehat{K}} is not compatible with XI,YJX_{I},Y_{J}, at least one of XI^,YJ^,ZK^X_{\widehat{I}},Y_{\widehat{J}},Z_{\widehat{K}} is zeroed out in Additional Zeroing-Out Step 1.

Fix a remaining triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}). In the modified CW algorithm described in Section 4.4, after additional zeroing out, the remaining subtensor in T∣XI,YJ,ZK\mathcal{T}|_{X_{I},Y_{J},Z_{K}} is isomorphic to T∗\mathcal{T}^{*}:

The following lemma says that this is also the case here.

Let (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) be a remaining level-2 triple. Let T(1)\mathcal{T}^{(1)} be the tensor obtained after Additional Zeroing-Out Step 1. We have

Fix any level-1 triple (XI^,YJ^,ZK^)(X_{\widehat{I}},Y_{\widehat{J}},Z_{\widehat{K}}). In T(1)∣XI,YJ,ZK\mathcal{T}^{(1)}|_{X_{I},Y_{J},Z_{K}}, it survives if and only if (1) split(K^,S2)=α~avg\textsf{split}(\widehat{K},S_{2})=\widetilde{\alpha}_{\textup{avg}}; and (2) split(I^,S2,0,2)=split(J^,S0,2,2)=α~B(rev)\textsf{split}(\widehat{I},S_{2,0,2})=\textsf{split}(\widehat{J},S_{0,2,2})=\widetilde{\alpha}_{\textup{B}}^{(\text{rev})}.

First of all, since I^+J^+K^=(2,2,…,2)\widehat{I}+\widehat{J}+\widehat{K}=(2,2,\dots,2), we know (2) is equivalent to split(K^,S0,2,2)=split(K^,S2,0,2)=α~B\textsf{split}(\widehat{K},S_{0,2,2})=\textsf{split}(\widehat{K},S_{2,0,2})=\widetilde{\alpha}_{\textup{B}}. Moreover, given (2) holds, (1) is equivalent to

Thus (1) and (2) together are equivalent to split(K^,S1,1,2)=α~A\textsf{split}(\widehat{K},S_{1,1,2})=\widetilde{\alpha}_{\textup{A}} and split(K^,S0,2,2)=split(K^,S2,0,2)=α~B\textsf{split}(\widehat{K},S_{0,2,2})=\textsf{split}(\widehat{K},S_{2,0,2})=\widetilde{\alpha}_{\textup{B}}. The survived level-1 triples (XI^,YJ^,ZK^)(X_{\widehat{I}},Y_{\widehat{J}},Z_{\widehat{K}}) are exactly those in T∗\mathcal{T}^{*}. ∎

Additional Zeroing-Out Step 2.

In this step, we zero out all level-1 Z-blocks ZK^Z_{\widehat{K}} that are compatible with more than one remaining level-2 triples. Namely, we zero out ZK^∈ZKZ_{\widehat{K}}\in Z_{K} if and only if ZK^Z_{\widehat{K}} is compatible with both XI,YJX_{I},Y_{J} and XI′,YJ′X_{I^{\prime}},Y_{J^{\prime}} for some I≠I′,J≠J′I\neq I^{\prime},J\neq J^{\prime}, while (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) and (XI′,YJ′,ZK)(X_{I^{\prime}},Y_{J^{\prime}},Z_{K}) both remained in hashing. We call the obtained tensor T(2)\mathcal{T}^{(2)}.

Now, for a remaining triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), the subtensor T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} may not be isomorphic to T∗\mathcal{T}^{*}, (in contrast with T(1)∣XI,YJ,ZK\mathcal{T}^{(1)}|_{X_{I},Y_{J},Z_{K}} and Lemma 4.11). But it is almost T∗\mathcal{T}^{*} except that some level-1 Z-blocks are zeroed out. We call these level-1 Z-blocks “holes”. In Section 4.6, we will show that the fraction of holes phole<1/2p_{\textup{hole}}<1/2. Strictly, pholep_{\text{hole}} is defined as the probability of each level-1 Z-block being a hole. The formal definition will be presented later. Using this fact, we can fix the holes in Step 4.

Step 4: Degenerate Each Triple Independently and Fix Holes.

If there are no such holes, we can simply follow Step 4 in Section 4.4. We will use the same values as Section 4.4:

For T0,2,2⊗nα(0,2,2)[α~B]T_{0,2,2}^{\otimes n\alpha(0,2,2)}[\widetilde{\alpha}_{\textup{B}}], we use its non-rotational restricted-splitting value Vτ(nrot)(T0,2,2,α~B)V_{\tau}^{(\textup{nrot})}(T_{0,2,2},\widetilde{\alpha}_{\textup{B}}). Similar for T2,0,2⊗nα(2,0,2)[α~B]T_{2,0,2}^{\otimes n\alpha(2,0,2)}[\widetilde{\alpha}_{\textup{B}}].

Recall that α(1,1,2)=α(1,2,1)=α(2,1,1)=c\alpha(1,1,2)=\alpha(1,2,1)=\alpha(2,1,1)=c. For sym3(T1,1,2⊗nα(1,1,2))\textup{sym}_{3}(T_{1,1,2}^{\otimes n\alpha(1,1,2)}), we use its restricted-splitting value Vτ(3)(T1,1,2,α~A)V_{\tau}^{(3)}(T_{1,1,2},\widetilde{\alpha}_{\textup{A}}).

For other components Ti,j,kT_{i,j,k}’s, we use their non-rotational value Vτ(nrot)(Ti,j,k)V_{\tau}^{(\textup{nrot})}(T_{i,j,k}).

If we ignore the holes, we can directly use these values to get the bound

Any lower bound Vτ(nrot)(T∗)≥vV_{\tau}^{\textup{(nrot)}}(\mathcal{T}^{*})\geq v, by Definition 4.4, gives a degeneration T∗ ⊵ ⨁i=1s⟨ai,bi,ci⟩\mathcal{T}^{*}\ \unrhd\ \bigoplus_{i=1}^{s}\left\langle{a_{i},b_{i},c_{i}}\right\rangle with ∑i=1s(aibici)τ≥v\sum_{i=1}^{s}(a_{i}b_{i}c_{i})^{\tau}\geq v. Strictly speaking, it gives a degeneration (T∗)⊗m ⊵ ⨁i=1s⟨ai,bi,ci⟩(\mathcal{T}^{*})^{\otimes m}\ \unrhd\ \bigoplus_{i=1}^{s}\left\langle{a_{i},b_{i},c_{i}}\right\rangle with \big{(}\sum_{i=1}^{s}(a_{i}b_{i}c_{i})^{\tau}\big{)}^{1/m}\geq v. It is easy to see that as n→∞n\rightarrow\infty, we can without loss of generality let m=1m=1 for T∗\mathcal{T}^{*}. To fix the holes, it is not enough to only use the lower bound (13). We need to open the black box and use the following lemma about the corresponding degeneration. We also defer its proof to Appendix A.

The degeneration given by the lower bound (13) produces matrix multiplication tensors of the same size, i.e., T∗ ⊵ ⨁i=1s⟨\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P⟩\mathcal{T}^{*}\ \unrhd\ \bigoplus_{i=1}^{s}\left\langle{\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}}\right\rangle. Moreover, the degeneration is simply a zeroing out.

Now we start to fix the holes. We call a matrix multiplication tensor with holes broken. We will fix them with the following lemma. The idea is straightforward: Suppose half of the Z-variables in a matrix multiplication tensor are holes. Then this broken tensor gives us the correct answer to half of the entries in the result matrix. If we can randomly permute the holes and repeat multiple times, then with high probability, we will get all the entries correct. The proof of Lemma 4.13 will be given in Section 4.7.

Let ss be an integer. For each i∈[s]i\in[s], Ti′T^{\prime}_{i} is a broken copy of the matrix multiplication tensor ⟨\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P⟩\left\langle{\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}}\right\rangle in which (1−ηi)(1-\eta_{i}) fraction of Z-variables are holes. If ∑i=1sηi≥log⁡(\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P)+1\sum_{i=1}^{s}\eta_{i}\geq\log(\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P})+1, then

That is, from the direct sum of broken matrix multiplication tensors, we can degenerate to an unbroken one.

In this step, we first observe that each remaining triple gives an independent broken copy of T∗\mathcal{T}^{*}. For triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) and level-1 block ZK^∈ZKZ_{\widehat{K}}\in Z_{K}, we formally define phole(K^,I,J,K)p_{\text{hole}}(\widehat{K},I,J,K) as the probability that ZK^Z_{\widehat{K}} is a hole, conditioned on (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) is retained in the hashing step, and provided that ZK^∈ZKZ_{\widehat{K}}\in Z_{K} is compatible with (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}). In Section 4.6, we will show that phole(K^,I,J,K)<1/2p_{\text{hole}}(\widehat{K},I,J,K)<1/2 for any fixed (XI,YJ,ZK)\left(X_{I},Y_{J},Z_{K}\right) and ZK^Z_{\widehat{K}}.

We then apply Lemma 4.12 to degenerate these broken copies of T∗\mathcal{T}^{*} into broken matrix multiplication tensors of the same size. Since the degeneration is simply zeroing out, each entry in the broken matrix multiplication tensor is mapped from a single variable in T∗\mathcal{T}^{*}. Since phole(K^,I,J,K)<1/2p_{\text{hole}}(\widehat{K},I,J,K)<1/2, each entry in the Z-matrices is a hole with probability less than a half. There are no X or Y holes.

Formally, we divide T1′,…,Tm′T^{\prime}_{1},\ldots,T^{\prime}_{m} into groups in which the sum of ηi\eta_{i}’s satisfies log⁡(\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P)+1≤∑ηi≤log⁡(\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P)+2\log(\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P})+1\leq\sum\eta_{i}\leq\log(\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P})+2. We independently apply Lemma 4.13 to each group of tensors, and each group will degenerate to a complete ⟨\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P⟩\left\langle{\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}}\right\rangle.

In this analysis, we require that α(1,1,2)=α(1,2,1)=α(2,1,1)\alpha(1,1,2)=\alpha(1,2,1)=\alpha(2,1,1) because we do not have a lower bound for T1,1,2T_{1,1,2}’s non-symmetric value in Lemma 4.6. We also required α\alpha to be symmetric for T0,0,4,T0,1,3T_{0,0,4},T_{0,1,3} just to minimize the number of parameters.

We would like to point out this is not optimal. Breaking the symmetry of T0,0,4,T0,1,3T_{0,0,4},T_{0,1,3} could help improve the bound. Another natural attempt would be to further break the symmetry for T1,1,2T_{1,1,2}: The challenge is that we do not have a non-rotational value for T1,1,2T_{1,1,2}. One attempt is to do another symmetrization of T(2)\mathcal{T}^{(2)} and consider sym3(T(2))=T(2)⊗(T(2))rot⊗(T(2))rot  rot\textup{sym}_{3}\left(\mathcal{T}^{(2)}\right)=\mathcal{T}^{(2)}\otimes\left(\mathcal{T}^{(2)}\right)^{\textup{rot}}\otimes\left(\mathcal{T}^{(2)}\right)^{\textup{rot}\;\textup{rot}}. But as T(2)\mathcal{T}^{(2)} has holes in its Z-variables, the symmetrization sym3(T(2))\textup{sym}_{3}\left(\mathcal{T}^{(2)}\right) would have holes not only in Z-variables but also in X and Y-variables, then one can no longer apply Lemma 4.13 to fix them. This is why we consider non-rotational values in this section to avoid such symmetrization. To solve this issue, we will introduce a more general Hole Lemma in Section 5, which can fix the holes in T(2)\mathcal{T}^{(2)} before we symmetrize it. After that, we may break the symmetry for T1,1,2T_{1,1,2}, T1,2,1T_{1,2,1} and T2,1,1T_{2,1,1}, obtaining better bounds than the current section. (See Section 6.3.)

6 Analysis

NBX,NBY,NBZN_{\textup{BX}},N_{\textup{BY}},N_{\textup{BZ}} denote the number of X, Y, and Z-blocks consistent with αX,αY,αZ{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}, respectively.

NαN_{\alpha} is the number of triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) whose joint distribution is consistent with α\alpha, while NαX,αY,αZN_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}} is the number of triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) whose marginal distributions are consistent with αX,αY,αZ{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}.

pcompp_{\textup{comp}} is the probability that a uniformly random triple obeying α\alpha and containing ZKZ_{K} is consistent with a fixed level-1 block ZK^∈ZKZ_{\widehat{K}}\in Z_{K}.

We will use NretN_{\textup{ret}} to denote the number of retained triples with joint distribution α\alpha that we get after asymmetric hashing.

Since α\alpha may not be the maximum entropy joint distribution over all joint distributions consistent with marginals αX,αY,αZ{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}} (i.e. α≠D∗(αX,αY,αZ)\alpha\neq D^{*}({\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}})), we might have NαX,αY,αZ>NαN_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}>N_{\alpha}, which incurs the hash loss (see Section 3.10 for details). As a result, after hashing and zeroing out, only NBX⋅NαNαX,αY,αZN_{\textup{BX}}\cdot\frac{N_{\alpha}}{N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}} triples consistent with α\alpha are retained.

By Lemma 4.9, since here α(0,2,2)=α(2,0,2)=a,α(1,1,2)=c\alpha(0,2,2)=\alpha(2,0,2)=a,\alpha(1,1,2)=c, we have

(Note this is the same equation as Lemma 4.9 but with a different set of parameters for α\alpha.) The parameters we select will satisfy the additional assumption

so that after we apply asymmetric hashing method, each level-2 Z-block ZKZ_{K} will be matched to at most NBX/NBZ≤1/pcompN_{\textup{BX}}/N_{\textup{BZ}}\leq 1/p_{\text{comp}} many level-2 X/Y blocks on average. Then by the definition of pcompp_{\text{comp}}, each level-1 block ZK^∈ZKZ_{\widehat{K}}\in Z_{K} will in expectation be consistent with at most one of them.

Probability of Being a Hole.

Let (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) be a triple retained in the hashing step, and ZK^∈ZKZ_{\widehat{K}}\in Z_{K} be some level-1 block that is compatible with (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}). Now we analyze the probability for ZK^Z_{\widehat{K}} to be a hole, denoted by phole(K^,I,J,K)p_{\textup{hole}}(\widehat{K},I,J,K).

A necessary condition for ZK^Z_{\widehat{K}} to be a hole is that there exist some other blocks XI′X_{I^{\prime}} and YJ′Y_{J^{\prime}} (I′≠I)(I^{\prime}\neq I) such that (1) (XI′,YJ′,ZK)(X_{I^{\prime}},Y_{J^{\prime}},Z_{K}) forms a triple consistent with α\alpha; (2) hX(I′)=hX(I)=hZ(K)h_{\textup{X}}(I^{\prime})=h_{\textup{X}}(I)=h_{\textup{Z}}(K), i.e., I′I^{\prime} has the same hash value as the triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}); and (3) ZK^Z_{\widehat{K}} is compatible with (XI′,YJ′,ZK)(X_{I^{\prime}},Y_{J^{\prime}},Z_{K}). (Note that J′J^{\prime} is determined by I′I^{\prime}.) We will count the expected number of such I′I^{\prime} using the following two facts:

The choice of MM and Assumption (4.6) implies that

where I′I^{\prime} on the fourth line is chosen uniformly at random to let (XI′,YJ′,ZK)(X_{I^{\prime}},Y_{J^{\prime}},Z_{K}) form a triple consistent with α\alpha.

Bounding the Value.

Here we follow the notation of [AW21b] and use αVτ\alpha_{\scriptscriptstyle\textit{V}_{\tau}} to denote the lower bound on lim⁡n→∞((\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P)τ⋅s)1/n\displaystyle\lim_{n\rightarrow\infty}((\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M}\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P})^{\tau}\cdot s)^{1/n}, that is, the total volume of matrix multiplication tensors we finally get normalized by taking the nn-th root.

From T\mathcal{T}, we can get in total m=sNretm=sN_{\textup{ret}} matrix multiplication tensors with holes, and further fix the holes to obtain m′m^{\prime} copies of ⟨\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P⟩\left\langle{\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}}\right\rangle without holes. Recall that for all i∈[m]i\in[m], we let ηi\eta_{i} be the fraction of non-hole entries in the ii-th matrix multiplication tensor we get. From Lemma 4.13, we know that

Let v≔m′(\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P)τv\coloneqq m^{\prime}(\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M}\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P})^{\tau} be the total volume of the matrix multiplication tensors we get. We have

How to Verify Our Numerical Results.

αBX≔lim⁡n→∞NBX1/n\alpha_{\scriptscriptstyle\textup{BX}}\coloneqq\displaystyle\lim_{n\rightarrow\infty}N_{\textup{BX}}^{1/n}, i.e. the number of level-2 X/Y-blocks normalized by taking nn-th root.

Similarly, αBZ≔lim⁡n→∞NBZ1/n\alpha_{\scriptscriptstyle\textup{BZ}}\coloneqq\displaystyle\lim_{n\rightarrow\infty}N_{\textup{BZ}}^{1/n} is that of the Z-blocks.

αN≔lim⁡n→∞Nα1/n\displaystyle\alpha_{\scriptscriptstyle\textup{N}}\coloneqq\lim_{n\rightarrow\infty}N_{\alpha}^{1/n} is the number of triples that have joint distribution α\alpha.

αP≔lim⁡n→∞pcomp1/n\displaystyle\alpha_{\scriptscriptstyle\textup{P}}\coloneqq\lim_{n\rightarrow\infty}p_{\textup{comp}}^{1/n} is the (normalized) probability that a uniformly random triple obeying α\alpha and containing ZKZ_{K} is consistent with a fixed level-1 block ZK^∈ZKZ_{\widehat{K}}\in Z_{K}.

In such notations, max⁡α′∈DααN′=lim⁡n→∞NαX,αY,αZ1/n\displaystyle\max_{\alpha^{\prime}\in D_{\alpha}}\alpha_{\scriptscriptstyle\textup{N}}^{\prime}=\lim_{n\rightarrow\infty}N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}^{1/n} as proved in Lemma 3.12.

Assumption (4.6) can be verified by checking

where α~A,α~B\widetilde{\alpha}_{\textup{A}},\widetilde{\alpha}_{\textup{B}} are defined in Lemma 4.6 and are independent of α\alpha; α~avg\widetilde{\alpha}_{\textup{avg}} depends on a=α(0,2,2)a=\alpha(0,2,2) and c=α(1,1,2)c=\alpha(1,1,2). Specifically, α~avg=cc+2aα~A+2ac+2aα~B\widetilde{\alpha}_{\textup{avg}}=\frac{c}{c+2a}\widetilde{\alpha}_{\textup{A}}+\frac{2a}{c+2a}\widetilde{\alpha}_{\textup{B}} as defined in (4.3).

Note that in Step 2, the objective αN′\alpha^{\prime}_{\scriptscriptstyle\textup{N}} is log-concave which allows efficient solvers that guarantee optimality. Although we have limitations on α\alpha so that it is determined by 5 variables a,b,c,d,ea,b,c,d,e (4 of which are free variables), α′\alpha^{\prime} has a much larger degree of freedom. For example, we require α(1,1,2)=α(2,1,1)=α(1,2,1)\alpha(1,1,2)=\alpha(2,1,1)=\alpha(1,2,1) since we need to use the 3-rotational value of T1,1,2T_{1,1,2}, but α′\alpha^{\prime} is allowed to violate such symmetry. Hence, max⁡α′∈DααN′\max_{\alpha^{\prime}\in D_{\alpha}}\alpha^{\prime}_{\scriptscriptstyle\textup{N}} is usually strictly larger than αN\alpha_{\scriptscriptstyle\textup{N}}.

Finding Good Parameters.

To find these parameters a,b,c,d,ea,b,c,d,e, we need to optimize the following program:

However, this optimization problem is non-convex and has a complicated form. Instead of solving it perfectly, we will use heuristics described in Appendix B to get a feasible (but not necessarily optimal) bound.

Although we use more complicated optimization techniques than prior work, it is clear that our improvement of ω\omega comes from the new theoretical ideas instead of better calculation – when applying the prior approach on the second power of the CW tensor, the optimal parameters are easy to derive and prove optimality (see [CW90]). I.e., better calculation can only improve the bound on higher powers, but not the second power. The best known bound by analyzing the second power remains unchanged since [CW90].

Numerical Results.

We use (15) together with Schönhage’s τ\tau theorem (Theorem 3.2) to obtain an upper bound of ω\omega.The optimization and verification code for this section is available at https://osf.io/dta6p/?view_only=cf30d3e1ca2f4fe5b4142f65d28b92fd. Set

Given the parameters, the bound can be verified via Section 4.6. According to the definitions, one can calculate

hence (4.6) is satisfied. Also, by running Section 4.6 we can see that αN/max⁡α′∈DααN′≈1−2.49×10−7\alpha_{\scriptscriptstyle\textup{N}}/\max_{\alpha^{\prime}\in D_{\alpha}}\alpha^{\prime}_{\scriptscriptstyle\textup{N}}\approx 1-2.49\times 10^{-7}, which means the hash loss is very small (and thus the first heuristic in Appendix B is very accurate). The implied bound is ω<2.375234\omega<2.375234.

7 Proof of Matrix Hole Lemma.

The last ingredient of our analysis is the proof of Lemma 4.13. Guided by the explanation in the previous subsection, we formally state its proof. We first recall the lemma:

Let SU\mathcal{S}_{U} denote the symmetric group over UU. For each Tt′T^{\prime}_{t}, we sample σ1(t)∈S[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N]\sigma_{1}^{(t)}\in\mathcal{S}_{[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}]}, σ2(t)∈S[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M]\sigma_{2}^{(t)}\in\mathcal{S}_{[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M}]}, and σ3(t)∈S[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P]\sigma_{3}^{(t)}\in\mathcal{S}_{[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}]} uniformly. Then, let Tt′′T^{\prime\prime}_{t} be the degeneration of Tt′T^{\prime}_{t} with the following mappings:

Here Tt′T^{\prime}_{t} is a tensor over {xi,j(t)},{yj,k(t)}\{x^{(t)}_{i,j}\},\{y^{(t)}_{j,k}\}, and {zk,i(t)}\{z^{(t)}_{k,i}\}, for i∈[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N]i\in[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}], j∈[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M]j\in[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M}], and k∈[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P]k\in[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}]; Tt′′T^{\prime\prime}_{t} is over {\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111xi,j(t)},{\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111yj,k(t)}\{{\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{x}}^{(t)}_{i,j}\},\{{\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{y}}^{(t)}_{j,k}\}, and {\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111zk,i(t)}\{{\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{z}}^{(t)}_{k,i}\}. Such degeneration is intuitively a “renaming” of the variables. The only effect of this degeneration is to shuffle the positions of the holes. One can observe that the preimage of some variable \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111zk,i(t){\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{z}}^{(t)}_{k,i} is uniformly random over all Z-variables in Tt′T^{\prime}_{t}, i.e., {zk′,i′(t)}k′∈[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P], i′∈[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N]\{z^{(t)}_{k^{\prime},i^{\prime}}\}_{k^{\prime}\in[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}],\,i^{\prime}\in[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}]}. As a corollary,

Moreover, events of this type are independent for different tt’s when k,ik,i are fixed.

If for some pair (k,i)∈[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P]×[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N](k,i)\in[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}]\times[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}], there exists some tt such that \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111zk,i(t){\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{z}}^{(t)}_{k,i} is not a hole in Tt′′T^{\prime\prime}_{t}, we call (k,i)(k,i) a good position; otherwise we call it a bad position. The probability of (k,i)(k,i) being a bad position is

For each position (k,i)(k,i), we let tk,it_{k,i} be the first tt such that \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111zk,i(t){\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{z}}^{(t)}_{k,i} is not a hole in Tt′′T^{\prime\prime}_{t}. Then, we make the following degeneration from ⨁t=1sTt′′\bigoplus_{t=1}^{s}T^{\prime\prime}_{t} to ⟨\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P⟩\left\langle{\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}}\right\rangle:

Here we denote by {xi,j∗},{yj,k∗}\{x^{*}_{i,j}\},\{y^{*}_{j,k}\}, and {zk,i∗}\{z^{*}_{k,i}\} the variable sets of the result tensor ⟨\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P⟩\left\langle{\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}}\right\rangle, where i∈[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N],j∈[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M]i\in[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N}],j\in[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M}], and k∈[\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P]k\in[\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}]. One can verify that the degeneration above correctly produces ⟨\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111N,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111M,\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111P⟩\left\langle{\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{N},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{M},\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{P}}\right\rangle. Notice that the X and Y-variables in different Tt′′T^{\prime\prime}_{t} are mapped to the same matrices through identification; Z-variables are zeroed out properly to avoid duplicated terms. This degeneration, combined with the fact that Tt′⊵Tt′′T^{\prime}_{t}\unrhd T^{\prime\prime}_{t}, concludes our proof. ∎

This section is only a minimum working example of compensating for the combination loss. It gives the bound ω<2.375234\omega<2.375234, which already improves upon the bound ω<2.375477\omega<2.375477 of Coppersmith-Winograd [CW90] for the second power. However, we can get a better bound for the second power via more careful modifications.

For example, here we require the distribution for (1,1,2)(1,1,2) to be symmetric to get around the difficulty mentioned in Remark 4.14. In Section 5, we will extend Lemma 4.13 to broken tensors like T∗\mathcal{T}^{*} (not only matrix multiplication tensors). With its help, we first fix holes in T∗\mathcal{T}^{*}, then symmetrize the tensor, and finally degenerate it into matrix multiplication tensors. This would allow us to also break the symmetry for (1,1,2)(1,1,2).

Another further improvement will be modifying the split restrictions α~A\widetilde{\alpha}_{\textup{A}} and α~B\widetilde{\alpha}_{\textup{B}}. Recall that in this section, they are set to the distributions induced by the original parameters used in [CW90]. In later sections, we will modify these distributions α~A\widetilde{\alpha}_{\textup{A}} and α~B\widetilde{\alpha}_{\textup{B}}. Although the restricted-splitting values will decrease, pcompp_{\textup{comp}} will be significantly smaller, so that each Z-block ZKZ_{K} can be shared by more triples. By setting proper parameters, we finally get the bound ω<2.374631\omega<2.374631 from the second power, whose parameters will be given in Section 6.3. We will present the method for this result and its generalization to higher powers in the rest of the paper.

Hole Lemma

Notice that in such T∗\mathcal{T}^{*}, we are only restricting the Z-split distribution of those Ti,j,kT_{i,j,k}’s with k=2k=2. This was because there are two ways to split 22 (up to reflection symmetry), i.e., 2+02+0 (or 0+20+2) and 1+11+1. On the contrary, there is only one way to split , 11, and 33, so their split distributions are trivial. This reason is specific to the second level. We might as well just restrict the split distribution of all Ti,j,kT_{i,j,k}’s in T∗\mathcal{T}^{*}, as what we will do in Definition 5.2.

Our definition of standard form tensor captures this type of tensor like T∗\mathcal{T}^{*} above.

Let T∗\mathcal{T}^{*} be a standard form tensor with parameters {nt,it,jt,kt,α~t}t∈[m].\left\{n_{t},i_{t},j_{t},k_{t},\widetilde{\alpha}_{t}\right\}_{t\in[m]}. Set N=∑t=1mntN=\sum_{t=1}^{m}n_{t}. A small Z-block in T∗\mathcal{T}^{*} is indexed by sequence K^=(K^1,K^2,…,K^2N)\widehat{K}=(\widehat{K}_{1},\widehat{K}_{2},\dots,\widehat{K}_{2N}) such that the following holds:

The corresponding small Z-block in T∗\mathcal{T}^{*} is defined as the variable set ZK^1×ZK^2×⋯×ZK^2N≕ZK^Z_{\widehat{K}_{1}}\times Z_{\widehat{K}_{2}}\times\dots\times Z_{\widehat{K}_{2N}}\eqqcolon Z_{\widehat{K}}. We similarly define small X-blocks and small Y-blocks. Throughout this section, whenever we mention “blocks,” we are refering to the small blocks.

All small X and Y-blocks defined in this way exist as variables in T∗\mathcal{T}^{*}. However, some of the Z-blocks do not exist, because there is also restrictions of Z-split distributions α~t\widetilde{\alpha}_{t}. Not all small Z-blocks satisfy this restriction. This leads to the following definition.

We say a small Z-block ZK^Z_{\widehat{K}} is available in T∗\mathcal{T}^{*} if for all 1≤t≤m1\leq t\leq m and k′+k′′=ktk^{\prime}+k^{\prime\prime}=k_{t}, we have

All Z-variables in T∗\mathcal{T}^{*} is exactly the union of available small Z-blocks in T∗\mathcal{T}^{*}. Now we define the standard form tensor with holes:

A tensor T′\mathcal{T}^{\prime} is a broken copy of T∗\mathcal{T}^{*}, if it can be obtained from T∗\mathcal{T}^{*} by zeroing out several available small Z-blocks.

The zeroed-out small Z-blocks are called holes, while other available small Z-blocks are called non-hole blocks.

The proportion of holes among all available small Z-blocks in T∗\mathcal{T}^{*} is called the fraction of holes; conversely, the proportion of non-hole blocks among all available Z-blocks is called the fraction of non-holes.

2 Fixing the Holes

Since each Tt′\mathcal{T}^{\prime}_{t} has holes only in Z-blocks, the main idea of the proof is to utilize the symmetric structure in T∗\mathcal{T}^{*} to randomly permute every Tt′\mathcal{T}^{\prime}_{t}, ensuring that each Z-block is non-hole in at least one (permuted) Tt′\mathcal{T}^{\prime}_{t}.

To begin our proof, we define the collection of permutations GG that we will apply to T∗\mathcal{T}^{*}, which we call the shuffling group of the standard form tensor T∗\mathcal{T}^{*}:

Every element ϕ=(ϕ1,…,ϕm)∈G\phi=(\phi_{1},\ldots,\phi_{m})\in G first induces a permutation over [2N][2N]:

(That is, it first considers every 2 consecutive numbers as a unit, so [2N][2N] is regarded as NN units; then, it permutes the first n1n_{1} units according to ϕ1∈S[n1]\phi_{1}\in\mathcal{S}_{[n_{1}]}, permutes the next n2n_{2} units according to ϕ2∈S[n2]\phi_{2}\in\mathcal{S}_{[n_{2}]}, and so on.) Further, it induces a permutation over all small blocks: It maps each small block of T∗\mathcal{T}^{*}, say ZK^Z_{\widehat{K}}, by reordering the entries of K^\widehat{K} according to the permutation ϕ:[2N]→[2N]\phi:[2N]\to[2N] above:

It also permutes X and Y-blocks while ϕ(XI^)\phi(X_{\widehat{I}}) and ϕ(YJ^)\phi(Y_{\widehat{J}}) are defined in the same way.

So far, each element ϕ∈G\phi\in G gives block-level permutations over small blocks XI^X_{\widehat{I}}, YJ^Y_{\widehat{J}}, ZK^Z_{\widehat{K}}. However, different from X and Y-blocks, some of the Z-blocks do not appear as variables of T∗\mathcal{T}^{*}; only the available ones appear. So we add an observation that ϕ\phi is also a permutation over all available Z-blocks:

For every ϕ∈G\phi\in G and Z-block ZK^Z_{\widehat{K}}, let ZK^′=ϕ(ZK^)Z_{\widehat{K}^{\prime}}=\phi(Z_{\widehat{K}}). ZK^Z_{\widehat{K}} is available if and only if ZK^′Z_{\widehat{K}^{\prime}} is available. This implies that ϕ\phi restricted on all available Z-blocks is still a permutation.

The availability of ZK^Z_{\widehat{K}} only depends on the frequency of occurrence of (K^2s−1,K^2s)(\widehat{K}_{2s-1},\widehat{K}_{2s}) accross all s∈(∑t′=1t−1nt′,∑t′=1tnt′]s\in\left(\sum_{t^{\prime}=1}^{t-1}n_{t^{\prime}},\sum_{t^{\prime}=1}^{t}n_{t^{\prime}}\right] for every t∈[m]t\in[m]. This quantity remains unchanged between K^\widehat{K} and K^′\widehat{K}^{\prime}, as our permutation ϕ\phi shuffles each pair of indices (K^2s−1,K^2s)(\widehat{K}_{2s-1},\widehat{K}_{2s}) as a unit, and its shuffling destination stays within the region ϕ(s)∈(∑t′=1t−1nt′,∑t′=1tnt′]\phi(s)\in\left(\sum_{t^{\prime}=1}^{t-1}n_{t^{\prime}},\sum_{t^{\prime}=1}^{t}n_{t^{\prime}}\right]. Thus, the claim follows. ∎

A similar observation is that (XI^,YJ^,ZK^)(X_{\widehat{I}},Y_{\widehat{J}},Z_{\widehat{K}}) is a triple in T∗\mathcal{T}^{*} if and only if (ϕ(XI^),ϕ(YJ^),ϕ(ZK^))(\phi(X_{\widehat{I}}),\phi(Y_{\widehat{J}}),\phi(Z_{\widehat{K}})) is a triple. Further, we keep the relative arrangement of variables within each block unchanged while shuffling the blocks. This induces a variable-level permutation of all variables of T∗\mathcal{T}^{*} which we still denote by ϕ\phi; we claim that it keeps the structure of T∗\mathcal{T}^{*}:

Let ϕ(x)\phi(x), ϕ(y)\phi(y), ϕ(z)\phi(z) denote the images of variables x,y,z∈T∗x,y,z\in\mathcal{T}^{*} under the variable-level permutation ϕ\phi. Then, there is a term (x,y,z)(x,y,z) in T∗\mathcal{T}^{*} if and only if the term (ϕ(x),ϕ(y),ϕ(z))(\phi(x),\phi(y),\phi(z)) is in T∗\mathcal{T}^{*}, which means ϕ\phi is an automorphism of T∗\mathcal{T}^{*}.

Suppose T′\mathcal{T}^{\prime} is a broken copy of T∗\mathcal{T}^{*}, i.e., some of the available Z-blocks are holes in T′\mathcal{T}^{\prime}. After using ϕ∈G\phi\in G to rename the variables in T′\mathcal{T}^{\prime}, we get another broken tensor denoted by ϕ(T′)\phi(\mathcal{T}^{\prime}), but the hole blocks in ϕ(T′)\phi(\mathcal{T}^{\prime}) is likely to be different from T′\mathcal{T}^{\prime}. The last property we concern about GG is that a random ϕ∈G\phi\in G can move a hole block ZK^Z_{\widehat{K}} to a random place, so that every available block of ϕ(T′)\phi(\mathcal{T}^{\prime}) has equal probability to become a hole:

Let ZK^Z_{\widehat{K}} be a fixed available Z-block in T∗\mathcal{T}^{*}. Picking ϕ∈G\phi\in G uniformly at random, the image ZK^′=ϕ(ZK^)Z_{\widehat{K}^{\prime}}=\phi(Z_{\widehat{K}}) follows the uniform distribution over all available Z-blocks in T∗\mathcal{T}^{*}.

For every pair of available Z-blocks ZK^Z_{\widehat{K}} and ZK^′Z_{\widehat{K}^{\prime}}, the number of permutations in GG that maps ZK^↦ZK^′Z_{\widehat{K}}\mapsto Z_{\widehat{K}^{\prime}} is given by

which is independent of ZK^,ZK^′Z_{\widehat{K}},Z_{\widehat{K}^{\prime}}. Thus the claim holds. ∎

As an implication, for a broken standard form tensor T′\mathcal{T}^{\prime} with a fraction η\eta of non-holes, and for a fixed available block ZK^Z_{\widehat{K}}, we have

(Here ϕ\phi is taken uniformly at random from GG.) With the help of (5.2), we now state the proof of Lemma 5.6.

Sample ss permutations ϕ1,…,ϕs∈G\phi_{1},\ldots,\phi_{s}\in G independently uniformly at random from GG. Let Tt′′≔ϕt(Tt′)\mathcal{T}^{\prime\prime}_{t}\coloneqq\phi_{t}(\mathcal{T}^{\prime}_{t}) be a tensor isomorphic to Tt′\mathcal{T}^{\prime}_{t}, obtained by renaming Tt′\mathcal{T}^{\prime}_{t}’s variables according to ϕt\phi_{t}. From (5.2), we know that for a fixed available Z-block ZK^Z_{\widehat{K}},

Taking summation over all available small Z-blocks, we know the expected number of ZK^Z_{\widehat{K}} that is a hole in all Tt′′\mathcal{T}^{\prime\prime}_{t} is at most 1/e<11/e<1. Thus, there exists a sequence of permutations ϕ1,⋯ ,ϕs\phi_{1},\cdots,\phi_{s}, ensuring that every available block ZK^Z_{\widehat{K}} has at least one t∈[s]t\in[s] for which ZK^Z_{\widehat{K}} is non-hole in Tt′′\mathcal{T}^{\prime\prime}_{t}, denoted as t(K^)t(\widehat{K}).

We do the following degeneration from ⨁t=1sTt′′\bigoplus_{t=1}^{s}\mathcal{T}^{\prime\prime}_{t}:

For each available small block ZK^Z_{\widehat{K}}, recall that it is not a hole in Tt(K^)′′\mathcal{T}^{\prime\prime}_{t(\widehat{K})}. Zero out this small block in all other Tt′′′\mathcal{T}^{\prime\prime}_{t^{\prime}} where t′≠t(K^)t^{\prime}\neq t(\widehat{K}).

Identify all Tt′′\mathcal{T}^{\prime\prime}_{t} after the previous step of zeroing out.

Here “identify” means to glue all copies together (see Section 3.2). Notice that there are no holes in the X and Y-variables, so the X and Y-variables of all broken copies Tt′′\mathcal{T}^{\prime\prime}_{t} are the same. After the first step of zeroing out, each available Z-block appears in exactly one broken copy, so in the target tensor

each term on the RHS will be added exactly once from the copy Tt(K^)′′\mathcal{T}^{\prime\prime}_{t(\widehat{K})} in which the block ZK^Z_{\widehat{K}} is not zeroed out. It implies that the obtained tensor after the identification step is exactly T∗\mathcal{T}^{*}. ∎

Improving High-Power Global Values

This algorithm will optimize the following parameter:

1 Algorithm Description

In this section, these lower bounds are given as the input. Hence this step is trivial.

Step 2. Choose a distribution.

Step 3. Asymmetric Hashing.

Let M0M_{0} be a parameter which will be specified in Section 6.2, and MM be a prime number in [M0,2M0][M_{0},2M_{0}]. We will apply the asymmetric hashing in Section 3.10 with MM as the modulus. After hashing and zeroing out, for any pair of retained large block triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) and (XI′,YJ′,ZK′)(X_{I^{\prime}},Y_{J^{\prime}},Z_{K^{\prime}}), we have I≠I′, J≠J′I\neq I^{\prime},~{}J\neq J^{\prime}. That is, those retained triples can only share Z-blocks. Moreover, all retained triples obey the joint distribution α\alpha.

(Note that when α∉D∗(αX,αY,αZ)\alpha\notin D^{*}({\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}), i.e., when it is not the maximum entropy distribution consistent with these marginals, there will be a certain hash loss. We already took this hash loss into account in Section 3.10. Also, we will explicitly compute the value of such hash loss in Section 6.2.)

Additional Zeroing-Out Step 1.

Here α~i,j,k\widetilde{\alpha}_{i,j,k} are given in the inputs.

A small block ZK^∈ZKZ_{\widehat{K}}\in Z_{K} is said to be compatible with a large triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) if the following two conditions are satisfied:

In this step, we will do the following zeroing-out on small blocks:

For each ZK^Z_{\widehat{K}}, we check Item 1 and zero out ZK^Z_{\widehat{K}} if the condition is not satisfied.

For each XI^∈XIX_{\widehat{I}}\in X_{I}, since XIX_{I} (if retained) is in a unique triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), we can define the set Si,j,kS_{i,j,k} w.r.t. that triple. For all components (i,0,k)(i,0,k), we define

This is the X-split distribution corresponding to the Z-split distribution α~i,0,k\widetilde{\alpha}_{i,0,k}. If for any (i,0,k)(i,0,k), split(I^,Si,0,k)≠α~i,0,k(X)\textsf{split}(\widehat{I},S_{i,0,k})\neq\widetilde{\alpha}^{\textup{(X)}}_{i,0,k}, we then zero out this XI^X_{\widehat{I}}.

For each YJ^Y_{\widehat{J}}, we do a similar zeroing-out as XI^X_{\widehat{I}}. For all components (0,j,k)(0,j,k), we define

Suppose for some component (0,j,k)(0,j,k), the split distribution split(J^,S0,j,k)≠α~0,j,k(Y)\textsf{split}(\widehat{J},S_{0,j,k})\neq\widetilde{\alpha}^{\textup{(Y)}}_{0,j,k}, then YJ^Y_{\widehat{J}} will be zeroed out.

After Additional Zeroing-Out Step 1, a remaining small block ZK^∈ZKZ_{\widehat{K}}\in Z_{K} can form a triple with remaining XI^∈XIX_{\widehat{I}}\in X_{I}, YJ^∈YJY_{\widehat{J}}\in Y_{J} only when ZK^Z_{\widehat{K}} is compatible with triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}).

To see this, first notice that after Additional Zeroing-Out Step 1, all ZK^Z_{\widehat{K}} that are not zeroed out satisfy Item 1 in Definition 6.1. Hence, if ZK^Z_{\widehat{K}} is not compatible with (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), it must be that for some (i,j,k)(i,j,k) with i=0i=0 or j=0j=0, split(K^,Si,j,k)≠α~i,j,k\textsf{split}(\widehat{K},S_{i,j,k})\neq\widetilde{\alpha}_{i,j,k} (Item 2).

We use T(1)\mathcal{T}^{(1)} to denote the tensor after Additional Zeroing-Out Step 1.

Additional Zeroing-Out Step 2.

Before we introduce this step, we have to make the following definition.

A small block ZK^Z_{\widehat{K}} is said to be useful for a large triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) if and only if the following two conditions hold:

ZK^∈ZKZ_{\widehat{K}}\in Z_{K} and (I,J,K)(I,J,K) is consistent with α\alpha;

For each large component (i,j,k)(i,j,k), split(K^,Si,j,k)=α~i,j,k\textsf{split}(\widehat{K},S_{i,j,k})=\widetilde{\alpha}_{i,j,k}.

In this step, we will zero out any small Z-block ZK^∈ZKZ_{\widehat{K}}\in Z_{K} such that

ZK^Z_{\widehat{K}} is compatible with more than one triple, or

ZK^Z_{\widehat{K}} is not useful for the unique triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) that it is compatible with.

After such zeroing out, we call the obtained tensor T(2)\mathcal{T}^{(2)}. We claim T(2)≅⨁(XI,YJ,ZK)T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}\cong\bigoplus_{(X_{I},Y_{J},Z_{K})}\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} due to the first zeroing-out rule here.

Fixing a triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), the structure of T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} is as follows. Suppose no blocks are zeroed out due to the first rule, i.e., being compatible with multiple triples. In this ideal case, T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} is isomorphic to

However, in reality, several small Z-blocks are additionally zeroed out from T∗\mathcal{T}^{*} due to the first rule, resulting in T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} being a broken copy of T∗\mathcal{T}^{*} with some holes in its Z-variables.

Step 4: Fix the holes and degenerate each triple independently.

Unlike Step 4 of Section 4.5, here we will first fix holes before degenerating into matrix multiplications. This is for two reasons: (1) The hole lemma in Section 5 allows us to directly fix holes for tensors, and (2) the degeneration here requires symmetrization, which may introduce holes to X/Y variables if they have not been fixed already. (Fixing holes is much easier when they are only in Z-variables.)

For each triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} is a broken copy of T∗\mathcal{T}^{*}. The fraction of non-holes in T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} (defined in Definition 5.5) is denoted as ηI,J,K\eta_{\scriptscriptstyle I,J,K}. Letting

The algorithm concludes here, and vv is the output that results in a value bound for the CW tensor. However, there is one more implicit step – symmetrization – which is hidden under the notation of Vτ(6)V_{\tau}^{(6)}. This occurs before degenerating into matrix multiplication tensors. This is because, by definition, Vτ(6)(T)V_{\tau}^{(6)}(\mathcal{T}) represents the (maximized) total volume of matrix multiplications that sym6(T)\textup{sym}_{6}(\mathcal{T}) degenerates into. Here we are able to perform such symmetrization because we have already fixed all the holes in the broken copies of T∗\mathcal{T}^{*}.

2 Analysis

Similar to the previous sections, we adopt the following notations:

NαN_{\alpha} is the number of triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) that are consistent with α\alpha; NαX,αY,αZN_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}} is the number of triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) whose marginals are consistent with αX,αY,αZ{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}. We have Nα=2nH(α)+o(n)N_{\alpha}=2^{nH(\alpha)+o(n)}.

NretN_{\textup{ret}} represents the number of retained triples after the asymmetric hashing process (which are all consistent with α\alpha).

Let pcompp_{\textup{comp}} be a parameter to be defined later. Roughly speaking, it is the probability of a small block ZK^Z_{\widehat{K}} being compatible with a random triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}).

We let M0=8⋅max⁡(NαX,αY,αZNBX,Nα⋅pcompNBZ)M_{0}=8\cdot\max\left(\frac{N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}}{N_{\textup{BX}}},\frac{N_{\alpha}\cdot p_{\textup{comp}}}{N_{\textup{BZ}}}\right) and let M∈[M0,2M0]M\in[M_{0},2M_{0}] be a prime. Applying the asymmetric hashing according to Section 3.10 with modulus MM, we know the number of retained triples is

Probability of being compatible.

One of the remaining task is to define and calculate pcompp_{\textup{comp}}. We start by defining its prerequisite:

We say a small block ZK^Z_{\widehat{K}} is typical if and only if the frequency of occurrences of (K^2t−1,K^2t)(\widehat{K}_{2t-1},\widehat{K}_{2t}) matches the probability distribution γ\gamma, i.e.,

We show the following equivalent condition of typicalness:

Thus, ZK^Z_{\widehat{K}} is typical. Similarly, if ZK^Z_{\widehat{K}} is typical, we can also determine split(K^,S∗,∗,k)=\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111∗,∗,k\textsf{split}(\widehat{K},S_{*,*,k})=\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{*,*,k}. This concludes the proof. ∎

In the rest of this subsection, if a triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) is consistent with the joint component distribution α\alpha that we choose, we say these blocks XI,YJ,ZKX_{I},Y_{J},Z_{K} are matchable to each other. Next, we define pcompp_{\textup{comp}}:

Suppose ZK^∈ZKZ_{\widehat{K}}\in Z_{K} is a typical block, and XIX_{I} is an X-block matchable to ZKZ_{K} chosen uniformly at random (i.e., they form a triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) consistent with α\alpha). pcompp_{\textup{comp}} is defined as the probability of ZK^Z_{\widehat{K}} being compatible with XI,YJX_{I},Y_{J}. Similar to Section 4, due to symmetry, pcompp_{\textup{comp}} is independent of which block ZK^Z_{\widehat{K}} we choose.

We calculate pcompp_{\textup{comp}} by the following lemma:

We have pcomp=αPn+o(n)p_{\textup{comp}}=\alpha_{\scriptscriptstyle\textup{P}}^{n+o(n)}, where

and γ\gamma is the typical distribution defined above. (α~+,+,k\widetilde{\alpha}_{\textup{+},\textup{+},k} is a split distribution of Z-index kk.)

Fixing a large block ZKZ_{K} consistent with αZ{\alpha}_{\scriptscriptstyle\textup{Z}}, we denote by Btypical,KB_{\textup{typical},K} the set of typical blocks within the large block ZKZ_{K}. Since pcompp_{\textup{comp}} is identical for all ZK^∈Btypical,KZ_{\widehat{K}}\in B_{\textup{typical},K}, it will also be the same for a uniformly randomly chosen ZK^∈Btypical,KZ_{\widehat{K}}\in B_{\textup{typical},K}. Independently, we sample a large X-block XIX_{I} that is matchable to ZKZ_{K} (i.e., they form a triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) consistent with α\alpha), also uniformly at random. Then, we have

The expectation on the last line is taken over all XIX_{I} matchable to ZKZ_{K}. In fact, the content inside the expectation is identical for all XIX_{I} due to symmetry. We arbitrarily fix an XIX_{I} and further calculate the numerator and denominator, respectively.

Numerator.

We count the number of desired ZK^Z_{\widehat{K}} by counting the number of ways to split all indices kk in the sequence KK. The constraint of being compatible with XIX_{I} is equivalent to the following two conditions:

(The second condition is a requirement of both being compatible and being typical.) Then we “subtract” (a) from (b), obtaining a group of equivalent conditions as follows:

One can see that requiring (a) and (b) is equivalent to requiring (a) and (c). The advantage of doing so is that the set of positions involved in these requirements are disjoint. Specifically, all requirements of types (a) and (c) have the form split(K^,S)=α~\textsf{split}(\widehat{K},S)=\widetilde{\alpha} for some position set SS and split distribution α~\widetilde{\alpha}: For (a), they are S=Si,j,kS=S_{i,j,k} and α~=α~i,j,k\widetilde{\alpha}=\widetilde{\alpha}_{i,j,k}; for (c), they are S=S+,+,kS=S_{\textup{+},\textup{+},k} and α~=\macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111+,+,k\widetilde{\alpha}=\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}_{\textup{+},\textup{+},k}. Every index position t∈[n]t\in[n] belongs to the set SS of exactly one requirement.

For each of these requirements, namely split(K^,S)=α~\textsf{split}(\widehat{K},S)=\widetilde{\alpha}, the number of ways to choose (K^2t−1,K^2t)(\widehat{K}_{2t-1},\widehat{K}_{2t}) for all t∈St\in S equals

Taking product over all requirements, we have

Denominator.

To calculate the denominator ∣Btypical,K∣|B_{\textup{typical},K}|, we only need to notice the symmetry between different KK, i.e., the size of Btypical,KB_{\textup{typical},K} should be identical for all KK’s consistent with αZ{\alpha}_{\scriptscriptstyle\textup{Z}}. Moreover, they are disjoint for different KK’s. Therefore, we may calculate

where αP\alpha_{\scriptscriptstyle\textup{P}} is defined in the statement of Lemma 6.7. This concludes the proof. ∎

Probability of being holes.

Fixing a small block ZK^Z_{\widehat{K}} that is useful for some retained triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) (see Definition 6.3). Below, we analyze the probability of ZK^Z_{\widehat{K}} being a hole.

Fixing a retained triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) (it must be consistent with α\alpha) and a small block ZK^∈ZKZ_{\widehat{K}}\in Z_{K} useful for that triple, the probability of ZK^Z_{\widehat{K}} being a hole in T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} (i.e., being compatible with a different remaining triple (XI′,YJ′,ZK)(X_{I^{\prime}},Y_{J^{\prime}},Z_{K})) is at most 1/81/8.

A necessary condition of ZK^Z_{\widehat{K}} being a hole is that there exists I′≠II^{\prime}\neq I matchable to KK such that (1) ZK^Z_{\widehat{K}} is compatible with XI′X_{I^{\prime}}; and (2) I′I^{\prime} is hashed to the same slot as KK, i.e., hX(I′)=hZ(K)h_{\textup{X}}(I^{\prime})=h_{\textup{Z}}(K). We calculate the expected number of such I′I^{\prime} to establish an upper bound on the probability of the existence of such I′I^{\prime}:

where the first equality above holds due to Lemma 3.11 (restated below); the third equality holds according to the definition of pcompp_{\textup{comp}} above. ∎

See 3.11 The proof of this lemma is in Section 3.10.

Bounding the value.

holds for all (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}). According to 5.11, these broken tensors can degenerate to

many copies of standard form tensors T∗\mathcal{T}^{*}. Combined with (6.2), we get

By the probabilistic method, we know T\mathcal{T} can degenerate to at least this many copies of T∗\mathcal{T}^{*}. Finally, we have

Similar to Section 4, we define the following notations:

αBX≔lim⁡n→∞NBX1/n=2H(αX)\alpha_{\scriptscriptstyle\textup{BX}}\coloneqq\lim\limits_{n\to\infty}N_{\textup{BX}}^{1/n}=2^{H({\alpha}_{\scriptscriptstyle\textup{X}})} is the number of large X-blocks normalized by taking the nn-th root. Similarly, αBZ≔lim⁡n→∞NBZ1/n=2H(αZ)\alpha_{\scriptscriptstyle\textup{BZ}}\coloneqq\lim\limits_{n\to\infty}N_{\textup{BZ}}^{1/n}=2^{H({\alpha}_{\scriptscriptstyle\textup{Z}})}.

αN≔lim⁡n→∞Nα1/n=2H(α)\alpha_{\scriptscriptstyle\textup{N}}\coloneqq\lim\limits_{n\to\infty}N_{\alpha}^{1/n}=2^{H(\alpha)} is the number of triples consistent with α\alpha.

With these notations, we have max⁡α′∈DααN′=lim⁡n→∞NαX,αY,αZ1/n\max\limits_{\alpha^{\prime}\in D_{\alpha}}\alpha^{\prime}_{\scriptscriptstyle\textup{N}}=\lim\limits_{n\to\infty}N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}^{1/n} according to Lemma 3.12.

αP=lim⁡n→∞pcomp1/n\alpha_{\scriptscriptstyle\textup{P}}=\lim\limits_{n\to\infty}p_{\textup{comp}}^{1/n}. Its closed form is given in Lemma 6.7.

Then, we take the nn-th root on both sides of (23), obtaining

We will explain the heuristics for optimizing the parameters α\alpha in Section 8.

3 Example – Level-2 Global Value

When we set α~0,2,2(0)=α~0,2,2(2)=a\widetilde{\alpha}_{0,2,2}(0)=\widetilde{\alpha}_{0,2,2}(2)=a and α~0,2,2(1)=1−2a\widetilde{\alpha}_{0,2,2}(1)=1-2a, using the method from the proof of Lemma 4.6, we have

For α~2,0,2(0)=α~2,0,2(2)=a\widetilde{\alpha}_{2,0,2}(0)=\widetilde{\alpha}_{2,0,2}(2)=a and α~2,0,2(1)=1−2a\widetilde{\alpha}_{2,0,2}(1)=1-2a, V_{\tau}^{\textup{(nrot)}}\big{(}T_{2,0,2},\widetilde{\alpha}_{2,0,2}\big{)} equals the same value.

When α~1,1,2(0)=α~1,1,2(2)=b\widetilde{\alpha}_{1,1,2}(0)=\widetilde{\alpha}_{1,1,2}(2)=b and α~1,1,2(1)=1−2b\widetilde{\alpha}_{1,1,2}(1)=1-2b, similarly to the proof of Lemma 4.6,

For all other components, we use the symmetric Z-marginal split distributions, that is, α~i,j,1(0)=α~i,j,1(1)=1/2\widetilde{\alpha}_{i,j,1}(0)=\widetilde{\alpha}_{i,j,1}(1)=1/2 and α~i,j,3(1)=α~i,j,3(2)=1/2\widetilde{\alpha}_{i,j,3}(1)=\widetilde{\alpha}_{i,j,3}(2)=1/2 for all valid i,ji,j; for components (i,j,0)(i,j,0) or (i,j,4)(i,j,4), there is only one Z-marginal split distribution. So the values of all other components (including (2,2,0),(1,2,1),(2,1,1)(2,2,0),(1,2,1),(2,1,1)) do not change from Section 4.

By a MATLAB program, we found the following parameters, which can lead to a better bound ω<2.374631\omega<2.374631 than Section 4.

Improving Component Values

In previous works (e.g., [Wil12, LG14]), to obtain a lower bound for a component Ti,j,kT_{i,j,k}’s value, the tensor sym3(Ti,j,k⊗n)=Ti,j,k⊗n⊗Tj,k,i⊗n⊗Tk,i,j⊗n\textup{sym}_{3}(T_{i,j,k}^{\otimes n})=T_{i,j,k}^{\otimes n}\otimes T_{j,k,i}^{\otimes n}\otimes T_{k,i,j}^{\otimes n} was analyzed using the laser method. Note that in this tensor, the X/Y/Z-variables are completely symmetric.

To introduce more asymmetry, rather than analyzing Ti,j,k⊗n⊗Tj,k,i⊗n⊗Tk,i,j⊗nT_{i,j,k}^{\otimes n}\otimes T_{j,k,i}^{\otimes n}\otimes T_{k,i,j}^{\otimes n}, we will introduce three parameters A1,A2,A3∈A_{1},A_{2},A_{3}\in such that A1+A2+A3=1A_{1}+A_{2}+A_{3}=1, and then analyze

Note that in this tensor, there is a significant asymmetry between X/Y and Z-variables. However, we still let X and Y-variables be symmetric, because in the asymmetric hashing, the X and Y-blocks are still matched one-to-one.

Restricting Split Distributions.

We will choose three (possibly) different Z-split distributions α~Z,α~Z,α~Z\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{},\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{},\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{}. If we take exactly the same split distribution for the index kk (kk is fixed as the Z-index of the component Ti,j,kT_{i,j,k} that we analyze), but apply it to X-variables, we will denote them as α~X,α~X,α~X\widetilde{\alpha}_{\scriptscriptstyle\textup{X}}^{},\widetilde{\alpha}_{\scriptscriptstyle\textup{X}}^{},\widetilde{\alpha}_{\scriptscriptstyle\textup{X}}^{}. Similarly for Y variables. Under these notations, we define

For example, the second equation holds because

The other two equations follow from similar calculations. ∎

Together with (7), this proves our desired statement below.

There exists a generation from sym6(Ti,j,k⊗n[α~Z])\textup{sym}_{6}(T_{i,j,k}^{\otimes n}[\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}]) to sym3(T)\textup{sym}_{3}(\mathcal{T}). As a result, Vτ(6)(Ti,j,k,α~Z)6n≥Vτ(3)(T)3V_{\tau}^{(6)}(T_{i,j,k},\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}})^{6n}\geq V_{\tau}^{(3)}(\mathcal{T})^{3}.

To get our desired lower bound on Vτ(6)(Ti,j,k,α~Z)V_{\tau}^{(6)}(T_{i,j,k},\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}), we only have to lower bound Vτ(3)(T)V^{(3)}_{\tau}(\mathcal{T}), or equivalently, degenerate Tfinal≔sym3(T)\mathcal{T}_{\textup{final}}\coloneqq\textup{sym}_{3}(\mathcal{T}) into matrix multiplication tensors.

Specification.

Formally, the inputs to the algorithm are:

Non-negative real numbers A1,A2,A3A_{1},A_{2},A_{3} that sum up to 11.

Three Z-marginal split distributions of kk, namely α~Z,α~Z,α~Z\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{},\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{},\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{}, such that

Our algorithm will optimize the following parameter:

Joint split distributions α(1),α(2),α(3)\alpha^{(1)},\alpha^{(2)},\alpha^{(3)} of components (i,j,k),(j,k,i),(k,i,j)(i,j,k),(j,k,i),(k,i,j), respectively, such that the Z-marginal of α(1)\alpha^{(1)} equals α~Z\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}^{}, the Y-marginal of α(2)\alpha^{(2)} equals α~Y\widetilde{\alpha}_{\scriptscriptstyle\textup{Y}}^{}, and the X-marginal of α(3)\alpha^{(3)} equals α~X\widetilde{\alpha}_{\scriptscriptstyle\textup{X}}^{}.

1 Algorithm Description

The algorithm in this section follows the same steps as Section 6.1 but with a few small twists. These twists are necessary to adapt our idea to this tensor T\mathcal{T} we constructed.

As these lower bounds are given in the input, this step is trivial.

Step 2: Choose distributions.

Step 3: Asymmetric Hashing.

Same has before, we have a modulus MM to be specified later. Then we apply the asymmetric hashing in Section 3.10 to the tensor T\mathcal{T}. We start by introducing some notations.

The last 3 regions are obtained from the first 3 regions by swapping the order of X and Y dimensions, so we naturally define the following:

Recall the parameters of the algorithm α(1),α(2),α(3)\alpha^{(1)},\alpha^{(2)},\alpha^{(3)} are joint split distributions of components (i,j,k)(i,j,k), (j,k,i)(j,k,i), and (k,i,j)(k,i,j), respectively. We define α(4),α(5),α(6)\alpha^{(4)},\alpha^{(5)},\alpha^{(6)} to be split distributions of (j,i,k)(j,i,k), (k,j,i)(k,j,i), (i,k,j)(i,k,j) obtained by swapping the X and Y dimensions of α(1),α(2),α(3)\alpha^{(1)},\alpha^{(2)},\alpha^{(3)}, respectively. Formally, α(r+3)(i′,j′,k′)=α(r)(j′,i′,k′)\alpha^{(r+3)}(i^{\prime},j^{\prime},k^{\prime})=\alpha^{(r)}(j^{\prime},i^{\prime},k^{\prime}). We also let Ar+3≔ArA_{r+3}\coloneqq A_{r} and α~i′,j′,k′(r+3)≔α~i′,j′,k′(r)\widetilde{\alpha}^{(r+3)}_{i^{\prime},j^{\prime},k^{\prime}}\coloneqq\widetilde{\alpha}^{(r)}_{i^{\prime},j^{\prime},k^{\prime}} for r=1,2,3r=1,2,3.

T\mathcal{T} contains many large triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}). By applying the asymmetric hashing method, we retain some large triples that do not share X or Y-blocks. Moreover, every retained triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) is consistent with the split distribution α(r)\alpha^{(r)} in all regions r∈r\in. Formally:

(Similar to Section 6, to ensure such consistency with joint distribution, we may have to suffer hash loss when the joint distributions α(1),α(2),α(3)\alpha^{(1)},\alpha^{(2)},\alpha^{(3)} are not the maximum entropy distributions given their marginals. We will take such hash loss into account in Section 7.2.)

Additional Zeroing-Out Step 1.

Fix a triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}). For region r∈r\in, we use Si′,j′,k′(r)S^{(r)}_{i^{\prime},j^{\prime},k^{\prime}} to denote the set of positions t∈S(r)t\in S^{(r)} such that (It,Jt,Kt)=(i′,j′,k′)(I_{t},J_{t},K_{t})=(i^{\prime},j^{\prime},k^{\prime}); use S∗,∗,k′(r)S^{(r)}_{*,*,k^{\prime}} to denote the set of positions t∈S(r)t\in S^{(r)} such that Kt=k′K_{t}=k^{\prime}. For a small block ZK^∈ZKZ_{\widehat{K}}\in Z_{K} and a subset S⊆S∗,∗,k′(r)S\subseteq S^{(r)}_{*,*,k^{\prime}} for some k′k^{\prime}, we use splitk′(K^,S)\textsf{split}_{k^{\prime}}(\widehat{K},S) to denote the distribution of K^2t−1\widehat{K}_{2t-1} over all t∈St\in S. Since for each t∈St\in S, the index KtK_{t} splits into K^2t−1+K^2t\widehat{K}_{2t-1}+\widehat{K}_{2t}, this distribution splitk′(K^,S)\textsf{split}_{k^{\prime}}(\widehat{K},S) captures the distribution of how those KtK_{t} split for t∈St\in S. We omit the index k′k^{\prime} when it is clear from the context and simply write split(K^,S)\textsf{split}(\widehat{K},S).

For each k′k^{\prime}, we define the following average split distribution:

A small block ZK^∈ZKZ_{\widehat{K}}\in Z_{K} is said to be compatible with a large triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) if the following two conditions are satisfied:

Based on this definition, we do the following zeroing out on small blocks:

For each ZK^Z_{\widehat{K}}, we check Item 1 and zero out ZK^Z_{\widehat{K}} if the condition is not satisfied.

α~(r,X)\widetilde{\alpha}^{(r,\textup{X})} is the X-split distribution corresponding to the Z-split distribution α~i′,0,k′(r)\widetilde{\alpha}^{(r)}_{i^{\prime},0,k^{\prime}}. If for any (i′,0,k′)(i^{\prime},0,k^{\prime}) and r∈r\in, split(I^,Si′,0,k′(r))≠α~i′,0,k′(r,X)\textsf{split}(\widehat{I},S^{(r)}_{i^{\prime},0,k^{\prime}})\neq\widetilde{\alpha}^{(r,\textup{X})}_{i^{\prime},0,k^{\prime}}, we then zero out this XI^X_{\widehat{I}}.

Suppose for some component (0,j′,k′)(0,j^{\prime},k^{\prime}) and region r∈r\in, split(J^,S0,j′,k′(r))≠α~0,j′,k′(r,Y)\textsf{split}(\widehat{J},S^{(r)}_{0,j^{\prime},k^{\prime}})\neq\widetilde{\alpha}^{(r,\textup{Y})}_{0,j^{\prime},k^{\prime}}, we then zero out YJ^Y_{\widehat{J}}.

Same as Section 6, it is easy to verify the following claim:

For our constructed tensor T\mathcal{T}, after Additional Zeroing-Out Step 1, a remaining small block ZK^Z_{\widehat{K}} can form a small triple with XI^∈XIX_{\widehat{I}}\in X_{I}, YJ^∈YJY_{\widehat{J}}\in Y_{J} only when ZK^Z_{\widehat{K}} is compatible with the large triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}).

We use the notation T(1)\mathcal{T}^{(1)} to denote the tensor after Additional Zeroing-Out Step 1.

Additional Zeroing-Out Step 2.

Similar to Section 6, we make the following definition.

A small block ZK^Z_{\widehat{K}} is said to be useful for a large triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) if the following conditions are met:

ZK^∈ZKZ_{\widehat{K}}\in Z_{K}, and (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) is consistent with α(r)\alpha^{(r)} for all r∈r\in.

Based on this definition, we zero out any small Z-block ZK^∈ZKZ_{\widehat{K}}\in Z_{K} such that

ZK^Z_{\widehat{K}} is compatible with more than one triple, or

ZK^Z_{\widehat{K}} is not useful for the unique triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) that it is compatible with.

After such zeroing out, we call the obtained tensor T(2)\mathcal{T}^{(2)}. We know it is the direct sum of disjoint triples, i.e., T(2)=⨁(XI,YJ,ZK)T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}=\bigoplus_{(X_{I},Y_{J},Z_{K})}\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} (due to the first rule above).

For any retained triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), in the ideal case where no small blocks ZK^Z_{\widehat{K}} are zeroed out due to the first rule mentioned above, we know T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} is isomorphic to

One can see that T∗\mathcal{T}^{*} matches Definition 5.5 with parameters

Hence we can apply the hole lemma in Section 5 to fix the holes in T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} (similar to Section 6, the first zeroing-out rule above produces holes in Z-blocks of T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}}).

Step 4: Fix the holes and degenerate each triple independently.

For each retained triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} is a broken copy of the standard form tensor T∗\mathcal{T}^{*}. The fraction of non-holes in T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}}, as defined in Definition 5.5, is denoted as ηI,J,K\eta_{\scriptscriptstyle I,J,K}. Letting

It is worth noting that Vτ(3)(T)=Vτ(6)(T)V_{\tau}^{(3)}(\mathcal{T})=V_{\tau}^{(6)}(\mathcal{T}) because T\mathcal{T} is symmetric about X and Y variables, i.e., sym3(T)⊗2≅sym6(T)\textup{sym}_{3}(\mathcal{T})^{\otimes 2}\cong\textup{sym}_{6}(\mathcal{T}).

2 Analysis

The idea of analysis is again similar to Section 6.

NαN_{\alpha} is the number of triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) that are consistent with α(r)\alpha^{(r)} in all regions r∈r\in. We have Nα=2(∑r=16ArnH(α(r))+o(n))N_{\alpha}=2^{\left(\sum_{r=1}^{6}A_{r}nH(\alpha^{(r)})+o(n)\right)}. NαX,αY,αZN_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}} is the number of triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) whose marginal distributions are consistent with αX(r),αY(r),αZ(r){\alpha}_{\scriptscriptstyle\textup{X}}^{(r)},{\alpha}_{\scriptscriptstyle\textup{Y}}^{(r)},{\alpha}_{\scriptscriptstyle\textup{Z}}^{(r)}, respectively.

NretN_{\textup{ret}} represents the number of retained triples after the asymmetric hashing process.

Let pcompp_{\textup{comp}} be a parameter to be defined later. Roughly speaking, it represents the probability of a small block ZK^Z_{\widehat{K}} being compatible with a random triple.

Similar to Section 6.2, we will let M0=8⋅max⁡(NαX,αY,αZNBX,Nα⋅pcompNBZ)M_{0}=8\cdot\max\left(\frac{N_{{\alpha}_{\scriptscriptstyle\textup{X}},{\alpha}_{\scriptscriptstyle\textup{Y}},{\alpha}_{\scriptscriptstyle\textup{Z}}}}{N_{\textup{BX}}},\frac{N_{\alpha}\cdot p_{\textup{comp}}}{N_{\textup{BZ}}}\right) and let M∈[M0,2M0]M\in[M_{0},2M_{0}] be a prime. Then we apply the asymmetric hashing with modulus MM. We know

Typical distribution.

Recall that in Section 6.2, we defined the typical distribution

For a small block ZK^Z_{\widehat{K}}, if γ(r)\gamma^{(r)} matches the frequency of occurrence of (K^4t−3,K^4t−2,K^4t−1,K^4t)(\widehat{K}_{4t-3},\widehat{K}_{4t-2},\widehat{K}_{4t-1},\widehat{K}_{4t}) in region rr, we say ZK^Z_{\widehat{K}} is a typical block. Formally, ZK^Z_{\widehat{K}} is typical if and only if for every region r∈r\in and k1+k2+k3+k4=k(r)k_{1}+k_{2}+k_{3}+k_{4}=k^{(r)},

Denote by Btypical,KB_{\textup{typical},K} the set of typical blocks ZK^Z_{\widehat{K}} within a fixed large block ZKZ_{K}.

Recall the definition of useful blocks (Definition 7.9). We denote by Buseful(XI,YJ,ZK)B_{\textup{useful}}(X_{I},Y_{J},Z_{K}) the set of small blocks ZK^∈ZKZ_{\widehat{K}}\in Z_{K} useful for (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}). It is worth noting that, fixing a large triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), the typicalness and usefulness of a small block ZK^∈ZKZ_{\widehat{K}}\in Z_{K} do not imply each other. The following lemma shows that typical blocks make up a non-negligible part of Buseful(XI,YJ,ZK)B_{\textup{useful}}(X_{I},Y_{J},Z_{K}), as expected:

Let (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) be a triple consistent with α(r)\alpha^{(r)} in all regions rr. Then,

Probability of being compatible.

Throughout the rest of this subsection, if a triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) is consistent with α(r)\alpha^{(r)} in all regions r∈r\in, we say these block XI,YJ,ZKX_{I},Y_{J},Z_{K} are matchable to each other. Next, we define pcompp_{\textup{comp}} similarly to Section 6.2.

Suppose ZK^∈ZKZ_{\widehat{K}}\in Z_{K} is a typical block, and XIX_{I} is a large X-block matchable to ZKZ_{K} chosen uniformly at random. pcompp_{\textup{comp}} is defined as the probability of ZK^Z_{\widehat{K}} being compatible with XI,YJX_{I},Y_{J}. Due to symmetry, pcompp_{\textup{comp}} is independent of the chosen small block ZK^Z_{\widehat{K}} (as long as it is typical).

We calculate pcompp_{\textup{comp}} by the following lemma.

We fix ZKZ_{K} as a large block consistent with αZ(r){\alpha}_{\scriptscriptstyle\textup{Z}}^{(r)} in all regions rr, and let ZK^∈Btypical,KZ_{\widehat{K}}\in B_{\textup{typical},K} be a uniformly random typical block in ZKZ_{K}. Since pcompp_{\textup{comp}} is the same for all typical blocks, it also has the same value for the random block ZK^Z_{\widehat{K}}. As in the definition of pcompp_{\textup{comp}}, we let XIX_{I} be a random large X-block that is matchable to ZKZ_{K}, which is independent of ZK^Z_{\widehat{K}} conditioned on ZKZ_{K}. We have

The content inside the expectation is identical for all XIX_{I} due to symmetry, so we arbitrarily fix an XIX_{I} and continue the calculation.

Numerator.

We now count the number of (not necessarily typical) small blocks ZK^Z_{\widehat{K}} compatible with XI′X_{I^{\prime}}. Recall that Si′,j′,k′(r)S^{(r)}_{i^{\prime},j^{\prime},k^{\prime}} denotes the set of positions t∈S(r)⊂[2n]t\in S^{(r)}\subset[2n] where (It,Jt,Kt)=(i′,j′,k′)(I_{t},J_{t},K_{t})=(i^{\prime},j^{\prime},k^{\prime}). Let

ZK^Z_{\widehat{K}} is compatible with XIX_{I} if and only if:

(Recall that \macc@depth\frozen@everymath\macc@group\macc@set@skewchar\macc@nested@a111∗,∗,k′(r){\macc@depth\char 1\relax\frozen@everymath{\macc@group}\macc@set@skewchar\macc@nested@a 111{}}^{(r)}_{*,*,k^{\prime}} is defined in (27).) Similar to Section 6.2, we transform these two conditions into the following equivalent conditions:

All requirements of these two types are of the form split(K^,S)=α~\textsf{split}(\widehat{K},S)=\widetilde{\alpha}, for which there are

way to split those Kt  (t∈S)K_{t}\;(t\in S) into (K^2t−1,K^2t)(\widehat{K}_{2t-1},\widehat{K}_{2t}). Besides, the position sets of all these requirements, Si′,j′,k′(r)S^{(r)}_{i^{\prime},j^{\prime},k^{\prime}} for the first type and S+,+,k′(r)S^{(r)}_{\textup{+},\textup{+},k^{\prime}} for the second type, are disjoint. (In fact, these position sets form a partition of [2n][2n].)

Note that ∣Si′,j′,k′(r)∣=β(r)(i′,j′,k′)⋅2Arn|S^{(r)}_{i^{\prime},j^{\prime},k^{\prime}}|=\beta^{(r)}(i^{\prime},j^{\prime},k^{\prime})\cdot 2A_{r}n and ∣S+,+,k′(r)∣=β(r)(+,+,k′)⋅2Arn|S^{(r)}_{\textup{+},\textup{+},k^{\prime}}|=\beta^{(r)}(\textup{+},\textup{+},k^{\prime})\cdot 2A_{r}n. Multiplying the number of ways together for all requirements, we obtain

Denominator.

To calculate the denominator ∣Btypical,K∣\left|{B_{\textup{typical},K}}\right|, like in Section 6, we use the fact that for all KK that are consistent with αZ(r){\alpha}_{\scriptscriptstyle\textup{Z}}^{(r)} for all r∈r\in, the sets ∣Btypical,K∣\left|{B_{\textup{typical},K}}\right| are of the same size.

Putting these two results together and combining with αP(r)=αP(r+3)\alpha_{\scriptscriptstyle\textup{P}}^{(r)}=\alpha_{\scriptscriptstyle\textup{P}}^{(r+3)} (r=1,2,3r=1,2,3) due to symmetry, we conclude the proof of this lemma. ∎

Probability of being holes.

Fixing a small block ZK^Z_{\widehat{K}} that is useful for some retained triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) (see Definition 7.9), we analyze the probability of ZK^Z_{\widehat{K}} being a hole. There are two cases:

ZK^Z_{\widehat{K}} is typical. We analyze it below.

According to Lemma 7.10, at least 2−o(n)2^{-o(n)} fraction of the useful blocks are typical. For every typical block ZK^Z_{\widehat{K}}, we use an approach similar to Section 6.2 to bound its probability of being holes:

Fixing a retained triple (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) (it must be consistent with α(r)\alpha^{(r)} in all regions r∈r\in) and a small typical block ZK^∈Btypical,KZ_{\widehat{K}}\in B_{\textup{typical},K} useful for that triple, the probability of ZK^Z_{\widehat{K}} being a hole in T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} (i.e., being compatible with a different remaining triple (XI′,YJ′,ZK)(X_{I^{\prime}},Y_{J^{\prime}},Z_{K})) is at most 1/81/8.

A necessary condition of ZK^Z_{\widehat{K}} being a hole is that there exists XI′≠XIX_{I^{\prime}}\neq X_{I} matchable to ZKZ_{K} such that (1) ZK^Z_{\widehat{K}} is compatible with XI′X_{I^{\prime}}; and (2) I′I^{\prime} is hashed to the same slot as KK, i.e., hX(I′)=hZ(K)h_{\textup{X}}(I^{\prime})=h_{\textup{Z}}(K). We calculate the expected number of such I′I^{\prime} to establish an upper bound on the probability of the existence of such I′I^{\prime}:

where the first equality above holds due to Lemma 3.11; the third inequality holds according to the definition of pcompp_{\textup{comp}} above. It is worth noting that pcompp_{\textup{comp}} is defined for typical blocks ZK^Z_{\widehat{K}} while this is also a premise of the current claim 7.13. ∎

Recall that for each of the NretN_{\textup{ret}} retained triples (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), the fraction of non-hole blocks in T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} is represented by ηI,J,K\eta_{\scriptscriptstyle I,J,K}. That is, the fraction of useful blocks in Buseful(XI,YJ,ZK)B_{\textup{useful}}(X_{I},Y_{J},Z_{K}) not being a hole. Lemma 7.10 tells that at least 2−o(n)2^{-o(n)} fraction of the useful blocks are typical, each of which has Ω(1)\Omega(1) probability not to be a hole due to 7.13. Thus, we conclude that ηI,J,K≥2−o(n)\eta_{\scriptscriptstyle I,J,K}\geq 2^{-o(n)}.

Bounding the value.

We will now obtain the bound for Vτ(6)(Ti,j,k,α~Z)V_{\tau}^{(6)}(T_{i,j,k},\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}). By 7.3, we know that Vτ(6)(Ti,j,k,α~Z)6n≥Vτ(3)(T)3V_{\tau}^{(6)}(T_{i,j,k},\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}})^{6n}\geq V_{\tau}^{(3)}(\mathcal{T})^{3}, i.e., Vτ(6)(Ti,j,k,α~Z)2n≥Vτ(3)(T)V_{\tau}^{(6)}(T_{i,j,k},\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}})^{2n}\geq V_{\tau}^{(3)}(\mathcal{T}). In our algorithm, we degenerated T\mathcal{T} into tensor T(2)\mathcal{T}^{(2)}, in which every triple T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} is a broken copy of a standard form tensor T∗\mathcal{T}^{*}. The fraction of non-hole blocks in T(2)∣XI,YJ,ZK\mathcal{T}^{(2)}|_{X_{I},Y_{J},Z_{K}} is ηI,J,K≥2−o(n)\eta_{\scriptscriptstyle I,J,K}\geq 2^{-o(n)} as shown above.

Same as Section 6, according to 5.11, T(2)\mathcal{T}^{(2)} can degenerate into

many copies of standard form tensors T∗\mathcal{T}^{*}. Together with (7.2), we know

\alpha_{\scriptscriptstyle\textup{BX}}^{(r)}\coloneqq 2^{H\big{(}{{\alpha}_{\scriptscriptstyle\textup{X}}^{(r)}}\big{)}}, and similarly \alpha_{\scriptscriptstyle\textup{BY}}^{(r)}\coloneqq 2^{H\big{(}{{\alpha}_{\scriptscriptstyle\textup{Y}}^{(r)}}\big{)}}, \alpha_{\scriptscriptstyle\textup{BZ}}^{(r)}\coloneqq 2^{H\big{(}{{\alpha}_{\scriptscriptstyle\textup{Z}}^{(r)}}\big{)}}. Then,

are the number of large X and Z-blocks normalized by taking the 2n2n-th root, respectively.

\alpha_{\scriptscriptstyle\textup{N}}\coloneqq\lim\limits_{n\to\infty}N_{\alpha}^{1/2n}=\prod_{r=1}^{6}\big{(}{\alpha_{\scriptscriptstyle\textup{N}}^{(r)}}\big{)}^{A_{r}/2}=\prod_{r=1}^{3}\big{(}{\alpha_{\scriptscriptstyle\textup{N}}^{(r)}}\big{)}^{A_{r}} is the number of triples consistent with α(r)\alpha^{(r)} in all regions rr, where αN(r)≔2H(α(r))\alpha_{\scriptscriptstyle\textup{N}}^{(r)}\coloneqq 2^{H(\alpha^{(r)})}.

αP=lim⁡n→∞pcomp1/2n\alpha_{\scriptscriptstyle\textup{P}}=\lim\limits_{n\to\infty}p_{\textup{comp}}^{1/2n}. Its closed form is given in Lemma 7.12.

Then, we take the 2n2n-th root on both sides of (31), obtaining

Once the distributions α(r)\alpha^{(r)} are given, we can verify the lower bound of Vτ(6)(Ti,j,k,α~Z)V_{\tau}^{(6)}(T_{i,j,k},\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}}) via Section 7.2.

3 Value from Merging When {i,j,k}𝑖𝑗𝑘\{i,j,k\} Contains Zero

In [Wil12], they gave the formula for computing the value of T0,j,kT_{0,j,k} without restricted-splitting constraints:

And Vτ(6)(T0,j,k)=Vτ(6)(T0,k,j)=Vτ(6)(Tj,0,k)=Vτ(6)(Tk,0,j)=Vτ(6)(Tj,k,0)=Vτ(6)(Tk,j,0)V_{\tau}^{(6)}(T_{0,j,k})=V_{\tau}^{(6)}(T_{0,k,j})=V_{\tau}^{(6)}(T_{j,0,k})=V_{\tau}^{(6)}(T_{k,0,j})=V_{\tau}^{(6)}(T_{j,k,0})=V_{\tau}^{(6)}(T_{k,j,0}).

Then, the restricted-splitting value is exactly Vτ(6)(T0,j,k,α~Z)=lim⁡n→∞(m′)τ/nV_{\tau}^{(6)}(T_{0,j,k},\widetilde{\alpha}_{\scriptscriptstyle\textup{Z}})=\lim\limits_{n\to\infty}(m^{\prime})^{\tau/n}.

Heuristics and Numerical results

We start by illustrating the framework of our optimization process. For convenience, we will use the following terminology throughout this section:

Let T≔sym6(Ti,j,k⊗n)\mathcal{T}\coloneqq\textup{sym}_{6}(T_{i,j,k}^{\otimes n}). The symmetric hashing method specifies a joint split distribution α\alpha, then applies symmetric hashing to obtain some disjoint triples that are consistent with α\alpha (or its rotation) in each region. If we apply the same procedure on T′=sym6(Ti,j,k⊗n[α~i,j,k])\mathcal{T}^{\prime}=\textup{sym}_{6}\left(T_{i,j,k}^{\otimes n}[\widetilde{\alpha}_{i,j,k}]\right) where α~i,j,k=αZ\widetilde{\alpha}_{i,j,k}={\alpha}_{\scriptscriptstyle\textup{Z}}, the procedure is not affected. Therefore, a bound of the restricted-splitting value

This method is only used for level-2 components in our algorithm; the values of level-1 components are trivial.

Optimization problem.

Algorithm 1 leads to the following optimization problem: maximizing VglobV_{\textup{glob}} (the output of the algorithm) by choosing a feasible set of parameters. Similar to prior works, we need to actually solve this optimization problem in order to give a bound on ω\omega. However, the optimization problem here is more challenging than that in the prior works.

We illustrate the difficulties by recalling the optimization framework in prior works (e.g., [LG14, AW21b]). They optimize the parameters level by level, component by component. For every component Ti,j,kT_{i,j,k}, their goal is to maximize the lower bound of Vτ(6)(Ti,j,k)V_{\tau}^{(6)}(T_{i,j,k}), namely Vi,j,kV_{i,j,k}, since it is the only property of Ti,j,kT_{i,j,k} we used in subsequent levels. They solve an individual optimization (sub-)problem for maximizing Vi,j,kV_{i,j,k}. Some heuristics are further applied to the subproblem so that it becomes a convex optimization problem, which enables the use of efficient solvers. The convex optimization problems are solved one by one, in the same order as Algorithm 1.

The first difference here is that we cannot simply decouple the optimization problem into different components and solve them separately. Assume for some component Ti,j,kT_{i,j,k} we can achieve two value pairs, (Vi,j,k,α~i,j,k)(V_{i,j,k},\widetilde{\alpha}_{i,j,k}) and (Vi,j,k′,α~i,j,k′)(V^{\prime}_{i,j,k},\widetilde{\alpha}^{\prime}_{i,j,k}). Even if Vi,j,k>Vi,j,k′V_{i,j,k}>V^{\prime}_{i,j,k}, we cannot simply say that the first one is better, because the split distribution α~i,j,k\widetilde{\alpha}_{i,j,k} also affects subsequent levels. Even when Vi,j,k=Vi,j,k′V_{i,j,k}=V^{\prime}_{i,j,k}, it is still hard to tell whether α~i,j,k\widetilde{\alpha}_{i,j,k} is better than α~i,j,k′\widetilde{\alpha}^{\prime}_{i,j,k} without providing the parameters of subsequent levels.

The second challenge is that our bounds from Sections 6 and 7 have more complicated forms than the prior works. This requires us to apply more complicated heuristics so that the objective function can become convex.

In the following subsections, we introduce our approach to address these difficulties.

1 Alternating Optimization

We still want to decouple the whole optimization problem, focusing on a single component at a time. We use a technique called alternating optimization to achieve this. It is a simple idea that has been well studied in machine learning.

Suppose we already have a feasible solution {Xglob(t),Xi,j,k(t)}\{\mathcal{X}_{\textup{glob}}^{(t)},\mathcal{X}^{(t)}_{i,j,k}\}. We enumerate all components (i,j,k)(i,j,k) from lower levels to higher levels, one at a time, running a subroutine to update the parameters from Xi,j,k(t)\mathcal{X}^{(t)}_{i,j,k} to Xi,j,k(t+1)\mathcal{X}^{(t+1)}_{i,j,k}. (We also do this for Xglob\mathcal{X}_{\textup{glob}}.) After the enumeration, the collection of current parameters becomes {Xglob(t),Xi,j,k(t+1)}\{\mathcal{X}_{\textup{glob}}^{(t)},\mathcal{X}^{(t+1)}_{i,j,k}\}. The above procedure is called an iteration of alternating optimization. We expect the final objective to increase contiguously if we run many iterations.

We obtain the first feasible solution by using a similar approach of previous works. For each component Ti,j,kT_{i,j,k}, we solve the following subproblem:

(Our programs will store the logarithm of values for easier implementation. Consequently, the partial derivatives here are taken with respect to logarithms.) However, it incurs the following issue. Recall in Section 6, our obtained bound is

To resolve this issue, we design the following “soft-min” function:

The intuition behind this definition is that, we assume we can increase αBZ\alpha_{\scriptscriptstyle\textup{BZ}} and decrease αBX\alpha_{\scriptscriptstyle\textup{BX}} while keeping αBXαBYαBZ=αBX2αBZ\alpha_{\scriptscriptstyle\textup{BX}}\alpha_{\scriptscriptstyle\textup{BY}}\alpha_{\scriptscriptstyle\textup{BZ}}=\alpha_{\scriptscriptstyle\textup{BX}}^{2}\alpha_{\scriptscriptstyle\textup{BZ}} and other quantities in (6.2) unchanged.

Finally, we specify the objective function for subproblems as (8.1), but the partial derivatives are defined by replacing “min” with “soft-min”. The above description is only for illustrating the basic idea of this heuristic rather than defining the specific objective function. In practice, by observing how α~i,j,k\widetilde{\alpha}_{i,j,k} influences the logarithm of αP\alpha_{\scriptscriptstyle\textup{P}} in the subsequent level, we can derive a better estimation than directly using the gradient. This improved estimation is still concave, allowing us to use convex optimization solvers. The remaining task is to solve the following optimization program for a component Ti,j,kT_{i,j,k}:

We will introduce the approach in the next subsection.

2 Heuristics within a Component

The specific form of (8.1) depends on the type of Ti,j,kT_{i,j,k}, or in other words, the approach used to obtain the bound Vi,j,kV_{i,j,k}. Here, we illustrate the heuristics we used for the most challenging case: when Vi,j,kV_{i,j,k} is obtained using the algorithm from Section 7. In this case, (8.1) is rewritten as

As discussed in the previous subsection, obj is a non-negative linear combination of log⁡Vi,j,k\log V_{i,j,k} and α~i,j,k\widetilde{\alpha}_{i,j,k}.

Below, we introduce several heuristics to solve (8.2). We first divide the parameters into two groups, {A1,A2,A3}\{A_{1},A_{2},A_{3}\} and {α(1),α(2),α(3)}\{\alpha^{(1)},\alpha^{(2)},\alpha^{(3)}\}, then apply the alternating optimization technique. That is, we first fix A1,A2,A3A_{1},A_{2},A_{3} as constants and optimize α(1),α(2),α(3)\alpha^{(1)},\alpha^{(2)},\alpha^{(3)}, then do it conversely; this process is repeated multiple times to refine our solution.

This step is relatively easy, as we can rewrite

as a concave function of A1,A2,A3A_{1},A_{2},A_{3}, where cr,cr′,cr′′c_{r},c^{\prime}_{r},c^{\prime\prime}_{r} are constants that only depend on α(r)\alpha^{(r)}. Moreover, α~i,j,k\widetilde{\alpha}_{i,j,k} is linear in the parameters A1,A2,A3A_{1},A_{2},A_{3}. So obj is also concave in A1,A2,A3A_{1},A_{2},A_{3} since it is a non-negative linear combination of two concave functions. This means (8.2) is a concave maximization program (it is easy to check that all constraints on A1,A2,A3A_{1},A_{2},A_{3} are linear) which can be solved precisely and efficiently.

In this step, (8.2) is no longer concave, so we need to apply several heuristics to change its form. Let α(r)(old)\alpha^{(r)(\textup{old})} and α(r)(new)\alpha^{(r)(\textup{new})} (r=1,2,3r=1,2,3) represent the parameters before and after the current alternating optimization step, i.e., α(r)(old)\alpha^{(r)(\textup{old})} is predetermined and α(r)(new)\alpha^{(r)(\textup{new})} is what we want to optimize. The basic intuition for our heuristics is that we expect α(r)(new)\alpha^{(r)(\textup{new})} to be close to α(r)(old)\alpha^{(r)(\textup{old})}, which means several complicated quantities in (8.2) will not change too much. Then we compute these quantities with α(r)(old)\alpha^{(r)(\textup{old})} and regard them as constants. Specifically:

Let R≔∏r=13(αN(r)/max⁡α′∈Dα(r)αN′)ArR\coloneqq\prod_{r=1}^{3}(\alpha_{\scriptscriptstyle\textup{N}}^{(r)}/\max_{\alpha^{\prime}\in D_{\alpha^{(r)}}}\alpha_{\scriptscriptstyle\textup{N}}^{\prime})^{A_{r}}. This factor appears in the form of Vi,j,kV_{i,j,k}. We calculate this formula with the old parameters α(r)(old)\alpha^{(r)(\textup{old})}, and denote the result by R(old)R^{(\textup{old})}. Then, we replace RR with the fixed constant R(old)R^{(\textup{old})} in (8.2).

Similarly, we calculate αP(r)\alpha_{\scriptscriptstyle\textup{P}}^{(r)} with the old parameters α(r)(old)\alpha^{(r)(\textup{old})}, and denote the result by αP(r)(old)\alpha_{\scriptscriptstyle\textup{P}}^{(r)(\textup{old})}. We replace the occurrence of αP(r)\alpha_{\scriptscriptstyle\textup{P}}^{(r)} with αP(r)(old)\alpha_{\scriptscriptstyle\textup{P}}^{(r)(\textup{old})} in (8.2).

With the two heuristics above, we estimate log⁡Vi,j,k\log V_{i,j,k} by

Note that log⁡αBX=H(αX)\log\alpha_{\scriptscriptstyle\textup{BX}}=H({\alpha}_{\scriptscriptstyle\textup{X}}) is a concave function of α\alpha. Therefore, one can check that our approximation for log⁡Vi,j,k\log V_{i,j,k} is concave in all the parameters α(1),α(2),α(3)\alpha^{(1)},\alpha^{(2)},\alpha^{(3)}. Then we can solve (8.2) via convex optimization tools.

Inspired by [AW21b], we can further refine α(1),α(2),α(3)\alpha^{(1)},\alpha^{(2)},\alpha^{(3)} by doing an optimization while fixing their marginals αX(r),αY(r),αZ(r){\alpha}_{\scriptscriptstyle\textup{X}}^{(r)},{\alpha}_{\scriptscriptstyle\textup{Y}}^{(r)},{\alpha}_{\scriptscriptstyle\textup{Z}}^{(r)}. Since max⁡α′∈Dα(r)αN′\max_{\alpha^{\prime}\in D_{\alpha^{(r)}}}\alpha_{\scriptscriptstyle\textup{N}}^{\prime} is determined by the marginal distributions, the factor RR becomes a concave function of the parameters, so we no longer use the first heuristic in this further adjustment.We also replaced “min” with “soft-min” during this adjustment step, because it empirically improves the result.

3 Numerical Results

Our program differs from Algorithm 1 in that it optimizes multiple value pairs for every component instead of just one, allowing different components in the subsequent level to use different value pairs. In previous works, a single bound Vi,j,kV_{i,j,k} is obtained for each component Ti,j,kT_{i,j,k}: If there were multiple valid bounds, we could retain the best one and discard the others. However, this is not the case for (restricted-splitting) value pairs, so we made this adjustment. As a result, the optimization process becomes significantly slower when analyzing higher powers, which is why our analysis stops at the eighth power.

When analyzing the second and fourth tensor power of the Coppersmith-Winograd tensor using our asymmetric hashing approach, we also notice the improvement from previous works, as shown in Table 3.

We think a slightly better bound can be obtained by analyzing higher tensor powers.

References

Appendix A Missing Proofs from Section 4

(a) and (b) are clear because T0,0,4≅⟨1,1,1⟩T_{0,0,4}\cong\left\langle{1,1,1}\right\rangle and T0,1,3≅⟨1,1,2q⟩T_{0,1,3}\cong\left\langle{1,1,2q}\right\rangle.

To show (c), we let α(0,2,2)\alpha^{(0,2,2)} be a split distribution for the component (0,2,2)(0,2,2):

where a′′+2b′′=1a^{\prime\prime}+2b^{\prime\prime}=1. We can write the corresponding Z-marginal distribution

Consider the tensor in which all Z-blocks inconsistent with αZ(0,2,2){\alpha}_{\scriptscriptstyle\textup{Z}}^{(0,2,2)} are zeroed-out, i.e., T0,2,2⊗m[αZ(0,2,2)]T_{0,2,2}^{\otimes m}[{\alpha}_{\scriptscriptstyle\textup{Z}}^{(0,2,2)}]. It is isomorphic to a matrix multiplication tensor where all remaining Z-variables are utilized:

The size of this matrix multiplication tensor on the right side is maximized at b′′=1/(2+q2)b^{\prime\prime}=1/(2+q^{2}), which leads to the lower bound of the non-rotational restricted-splitting value

where α~B\widetilde{\alpha}_{\textup{B}} is the optimal choice of αZ(0,2,2){\alpha}_{\scriptscriptstyle\textup{Z}}^{(0,2,2)} which is specified in Eq. 10. Thus (c) holds.

To show (d), we analyze sym3(T1,1,2⊗m)\textup{sym}_{3}(T_{1,1,2}^{\otimes m}) similarly to [CW90]. Let α(1,1,2)\alpha^{(1,1,2)} be the split distribution of component (1,1,2)(1,1,2):

where 2a′+2b′=12a^{\prime}+2b^{\prime}=1. To see its restricted-splitting value, we degenerate sym3(T1,1,2⊗m[αZ(1,1,2)])\textup{sym}_{3}(T_{1,1,2}^{\otimes m}[{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}]) to independent matrix multiplication tensors, where

is the Z-marginal split distribution of α(1,1,2)\alpha^{(1,1,2)}.

Let T\mathcal{T} be the tensor obtained from T1,1,2⊗mT_{1,1,2}^{\otimes m} by zeroing out all blocks inconsistent with the marginal distributions of α(1,1,2)\alpha^{(1,1,2)}. T\mathcal{T} is a subtensor of T1,1,2⊗m[αZ(1,1,2)]T_{1,1,2}^{\otimes m}[{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}]; it can be obtained by zeroing out X and Y-blocks from T1,1,2⊗m[αZ(1,1,2)]T_{1,1,2}^{\otimes m}[{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}]. Then, we take the 3-symmetrization of T\mathcal{T}, denoted by sym3(T)≔T⊗Trot⊗Trot rot\textup{sym}_{3}(\mathcal{T})\coloneqq\mathcal{T}\otimes\mathcal{T}^{\textup{rot}}\otimes\mathcal{T}^{\textup{rot}\,\textup{rot}}, which is a subtensor of sym3(T1,1,2⊗m[α(1,1,2)])\textup{sym}_{3}(T_{1,1,2}^{\otimes m}[\alpha^{(1,1,2)}]). Next, symmetric hashing method is applied on sym3(T)\textup{sym}_{3}(\mathcal{T}) to obtain (mm/2)2(m2a′m, b′m, b′m)⋅2−o(m)\binom{m}{m/2}^{2}\binom{m}{2a^{\prime}m,\,b^{\prime}m,\,b^{\prime}m}\cdot 2^{-o(m)} disjoint triples. Each triple is isomorphic to

From [CW90], we know that when b′=1/(2+q3τ)b^{\prime}=1/(2+q^{3\tau}), this is optimized at Vτ(3)(T1,1,2,αZ(1,1,2))≥22/3qτ(q3τ+2)1/3V_{\tau}^{(3)}(T_{1,1,2},{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)})\geq 2^{2/3}q^{\tau}(q^{3\tau}+2)^{1/3}. In this case, αZ(1,1,2)=α~A{\alpha}_{\scriptscriptstyle\textup{Z}}^{(1,1,2)}=\widetilde{\alpha}_{\textup{A}}, where α~A\widetilde{\alpha}_{\textup{A}} is defined in Eq. 9. This implies (d). ∎

We prove by contradiction. Let (XI^,YJ^,ZK^)(X_{\widehat{I}},Y_{\widehat{J}},Z_{\widehat{K}}) be a remaining level-1 triple. According to the zeroing-out rules, we know

In component (2,0,2)(2,0,2), the split distribution in X leads to the split distribution in Z. So from Eq. 37 we know split(K^,S2,0,2)=α~B\textsf{split}(\widehat{K},S_{2,0,2})=\widetilde{\alpha}_{\textup{B}}. Similarly we have split(K^,S0,2,2)=α~B\textsf{split}(\widehat{K},S_{0,2,2})=\widetilde{\alpha}_{\textup{B}}. Combined with Eq. 36, we infer that split(K^,S1,1,2)=α~A\textsf{split}(\widehat{K},S_{1,1,2})=\widetilde{\alpha}_{\textup{A}}. (Here we assume α(1,1,2)>0\alpha(1,1,2)>0; otherwise the lemma is trivial.) These split distributions showed that ZK^Z_{\widehat{K}} must be compatible with XI,YJ,ZKX_{I},Y_{J},Z_{K}. ∎

The degeneration of T∗\mathcal{T}^{*} provided by (13) is formed by combining the degenerations for several factors, as shown in Lemma 4.6. For each factor, it is easy to verify that its degeneration in our analysis is a zeroing out and produces a direct sum of equal-sized matrix multiplication tensors. Therefore, the degeneration of T∗\mathcal{T}^{*}, as the tensor product of the zeroing-outs of these factors, is also a zeroing-out which produces equal-sized matrix multiplication tensors. ∎

Appendix B Heuristics for Section 4

Consider the following approximated optimization program:

It has the following differences from the original program:

The ratio αN/max⁡α′∈DααN′\alpha_{\scriptscriptstyle\textup{N}}/\max_{\alpha^{\prime}\in D_{\alpha}}\alpha_{\scriptscriptstyle\textup{N}}^{\prime} is removed from the objective. This ratio is always close to 1 for the optimal α\alpha in practice, but it makes the optimization extremely difficult, hence we remove it to simplify the objective function.

The feasibility constraint αBX≤αBZ/αP\alpha_{\scriptscriptstyle\textup{BX}}\leq\alpha_{\scriptscriptstyle\textup{BZ}}/\alpha_{\scriptscriptstyle\textup{P}} is transformed to a minimum in the objective function. In fact, this is not a heuristic: From Sections 6 and 7 we can see that such modification also leads to valid lower bounds. In this section we did not prove such complicated version of the bound since we aim for better presentation.

αP\alpha_{\scriptscriptstyle\textup{P}} is replaced by a fixed reference value αP∗\alpha_{\scriptscriptstyle\textup{P}}^{*} (initially it is a function of optimization parameters). It is because αP\alpha_{\scriptscriptstyle\textup{P}} is a complicated function of a,b,c,d,ea,b,c,d,e which stops us to apply convex optimization tools. By replacing it with a fixed number, the new objective become logarithmic concave.

Imagine that we already know a distribution α(0)\alpha^{(0)} that is close to the optimal value. By substituting αP∗\alpha_{\scriptscriptstyle\textup{P}}^{*} by αP(0)\alpha_{\scriptscriptstyle\textup{P}}^{(0)} and solving the approximated program, we can hopefully get a better solution α(1)\alpha^{(1)} than α(0)\alpha^{(0)}. Then, we substitute αP∗\alpha_{\scriptscriptstyle\textup{P}}^{*} by αP(1)\alpha_{\scriptscriptstyle\textup{P}}^{(1)} and solve the approximate program again, obtaining its optimal solution α(2)\alpha^{(2)}. As shown in Algorithm 2, we repeat such procedure for a few iterations and take the output of the last iteration as our result solution. The initial solution α(0)\alpha^{(0)} can be obtained by solving the approximated program with αP∗=1\alpha_{\scriptscriptstyle\textup{P}}^{*}=1.

Practically, for the solution α(tmax)\alpha^{(t_{\textup{max}})} before perturbation in line 2, we observe αBX≈αBZ/αP\alpha_{\scriptscriptstyle\textup{BX}}\approx\alpha_{\scriptscriptstyle\textup{BZ}}/\alpha_{\scriptscriptstyle\textup{P}}. Therefore a perturbation is enough to satisfy the constraint without much loss on the solution’s quality. In practice, this perturbation step is done manually.

Appendix C Mising Proofs from Section 7

Recall that we say ZK^∈ZKZ_{\widehat{K}}\in Z_{K} is useful for (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) when the Z-marginal split distribution in Si′,j′,k′(r)S^{(r)}_{i^{\prime},j^{\prime},k^{\prime}} is the same as α~i′,j′,k′(r)\widetilde{\alpha}^{(r)}_{i^{\prime},j^{\prime},k^{\prime}}. Further, we say ZK^Z_{\widehat{K}} is strongly useful for (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}), if its marginal split distribution in Si′,j′,k′(r,L)S^{(r,\textup{L})}_{i^{\prime},j^{\prime},k^{\prime}} and Si′,j′,k′(r,R)S^{(r,\textup{R})}_{i^{\prime},j^{\prime},k^{\prime}} are both identical to α~i′,j′,k′(r)\widetilde{\alpha}^{(r)}_{i^{\prime},j^{\prime},k^{\prime}}. It is a sufficient condition of usefulness. The set of ZK^∈ZKZ_{\widehat{K}}\in Z_{K} that are strongly useful for (XI,YJ,ZK)(X_{I},Y_{J},Z_{K}) is denoted by Bstrong(XI,YJ,ZK)B_{\textup{strong}}(X_{I},Y_{J},Z_{K}).

The concept of strong usefulness has a tight connection with typicalness. We will show

It is clear that these two inequalities together can imply Lemma 7.10. Next, we first show (39) by calculating both sides of it.

Below is an equivalent condition of ZK^∈ZKZ_{\widehat{K}}\in Z_{K} being strongly useful:

For every rr and (i′,j′,k′)(i^{\prime},j^{\prime},k^{\prime}), this condition implies two constraints of the form split(K^,S)=α~\textsf{split}(\widehat{K},S)=\widetilde{\alpha}, for which we have (∣S∣[∣S∣⋅α~(kl′)]kl′)=2∣S∣⋅H(α~)+o(n)\binom{|S|}{[|S|\cdot\widetilde{\alpha}(k^{\prime}_{l})]_{k^{\prime}_{l}}}=2^{|S|\cdot H(\widetilde{\alpha})+o(n)} ways to split the Z-indices in SS. All these constraints apply on disjoint position sets. Multiplying the number of ways over all constraints, we obtain the number of strongly useful blocks ZK^∈ZKZ_{\widehat{K}}\in Z_{K}:

(The last equality holds since ∣S(r,L)∣=∣S(r,R)∣|{S^{(r,\textup{L})}}|=|{S^{(r,\textup{R})}}|.)

Consider the following sufficient condition for a block ZK^∈ZKZ_{\widehat{K}}\in Z_{K} to be both strongly useful and typical:

That is, the frequency of occurrence of (K^2t−1,K^2t,K^2t+1,K^2t+2)(\widehat{K}_{2t-1},\widehat{K}_{2t},\widehat{K}_{2t+1},\widehat{K}_{2t+2}) matches the distribution α~i′,j′,k′(r)×α~i(r) ⁣− ⁣i′, j(r) ⁣− ⁣j′, k(r) ⁣− ⁣k′(r)\widetilde{\alpha}^{(r)}_{i^{\prime},j^{\prime},k^{\prime}}\times\widetilde{\alpha}^{(r)}_{i^{(r)}\!-\!i^{\prime},\,j^{(r)}\!-\!j^{\prime},\,k^{(r)}\!-\!k^{\prime}}.

Suppose some block ZK^Z_{\widehat{K}} satisfies the above condition. By summing up (42) over all (i′,j′,k′)(i^{\prime},j^{\prime},k^{\prime}) and all r∈r\in, we see ZK^Z_{\widehat{K}} is typical. Moreover, the marginals of α~i′,j′,k′(r)×α~i(r) ⁣− ⁣i′, j(r) ⁣− ⁣j′, k(r) ⁣− ⁣k′(r)\widetilde{\alpha}^{(r)}_{i^{\prime},j^{\prime},k^{\prime}}\times\widetilde{\alpha}^{(r)}_{i^{(r)}\!-\!i^{\prime},\,j^{(r)}\!-\!j^{\prime},\,k^{(r)}\!-\!k^{\prime}} on k1k_{1} and k3k_{3} are identical to α~i′,j′,k′(r)\widetilde{\alpha}^{(r)}_{i^{\prime},j^{\prime},k^{\prime}} and α~i(r) ⁣− ⁣i′, j(r) ⁣− ⁣j′, k(r) ⁣− ⁣k′(r)\widetilde{\alpha}^{(r)}_{i^{(r)}\!-\!i^{\prime},\,j^{(r)}\!-\!j^{\prime},\,k^{(r)}\!-\!k^{\prime}}, respectively, which implies that ZK^Z_{\widehat{K}} is strongly useful.

Next, we count the number of ZK^∈ZKZ_{\widehat{K}}\in Z_{K} satisfying (42) to form a lower bound of ∣Bstrong(XI,YJ,ZK)∩Btypical,K∣|B_{\textup{strong}}(X_{I},Y_{J},Z_{K})\cap B_{\textup{typical},K}|. Similar to above, the constraints from different (i′,j′,k′)(i^{\prime},j^{\prime},k^{\prime}) and rr are applying on disjoint sets of positions. For each of the constraints, the number of ways to split Z-indices (Kt,Kt+1)=(k′,k(r)−k′)(K_{t},K_{t+1})=(k^{\prime},k^{(r)}-k^{\prime}) into (k1,k2,k3,k4)(k_{1},k_{2},k_{3},k_{4}) equals

Multiplying these numbers over all (i′,j′,k′)(i^{\prime},j^{\prime},k^{\prime}) and rr, we obtain

which equals (41) up to a negligible factor 2o(n)2^{o(n)}. Thus, Eq. 39 holds.

Proof of Eq. 40.

A similar argument is applied to show (40). We start by transforming (41) into the following equivalent form:

Then, we count the number of useful blocks ZK^∈ZKZ_{\widehat{K}}\in Z_{K}:

The last equality holds due to (43) and \big{|}{S^{(r)}_{i^{\prime},j^{\prime},k^{\prime}}}\big{|}=\big{|}{S^{(r,\textup{L})}_{i^{\prime},j^{\prime},k^{\prime}}}\big{|}+\big{|}{S^{(r,\textup{R})}_{i^{\prime},j^{\prime},k^{\prime}}}\big{|}. Thus, (40) holds. Combining (40) with (39), we conclude the proof. ∎