记录一些 trivial 组合数学相关

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/rsy56640/article/details/78456477

1.Sperner Theorem
A 为n元集, A1,A2,...,Am A 的子集且两两互不包含,则m的最大值为 (n[n/2])
proof:
lemma: mi=11(n|Ai|)1
proof of lemma:
It is equivalent to mi=1|Ai|!(n|Ai|)!n!
On the one hand, A 中全排列有 n!
On the other hand, for each Ai ,做 A 中全排列如下:
x1x2...x|Ai|y1y2...yn|Ai|
其中 x1x2...x|Ai| Ai 中元素的全排列。
y1y2...yn|Ai| 是补集的全排列。
注意到,当 ij 时,对应的全排列不同。(否则两个子集有包含关系)

由lemma: m(n[n/2])mi=11(n|Ai|)1 ,得证。

2.Kummer Theorem
n=(nknk1...n0)p
m=(mkmk1...m0)p
nm=(dkdk1...d0)p
vp((nm)) equals to the aomunt of carry-bit: L
when adding (n-m) and m.
proof:
vp(n!)=l=1[npl]=n1+n2(1+p)+...+nk(1+p2+...+pk1)=n(n0+n1+...+nk)p1
Thus vp((nm))=vp(n!)vp((nm)!)vp(m!)=ki=0(mi+dini)p1=L

一个有趣的结论: lcm((n0),(n1),...,(nn))=lcm(1,2,...,n+1)n+1
src: https://arxiv.org/pdf/0906.2295v2.pdf

3.Lucas Theorem
n=(nknk1...n0)p
m=(mkmk1...m0)p
(nm)ki=0(nimi)(modp)
proof:
算两次,首先考察 (1+x)n xm 系数为 (nm)=LHS .
然后, (1+x)n=(1+x)j=kj=0njpjj=kj=0(1+xpj)nj
RHS=[xm]j=kj=0(1+xpj)nj

猜你喜欢

转载自blog.csdn.net/rsy56640/article/details/78456477