Loading

Schwartz-Zippel 引理

随机化算法

  • 拉格朗日定理:对于一个 \(n\) 次多项式,其最多有 \(n\) 个根。

  • Schwartz-Zipple 引理:对于一个多元 \(n\) 次多项式,其最多有 \(n\) 组根。

我们可以设计一个算法判定一个多项式是否为 \(0\):选择一个大质数 \(P\),随机选择每个元的取值,判定其结果是否为 \(0\)

由 Schwartz-Zipple 引理,可知错误率为 \(\dfrac n P\),是一个相当优秀的随机化算法。

二分图匹配

求出邻接矩阵,二分图匹配相当于寻找一个排列 \(p\) 满足 \(\forall i\) 存在边 \((i, p_i)\)

这是积和式的形式,尝试转化为求行列式,即判定行列式是否为 \(0\)

根据 Schwartz-Zipple Lemma,给每条边赋一个权值 \(x_{i, j}\) 求行列式即可。

生成树计数

同理。例题

与 FWT 结合

可以与 FWT 结合,此时矩阵中每个数都是一个多项式。

考虑 FWT,最外层枚举 S 以求解最终 IFWT 前集合幂级数的每个元的系数。

内层对矩阵每个位置的 FWT 后对应元的系数求行列式。

posted @ 2025-05-12 08:11  Sktn0089  阅读(156)  评论(0)    收藏  举报