改进的激光方法与更快的矩阵乘法
Josh Alman and Virginia Vassilevska Williams. 2021. A refined laser method and faster matrix multiplication. In Proceedings of the Thirty-Second Annual ACM-SIAM Symposium on Discrete Algorithms (SODA '21). Society for Industrial and Applied Mathematics, USA, 522–539.
Josh Alman 和 Virginia Vassilevska Williams 在这篇发表于2021年SIAM的论文中,通过对激光方法的精妙改进,成功将矩阵乘法指数ω \omega ω 的上界从2.37287降低到2.37286。虽然改进幅度看似微小,但这代表了自1986年以来该领域采用的核心技术方法的一次重要突破。
第一章:引言与背景
1.1 矩阵乘法复杂度问题
矩阵乘法的算法复杂度是理论计算机科学中最引人入胜的开放问题之一。问题的核心在于确定指数ω \omega ω ,它定义为:
ω : = inf { r ∈ R : n × n 矩阵可以用 O ( n r ) 次域运算相乘 } \omega := \inf\{r \in \mathbb{R} : n \times n \text{矩阵可以用} O(n^r) \text{次域运算相乘}\}
ω : = inf { r ∈ R : n × n 矩阵可以用 O ( n r ) 次域运算相乘 }
从定义可以看出,ω ≥ 2 \omega \geq 2 ω ≥ 2 (因为必须输出n 2 n^2 n 2 个元素),而朴素算法给出ω ≤ 3 \omega \leq 3 ω ≤ 3 。自1969年Strassen证明ω < 2.81 \omega < 2.81 ω < 2 . 8 1 以来,一长串研究工作发展出了强大的技术工具箱,最终在本文之前达到了ω < 2.37287 \omega < 2.37287 ω < 2 . 3 7 2 8 7 的最佳界限。
矩阵乘法算法的发展历程可以概括为几个关键阶段。早期工作(1969-1986)主要关注于发现新的递归算法结构。从1986年开始,Strassen引入的激光方法成为主导技术,所有后续改进都基于这一框架。Coppersmith和Winograd在1990年引入的CW张量族成为分析的核心对象。
1.2 激光方法的原理
激光方法的核心思想可以通过以下步骤理解。考虑一个张量T T T ,其变量集被划分为X = X 1 ∪ ⋯ ∪ X k X X = X_1 \cup \cdots \cup X_{k_X} X = X 1 ∪ ⋯ ∪ X k X ,Y = Y 1 ∪ ⋯ ∪ Y k Y Y = Y_1 \cup \cdots \cup Y_{k_Y} Y = Y 1 ∪ ⋯ ∪ Y k Y ,Z = Z 1 ∪ ⋯ ∪ Z k Z Z = Z_1 \cup \cdots \cup Z_{k_Z} Z = Z 1 ∪ ⋯ ∪ Z k Z 。对于每个三元组( i , j , k ) (i,j,k) ( i , j , k ) ,定义子张量:
T i j k = ∑ x ∈ X i ∑ y ∈ Y j ∑ z ∈ Z k a x y z ⋅ x y z T_{ijk} = \sum_{x \in X_i} \sum_{y \in Y_j} \sum_{z \in Z_k} a_{xyz} \cdot xyz
T i j k = x ∈ X i ∑ y ∈ Y j ∑ z ∈ Z k ∑ a x y z ⋅ x y z
假设每个T i j k T_{ijk} T i j k 要么为0,要么是矩阵乘法张量。虽然T T T 是这些矩阵乘法张量的和,但通常不是直和。激光方法通过以下巧妙方式解决这个问题:
首先,在非零子张量上选择概率分布α \alpha α ,对T i j k T_{ijk} T i j k 赋予概率α i j k \alpha_{ijk} α i j k 。然后考虑大的Kronecker幂:
T ⊗ n = ∑ ( T 1 , … , T n ) ∈ { T i j k } n T 1 ⊗ ⋯ ⊗ T n T^{\otimes n} = \sum_{(T_1,\ldots,T_n) \in \{T_{ijk}\}^n} T_1 \otimes \cdots \otimes T_n
T ⊗ n = ( T 1 , … , T n ) ∈ { T i j k } n ∑ T 1 ⊗ ⋯ ⊗ T n
目标是零化T ⊗ n T^{\otimes n} T ⊗ n 中的变量,使得剩余的是B B B 个不同子张量T 1 ⊗ T 2 ⊗ ⋯ ⊗ T n T_1 \otimes T_2 \otimes \cdots \otimes T_n T 1 ⊗ T 2 ⊗ ⋯ ⊗ T n 的直和,这些子张量与α \alpha α 一致,即对每个( i , j , k ) (i,j,k) ( i , j , k ) ,有∣ { ℓ ∈ [ n ] : T ℓ = T i j k } ∣ = α i j k ⋅ n |\{\ell \in [n] : T_\ell = T_{ijk}\}| = \alpha_{ijk} \cdot n ∣ { ℓ ∈ [ n ] : T ℓ = T i j k } ∣ = α i j k ⋅ n 。
第二章:张量理论基础
2.1 张量运算的形式化定义
设F \mathbb{F} F 为任意域,定义张量T T T 在变量集X = { x 1 , … , x ∣ X ∣ } X = \{x_1, \ldots, x_{|X|}\} X = { x 1 , … , x ∣ X ∣ } ,Y = { y 1 , … , y ∣ Y ∣ } Y = \{y_1, \ldots, y_{|Y|}\} Y = { y 1 , … , y ∣ Y ∣ } ,Z = { z 1 , … , z ∣ Z ∣ } Z = \{z_1, \ldots, z_{|Z|}\} Z = { z 1 , … , z ∣ Z ∣ } 上为三线性形式:
T = ∑ i = 1 ∣ X ∣ ∑ j = 1 ∣ Y ∣ ∑ k = 1 ∣ Z ∣ a i j k ⋅ x i y j z k T = \sum_{i=1}^{|X|} \sum_{j=1}^{|Y|} \sum_{k=1}^{|Z|} a_{ijk} \cdot x_i y_j z_k
T = i = 1 ∑ ∣ X ∣ j = 1 ∑ ∣ Y ∣ k = 1 ∑ ∣ Z ∣ a i j k ⋅ x i y j z k
两个张量的直和T ⊕ T ′ T \oplus T' T ⊕ T ′ 定义在不相交并X ⊔ X ′ X \sqcup X' X ⊔ X ′ ,Y ⊔ Y ′ Y \sqcup Y' Y ⊔ Y ′ ,Z ⊔ Z ′ Z \sqcup Z' Z ⊔ Z ′ 上。Kronecker积T ⊗ T ′ T \otimes T' T ⊗ T ′ 定义在笛卡尔积X × X ′ X \times X' X × X ′ ,Y × Y ′ Y \times Y' Y × Y ′ ,Z × Z ′ Z \times Z' Z × Z ′ 上:
T ⊗ T ′ = ∑ i , j , k , i ′ , j ′ , k ′ a i j k b i ′ j ′ k ′ ⋅ ( x i , x i ′ ′ ) ( y j , y j ′ ′ ) ( z k , z k ′ ′ ) T \otimes T' = \sum_{i,j,k,i',j',k'} a_{ijk}b_{i'j'k'} \cdot (x_i, x'_{i'})(y_j, y'_{j'})(z_k, z'_{k'})
T ⊗ T ′ = i , j , k , i ′ , j ′ , k ′ ∑ a i j k b i ′ j ′ k ′ ⋅ ( x i , x i ′ ′ ) ( y j , y j ′ ′ ) ( z k , z k ′ ′ )
2.2 矩阵乘法张量
a × b × c a \times b \times c a × b × c 矩阵乘法张量⟨ a , b , c ⟩ \langle a,b,c \rangle ⟨ a , b , c ⟩ 定义为:
⟨ a , b , c ⟩ = ∑ i ∈ [ a ] ∑ j ∈ [ b ] ∑ k ∈ [ c ] x i j y j k z k i \langle a,b,c \rangle = \sum_{i \in [a]} \sum_{j \in [b]} \sum_{k \in [c]} x_{ij}y_{jk}z_{ki}
⟨ a , b , c ⟩ = i ∈ [ a ] ∑ j ∈ [ b ] ∑ k ∈ [ c ] ∑ x i j y j k z k i
这个张量编码了a × b a \times b a × b 矩阵与b × c b \times c b × c 矩阵相乘的三线性形式。关键性质包括:
⟨ a , b , c ⟩ ⊗ ⟨ d , e , f ⟩ ≡ ⟨ a d , b e , c f ⟩ \langle a,b,c \rangle \otimes \langle d,e,f \rangle \equiv \langle ad,be,cf \rangle
⟨ a , b , c ⟩ ⊗ ⟨ d , e , f ⟩ ≡ ⟨ a d , b e , c f ⟩
这对应于分块矩阵乘法的事实。
2.3 Schönhage渐近和不等式
Schönhage在1981年证明的一个关键结果表明,不仅单个矩阵乘法张量的秩可以给出ω \omega ω 的界限,多个矩阵乘法张量的直和也可以:
定理 2.1 (Schönhage, 1981) 假设存在正整数r > m r > m r > m 和a i , b i , c i a_i, b_i, c_i a i , b i , c i (i ∈ [ m ] i \in [m] i ∈ [ m ] ),使得张量
T = ⨁ i = 1 m ⟨ a i , b i , c i ⟩ T = \bigoplus_{i=1}^m \langle a_i, b_i, c_i \rangle
T = i = 1 ⨁ m ⟨ a i , b i , c i ⟩
满足R ~ ( T ) ≤ r \tilde{R}(T) \leq r R ~ ( T ) ≤ r 。则ω ≤ 3 τ \omega \leq 3\tau ω ≤ 3 τ ,其中τ ∈ [ 2 / 3 , 1 ] \tau \in [2/3, 1] τ ∈ [ 2 / 3 , 1 ] 是方程
∑ i = 1 m ( a i ⋅ b i ⋅ c i ) τ = r \sum_{i=1}^m (a_i \cdot b_i \cdot c_i)^\tau = r
i = 1 ∑ m ( a i ⋅ b i ⋅ c i ) τ = r
的解。
第三章:Coppersmith-Winograd张量族
3.1 CW张量的定义与结构
对于非负整数q q q ,Coppersmith-Winograd张量C W q CW_q C W q 定义在变量集{ x 0 , … , x q + 1 } \{x_0, \ldots, x_{q+1}\} { x 0 , … , x q + 1 } ,{ y 0 , … , y q + 1 } \{y_0, \ldots, y_{q+1}\} { y 0 , … , y q + 1 } ,{ z 0 , … , z q + 1 } \{z_0, \ldots, z_{q+1}\} { z 0 , … , z q + 1 } 上:
C W q = x 0 y 0 z q + 1 + x 0 z q + 1 y 0 + x q + 1 y 0 z 0 + ∑ i = 1 q ( x 0 y i z i + x i y 0 z i + x i y i z 0 ) CW_q = x_0y_0z_{q+1} + x_0z_{q+1}y_0 + x_{q+1}y_0z_0 + \sum_{i=1}^q (x_0y_iz_i + x_iy_0z_i + x_iy_iz_0)
C W q = x 0 y 0 z q + 1 + x 0 z q + 1 y 0 + x q + 1 y 0 z 0 + i = 1 ∑ q ( x 0 y i z i + x i y 0 z i + x i y i z 0 )
这个张量可以分解为:
三个"角项":x 0 y 0 z q + 1 x_0y_0z_{q+1} x 0 y 0 z q + 1 ,x 0 z q + 1 y 0 x_0z_{q+1}y_0 x 0 z q + 1 y 0 ,x q + 1 y 0 z 0 x_{q+1}y_0z_0 x q + 1 y 0 z 0
三个矩阵乘法张量:∑ i = 1 q x 0 y i z i ≡ ⟨ 1 , 1 , q ⟩ \sum_{i=1}^q x_0y_iz_i \equiv \langle 1,1,q \rangle ∑ i = 1 q x 0 y i z i ≡ ⟨ 1 , 1 , q ⟩ ,∑ i = 1 q x i y 0 z i ≡ ⟨ q , 1 , 1 ⟩ \sum_{i=1}^q x_iy_0z_i \equiv \langle q,1,1 \rangle ∑ i = 1 q x i y 0 z i ≡ ⟨ q , 1 , 1 ⟩ ,∑ i = 1 q x i y i z 0 ≡ ⟨ 1 , q , 1 ⟩ \sum_{i=1}^q x_iy_iz_0 \equiv \langle 1,q,1 \rangle ∑ i = 1 q x i y i z 0 ≡ ⟨ 1 , q , 1 ⟩
3.2 CW张量的自然划分
C W q CW_q C W q 具有自然的变量划分:
X 0 = { x 0 } X^0 = \{x_0\} X 0 = { x 0 } ,X 1 = { x 1 , … , x q } X^1 = \{x_1, \ldots, x_q\} X 1 = { x 1 , … , x q } ,X 2 = { x q + 1 } X^2 = \{x_{q+1}\} X 2 = { x q + 1 }
Y 0 = { y 0 } Y^0 = \{y_0\} Y 0 = { y 0 } ,Y 1 = { y 1 , … , y q } Y^1 = \{y_1, \ldots, y_q\} Y 1 = { y 1 , … , y q } ,Y 2 = { y q + 1 } Y^2 = \{y_{q+1}\} Y 2 = { y q + 1 }
Z 0 = { z 0 } Z^0 = \{z_0\} Z 0 = { z 0 } ,Z 1 = { z 1 , … , z q } Z^1 = \{z_1, \ldots, z_q\} Z 1 = { z 1 , … , z q } ,Z 2 = { z q + 1 } Z^2 = \{z_{q+1}\} Z 2 = { z q + 1 }
非零子张量恰好是满足i + j + k = 2 i+j+k=2 i + j + k = 2 的T i j k T_{ijk} T i j k ,使得C W q CW_q C W q 成为2-划分张量。
第四章:改进的激光方法
4.1 主要定理
本文的核心贡献是以下改进的激光方法定理:
定理 4.1(改进的激光方法) 对于任何P P P -划分张量T T T ,任何α ∈ D \alpha \in D α ∈ D ,以及任何τ ∈ [ 2 / 3 , 1 ] \tau \in [2/3, 1] τ ∈ [ 2 / 3 , 1 ] ,有:
V τ ( T ) ≥ α V τ ⋅ α B ⋅ α N max β ∈ D α β N V_\tau(T) \geq \alpha_{V_\tau} \cdot \alpha_B \cdot \sqrt{\frac{\alpha_N}{\max_{\beta \in D_\alpha} \beta_N}}
V τ ( T ) ≥ α V τ ⋅ α B ⋅ max β ∈ D α β N α N
其中:
α B = ( ∏ i ∈ [ k X ] α X i − α X i ) 1 / 3 ( ∏ j ∈ [ k Y ] α Y j − α Y j ) 1 / 3 ( ∏ k ∈ [ k Z ] α Z k − α Z k ) 1 / 3 \alpha_B = \left(\prod_{i \in [k_X]} \alpha_{X_i}^{-\alpha_{X_i}}\right)^{1/3} \left(\prod_{j \in [k_Y]} \alpha_{Y_j}^{-\alpha_{Y_j}}\right)^{1/3} \left(\prod_{k \in [k_Z]} \alpha_{Z_k}^{-\alpha_{Z_k}}\right)^{1/3} α B = ( ∏ i ∈ [ k X ] α X i − α X i ) 1 / 3 ( ∏ j ∈ [ k Y ] α Y j − α Y j ) 1 / 3 ( ∏ k ∈ [ k Z ] α Z k − α Z k ) 1 / 3
α N = ∏ ( i , j , k ) ∈ S α i j k − α i j k \alpha_N = \prod_{(i,j,k) \in S} \alpha_{ijk}^{-\alpha_{ijk}} α N = ∏ ( i , j , k ) ∈ S α i j k − α i j k
α V τ = ∏ ( i , j , k ) ∈ S V τ ( T i j k ) α i j k \alpha_{V_\tau} = \prod_{(i,j,k) \in S} V_\tau(T_{ijk})^{\alpha_{ijk}} α V τ = ∏ ( i , j , k ) ∈ S V τ ( T i j k ) α i j k
D α D_\alpha D α 是与α \alpha α 具有相同边缘分布的概率分布集合
与之前的界限V τ ( T ) ≥ α V τ ⋅ α B ⋅ α N max β ∈ D α β N V_\tau(T) \geq \alpha_{V_\tau} \cdot \alpha_B \cdot \frac{\alpha_N}{\max_{\beta \in D_\alpha} \beta_N} V τ ( T ) ≥ α V τ ⋅ α B ⋅ m a x β ∈ D α β N α N 相比,新方法通过因子max β ∈ D α β N α N \sqrt{\frac{\max_{\beta \in D_\alpha} \beta_N}{\alpha_N}} α N m a x β ∈ D α β N 实现了改进。
4.2 证明策略
证明分为四个主要步骤。考虑大的正整数n n n 和张量T = T ⊗ n ⊗ T r ⊗ n ⊗ T r r ⊗ n \mathcal{T} = T^{\otimes n} \otimes T^{r \otimes n} \otimes T^{rr \otimes n} T = T ⊗ n ⊗ T r ⊗ n ⊗ T r r ⊗ n 。目标是证明T \mathcal{T} T 可以被零化为
α B 3 n − o ( n ) ⋅ α N 1.5 n − o ( n ) max β ∈ D α β N 1.5 n − o ( n ) \frac{\alpha_B^{3n-o(n)} \cdot \alpha_N^{1.5n-o(n)}}{\max_{\beta \in D_\alpha} \beta_N^{1.5n-o(n)}}
max β ∈ D α β N 1 . 5 n − o ( n ) α B 3 n − o ( n ) ⋅ α N 1 . 5 n − o ( n )
个不同张量的直和,每个具有值α V 3 n \alpha_V^{3n} α V 3 n 。
步骤1:移除与α \alpha α 不一致的块
定义X I X_I X I 对I ∈ [ k X ] n I \in [k_X]^n I ∈ [ k X ] n 与α \alpha α 一致,如果对所有i ∈ [ k X ] i \in [k_X] i ∈ [ k X ] :
α X i = 1 n ⋅ ∣ { ℓ ∈ [ n ] : I ℓ = i } ∣ \alpha_{X_i} = \frac{1}{n} \cdot |\{\ell \in [n] : I_\ell = i\}|
α X i = n 1 ⋅ ∣ { ℓ ∈ [ n ] : I ℓ = i } ∣
零化所有至少有一个分量与α \alpha α 不一致的X X X -块、Y Y Y -块或Z Z Z -块。剩余块的数量为:
N B = ( ∏ i ∈ [ k X ] α X i − α X i ) n − o ( n ) ⋅ ( ∏ j ∈ [ k Y ] α Y j − α Y j ) n − o ( n ) ⋅ ( ∏ k ∈ [ k Z ] α Z k − α Z k ) n − o ( n ) = α B 3 n − o ( n ) N_B = \left(\prod_{i \in [k_X]} \alpha_{X_i}^{-\alpha_{X_i}}\right)^{n-o(n)} \cdot \left(\prod_{j \in [k_Y]} \alpha_{Y_j}^{-\alpha_{Y_j}}\right)^{n-o(n)} \cdot \left(\prod_{k \in [k_Z]} \alpha_{Z_k}^{-\alpha_{Z_k}}\right)^{n-o(n)} = \alpha_B^{3n-o(n)}
N B = ⎝ ⎛ i ∈ [ k X ] ∏ α X i − α X i ⎠ ⎞ n − o ( n ) ⋅ ⎝ ⎛ j ∈ [ k Y ] ∏ α Y j − α Y j ⎠ ⎞ n − o ( n ) ⋅ ⎝ ⎛ k ∈ [ k Z ] ∏ α Z k − α Z k ⎠ ⎞ n − o ( n ) = α B 3 n − o ( n )
步骤2:计数非零块三元组
与( β , β ′ , β ′ ′ ) (\beta, \beta', \beta'') ( β , β ′ , β ′ ′ ) 一致的非零块三元组数量为:
( β N ⋅ β N ′ ⋅ β N ′ ′ ) n − o ( n ) (\beta_N \cdot \beta'_N \cdot \beta''_N)^{n-o(n)}
( β N ⋅ β N ′ ⋅ β N ′ ′ ) n − o ( n )
特别地,与( α , α , α ) (\alpha, \alpha, \alpha) ( α , α , α ) 一致的块三元组数量为N α = α N 3 n − o ( n ) N_\alpha = \alpha_N^{3n-o(n)} N α = α N 3 n − o ( n ) 。
步骤3:使用Salem-Spencer集合稀疏化
定义哈希函数h X , h Y , h Z h_X, h_Y, h_Z h X , h Y , h Z 到Z M \mathbb{Z}_M Z M ,其中M ∈ [ 100 R , 200 R ] M \in [100R, 200R] M ∈ [ 1 0 0 R , 2 0 0 R ] 是素数,R = N α / N B R = N_\alpha/N_B R = N α / N B 。使用Salem-Spencer集合A ⊆ Z M A \subseteq \mathbb{Z}_M A ⊆ Z M ,满足∣ A ∣ ≥ M 1 − o ( 1 ) |A| \geq M^{1-o(1)} ∣ A ∣ ≥ M 1 − o ( 1 ) ,零化所有不哈希到A A A 中值的块。
步骤4:应用对角化定理
应用定理3.1将剩余张量转化为至少
L ≥ 2 3 3 ⋅ C 1 ′ 3 / 2 C 3 1 / 2 ≥ α B 3 n − o ( n ) ⋅ α N 1.5 n − o ( n ) max β ∈ D α β N 1.5 n − o ( n ) L \geq \frac{2}{3\sqrt{3}} \cdot \frac{C_1'^{3/2}}{C_3^{1/2}} \geq \frac{\alpha_B^{3n-o(n)} \cdot \alpha_N^{1.5n-o(n)}}{\max_{\beta \in D_\alpha} \beta_N^{1.5n-o(n)}}
L ≥ 3 3 2 ⋅ C 3 1 / 2 C 1 ′ 3 / 2 ≥ max β ∈ D α β N 1 . 5 n − o ( n ) α B 3 n − o ( n ) ⋅ α N 1 . 5 n − o ( n )
个与( α , α , α ) (\alpha, \alpha, \alpha) ( α , α , α ) 一致的块三元组的直和。
第五章:优化算法与启发式方法
5.1 固定γ \gamma γ 时的优化
对于固定的γ ∈ D \gamma \in D γ ∈ D ,优化所有α ∈ D γ \alpha \in D_\gamma α ∈ D γ 上的界限可以通过求解两个凸规划问题完成:
问题1: 最大化 α V τ ⋅ α B ⋅ α N \alpha_{V_\tau} \cdot \alpha_B \cdot \sqrt{\alpha_N} α V τ ⋅ α B ⋅ α N ,约束条件:α ∈ D γ \alpha \in D_\gamma α ∈ D γ
问题2: 最大化 β N \beta_N β N ,约束条件:β ∈ D γ \beta \in D_\gamma β ∈ D γ
这两个问题都是在线性约束下最大化凹函数,可以高效求解。
5.2 选择γ \gamma γ 的启发式方法
论文提出了四种启发式方法:
启发式1: 选择γ \gamma γ 最大化γ V τ ⋅ γ B \gamma_{V_\tau} \cdot \gamma_B γ V τ ⋅ γ B ,满足γ = arg max γ ′ ∈ D γ γ N \gamma = \arg\max_{\gamma' \in D_\gamma} \gamma_N γ = arg max γ ′ ∈ D γ γ N
启发式2: 选择γ \gamma γ 最大化γ V τ ⋅ γ B \gamma_{V_\tau} \cdot \gamma_B γ V τ ⋅ γ B
启发式3: 选择γ \gamma γ 最大化γ V τ ⋅ γ B + λ / γ N \gamma_{V_\tau} \cdot \gamma_B + \lambda/\gamma_N γ V τ ⋅ γ B + λ / γ N ,其中λ \lambda λ 是可调参数
启发式4: 选择γ \gamma γ 最大化γ V τ ⋅ γ B ⋅ γ N \gamma_{V_\tau} \cdot \gamma_B \cdot \sqrt{\gamma_N} γ V τ ⋅ γ B ⋅ γ N
实验表明,启发式3在λ \lambda λ 取0到1 0 7 10^7 1 0 7 之间的正值时通常给出最好的结果。
第六章:数值结果
6.1 对C W q ⊗ t CW_q^{\otimes t} C W q ⊗ t 的分析
对于t t t 次幂的CW张量,定义映射κ : { 0 , 1 , … , q + 1 } → { 0 , 1 , 2 } \kappa: \{0,1,\ldots,q+1\} \to \{0,1,2\} κ : { 0 , 1 , … , q + 1 } → { 0 , 1 , 2 } :
κ ( 0 ) = 0 \kappa(0) = 0 κ ( 0 ) = 0
κ ( i ) = 1 \kappa(i) = 1 κ ( i ) = 1 对于 i ∈ { 1 , … , q } i \in \{1,\ldots,q\} i ∈ { 1 , … , q }
κ ( q + 1 ) = 2 \kappa(q+1) = 2 κ ( q + 1 ) = 2
对于I ∈ { 0 , 1 , … , 2 t } I \in \{0,1,\ldots,2t\} I ∈ { 0 , 1 , … , 2 t } ,定义:
L t , I = { A ∈ { 0 , 1 , … , q + 1 } t : ∑ ℓ = 1 t κ ( A ℓ ) = I } L_{t,I} = \{A \in \{0,1,\ldots,q+1\}^t : \sum_{\ell=1}^t \kappa(A_\ell) = I\}
L t , I = { A ∈ { 0 , 1 , … , q + 1 } t : ℓ = 1 ∑ t κ ( A ℓ ) = I }
6.2 子张量的合并现象
某些子张量可以通过"合并"获得更大的值。例如,T 220 2 T^2_{220} T 2 2 0 2 可以合并为:
T 220 2 ≡ ∑ i = 0 q + 1 x i , i y i , i z 0 , 0 ≡ ⟨ q + 2 , 1 , 1 ⟩ T^2_{220} \equiv \sum_{i=0}^{q+1} x_{i,i}y_{i,i}z_{0,0} \equiv \langle q+2, 1, 1 \rangle
T 2 2 0 2 ≡ i = 0 ∑ q + 1 x i , i y i , i z 0 , 0 ≡ ⟨ q + 2 , 1 , 1 ⟩
因此V τ ( T 220 2 ) = ( q + 2 ) τ V_\tau(T^2_{220}) = (q+2)^\tau V τ ( T 2 2 0 2 ) = ( q + 2 ) τ ,这比单独处理各部分得到的值更大。
6.3 最终界限
应用改进的激光方法到C W 5 ⊗ 32 CW_5^{\otimes 32} C W 5 ⊗ 3 2 ,对于τ = 2.3728596 / 3 \tau = 2.3728596/3 τ = 2 . 3 7 2 8 5 9 6 / 3 ,得到:
V τ ( C W 5 ⊗ 32 ) > 7 32 + 9.19 × 1 0 22 V_\tau(CW_5^{\otimes 32}) > 7^{32 + 9.19 \times 10^{22}}
V τ ( C W 5 ⊗ 3 2 ) > 7 3 2 + 9 . 1 9 × 1 0 2 2
结合Schönhage不等式和R ~ ( C W 5 ) = 7 \tilde{R}(CW_5) = 7 R ~ ( C W 5 ) = 7 的事实,这给出:
ω < 2.3728596 \omega < 2.3728596
ω < 2 . 3 7 2 8 5 9 6
附录A:概率分析的技术细节
A.1 边缘分布的保持
引理 A.1 对于任何α ∈ D \alpha \in D α ∈ D 和足够大的正整数n n n ,存在α ′ ∈ D \alpha' \in D α ′ ∈ D 使得:
α i j k ′ \alpha'_{ijk} α i j k ′ 是1 / n 1/n 1 / n 的整数倍
∣ α i j k − α i j k ′ ∣ < 1 / n |\alpha_{ijk} - \alpha'_{ijk}| < 1/n ∣ α i j k − α i j k ′ ∣ < 1 / n
证明: 设S ′ ⊆ S S' \subseteq S S ′ ⊆ S 为α i j k \alpha_{ijk} α i j k 不是1 / n 1/n 1 / n 整数倍的( i , j , k ) (i,j,k) ( i , j , k ) 集合。对每个( i , j , k ) ∈ S ∖ S ′ (i,j,k) \in S \setminus S' ( i , j , k ) ∈ S ∖ S ′ ,令α i j k ′ = α i j k \alpha'_{ijk} = \alpha_{ijk} α i j k ′ = α i j k 。初始时,对每个( i , j , k ) ∈ S ′ (i,j,k) \in S' ( i , j , k ) ∈ S ′ ,令α i j k ′ = ⌊ n ⋅ α i j k ⌋ / n \alpha'_{ijk} = \lfloor n \cdot \alpha_{ijk} \rfloor/n α i j k ′ = ⌊ n ⋅ α i j k ⌋ / n 。
因为∑ ( i , j , k ) ∈ S α i j k = 1 \sum_{(i,j,k) \in S} \alpha_{ijk} = 1 ∑ ( i , j , k ) ∈ S α i j k = 1 ,设t = ∑ ( i , j , k ) ∈ S α i j k ′ t = \sum_{(i,j,k) \in S} \alpha'_{ijk} t = ∑ ( i , j , k ) ∈ S α i j k ′ 。则:
1 − t = ∑ ( i , j , k ) ∈ S ′ ( α i j k − α i j k ′ ) ≤ ∣ S ′ ∣ n 1 - t = \sum_{(i,j,k) \in S'} (\alpha_{ijk} - \alpha'_{ijk}) \leq \frac{|S'|}{n}
1 − t = ( i , j , k ) ∈ S ′ ∑ ( α i j k − α i j k ′ ) ≤ n ∣ S ′ ∣
存在非负整数K ≤ ∣ S ′ ∣ K \leq |S'| K ≤ ∣ S ′ ∣ 使得t = 1 − K / n t = 1 - K/n t = 1 − K / n 。选择S ′ S' S ′ 中任意K K K 个元素( i , j , k ) (i,j,k) ( i , j , k ) ,对其α i j k ′ \alpha'_{ijk} α i j k ′ 加上1 / n 1/n 1 / n 。现在∑ α i j k ′ = 1 \sum \alpha'_{ijk} = 1 ∑ α i j k ′ = 1 ,因此α ′ ∈ D \alpha' \in D α ′ ∈ D 。
A.2 舍入误差的影响
引理 A.2 设α , α ′ \alpha, \alpha' α , α ′ 如上。则:
1 2 o ( n ) ≤ α N α N ′ ≤ 2 o ( n ) \frac{1}{2^{o(n)}} \leq \frac{\alpha_N}{\alpha'_N} \leq 2^{o(n)}
2 o ( n ) 1 ≤ α N ′ α N ≤ 2 o ( n )
证明: 因为α N = ∏ ( i , j , k ) ∈ S α i j k − α i j k \alpha_N = \prod_{(i,j,k) \in S} \alpha_{ijk}^{-\alpha_{ijk}} α N = ∏ ( i , j , k ) ∈ S α i j k − α i j k ,我们有:
α N α N ′ = ∏ ( i , j , k ) ∈ S ( α i j k α i j k ′ ) − α i j k ⋅ ( α i j k ′ ) α i j k ′ − α i j k \frac{\alpha_N}{\alpha'_N} = \prod_{(i,j,k) \in S} \left(\frac{\alpha_{ijk}}{\alpha'_{ijk}}\right)^{-\alpha_{ijk}} \cdot \left(\alpha'_{ijk}\right)^{\alpha'_{ijk} - \alpha_{ijk}}
α N ′ α N = ( i , j , k ) ∈ S ∏ ( α i j k ′ α i j k ) − α i j k ⋅ ( α i j k ′ ) α i j k ′ − α i j k
对于固定的( i , j , k ) ∈ S (i,j,k) \in S ( i , j , k ) ∈ S ,如果α i j k \alpha_{ijk} α i j k 是1 / n 1/n 1 / n 的整数倍,则α i j k ′ = α i j k \alpha'_{ijk} = \alpha_{ijk} α i j k ′ = α i j k ,比值为1。
否则,设δ = α i j k ′ − α i j k \delta = \alpha'_{ijk} - \alpha_{ijk} δ = α i j k ′ − α i j k ,其中0 < ∣ δ ∣ < 1 / n 0 < |\delta| < 1/n 0 < ∣ δ ∣ < 1 / n 。当δ > 0 \delta > 0 δ > 0 时:
log ( α i j k − α i j k α i j k ′ − α i j k ′ ) = ( α i j k + δ ) log ( α i j k + δ ) − α i j k log α i j k \log\left(\frac{\alpha_{ijk}^{-\alpha_{ijk}}}{\alpha_{ijk}'^{-\alpha'_{ijk}}}\right) = (\alpha_{ijk} + \delta)\log(\alpha_{ijk} + \delta) - \alpha_{ijk}\log\alpha_{ijk}
log ⎝ ⎛ α i j k ′ − α i j k ′ α i j k − α i j k ⎠ ⎞ = ( α i j k + δ ) log ( α i j k + δ ) − α i j k log α i j k
使用log ( 1 + x ) = x − O ( x 2 ) \log(1+x) = x - O(x^2) log ( 1 + x ) = x − O ( x 2 ) 当x → 0 + x \to 0^+ x → 0 + :
= α i j k log ( 1 + δ α i j k ) + δ log ( α i j k + δ ) ≤ O ( 1 n ) = \alpha_{ijk}\log\left(1 + \frac{\delta}{\alpha_{ijk}}\right) + \delta\log(\alpha_{ijk} + \delta) \leq O\left(\frac{1}{n}\right)
= α i j k log ( 1 + α i j k δ ) + δ log ( α i j k + δ ) ≤ O ( n 1 )
因此比值在2 − o ( n ) 2^{-o(n)} 2 − o ( n ) 和2 o ( n ) 2^{o(n)} 2 o ( n ) 之间。
附录B:对角化定理的最优性
B.1 下界构造
定理 B.1 对于正整数n ≥ m n \geq m n ≥ m 且n n n 足够大,存在集合S ⊆ { ( i , j , k ) ∈ [ n ] 3 : i , j , k 互不相同 } S \subseteq \{(i,j,k) \in [n]^3 : i,j,k \text{互不相同}\} S ⊆ { ( i , j , k ) ∈ [ n ] 3 : i , j , k 互不相同 } ,∣ S ∣ = m n |S| = mn ∣ S ∣ = m n ,使得对任何大小∣ I ∣ = n log n / m |I| = n\sqrt{\log n}/m ∣ I ∣ = n log n / m 的子集I ⊆ [ n ] I \subseteq [n] I ⊆ [ n ] ,存在( i , j , k ) ∈ S (i,j,k) \in S ( i , j , k ) ∈ S 满足i , j , k ∈ I i,j,k \in I i , j , k ∈ I 。
证明: 令C \mathcal{C} C 为所有大小为n log n / m n\sqrt{\log n}/m n log n / m 的[ n ] [n] [ n ] 子集的集合。因此:
∣ C ∣ = ( n n log n / m ) ≤ n n log n / m |\mathcal{C}| = \binom{n}{n\sqrt{\log n}/m} \leq n^{n\sqrt{\log n}/m}
∣ C ∣ = ( n log n / m n ) ≤ n n l o g n / m
初始令S = ∅ S = \emptyset S = ∅ 。重复添加元素( i , j , k ) (i,j,k) ( i , j , k ) 到S S S ,并移除所有包含i , j , k i,j,k i , j , k 的剩余I ∈ C I \in \mathcal{C} I ∈ C ,直到C \mathcal{C} C 变空。
在每步,贪心选择最大化∣ { I ∈ C : i , j , k ∈ I } ∣ |\{I \in \mathcal{C} : i,j,k \in I\}| ∣ { I ∈ C : i , j , k ∈ I } ∣ 的互不相同的( i , j , k ) ∈ [ n ] 3 (i,j,k) \in [n]^3 ( i , j , k ) ∈ [ n ] 3 。对于随机选择的三个互不相同的i , j , k ∈ [ n ] i,j,k \in [n] i , j , k ∈ [ n ] ,给定I ∈ C I \in \mathcal{C} I ∈ C ,i , j , k ∈ I i,j,k \in I i , j , k ∈ I 的概率为:
∣ I ∣ n ⋅ ∣ I ∣ − 1 n − 1 ⋅ ∣ I ∣ − 2 n − 2 > ( ∣ I ∣ − 2 n − 2 ) 3 > 1 2 ( log n m ) 3 \frac{|I|}{n} \cdot \frac{|I|-1}{n-1} \cdot \frac{|I|-2}{n-2} > \left(\frac{|I|-2}{n-2}\right)^3 > \frac{1}{2}\left(\frac{\log n}{\sqrt{m}}\right)^3
n ∣ I ∣ ⋅ n − 1 ∣ I ∣ − 1 ⋅ n − 2 ∣ I ∣ − 2 > ( n − 2 ∣ I ∣ − 2 ) 3 > 2 1 ( m log n ) 3
重复m n mn m n 次后,∣ C ∣ |\mathcal{C}| ∣ C ∣ 的大小将小于:
n n / m ⋅ ( 1 − 1 2 ( log n m ) 3 ) m n < n n / m ⋅ e − 1 2 n log 3 n / m < 1 n^{n/\sqrt{m}} \cdot \left(1 - \frac{1}{2}\left(\frac{\log n}{\sqrt{m}}\right)^3\right)^{mn} < n^{n/\sqrt{m}} \cdot e^{-\frac{1}{2}n\log^3 n/\sqrt{m}} < 1
n n / m ⋅ ( 1 − 2 1 ( m log n ) 3 ) m n < n n / m ⋅ e − 2 1 n l o g 3 n / m < 1
对于足够大的n n n 。因此∣ C ∣ = 0 |\mathcal{C}| = 0 ∣ C ∣ = 0 。
B.2 自由张量的构造
定理 B.2 对于正整数n n n 和m m m ,其中n n n 足够大且log 2 n ≤ m ≤ n / 6 \log^2 n \leq m \leq \sqrt{n/6} log 2 n ≤ m ≤ n / 6 ,存在集合S ⊆ ( [ n ] 3 ) S \subseteq \binom{[n]}{3} S ⊆ ( 3 [ n ] ) ,∣ S ∣ ≤ O ( m n ) |S| \leq O(mn) ∣ S ∣ ≤ O ( m n ) ,使得:
任意不同的{ i , j , k } , { i ′ , j ′ , k ′ } ∈ S \{i,j,k\}, \{i',j',k'\} \in S { i , j , k } , { i ′ , j ′ , k ′ } ∈ S 满足∣ { i , j , k } ∩ { i ′ , j ′ , k ′ } ∣ ≤ 1 |\{i,j,k\} \cap \{i',j',k'\}| \leq 1 ∣ { i , j , k } ∩ { i ′ , j ′ , k ′ } ∣ ≤ 1
对任何大小∣ I ∣ = n log ( n ) / m |I| = n\log(n)/\sqrt{m} ∣ I ∣ = n log ( n ) / m 的子集I ⊆ [ n ] I \subseteq [n] I ⊆ [ n ] ,存在{ i , j , k } ∈ S \{i,j,k\} \in S { i , j , k } ∈ S 满足i , j , k ∈ I i,j,k \in I i , j , k ∈ I
这个构造证明了即使对于具有额外结构(自由性)的张量,m \sqrt{m} m 因子仍然是最优的。
附录C:Salem-Spencer集合的张量解释
C.1 构造与性质
对于奇素数M M M ,定义张量C M C_M C M :
C M = ∑ i = 0 M − 1 ∑ j = 0 M − 1 x i ⋅ y j ⋅ z ( i + j ) / 2 m o d M C_M = \sum_{i=0}^{M-1} \sum_{j=0}^{M-1} x_i \cdot y_j \cdot z_{(i+j)/2 \bmod M}
C M = i = 0 ∑ M − 1 j = 0 ∑ M − 1 x i ⋅ y j ⋅ z ( i + j ) / 2 m o d M
使用Salem-Spencer集合A A A ,零化所有i ∉ A i \notin A i ∈ / A 的x i , y i , z i x_i, y_i, z_i x i , y i , z i ,得到:
∑ i ∈ A x i ⋅ y i ⋅ z i \sum_{i \in A} x_i \cdot y_i \cdot z_i
i ∈ A ∑ x i ⋅ y i ⋅ z i
这是∣ A ∣ ≥ M ⋅ e − O ( log M ) |A| \geq M \cdot e^{-O(\sqrt{\log M})} ∣ A ∣ ≥ M ⋅ e − O ( l o g M ) 项的直和。
C.2 在激光方法中的应用
在步骤3中,定义的哈希函数满足关键性质:
h X ( I , J ′ , K ′ ′ ) + h Y ( J , K ′ , I ′ ′ ) = 2 h Z ( K , I ′ , J ′ ′ ) ( m o d M ) h_X(I, J', K'') + h_Y(J, K', I'') = 2h_Z(K, I', J'') \pmod{M} h X ( I , J ′ , K ′ ′ ) + h Y ( J , K ′ , I ′ ′ ) = 2 h Z ( K , I ′ , J ′ ′ ) ( m o d M )
三个哈希值在条件于其他两个之一时仍是均匀随机的
哈希函数是成对独立的
这些性质确保了Salem-Spencer集合可以有效地用于稀疏化,同时保持足够多的与( α , α , α ) (\alpha, \alpha, \alpha) ( α , α , α ) 一致的块三元组。
结论
本文通过引入m \sqrt{m} m 改进因子,成功地改进了激光方法并获得了矩阵乘法指数的新界限ω < 2.3728596 \omega < 2.3728596 ω < 2 . 3 7 2 8 5 9 6 。虽然改进幅度看似微小,但这代表了该领域核心技术的一次重要突破。更重要的是,这种改进的激光方法是通用的,可能在算术复杂性的其他问题中有进一步应用。
已知的局限性结果表明,仅使用激光方法和Coppersmith-Winograd张量族无法证明ω = 2 \omega = 2 ω = 2 。要实现矩阵乘法复杂度的重大突破,可能需要全新的方法或张量族。尽管如此,本文的工作为未来研究提供了新的技术工具,并展示了即使在高度优化的算法中仍有改进空间。
评论(0)