Lucas定理证明
考虑 \(\binom {p}{n} \bmod p\) 取值时,\(\binom {p}{n} \equiv \frac {p!}{n!(p - n)!} \equiv [n = 0 \vee n = p]\pmod{p}\),所以二项式定理中:
\[\begin {align}
(a + b) ^ p & = \sum_{n = 0}^{p} \binom {p}{n} a^{n}b^{p - n} \\
& \equiv \sum_{n = 0} ^{p}[n = 0 \vee n = 0]a ^{n}b^{p - n} \\
& \equiv a^{p}+ b^{p} \pmod {p}
\end {align}
\]
所以 \((1 + x) ^ {p} \equiv 1 + x ^ p \pmod {p}\)。
将 \(a, b\) 进行分解:
\[a = a_{0}p^{0} + a_{1}p^{1} + \cdots + a_{k}p^{k}\\
b = b_{0}p^{0} + b_{1}p^{1} + \cdots + a_{k}p^{k}\\
\]
对于 \(\binom {a}{b} \bmod p\),利用生成函数的方法:
\[\begin {align}
(1 + x) ^ {a} & =(1 + x) ^ {a_{0}p^{0}} \cdot (1 + x)^{a_{1}p^{1}} \cdots (1 + x)^{a_{k}p^{k}}\\
& \equiv (1 + x^{p^{0}})^{a_{0}} \cdot (1 + x^{p^{1}})^{a_{1}} \cdots (1 + x^{p^{k}}) ^ {a_{k}} \pmod {p}
\end {align}
\]
得到的等式左边对应 \(x^{b}\) 的系数为 \(\binom {a}{b}\),右边对应 \(x^{b}\) 即 \(\sum x^{b_{i}p^{i}}\) 的系数为 \(\binom{a_{0}}{b_{0}} \cdot \binom {a_{1}}{b_{1}} \cdots \binom {a_{k}}{b_{k}}\),可以得到下列递归式:
\[\begin {align}
lucas (a,b) & \equiv \binom{a_{0}}{b_{0}} \cdot \binom {a_{1}}{b_{1}} \cdots \binom {a_{k}}{b_{k}} \\
& \equiv \binom {a \bmod p}{ b \bmod p} \cdot lucas ({\lfloor a / p \rfloor},{\lfloor b / p\rfloor}) \pmod {p}\\
\end {align}
\]
证毕。

浙公网安备 33010602011771号