Metamath Proof Explorer


Theorem etransclem25

Description: P factorial divides the N -th derivative of F applied to J . (Contributed by Glauco Siliprandi, 5-Apr-2020)

Ref Expression
Hypotheses etransclem25.p ⊢ φ → P ∈ ℕ
etransclem25.m ⊢ φ → M ∈ ℕ 0
etransclem25.n ⊢ φ → N ∈ ℕ 0
etransclem25.c ⊢ φ → C : 0 … M ⟶ 0 … N
etransclem25.sumc ⊢ φ → ∑ j = 0 M C ⁡ j = N
etransclem25.t ⊢ T = N ! ∏ j = 0 M C ⁡ j ! ⁢ if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ⁢ ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j
etransclem25.j ⊢ φ → J ∈ 1 … M
Assertion etransclem25 ⊢ φ → P ! ∥ T

Proof

Step Hyp Ref Expression
1 etransclem25.p ⊢ φ → P ∈ ℕ
2 etransclem25.m ⊢ φ → M ∈ ℕ 0
3 etransclem25.n ⊢ φ → N ∈ ℕ 0
4 etransclem25.c ⊢ φ → C : 0 … M ⟶ 0 … N
5 etransclem25.sumc ⊢ φ → ∑ j = 0 M C ⁡ j = N
6 etransclem25.t ⊢ T = N ! ∏ j = 0 M C ⁡ j ! ⁢ if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ⁢ ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j
7 etransclem25.j ⊢ φ → J ∈ 1 … M
8 1 nnnn0d ⊢ φ → P ∈ ℕ 0
9 8 faccld ⊢ φ → P ! ∈ ℕ
10 9 nnzd ⊢ φ → P ! ∈ ℤ
11 5 eqcomd ⊢ φ → N = ∑ j = 0 M C ⁡ j
12 11 fveq2d ⊢ φ → N ! = ∑ j = 0 M C ⁡ j !
13 12 oveq1d ⊢ φ → N ! ∏ j = 0 M C ⁡ j ! = ∑ j = 0 M C ⁡ j ! ∏ j = 0 M C ⁡ j !
14 nfcv ⊢ Ⅎ _ j C
15 fzfid ⊢ φ → 0 … M ∈ Fin
16 nn0ex ⊢ ℕ 0 ∈ V
17 fzssnn0 ⊢ 0 … N ⊆ ℕ 0
18 mapss ⊢ ℕ 0 ∈ V ∧ 0 … N ⊆ ℕ 0 → 0 … N 0 … M ⊆ ℕ 0 0 … M
19 16 17 18 mp2an ⊢ 0 … N 0 … M ⊆ ℕ 0 0 … M
20 ovex ⊢ 0 … N ∈ V
21 ovexd ⊢ C : 0 … M ⟶ 0 … N → 0 … M ∈ V
22 elmapg ⊢ 0 … N ∈ V ∧ 0 … M ∈ V → C ∈ 0 … N 0 … M ↔ C : 0 … M ⟶ 0 … N
23 20 21 22 sylancr ⊢ C : 0 … M ⟶ 0 … N → C ∈ 0 … N 0 … M ↔ C : 0 … M ⟶ 0 … N
24 23 ibir ⊢ C : 0 … M ⟶ 0 … N → C ∈ 0 … N 0 … M
25 19 24 sselid ⊢ C : 0 … M ⟶ 0 … N → C ∈ ℕ 0 0 … M
26 4 25 syl ⊢ φ → C ∈ ℕ 0 0 … M
27 14 15 26 mccl ⊢ φ → ∑ j = 0 M C ⁡ j ! ∏ j = 0 M C ⁡ j ! ∈ ℕ
28 13 27 eqeltrd ⊢ φ → N ! ∏ j = 0 M C ⁡ j ! ∈ ℕ
29 28 nnzd ⊢ φ → N ! ∏ j = 0 M C ⁡ j ! ∈ ℤ
30 7 elfzelzd ⊢ φ → J ∈ ℤ
31 1 2 4 30 etransclem10 ⊢ φ → if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ∈ ℤ
32 29 31 zmulcld ⊢ φ → N ! ∏ j = 0 M C ⁡ j ! ⁢ if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ∈ ℤ
33 fzfid ⊢ φ → 1 … M ∈ Fin
34 1 adantr ⊢ φ ∧ j ∈ 1 … M → P ∈ ℕ
35 4 adantr ⊢ φ ∧ j ∈ 1 … M → C : 0 … M ⟶ 0 … N
36 0z ⊢ 0 ∈ ℤ
37 fzp1ss ⊢ 0 ∈ ℤ → 0 + 1 … M ⊆ 0 … M
38 36 37 ax-mp ⊢ 0 + 1 … M ⊆ 0 … M
39 id ⊢ j ∈ 1 … M → j ∈ 1 … M
40 1e0p1 ⊢ 1 = 0 + 1
41 40 oveq1i ⊢ 1 … M = 0 + 1 … M
42 39 41 eleqtrdi ⊢ j ∈ 1 … M → j ∈ 0 + 1 … M
43 38 42 sselid ⊢ j ∈ 1 … M → j ∈ 0 … M
44 43 adantl ⊢ φ ∧ j ∈ 1 … M → j ∈ 0 … M
45 30 adantr ⊢ φ ∧ j ∈ 1 … M → J ∈ ℤ
46 34 35 44 45 etransclem3 ⊢ φ ∧ j ∈ 1 … M → if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j ∈ ℤ
47 33 46 fprodzcl ⊢ φ → ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j ∈ ℤ
48 10 32 47 3jca ⊢ φ → P ! ∈ ℤ ∧ N ! ∏ j = 0 M C ⁡ j ! ⁢ if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ∈ ℤ ∧ ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j ∈ ℤ
49 30 zcnd ⊢ φ → J ∈ ℂ
50 49 subidd ⊢ φ → J − J = 0
51 50 eqcomd ⊢ φ → 0 = J − J
52 51 oveq1d ⊢ φ → 0 P − C ⁡ J = J − J P − C ⁡ J
53 52 oveq2d ⊢ φ → P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = P ! P − C ⁡ J ! ⁢ J − J P − C ⁡ J
54 53 ifeq2d ⊢ φ → if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ J − J P − C ⁡ J
55 id ⊢ J ∈ 1 … M → J ∈ 1 … M
56 55 41 eleqtrdi ⊢ J ∈ 1 … M → J ∈ 0 + 1 … M
57 38 56 sselid ⊢ J ∈ 1 … M → J ∈ 0 … M
58 7 57 syl ⊢ φ → J ∈ 0 … M
59 1 4 58 30 etransclem3 ⊢ φ → if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ J − J P − C ⁡ J ∈ ℤ
60 54 59 eqeltrd ⊢ φ → if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J ∈ ℤ
61 fzfi ⊢ 1 … M ∈ Fin
62 diffi ⊢ 1 … M ∈ Fin → 1 … M ∖ J ∈ Fin
63 61 62 mp1i ⊢ φ → 1 … M ∖ J ∈ Fin
64 1 adantr ⊢ φ ∧ j ∈ 1 … M ∖ J → P ∈ ℕ
65 4 adantr ⊢ φ ∧ j ∈ 1 … M ∖ J → C : 0 … M ⟶ 0 … N
66 eldifi ⊢ j ∈ 1 … M ∖ J → j ∈ 1 … M
67 66 43 syl ⊢ j ∈ 1 … M ∖ J → j ∈ 0 … M
68 67 adantl ⊢ φ ∧ j ∈ 1 … M ∖ J → j ∈ 0 … M
69 30 adantr ⊢ φ ∧ j ∈ 1 … M ∖ J → J ∈ ℤ
70 64 65 68 69 etransclem3 ⊢ φ ∧ j ∈ 1 … M ∖ J → if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j ∈ ℤ
71 63 70 fprodzcl ⊢ φ → ∏ j ∈ 1 … M ∖ J if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j ∈ ℤ
72 dvds0 ⊢ P ! ∈ ℤ → P ! ∥ 0
73 10 72 syl ⊢ φ → P ! ∥ 0
74 73 adantr ⊢ φ ∧ P < C ⁡ J → P ! ∥ 0
75 iftrue ⊢ P < C ⁡ J → if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = 0
76 75 eqcomd ⊢ P < C ⁡ J → 0 = if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
77 76 adantl ⊢ φ ∧ P < C ⁡ J → 0 = if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
78 74 77 breqtrd ⊢ φ ∧ P < C ⁡ J → P ! ∥ if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
79 iddvds ⊢ P ! ∈ ℤ → P ! ∥ P !
80 10 79 syl ⊢ φ → P ! ∥ P !
81 80 ad2antrr ⊢ φ ∧ ¬ P < C ⁡ J ∧ P = C ⁡ J → P ! ∥ P !
82 iffalse ⊢ ¬ P < C ⁡ J → if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
83 82 ad2antlr ⊢ φ ∧ ¬ P < C ⁡ J ∧ P = C ⁡ J → if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
84 oveq1 ⊢ P = C ⁡ J → P − C ⁡ J = C ⁡ J − C ⁡ J
85 84 adantl ⊢ φ ∧ P = C ⁡ J → P − C ⁡ J = C ⁡ J − C ⁡ J
86 4 58 ffvelcdmd ⊢ φ → C ⁡ J ∈ 0 … N
87 86 elfzelzd ⊢ φ → C ⁡ J ∈ ℤ
88 87 zcnd ⊢ φ → C ⁡ J ∈ ℂ
89 88 adantr ⊢ φ ∧ P = C ⁡ J → C ⁡ J ∈ ℂ
90 89 subidd ⊢ φ ∧ P = C ⁡ J → C ⁡ J − C ⁡ J = 0
91 85 90 eqtrd ⊢ φ ∧ P = C ⁡ J → P − C ⁡ J = 0
92 91 fveq2d ⊢ φ ∧ P = C ⁡ J → P − C ⁡ J ! = 0 !
93 fac0 ⊢ 0 ! = 1
94 92 93 eqtrdi ⊢ φ ∧ P = C ⁡ J → P − C ⁡ J ! = 1
95 94 oveq2d ⊢ φ ∧ P = C ⁡ J → P ! P − C ⁡ J ! = P ! 1
96 9 nncnd ⊢ φ → P ! ∈ ℂ
97 96 div1d ⊢ φ → P ! 1 = P !
98 97 adantr ⊢ φ ∧ P = C ⁡ J → P ! 1 = P !
99 95 98 eqtrd ⊢ φ ∧ P = C ⁡ J → P ! P − C ⁡ J ! = P !
100 91 oveq2d ⊢ φ ∧ P = C ⁡ J → 0 P − C ⁡ J = 0 0
101 0cnd ⊢ φ ∧ P = C ⁡ J → 0 ∈ ℂ
102 101 exp0d ⊢ φ ∧ P = C ⁡ J → 0 0 = 1
103 100 102 eqtrd ⊢ φ ∧ P = C ⁡ J → 0 P − C ⁡ J = 1
104 99 103 oveq12d ⊢ φ ∧ P = C ⁡ J → P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = P ! ⋅ 1
105 96 mulridd ⊢ φ → P ! ⋅ 1 = P !
106 105 adantr ⊢ φ ∧ P = C ⁡ J → P ! ⋅ 1 = P !
107 104 106 eqtrd ⊢ φ ∧ P = C ⁡ J → P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = P !
108 107 adantlr ⊢ φ ∧ ¬ P < C ⁡ J ∧ P = C ⁡ J → P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = P !
109 83 108 eqtr2d ⊢ φ ∧ ¬ P < C ⁡ J ∧ P = C ⁡ J → P ! = if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
110 81 109 breqtrd ⊢ φ ∧ ¬ P < C ⁡ J ∧ P = C ⁡ J → P ! ∥ if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
111 73 ad2antrr ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → P ! ∥ 0
112 simpr ⊢ φ ∧ ¬ P < C ⁡ J → ¬ P < C ⁡ J
113 112 adantr ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → ¬ P < C ⁡ J
114 113 iffalsed ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
115 simpll ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → φ
116 87 zred ⊢ φ → C ⁡ J ∈ ℝ
117 116 ad2antrr ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → C ⁡ J ∈ ℝ
118 1 nnred ⊢ φ → P ∈ ℝ
119 118 ad2antrr ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → P ∈ ℝ
120 116 adantr ⊢ φ ∧ ¬ P < C ⁡ J → C ⁡ J ∈ ℝ
121 118 adantr ⊢ φ ∧ ¬ P < C ⁡ J → P ∈ ℝ
122 120 121 112 nltled ⊢ φ ∧ ¬ P < C ⁡ J → C ⁡ J ≤ P
123 122 adantr ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → C ⁡ J ≤ P
124 neqne ⊢ ¬ P = C ⁡ J → P ≠ C ⁡ J
125 124 adantl ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → P ≠ C ⁡ J
126 117 119 123 125 leneltd ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → C ⁡ J < P
127 1 nnzd ⊢ φ → P ∈ ℤ
128 127 adantr ⊢ φ ∧ C ⁡ J < P → P ∈ ℤ
129 87 adantr ⊢ φ ∧ C ⁡ J < P → C ⁡ J ∈ ℤ
130 128 129 zsubcld ⊢ φ ∧ C ⁡ J < P → P − C ⁡ J ∈ ℤ
131 simpr ⊢ φ ∧ C ⁡ J < P → C ⁡ J < P
132 116 adantr ⊢ φ ∧ C ⁡ J < P → C ⁡ J ∈ ℝ
133 118 adantr ⊢ φ ∧ C ⁡ J < P → P ∈ ℝ
134 132 133 posdifd ⊢ φ ∧ C ⁡ J < P → C ⁡ J < P ↔ 0 < P − C ⁡ J
135 131 134 mpbid ⊢ φ ∧ C ⁡ J < P → 0 < P − C ⁡ J
136 elnnz ⊢ P − C ⁡ J ∈ ℕ ↔ P − C ⁡ J ∈ ℤ ∧ 0 < P − C ⁡ J
137 130 135 136 sylanbrc ⊢ φ ∧ C ⁡ J < P → P − C ⁡ J ∈ ℕ
138 137 0expd ⊢ φ ∧ C ⁡ J < P → 0 P − C ⁡ J = 0
139 138 oveq2d ⊢ φ ∧ C ⁡ J < P → P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = P ! P − C ⁡ J ! ⋅ 0
140 96 adantr ⊢ φ ∧ C ⁡ J < P → P ! ∈ ℂ
141 137 nnnn0d ⊢ φ ∧ C ⁡ J < P → P − C ⁡ J ∈ ℕ 0
142 141 faccld ⊢ φ ∧ C ⁡ J < P → P − C ⁡ J ! ∈ ℕ
143 142 nncnd ⊢ φ ∧ C ⁡ J < P → P − C ⁡ J ! ∈ ℂ
144 142 nnne0d ⊢ φ ∧ C ⁡ J < P → P − C ⁡ J ! ≠ 0
145 140 143 144 divcld ⊢ φ ∧ C ⁡ J < P → P ! P − C ⁡ J ! ∈ ℂ
146 145 mul01d ⊢ φ ∧ C ⁡ J < P → P ! P − C ⁡ J ! ⋅ 0 = 0
147 139 146 eqtrd ⊢ φ ∧ C ⁡ J < P → P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = 0
148 115 126 147 syl2anc ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J = 0
149 114 148 eqtr2d ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → 0 = if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
150 111 149 breqtrd ⊢ φ ∧ ¬ P < C ⁡ J ∧ ¬ P = C ⁡ J → P ! ∥ if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
151 110 150 pm2.61dan ⊢ φ ∧ ¬ P < C ⁡ J → P ! ∥ if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
152 78 151 pm2.61dan ⊢ φ → P ! ∥ if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
153 10 60 71 152 dvdsmultr1d ⊢ φ → P ! ∥ if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J ⁢ ∏ j ∈ 1 … M ∖ J if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j
154 46 zcnd ⊢ φ ∧ j ∈ 1 … M → if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j ∈ ℂ
155 fveq2 ⊢ j = J → C ⁡ j = C ⁡ J
156 155 breq2d ⊢ j = J → P < C ⁡ j ↔ P < C ⁡ J
157 156 adantl ⊢ φ ∧ j = J → P < C ⁡ j ↔ P < C ⁡ J
158 155 oveq2d ⊢ j = J → P − C ⁡ j = P − C ⁡ J
159 158 fveq2d ⊢ j = J → P − C ⁡ j ! = P − C ⁡ J !
160 159 oveq2d ⊢ j = J → P ! P − C ⁡ j ! = P ! P − C ⁡ J !
161 160 adantl ⊢ φ ∧ j = J → P ! P − C ⁡ j ! = P ! P − C ⁡ J !
162 oveq2 ⊢ j = J → J − j = J − J
163 162 50 sylan9eqr ⊢ φ ∧ j = J → J − j = 0
164 158 adantl ⊢ φ ∧ j = J → P − C ⁡ j = P − C ⁡ J
165 163 164 oveq12d ⊢ φ ∧ j = J → J − j P − C ⁡ j = 0 P − C ⁡ J
166 161 165 oveq12d ⊢ φ ∧ j = J → P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j = P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
167 157 166 ifbieq2d ⊢ φ ∧ j = J → if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j = if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J
168 33 154 7 167 fprodsplit1 ⊢ φ → ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j = if P < C ⁡ J 0 P ! P − C ⁡ J ! ⁢ 0 P − C ⁡ J ⁢ ∏ j ∈ 1 … M ∖ J if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j
169 153 168 breqtrrd ⊢ φ → P ! ∥ ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j
170 dvdsmultr2 ⊢ P ! ∈ ℤ ∧ N ! ∏ j = 0 M C ⁡ j ! ⁢ if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ∈ ℤ ∧ ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j ∈ ℤ → P ! ∥ ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j → P ! ∥ N ! ∏ j = 0 M C ⁡ j ! ⁢ if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ⁢ ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j
171 48 169 170 sylc ⊢ φ → P ! ∥ N ! ∏ j = 0 M C ⁡ j ! ⁢ if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ⁢ ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j
172 3 faccld ⊢ φ → N ! ∈ ℕ
173 172 nncnd ⊢ φ → N ! ∈ ℂ
174 4 ffvelcdmda ⊢ φ ∧ j ∈ 0 … M → C ⁡ j ∈ 0 … N
175 17 174 sselid ⊢ φ ∧ j ∈ 0 … M → C ⁡ j ∈ ℕ 0
176 175 faccld ⊢ φ ∧ j ∈ 0 … M → C ⁡ j ! ∈ ℕ
177 176 nncnd ⊢ φ ∧ j ∈ 0 … M → C ⁡ j ! ∈ ℂ
178 15 177 fprodcl ⊢ φ → ∏ j = 0 M C ⁡ j ! ∈ ℂ
179 176 nnne0d ⊢ φ ∧ j ∈ 0 … M → C ⁡ j ! ≠ 0
180 15 177 179 fprodn0 ⊢ φ → ∏ j = 0 M C ⁡ j ! ≠ 0
181 173 178 180 divcld ⊢ φ → N ! ∏ j = 0 M C ⁡ j ! ∈ ℂ
182 31 zcnd ⊢ φ → if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ∈ ℂ
183 33 154 fprodcl ⊢ φ → ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j ∈ ℂ
184 181 182 183 mulassd ⊢ φ → N ! ∏ j = 0 M C ⁡ j ! ⁢ if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ⁢ ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j = N ! ∏ j = 0 M C ⁡ j ! ⁢ if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ⁢ ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j
185 184 6 eqtr4di ⊢ φ → N ! ∏ j = 0 M C ⁡ j ! ⁢ if P − 1 < C ⁡ 0 0 P − 1 ! P - 1 - C ⁡ 0 ! ⁢ J P - 1 - C ⁡ 0 ⁢ ∏ j = 1 M if P < C ⁡ j 0 P ! P − C ⁡ j ! ⁢ J − j P − C ⁡ j = T
186 171 185 breqtrd ⊢ φ → P ! ∥ T