Metamath Proof Explorer


Theorem hashbc

Description: The binomial coefficient counts the number of subsets of a finite set of a given size. This is Metamath 100 proof #58 (formula for the number of combinations). (Contributed by Mario Carneiro, 13-Jul-2014)

Ref Expression
Assertion hashbc AFinK(AK)=x𝒫A|x=K

Proof

Step Hyp Ref Expression
1 fveq2 w=w=
2 1 oveq1d w=(wk)=(k)
3 pweq w=𝒫w=𝒫
4 3 rabeqdv w=x𝒫w|x=k=x𝒫|x=k
5 4 fveq2d w=x𝒫w|x=k=x𝒫|x=k
6 2 5 eqeq12d w=(wk)=x𝒫w|x=k(k)=x𝒫|x=k
7 6 ralbidv w=k(wk)=x𝒫w|x=kk(k)=x𝒫|x=k
8 fveq2 w=yw=y
9 8 oveq1d w=y(wk)=(yk)
10 pweq w=y𝒫w=𝒫y
11 10 rabeqdv w=yx𝒫w|x=k=x𝒫y|x=k
12 11 fveq2d w=yx𝒫w|x=k=x𝒫y|x=k
13 9 12 eqeq12d w=y(wk)=x𝒫w|x=k(yk)=x𝒫y|x=k
14 13 ralbidv w=yk(wk)=x𝒫w|x=kk(yk)=x𝒫y|x=k
15 fveq2 w=yzw=yz
16 15 oveq1d w=yz(wk)=(yzk)
17 pweq w=yz𝒫w=𝒫yz
18 17 rabeqdv w=yzx𝒫w|x=k=x𝒫yz|x=k
19 18 fveq2d w=yzx𝒫w|x=k=x𝒫yz|x=k
20 16 19 eqeq12d w=yz(wk)=x𝒫w|x=k(yzk)=x𝒫yz|x=k
21 20 ralbidv w=yzk(wk)=x𝒫w|x=kk(yzk)=x𝒫yz|x=k
22 fveq2 w=Aw=A
23 22 oveq1d w=A(wk)=(Ak)
24 pweq w=A𝒫w=𝒫A
25 24 rabeqdv w=Ax𝒫w|x=k=x𝒫A|x=k
26 25 fveq2d w=Ax𝒫w|x=k=x𝒫A|x=k
27 23 26 eqeq12d w=A(wk)=x𝒫w|x=k(Ak)=x𝒫A|x=k
28 27 ralbidv w=Ak(wk)=x𝒫w|x=kk(Ak)=x𝒫A|x=k
29 hash0 =0
30 29 a1i k00=0
31 elfz1eq k00k=0
32 30 31 oveq12d k00(k)=(00)
33 0nn0 00
34 bcn0 00(00)=1
35 33 34 ax-mp (00)=1
36 32 35 eqtrdi k00(k)=1
37 31 eqcomd k000=k
38 pw0 𝒫=
39 38 raleqi x𝒫x=kxx=k
40 0ex V
41 fveq2 x=x=
42 41 29 eqtrdi x=x=0
43 42 eqeq1d x=x=k0=k
44 40 43 ralsn xx=k0=k
45 39 44 bitri x𝒫x=k0=k
46 37 45 sylibr k00x𝒫x=k
47 rabid2 𝒫=x𝒫|x=kx𝒫x=k
48 46 47 sylibr k00𝒫=x𝒫|x=k
49 48 38 eqtr3di k00x𝒫|x=k=
50 49 fveq2d k00x𝒫|x=k=
51 hashsng V=1
52 40 51 ax-mp =1
53 50 52 eqtrdi k00x𝒫|x=k=1
54 36 53 eqtr4d k00(k)=x𝒫|x=k
55 54 adantl kk00(k)=x𝒫|x=k
56 29 oveq1i (k)=(0k)
57 bcval3 00k¬k00(0k)=0
58 33 57 mp3an1 k¬k00(0k)=0
59 id 0=k0=k
60 0z 0
61 elfz3 0000
62 60 61 ax-mp 000
63 59 62 eqeltrrdi 0=kk00
64 63 con3i ¬k00¬0=k
65 64 adantl k¬k00¬0=k
66 38 raleqi x𝒫¬x=kx¬x=k
67 43 notbid x=¬x=k¬0=k
68 40 67 ralsn x¬x=k¬0=k
69 66 68 bitri x𝒫¬x=k¬0=k
70 65 69 sylibr k¬k00x𝒫¬x=k
71 rabeq0 x𝒫|x=k=x𝒫¬x=k
72 70 71 sylibr k¬k00x𝒫|x=k=
73 72 fveq2d k¬k00x𝒫|x=k=
74 73 29 eqtrdi k¬k00x𝒫|x=k=0
75 58 74 eqtr4d k¬k00(0k)=x𝒫|x=k
76 56 75 eqtrid k¬k00(k)=x𝒫|x=k
77 55 76 pm2.61dan k(k)=x𝒫|x=k
78 77 rgen k(k)=x𝒫|x=k
79 oveq2 k=j(yk)=(yj)
80 eqeq2 k=jx=kx=j
81 80 rabbidv k=jx𝒫y|x=k=x𝒫y|x=j
82 fveqeq2 x=zx=jz=j
83 82 cbvrabv x𝒫y|x=j=z𝒫y|z=j
84 81 83 eqtrdi k=jx𝒫y|x=k=z𝒫y|z=j
85 84 fveq2d k=jx𝒫y|x=k=z𝒫y|z=j
86 79 85 eqeq12d k=j(yk)=x𝒫y|x=k(yj)=z𝒫y|z=j
87 86 cbvralvw k(yk)=x𝒫y|x=kj(yj)=z𝒫y|z=j
88 simpll yFin¬zykj(yj)=z𝒫y|z=jyFin
89 simplr yFin¬zykj(yj)=z𝒫y|z=j¬zy
90 simprr yFin¬zykj(yj)=z𝒫y|z=jj(yj)=z𝒫y|z=j
91 83 fveq2i x𝒫y|x=j=z𝒫y|z=j
92 91 eqeq2i (yj)=x𝒫y|x=j(yj)=z𝒫y|z=j
93 92 ralbii j(yj)=x𝒫y|x=jj(yj)=z𝒫y|z=j
94 90 93 sylibr yFin¬zykj(yj)=z𝒫y|z=jj(yj)=x𝒫y|x=j
95 simprl yFin¬zykj(yj)=z𝒫y|z=jk
96 88 89 94 95 hashbclem yFin¬zykj(yj)=z𝒫y|z=j(yzk)=x𝒫yz|x=k
97 96 expr yFin¬zykj(yj)=z𝒫y|z=j(yzk)=x𝒫yz|x=k
98 97 ralrimdva yFin¬zyj(yj)=z𝒫y|z=jk(yzk)=x𝒫yz|x=k
99 87 98 biimtrid yFin¬zyk(yk)=x𝒫y|x=kk(yzk)=x𝒫yz|x=k
100 7 14 21 28 78 99 findcard2s AFink(Ak)=x𝒫A|x=k
101 oveq2 k=K(Ak)=(AK)
102 eqeq2 k=Kx=kx=K
103 102 rabbidv k=Kx𝒫A|x=k=x𝒫A|x=K
104 103 fveq2d k=Kx𝒫A|x=k=x𝒫A|x=K
105 101 104 eqeq12d k=K(Ak)=x𝒫A|x=k(AK)=x𝒫A|x=K
106 105 rspccva k(Ak)=x𝒫A|x=kK(AK)=x𝒫A|x=K
107 100 106 sylan AFinK(AK)=x𝒫A|x=K