背景
学术界 \(100\%\) 有人研究过这个,因为我证明过程几乎是 gpt 帮我想的,但是我没有搜到任何一篇(有明显提到的)文章以及任何一个(好听的)命名。
这个名字是我自己在路上想出来的,取了 Gauss 和 Legendre 的首字母,顺便致敬了 Galois,完美!
下面默认 \(p>2\) 为奇素数,多项式的指数可对 \(p\) 取模,即在 \(\mathbb{Z}[x]/(x^p - 1)\) 环中考虑问题。
定义 Legendre 符号 \(\chi(i)=\Bigl(\tfrac{i}{p}\Bigr)\),记 \(S_1=\{x:\chi(x)=1\},S_2=\{x:\chi(x)=-1\},\delta=\chi(-1)\)。
定理以及说明
注意下面系数不取模,指数取模!
问题描述/记号规定
\[R_1 =\sum_{i\in S_1}x^i,R_2 =\sum_{i\in S_2}x^i
\\[10pt]
U =\sum_{i=1}^{p-1}x^i=R_1+R_2,V =\sum_{i=1}^{p-1}\chi(i)x^i=R_1-R_2
\]
我称下面 \(f,g\) 为 GL 多项式。
\[f(A,B)=A+B(R_1+R_2),\quad g(A,B,C)=A+BR_1+CR_2
\]
我们接下来要说明 \(f,g\) 乘法封闭。其中 \(g\) 乘法封闭即考察空间 \(\text{Span}(1,R_1,R_2)\)。
由于 \(f(A,B)=g(A,B,B)\),容易得到 \(f\) 为 \(g\) 子群,也乘法封闭。
下面主要考察 \(g\)。
几个关键恒等式
分别考察 \(U^2,V^2,UV:\)
\[U^2
= (x + x^2 + \cdots + x^{p-1}\bigr)^2
= (p-1)\cdot 1 + (p-2)(x + x^2 + \cdots + x^{p-1})
\Longrightarrow
U^2 = p-1 + (p-2)U
\]
对每个 \(k\) 考虑有多少个 \(i,j\in [1,p-1]\) 满足 \(i+j\equiv k\pmod p\) 即可。
已知对于 \(k\not\equiv 0\pmod p:\)
\[\begin{aligned}
\sum\limits_{i+j\equiv k\pmod p}\chi(i)\chi (j)&=\sum\limits_{i\in [1,p-1],i\neq k} \chi(i)\chi(k-i)\\
&= \sum\limits_{i\in [1,p-1],i\neq k}\chi(1)\chi ({\color{red}{-1+ki^{-1}}})\\
&= \sum\limits_{i\in [1,{\color{red}{p-2}}]}\chi(i)\\
&=-\delta
\end{aligned}
\]
而当 \(k\equiv0\pmod p\) 时,上述求和结果是 \((p-1)\delta\)。于是
\[V^2 = \sum_{i=1}^{p-1}\sum_{j=1}^{p-1} \chi(i)\chi(j)x^{i+j}
= (p-1)\delta -\sum_{k=1}^{p-1}\delta x^k
= (p-1)\delta -\delta U
\]
\[UV
=\left(\,\sum_{i=1}^{p-1}x^i\right) \left(\,\sum_{j=1}^{p-1}\chi(j)x^j\right)
=\sum_{k=0}^{p-1}\left(\,\sum_{i+j\equiv k} \chi(j)\right)x^k
\]
令 \(j=k\) 时 \(i=0\) 不属于 \(\{1,\dots,p-1\}\),所以 \(\sum\limits_{i+j\equiv k}\chi(j)=\sum\limits_{j=1}^{p-1}\chi(j)-\chi(k)=-\chi(k)\)。
而 \(k=0\) 时 \(\sum\limits_{i+j\equiv0}\chi(j)=\sum\limits_{j=1}^{p-1}\chi(j)=0\)。因此
\[UV = -\sum\limits_{k=1}^{p-1}\chi(k)x^k = -V
\]
同时注意到 \(V\) 的 DFT 和 高斯和 有密切关系,于是我们有另一则 证明。注意下标从 \(0\) 开始而非这里从 \(1\) 开始。
综上,在 \(\mathbb{F}_p[x]/(x^p-1)\) 中,我们有以下三条关键恒等式:
\[\begin{aligned}
&U^2 = p-1+(p-2)U\\
&V^2 = (p-1)\delta-\delta U\\
&UV = -V
\end{aligned}
\]
解决问题
反过来用 \(U,V\) 表示 \(R_1,R_2:\)
\[R_1 =\frac{U + V}{2}, R_2 =\frac{U - V}{2}
\]
由于 \(U^2,V^2,UV\) 都能被 \(U,V\) 线性表示,\(R_1,R_2\) 只是 \(U,V\) 换个基。
于是容易推出 \(R_1^2,R_2^2,R_1R_2\) 也能被 \(R_1,R_2\) 线性表示。下面推导一下具体结果:
\[\begin{aligned}
R_1^2 &= \frac{p-4-\delta}{4} R_1 + \frac{p-\delta}{4} R_2 + \frac{(p-1)(1+\delta)}{4}
\\[10pt]
R_2^2 &= \frac{p-\delta}{4} R_1 + \frac{p-4-\delta}{4} R_2 + \frac{(p-1)(1+\delta)}{4}
\\[10pt]
R_1R_2 &= \frac{p-2+\delta}{4}(R_1+R_2) + \frac{(p-1)(1-\delta)}{4}
\end{aligned}
\]
综上,我们把所有积写成了 \(1,R_1,R_2\) 线性组合的形式。
换言之,\(R_1^2, R_2^2, R_1R_2\) 三者都 落在 \(\text{Span}(1,R_1,R_2)\) 之中。
具体地,如果
\[g(A_1,B_1,C_1)=A_1 + B_1R_1 + C_1R_2\,,
g(A_2,B_2,C_2)=A_2 + B_2R_1 + C_2R_2,
\]
那
\[\begin{aligned}
g(A_1,B_1,C_1)\times g(A_2,B_2,C_2)
&= A_1A_2
+ \bigl(A_1B_2 + B_1A_2\bigr)R_1
+ \bigl(A_1C_2 + C_1A_2\bigr)R_2\\
&\quad+B_1B_2\bigl(R_1^2\bigr)
+C_1C_2\bigl(R_2^2\bigr)
+(B_1C_2 + C_1B_2)\bigl(R_1R_2\bigr)
\end{aligned}
\]
也可以表示为 \(1,R_1,R_2\) 的线性组合。
于是我们就能做一个 \(g\) 的快速幂,复杂度一只 \(\log\)。