「总结」FWT

前置知识:FWT 的另一种理解

FWT 的另一种理解,文中使用的系数矩阵 \(F\) 似乎不太标准,本文中认为 \(\mathscr{F}(\bm a)=F\times\bm a\)

摘要:FWT 使用的线性变换的系数矩阵 \(F\) 需要满足 \(F(i,x\oplus y)=F(i,x)\times F(i,y)\)

同或卷积

因为同或运算在每一位上是独立的,所以我们只需要构造一个 \(2\times 2\) 的矩阵 \(F\) 即可。

可以令 \(F=\begin{bmatrix}1 & 1\\-1 & 1\end{bmatrix}\),则 \(F^{-1}=\begin{bmatrix}0.5 & -0.5\\0.5 & 0.5\end{bmatrix}\)

k 进制 FWT

\(k\) 进制异或即 \(k\) 进制不进位加法,我们需要一种能够自动对 \(k\) 取模的结构。

容易想到令 \(F(i, j) = \omega_k^j\),但是该矩阵不可逆。

显然必须添加 \(i\) 的影响。联想到乘法分配律,令 \(F(i, j) = \omega_k^{ij}\) 即可。

发现 \(F\) 与 FFT 的系数矩阵相同,可以类比得出 \(F(i, j) = {1 \over k} \times \omega_k^{-ij}\)

posted @ 2023-11-16 19:20  ClHg2  阅读(99)  评论(1编辑  收藏  举报