HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem bcpasc 6907
Description: Pascal's rule for the binomial coefficient, generalized to all integers K. Equation 2 of [Gleason] p. 295.
Hypotheses
Ref Expression
bcpasc.1 |- N e. NN0
bcpasc.2 |- K e. ZZ
Assertion
Ref Expression
bcpasc |- ((N C. K) + (N C. (K - 1))) = ((N + 1) C. K)

Proof of Theorem bcpasc
StepHypRef Expression
1 bcpasc.1 . . . . 5 |- N e. NN0
2 elnn0 6048 . . . . 5 |- (N e. NN0 <-> (N e. NN \/ N = 0))
31, 2mpbi 189 . . . 4 |- (N e. NN \/ N = 0)
43ori 230 . . 3 |- (-. N e. NN -> N = 0)
5 ax1cn 5241 . . . . . . 7 |- 1 e. CC
65addid1 5302 . . . . . 6 |- (1 + 0) = 1
7 opreq2 3954 . . . . . . . 8 |- (K = 0 -> (0 C. K) = (0 C. 0))
8 0nn0 6060 . . . . . . . . 9 |- 0 e. NN0
9 bcn0t 6901 . . . . . . . . 9 |- (0 e. NN0 -> (0 C. 0) = 1)
108, 9ax-mp 7 . . . . . . . 8 |- (0 C. 0) = 1
117, 10syl6eq 1515 . . . . . . 7 |- (K = 0 -> (0 C. K) = 1)
12 opreq1 3953 . . . . . . . . . 10 |- (K = 0 -> (K - 1) = (0 - 1))
13 df-neg 5330 . . . . . . . . . 10 |- -u1 = (0 - 1)
1412, 13syl6eqr 1517 . . . . . . . . 9 |- (K = 0 -> (K - 1) = -u1)
1514opreq2d 3961 . . . . . . . 8 |- (K = 0 -> (0 C. (K - 1)) = (0 C. -u1))
16 1z 6106 . . . . . . . . . 10 |- 1 e. ZZ
17 znegclt 6110 . . . . . . . . . 10 |- (1 e. ZZ -> -u1 e. ZZ)
1816, 17ax-mp 7 . . . . . . . . 9 |- -u1 e. ZZ
19 lt01 5653 . . . . . . . . . . 11 |- 0 < 1
20 1re 5407 . . . . . . . . . . . 12 |- 1 e. RR
21 lt0neg2t 5642 . . . . . . . . . . . 12 |- (1 e. RR -> (0 < 1 <-> -u1 < 0))
2220, 21ax-mp 7 . . . . . . . . . . 11 |- (0 < 1 <-> -u1 < 0)
2319, 22mpbi 189 . . . . . . . . . 10 |- -u1 < 0
2423orci 270 . . . . . . . . 9 |- (-u1 < 0 \/ 0 < -u1)
25 bcval4t 6899 . . . . . . . . 9 |- ((0 e. NN0 /\ -u1 e. ZZ /\ (-u1 < 0 \/ 0 < -u1)) -> (0 C. -u1) = 0)
268, 18, 24, 25mp3an 913 . . . . . . . 8 |- (0 C. -u1) = 0
2715, 26syl6eq 1515 . . . . . . 7 |- (K = 0 -> (0 C. (K - 1)) = 0)
2811, 27opreq12d 3963 . . . . . 6 |- (K = 0 -> ((0 C. K) + (0 C. (K - 1))) = (1 + 0))
29 opreq2 3954 . . . . . . 7 |- (K = 0 -> (1 C. K) = (1 C. 0))
30 1nn0 6061 . . . . . . . 8 |- 1 e. NN0
31 bcn0t 6901 . . . . . . . 8 |- (1 e. NN0 -> (1 C. 0) = 1)
3230, 31ax-mp 7 . . . . . . 7 |- (1 C. 0) = 1
3329, 32syl6eq 1515 . . . . . 6 |- (K = 0 -> (1 C. K) = 1)
346, 28, 333eqtr4a 1524 . . . . 5 |- (K = 0 -> ((0 C. K) + (0 C. (K - 1))) = (1 C. K))
35 bcpasc.2 . . . . . . . 8 |- K e. ZZ
3635zre 6088 . . . . . . 7 |- K e. RR
37 0re 5412 . . . . . . 7 |- 0 e. RR
3836, 37lttri2 5545 . . . . . 6 |- (K =/= 0 <-> (K < 0 \/ 0 < K))
39 0cn 5300 . . . . . . . . 9 |- 0 e. CC
4039addid1 5302 . . . . . . . 8 |- (0 + 0) = 0
41 bcval4t 6899 . . . . . . . . . . 11 |- ((0 e. NN0 /\ K e. ZZ /\ (K < 0 \/ 0 < K)) -> (0 C. K) = 0)
428, 35, 41mp3an12 903 . . . . . . . . . 10 |- ((K < 0 \/ 0 < K) -> (0 C. K) = 0)
4342orcs 274 . . . . . . . . 9 |- (K < 0 -> (0 C. K) = 0)
4436leid 5584 . . . . . . . . . . . 12 |- K <_ K
45 zlem1ltt 6130 . . . . . . . . . . . . 13 |- ((K e. ZZ /\ K e. ZZ) -> (K <_ K <-> (K - 1) < K))
4635, 35, 45mp2an 695 . . . . . . . . . . . 12 |- (K <_ K <-> (K - 1) < K)
4744, 46mpbi 189 . . . . . . . . . . 11 |- (K - 1) < K
4836, 20resubcl 5411 . . . . . . . . . . . 12 |- (K - 1) e. RR
4948, 36, 37lttr 5559 . . . . . . . . . . 11 |- (((K - 1) < K /\ K < 0) -> (K - 1) < 0)
5047, 49mpan 693 . . . . . . . . . 10 |- (K < 0 -> (K - 1) < 0)
51 orc 269 . . . . . . . . . 10 |- ((K - 1) < 0 -> ((K - 1) < 0 \/ 0 < (K - 1)))
52 zsubclt 6115 . . . . . . . . . . . 12 |- ((K e. ZZ /\ 1 e. ZZ) -> (K - 1) e. ZZ)
5335, 16, 52mp2an 695 . . . . . . . . . . 11 |- (K - 1) e. ZZ
54 bcval4t 6899 . . . . . . . . . . 11 |- ((0 e. NN0 /\ (K - 1) e. ZZ /\ ((K - 1) < 0 \/ 0 < (K - 1))) -> (0 C. (K - 1)) = 0)
558, 53, 54mp3an12 903 . . . . . . . . . 10 |- (((K - 1) < 0 \/ 0 < (K - 1)) -> (0 C. (K - 1)) = 0)
5650, 51, 553syl 20 . . . . . . . . 9 |- (K < 0 -> (0 C. (K - 1)) = 0)
5743, 56opreq12d 3963 . . . . . . . 8 |- (K < 0 -> ((0 C. K) + (0 C. (K - 1))) = (0 + 0))
58 bcval4t 6899 . . . . . . . . . 10 |- ((1 e. NN0 /\ K e. ZZ /\ (K < 0 \/ 1 < K)) -> (1 C. K) = 0)
5930, 35, 58mp3an12 903 . . . . . . . . 9 |- ((K < 0 \/ 1 < K) -> (1 C. K) = 0)
6059orcs 274 . . . . . . . 8 |- (K < 0 -> (1 C. K) = 0)
6140, 57, 603eqtr4a 1524 . . . . . . 7 |- (K < 0 -> ((0 C. K) + (0 C. (K - 1))) = (1 C. K))
6242olcs 275 . . . . . . . . 9 |- (0 < K -> (0 C. K) = 0)
6362opreq1d 3960 . . . . . . . 8 |- (0 < K -> ((0 C. K) + (0 C. (K - 1))) = (0 + (0 C. (K - 1))))
64 0z 6093 . . . . . . . . . . 11 |- 0 e. ZZ
65 zltp1let 6128 . . . . . . . . . . 11 |- ((0 e. ZZ /\ K e. ZZ) -> (0 < K <-> (0 + 1) <_ K))
6664, 35, 65mp2an 695 . . . . . . . . . 10 |- (0 < K <-> (0 + 1) <_ K)
675addid2 5303 . . . . . . . . . . 11 |- (0 + 1) = 1
6867breq1i 2616 . . . . . . . . . 10 |- ((0 + 1) <_ K <-> 1 <_ K)
6920, 36leloe 5548 . . . . . . . . . 10 |- (1 <_ K <-> (1 < K \/ 1 = K))
7066, 68, 693bitr 177 . . . . . . . . 9 |- (0 < K <-> (1 < K \/ 1 = K))
7159olcs 275 . . . . . . . . . . 11 |- (1 < K -> (1 C. K) = 0)
7220, 36posdif 5638 . . . . . . . . . . . . . . . 16 |- (1 < K <-> 0 < (K - 1))
73 olc 268 . . . . . . . . . . . . . . . 16 |- (0 < (K - 1) -> ((K - 1) < 0 \/ 0 < (K - 1)))
7472, 73sylbi 199 . . . . . . . . . . . . . . 15 |- (1 < K -> ((K - 1) < 0 \/ 0 < (K - 1)))
7574, 55syl 10 . . . . . . . . . . . . . 14 |- (1 < K -> (0 C. (K - 1)) = 0)
7675eqcomd 1472 . . . . . . . . . . . . 13 |- (1 < K -> 0 = (0 C. (K - 1)))
7776opreq2d 3961 . . . . . . . . . . . 12 |- (1 < K -> (0 + 0) = (0 + (0 C. (K - 1))))
7877, 40syl5eqr 1513 . . . . . . . . . . 11 |- (1 < K -> 0 = (0 + (0 C. (K - 1))))
7971, 78eqtr2d 1500 . . . . . . . . . 10 |- (1 < K -> (0 + (0 C. (K - 1))) = (1 C. K))
80 opreq1 3953 . . . . . . . . . . . . . . . 16 |- (1 = K -> (1 - 1) = (K - 1))
815subid 5363 . . . . . . . . . . . . . . . 16 |- (1 - 1) = 0
8280, 81syl5eqr 1513 . . . . . . . . . . . . . . 15 |- (1 = K -> 0 = (K - 1))
8382opreq2d 3961 . . . . . . . . . . . . . 14 |- (1 = K -> (0 C. 0) = (0 C. (K - 1)))
8483, 10syl5eqr 1513 . . . . . . . . . . . . 13 |- (1 = K -> 1 = (0 C. (K - 1)))
8584opreq2d 3961 . . . . . . . . . . . 12 |- (1 = K -> (0 + 1) = (0 + (0 C. (K - 1))))
8685, 67syl5eqr 1513 . . . . . . . . . . 11 |- (1 = K -> 1 = (0 + (0 C. (K - 1))))
87 opreq2 3954 . . . . . . . . . . . 12 |- (1 = K -> (1 C. 1) = (1 C. K))
88 bcnnt 6902 . . . . . . . . . . . . 13 |- (1 e. NN0 -> (1 C. 1) = 1)
8930, 88ax-mp 7 . . . . . . . . . . . 12 |- (1 C. 1) = 1
9087, 89syl5eqr 1513 . . . . . . . . . . 11 |- (1 = K -> 1 = (1 C. K))
9186, 90eqtr3d 1501 . . . . . . . . . 10 |- (1 = K -> (0 + (0 C. (K - 1))) = (1 C. K))
9279, 91jaoi 341 . . . . . . . . 9 |- ((1 < K \/ 1 = K) -> (0 + (0 C. (K - 1))) = (1 C. K))
9370, 92sylbi 199 . . . . . . . 8 |- (0 < K -> (0 + (0 C. (K - 1))) = (1 C. K))
9463, 93eqtrd 1499 . . . . . . 7 |- (0 < K -> ((0 C. K) + (0 C. (K - 1))) = (1 C. K))
9561, 94jaoi 341 . . . . . 6 |- ((K < 0 \/ 0 < K) -> ((0 C. K) + (0 C. (K - 1))) = (1 C. K))
9638, 95sylbi 199 . . . . 5 |- (K =/= 0 -> ((0 C. K) + (0 C. (K - 1))) = (1 C. K))
9734, 96pm2.61ine 1626 . . . 4 |- ((0 C. K) + (0 C. (K - 1))) = (1 C. K)
98 opreq1 3953 . . . . 5 |- (N = 0 -> (N C. K) = (0 C. K))
99 opreq1 3953 . . . . 5 |- (N = 0 -> (N C. (K - 1)) = (0 C. (K - 1)))
10098, 99opreq12d 3963 . . . 4 |- (N = 0 -> ((N C. K) + (N C. (K - 1))) = ((0 C. K) + (0 C. (K - 1))))
101 opreq1 3953 . . . . . 6 |- (N = 0 -> (N + 1) = (0 + 1))
102101, 67syl6eq 1515 . . . . 5 |- (N = 0 -> (N + 1) = 1)
103102opreq1d 3960 . . . 4 |- (N = 0 -> ((N + 1) C. K) = (1 C. K))
10497, 100, 1033eqtr4a 1524 . . 3 |- (N = 0 -> ((N C. K) + (N C. (K - 1)))