Lucas's 定理

Luca’s 定理

  对于素数\(p\)以及正整数\(m>n\)\(p\)进制下,有如下的表示

\[\begin{align*} m &=a_0+a_1p+\dots+a_kp^k\\ n&=b_0+b_1p+\dots+b_kp_k \end{align*} \]

那么就有\(C_m^n=\prod \limits_{i=0}^kC_{a_i}^{b_i} (mod\ p)\)

引理一

  对于一个素数\(p\)\(\forall k\in[1,p-1],p\mid C_p^k\).

引理一证明

  对于\(C_p^k=\frac{p!}{k!(p-k)!}\),我们可以知道除了分子含有%p%这个因子,而分母是不含有\(p\)这个因子的,于是我们就可以得到\(C_p^k=p\cdot\frac{(p-1)!}{k!(p-k)!}\),但是此时\(\frac{(p-1)!}{k!(p-k)!}\)并不是一个组合数,因此我们提取一个\(1/k\)出来,就可以得到\(C_p^k=\frac{p}{k}\cdot\frac{(p-1)!}{(k-1)!(p-k)!}=\frac{p}{k}\cdot C_{p-1}^{k-1}\),于是我们可以推出\(k\cdot C_p^k=p\cdot C_{p-1}^{k-1}\),可以知道右式为整数,并且可以被\(p\)整除,因此我们得到\(p|k\cdot C_p^k\),因为\((p,k)=1\),所以我们知道\(p|C_p^k\)

引理二

  \((x+y)^p=x^p+\sum \limits_{k=1}^{p-1}C_p^k\cdot x^k\cdot y^{p-k}+y^p\)由定理一我们可以知道,中间的组合数可以被\(p\)整除,于是\((x+y)^p\equiv x^p+y^p\ (mod\ p)\),同样的,我们可以推广到\((x+y)^{p^2}\equiv (x^p+y^p)^p\equiv x^{p^2}+y^{p^2}\)以及更多的情况。于是我们得到,一般的,\((x+y)^{p^k}\equiv x^{p^k}+y^{p^k}\ (mod\ p)\)

Luca’s 定理的证明

\[\begin{align*} 考虑到二项式展开\\ (1+x)^m&=(1+x)^{a_0+a_1p+\dots+a_kp^k}\\ &=(1+x)^{a_0}\cdot(1+x)^{a_1p}\cdots(1+x)^{a_kp^k}\\ &=\sum\limits_{j=0}^{a_0}C_{a_0}^jx^k\cdot((1+x^p)^{a_1}\cdots(1+x^{a_k})^{p^k})\\ &=\sum\limits_{j=0}^{a_0}C_{a_0}^jx^j\cdot\sum\limits_{j=0}^{a_1}C_{a_1}^jx^{pj}\cdots\sum\limits_{j=0}^{a_k}C_{a_k}^{j}x^{p^kj}\\观察x^n的系数,n&=b_0+b_1p+\dots+b_kp^k,左式=C_m^n,右式=C_{a_0}^{b_0}\cdot C_{a_1}^{b_1}\cdots C_{a_k}^{b_k}(mod\ p) \\于是得到C_m^n&=\prod \limits_{i=0}^kC_{a_i}^{b_i} (mod\ p)\\ 我们看到右式中&可能存在b_i>a_i的情况,组合数不存在,于是此种情况我们定义C_{a_i}^{b_i}不存在 \end{align*} \]

现在我们来看,对于\(n\)来说,\(n\)同样可以表达成\(n=\lfloor n/p \rfloor+n\ mod\ p\),于是我们利用上面同样的办法就可以得到一个等价的式子

\[C_n^m\equiv C_{n\ mod\ p}^{m\ mod\ p}\cdot C_{n/p}^{m/p}(mod\ p) \]

posted @ 2021-03-28 20:16  Daneii  阅读(141)  评论(0)    收藏  举报