Metamath Proof Explorer


Theorem bcpasc

Description: Pascal's rule for the binomial coefficient, generalized to all integers K . Equation 2 of Gleason p. 295. (Contributed by NM, 13-Jul-2005) (Revised by Mario Carneiro, 10-Mar-2014)

Ref Expression
Assertion bcpasc N0K(NK)+(NK1)=(N+1K)

Proof

Step Hyp Ref Expression
1 peano2nn0 N0N+10
2 elfzp12 N+10K0N+1K=0K0+1N+1
3 nn0uz 0=0
4 2 3 eleq2s N+10K0N+1K=0K0+1N+1
5 1 4 syl N0K0N+1K=0K0+1N+1
6 1p0e1 1+0=1
7 bcn0 N0(N0)=1
8 0z 0
9 1z 1
10 zsubcl 0101
11 8 9 10 mp2an 01
12 0re 0
13 ltm1 001<0
14 12 13 ax-mp 01<0
15 14 orci 01<0N<01
16 bcval4 N00101<0N<01(N01)=0
17 11 15 16 mp3an23 N0(N01)=0
18 7 17 oveq12d N0(N0)+(N01)=1+0
19 bcn0 N+10(N+10)=1
20 1 19 syl N0(N+10)=1
21 6 18 20 3eqtr4a N0(N0)+(N01)=(N+10)
22 oveq2 K=0(NK)=(N0)
23 oveq1 K=0K1=01
24 23 oveq2d K=0(NK1)=(N01)
25 22 24 oveq12d K=0(NK)+(NK1)=(N0)+(N01)
26 oveq2 K=0(N+1K)=(N+10)
27 25 26 eqeq12d K=0(NK)+(NK1)=(N+1K)(N0)+(N01)=(N+10)
28 21 27 syl5ibrcom N0K=0(NK)+(NK1)=(N+1K)
29 simpr N0K0+1N+1K0+1N+1
30 0p1e1 0+1=1
31 30 oveq1i 0+1N+1=1N+1
32 29 31 eleqtrdi N0K0+1N+1K1N+1
33 nn0p1nn N0N+1
34 nnuz =1
35 33 34 eleqtrdi N0N+11
36 fzm1 N+11K1N+1K1N+1-1K=N+1
37 36 biimpa N+11K1N+1K1N+1-1K=N+1
38 35 37 sylan N0K1N+1K1N+1-1K=N+1
39 nn0cn N0N
40 ax-1cn 1
41 pncan N1N+1-1=N
42 39 40 41 sylancl N0N+1-1=N
43 42 oveq2d N01N+1-1=1N
44 43 eleq2d N0K1N+1-1K1N
45 44 biimpa N0K1N+1-1K1N
46 fz1ssfz0 1N0N
47 46 sseli K1NK0N
48 bcp1n K0N(N+1K)=(NK)N+1N+1-K
49 47 48 syl K1N(N+1K)=(NK)N+1N+1-K
50 bcrpcl K0N(NK)+
51 47 50 syl K1N(NK)+
52 51 rpcnd K1N(NK)
53 elfzuz2 K1NN1
54 53 34 eleqtrrdi K1NN
55 54 peano2nnd K1NN+1
56 55 nncnd K1NN+1
57 54 nncnd K1NN
58 1cnd K1N1
59 elfzelz K1NK
60 59 zcnd K1NK
61 57 58 60 addsubd K1NN+1-K=N-K+1
62 fznn0sub K1NNK0
63 nn0p1nn NK0N-K+1
64 62 63 syl K1NN-K+1
65 61 64 eqeltrd K1NN+1-K
66 65 nncnd K1NN+1-K
67 65 nnne0d K1NN+1-K0
68 52 56 66 67 div12d K1N(NK)N+1N+1-K=N+1(NK)N+1-K
69 65 nnrpd K1NN+1-K+
70 51 69 rpdivcld K1N(NK)N+1-K+
71 70 rpcnd K1N(NK)N+1-K
72 56 71 mulcomd K1NN+1(NK)N+1-K=(NK)N+1-KN+1
73 68 72 eqtrd K1N(NK)N+1N+1-K=(NK)N+1-KN+1
74 56 60 npcand K1NN+1-K+K=N+1
75 74 oveq2d K1N(NK)N+1-KN+1-K+K=(NK)N+1-KN+1
76 71 66 60 adddid K1N(NK)N+1-KN+1-K+K=(NK)N+1-KN+1-K+(NK)N+1-KK
77 73 75 76 3eqtr2d K1N(NK)N+1N+1-K=(NK)N+1-KN+1-K+(NK)N+1-KK
78 52 66 67 divcan1d K1N(NK)N+1-KN+1-K=(NK)
79 elfznn K1NK
80 79 nnne0d K1NK0
81 52 66 60 67 80 divdiv2d K1N(NK)N+1-KK=(NK)KN+1-K
82 bcm1k K1N(NK)=(NK1)NK1K
83 57 60 58 subsub3d K1NNK1=N+1-K
84 83 oveq1d K1NNK1K=N+1-KK
85 84 oveq2d K1N(NK1)NK1K=(NK1)N+1-KK
86 82 85 eqtrd K1N(NK)=(NK1)N+1-KK
87 fzelp1 K1NK1N+1
88 55 nnzd K1NN+1
89 elfzm1b KN+1K1N+1K10N+1-1
90 59 88 89 syl2anc K1NK1N+1K10N+1-1
91 87 90 mpbid K1NK10N+1-1
92 57 40 41 sylancl K1NN+1-1=N
93 92 oveq2d K1N0N+1-1=0N
94 91 93 eleqtrd K1NK10N
95 bcrpcl K10N(NK1)+
96 94 95 syl K1N(NK1)+
97 96 rpcnd K1N(NK1)
98 79 nnrpd K1NK+
99 69 98 rpdivcld K1NN+1-KK+
100 99 rpcnd K1NN+1-KK
101 99 rpne0d K1NN+1-KK0
102 52 97 100 101 divmul3d K1N(NK)N+1-KK=(NK1)(NK)=(NK1)N+1-KK
103 86 102 mpbird K1N(NK)N+1-KK=(NK1)
104 52 60 66 67 div23d K1N(NK)KN+1-K=(NK)N+1-KK
105 81 103 104 3eqtr3rd K1N(NK)N+1-KK=(NK1)
106 78 105 oveq12d K1N(NK)N+1-KN+1-K+(NK)N+1-KK=(NK)+(NK1)
107 49 77 106 3eqtrrd K1N(NK)+(NK1)=(N+1K)
108 45 107 syl N0K1N+1-1(NK)+(NK1)=(N+1K)
109 oveq2 K=N+1(NK)=(NN+1)
110 33 nnzd N0N+1
111 nn0re N0N
112 111 ltp1d N0N<N+1
113 112 olcd N0N+1<0N<N+1
114 bcval4 N0N+1N+1<0N<N+1(NN+1)=0
115 110 113 114 mpd3an23 N0(NN+1)=0
116 109 115 sylan9eqr N0K=N+1(NK)=0
117 oveq1 K=N+1K1=N+1-1
118 117 42 sylan9eqr N0K=N+1K1=N
119 118 oveq2d N0K=N+1(NK1)=(NN)
120 bcnn N0(NN)=1
121 120 adantr N0K=N+1(NN)=1
122 119 121 eqtrd N0K=N+1(NK1)=1
123 116 122 oveq12d N0K=N+1(NK)+(NK1)=0+1
124 oveq2 K=N+1(N+1K)=(N+1N+1)
125 bcnn N+10(N+1N+1)=1
126 1 125 syl N0(N+1N+1)=1
127 124 126 sylan9eqr N0K=N+1(N+1K)=1
128 30 123 127 3eqtr4a N0K=N+1(NK)+(NK1)=(N+1K)
129 108 128 jaodan N0K1N+1-1K=N+1(NK)+(NK1)=(N+1K)
130 38 129 syldan N0K1N+1(NK)+(NK1)=(N+1K)
131 32 130 syldan N0K0+1N+1(NK)+(NK1)=(N+1K)
132 131 ex N0K0+1N+1(NK)+(NK1)=(N+1K)
133 28 132 jaod N0K=0K0+1N+1(NK)+(NK1)=(N+1K)
134 5 133 sylbid N0K0N+1(NK)+(NK1)=(N+1K)
135 134 imp N0K0N+1(NK)+(NK1)=(N+1K)
136 135 adantlr N0KK0N+1(NK)+(NK1)=(N+1K)
137 00id 0+0=0
138 fzelp1 K0NK0N+1
139 138 con3i ¬K0N+1¬K0N
140 bcval3 N0K¬K0N(NK)=0
141 140 3expa N0K¬K0N(NK)=0
142 139 141 sylan2 N0K¬K0N+1(NK)=0
143 simpll N0K¬K0N+1N0
144 simplr N0K¬K0N+1K
145 peano2zm KK1
146 144 145 syl N0K¬K0N+1K1
147 39 adantr N0KN
148 147 40 41 sylancl N0KN+1-1=N
149 148 oveq2d N0K0N+1-1=0N
150 149 eleq2d N0KK10N+1-1K10N
151 id KK
152 1 nn0zd N0N+1
153 151 152 89 syl2anr N0KK1N+1K10N+1-1
154 fz1ssfz0 1N+10N+1
155 154 sseli K1N+1K0N+1
156 153 155 syl6bir N0KK10N+1-1K0N+1
157 150 156 sylbird N0KK10NK0N+1
158 157 con3dimp N0K¬K0N+1¬K10N
159 bcval3 N0K1¬K10N(NK1)=0
160 143 146 158 159 syl3anc N0K¬K0N+1(NK1)=0
161 142 160 oveq12d N0K¬K0N+1(NK)+(NK1)=0+0
162 143 1 syl N0K¬K0N+1N+10
163 simpr N0K¬K0N+1¬K0N+1
164 bcval3 N+10K¬K0N+1(N+1K)=0
165 162 144 163 164 syl3anc N0K¬K0N+1(N+1K)=0
166 137 161 165 3eqtr4a N0K¬K0N+1(NK)+(NK1)=(N+1K)
167 136 166 pm2.61dan N0K(NK)+(NK1)=(N+1K)