Metamath Proof Explorer


Theorem etransclem35

Description: P does not divide the P-1 -th derivative of F applied to 0 . This is case 2 of the proof in Juillerat p. 13 . (Contributed by Glauco Siliprandi, 5-Apr-2020)

Ref Expression
Hypotheses etransclem35.p ⊢ φ → P ∈ ℕ
etransclem35.m ⊢ φ → M ∈ ℕ 0
etransclem35.f ⊢ F = x ∈ ℝ ⟼ x P − 1 ⁢ ∏ j = 1 M x − j P
etransclem35.c ⊢ C = n ∈ ℕ 0 ⟼ c ∈ 0 … n 0 … M | ∑ j = 0 M c ⁡ j = n
etransclem35.d ⊢ D = j ∈ 0 … M ⟼ if j = 0 P − 1 0
Assertion etransclem35 ⊢ φ → ℝ D n F ⁡ P − 1 ⁡ 0 = P − 1 ! ⁢ ∏ j = 1 M − j P

Proof

Step Hyp Ref Expression
1 etransclem35.p ⊢ φ → P ∈ ℕ
2 etransclem35.m ⊢ φ → M ∈ ℕ 0
3 etransclem35.f ⊢ F = x ∈ ℝ ⟼ x P − 1 ⁢ ∏ j = 1 M x − j P
4 etransclem35.c ⊢ C = n ∈ ℕ 0 ⟼ c ∈ 0 … n 0 … M | ∑ j = 0 M c ⁡ j = n
5 etransclem35.d ⊢ D = j ∈ 0 … M ⟼ if j = 0 P − 1 0
6 reelprrecn ⊢ ℝ ∈ ℝ ℂ
7 6 a1i ⊢ φ → ℝ ∈ ℝ ℂ
8 reopn ⊢ ℝ ∈ topGen ⁡ ran ⁡ .
9 tgioo4 ⊢ topGen ⁡ ran ⁡ . = TopOpen ⁡ ℂ fld ↾ 𝑡 ℝ
10 8 9 eleqtri ⊢ ℝ ∈ TopOpen ⁡ ℂ fld ↾ 𝑡 ℝ
11 10 a1i ⊢ φ → ℝ ∈ TopOpen ⁡ ℂ fld ↾ 𝑡 ℝ
12 nnm1nn0 ⊢ P ∈ ℕ → P − 1 ∈ ℕ 0
13 1 12 syl ⊢ φ → P − 1 ∈ ℕ 0
14 etransclem5 ⊢ k ∈ 0 … M ⟼ y ∈ ℝ ⟼ y − k if k = 0 P − 1 P = j ∈ 0 … M ⟼ x ∈ ℝ ⟼ x − j if j = 0 P − 1 P
15 0red ⊢ φ → 0 ∈ ℝ
16 7 11 1 2 3 13 14 4 15 etransclem31 ⊢ φ → ℝ D n F ⁡ P − 1 ⁡ 0 = ∑ c ∈ C ⁡ P − 1 P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j
17 nfv ⊢ Ⅎ c φ
18 nfcv ⊢ Ⅎ _ c P − 1 ! ∏ j = 0 M D ⁡ j ! ⁢ if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 ⁢ ∏ j = 1 M if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j
19 4 13 etransclem16 ⊢ φ → C ⁡ P − 1 ∈ Fin
20 simpr ⊢ φ ∧ c ∈ C ⁡ P − 1 → c ∈ C ⁡ P − 1
21 4 13 etransclem12 ⊢ φ → C ⁡ P − 1 = c ∈ 0 … P − 1 0 … M | ∑ j = 0 M c ⁡ j = P − 1
22 21 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 → C ⁡ P − 1 = c ∈ 0 … P − 1 0 … M | ∑ j = 0 M c ⁡ j = P − 1
23 20 22 eleqtrd ⊢ φ ∧ c ∈ C ⁡ P − 1 → c ∈ c ∈ 0 … P − 1 0 … M | ∑ j = 0 M c ⁡ j = P − 1
24 rabid ⊢ c ∈ c ∈ 0 … P − 1 0 … M | ∑ j = 0 M c ⁡ j = P − 1 ↔ c ∈ 0 … P − 1 0 … M ∧ ∑ j = 0 M c ⁡ j = P − 1
25 23 24 sylib ⊢ φ ∧ c ∈ C ⁡ P − 1 → c ∈ 0 … P − 1 0 … M ∧ ∑ j = 0 M c ⁡ j = P − 1
26 25 simprd ⊢ φ ∧ c ∈ C ⁡ P − 1 → ∑ j = 0 M c ⁡ j = P − 1
27 26 eqcomd ⊢ φ ∧ c ∈ C ⁡ P − 1 → P − 1 = ∑ j = 0 M c ⁡ j
28 27 fveq2d ⊢ φ ∧ c ∈ C ⁡ P − 1 → P − 1 ! = ∑ j = 0 M c ⁡ j !
29 28 oveq1d ⊢ φ ∧ c ∈ C ⁡ P − 1 → P − 1 ! ∏ j = 0 M c ⁡ j ! = ∑ j = 0 M c ⁡ j ! ∏ j = 0 M c ⁡ j !
30 nfcv ⊢ Ⅎ _ j c
31 fzfid ⊢ φ ∧ c ∈ C ⁡ P − 1 → 0 … M ∈ Fin
32 nn0ex ⊢ ℕ 0 ∈ V
33 fzssnn0 ⊢ 0 … P − 1 ⊆ ℕ 0
34 mapss ⊢ ℕ 0 ∈ V ∧ 0 … P − 1 ⊆ ℕ 0 → 0 … P − 1 0 … M ⊆ ℕ 0 0 … M
35 32 33 34 mp2an ⊢ 0 … P − 1 0 … M ⊆ ℕ 0 0 … M
36 25 simpld ⊢ φ ∧ c ∈ C ⁡ P − 1 → c ∈ 0 … P − 1 0 … M
37 35 36 sselid ⊢ φ ∧ c ∈ C ⁡ P − 1 → c ∈ ℕ 0 0 … M
38 30 31 37 mccl ⊢ φ ∧ c ∈ C ⁡ P − 1 → ∑ j = 0 M c ⁡ j ! ∏ j = 0 M c ⁡ j ! ∈ ℕ
39 29 38 eqeltrd ⊢ φ ∧ c ∈ C ⁡ P − 1 → P − 1 ! ∏ j = 0 M c ⁡ j ! ∈ ℕ
40 39 nnzd ⊢ φ ∧ c ∈ C ⁡ P − 1 → P − 1 ! ∏ j = 0 M c ⁡ j ! ∈ ℤ
41 1 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 → P ∈ ℕ
42 2 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 → M ∈ ℕ 0
43 elmapi ⊢ c ∈ 0 … P − 1 0 … M → c : 0 … M ⟶ 0 … P − 1
44 36 43 syl ⊢ φ ∧ c ∈ C ⁡ P − 1 → c : 0 … M ⟶ 0 … P − 1
45 0zd ⊢ φ ∧ c ∈ C ⁡ P − 1 → 0 ∈ ℤ
46 41 42 44 45 etransclem10 ⊢ φ ∧ c ∈ C ⁡ P − 1 → if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ∈ ℤ
47 fzfid ⊢ φ ∧ c ∈ C ⁡ P − 1 → 1 … M ∈ Fin
48 1 ad2antrr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 1 … M → P ∈ ℕ
49 44 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 1 … M → c : 0 … M ⟶ 0 … P − 1
50 fz1ssfz0 ⊢ 1 … M ⊆ 0 … M
51 50 sseli ⊢ j ∈ 1 … M → j ∈ 0 … M
52 51 adantl ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 1 … M → j ∈ 0 … M
53 0zd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 1 … M → 0 ∈ ℤ
54 48 49 52 53 etransclem3 ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 1 … M → if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j ∈ ℤ
55 47 54 fprodzcl ⊢ φ ∧ c ∈ C ⁡ P − 1 → ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j ∈ ℤ
56 46 55 zmulcld ⊢ φ ∧ c ∈ C ⁡ P − 1 → if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j ∈ ℤ
57 40 56 zmulcld ⊢ φ ∧ c ∈ C ⁡ P − 1 → P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j ∈ ℤ
58 57 zcnd ⊢ φ ∧ c ∈ C ⁡ P − 1 → P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j ∈ ℂ
59 nn0uz ⊢ ℕ 0 = ℤ ≥ 0
60 13 59 eleqtrdi ⊢ φ → P − 1 ∈ ℤ ≥ 0
61 eluzfz2 ⊢ P − 1 ∈ ℤ ≥ 0 → P − 1 ∈ 0 … P − 1
62 60 61 syl ⊢ φ → P − 1 ∈ 0 … P − 1
63 eluzfz1 ⊢ P − 1 ∈ ℤ ≥ 0 → 0 ∈ 0 … P − 1
64 60 63 syl ⊢ φ → 0 ∈ 0 … P − 1
65 62 64 ifcld ⊢ φ → if j = 0 P − 1 0 ∈ 0 … P − 1
66 65 adantr ⊢ φ ∧ j ∈ 0 … M → if j = 0 P − 1 0 ∈ 0 … P − 1
67 66 5 fmptd ⊢ φ → D : 0 … M ⟶ 0 … P − 1
68 ovex ⊢ 0 … P − 1 ∈ V
69 ovex ⊢ 0 … M ∈ V
70 68 69 elmap ⊢ D ∈ 0 … P − 1 0 … M ↔ D : 0 … M ⟶ 0 … P − 1
71 67 70 sylibr ⊢ φ → D ∈ 0 … P − 1 0 … M
72 2 59 eleqtrdi ⊢ φ → M ∈ ℤ ≥ 0
73 fzsscn ⊢ 0 … P − 1 ⊆ ℂ
74 67 ffvelcdmda ⊢ φ ∧ j ∈ 0 … M → D ⁡ j ∈ 0 … P − 1
75 73 74 sselid ⊢ φ ∧ j ∈ 0 … M → D ⁡ j ∈ ℂ
76 fveq2 ⊢ j = 0 → D ⁡ j = D ⁡ 0
77 72 75 76 fsum1p ⊢ φ → ∑ j = 0 M D ⁡ j = D ⁡ 0 + ∑ j = 0 + 1 M D ⁡ j
78 5 a1i ⊢ φ → D = j ∈ 0 … M ⟼ if j = 0 P − 1 0
79 simpr ⊢ φ ∧ j = 0 → j = 0
80 79 iftrued ⊢ φ ∧ j = 0 → if j = 0 P − 1 0 = P − 1
81 eluzfz1 ⊢ M ∈ ℤ ≥ 0 → 0 ∈ 0 … M
82 72 81 syl ⊢ φ → 0 ∈ 0 … M
83 78 80 82 13 fvmptd ⊢ φ → D ⁡ 0 = P − 1
84 0p1e1 ⊢ 0 + 1 = 1
85 84 oveq1i ⊢ 0 + 1 … M = 1 … M
86 85 sumeq1i ⊢ ∑ j = 0 + 1 M D ⁡ j = ∑ j = 1 M D ⁡ j
87 86 a1i ⊢ φ → ∑ j = 0 + 1 M D ⁡ j = ∑ j = 1 M D ⁡ j
88 5 fvmpt2 ⊢ j ∈ 0 … M ∧ if j = 0 P − 1 0 ∈ 0 … P − 1 → D ⁡ j = if j = 0 P − 1 0
89 51 65 88 syl2anr ⊢ φ ∧ j ∈ 1 … M → D ⁡ j = if j = 0 P − 1 0
90 0red ⊢ j ∈ 1 … M → 0 ∈ ℝ
91 1red ⊢ j ∈ 1 … M → 1 ∈ ℝ
92 elfzelz ⊢ j ∈ 1 … M → j ∈ ℤ
93 92 zred ⊢ j ∈ 1 … M → j ∈ ℝ
94 0lt1 ⊢ 0 < 1
95 94 a1i ⊢ j ∈ 1 … M → 0 < 1
96 elfzle1 ⊢ j ∈ 1 … M → 1 ≤ j
97 90 91 93 95 96 ltletrd ⊢ j ∈ 1 … M → 0 < j
98 90 97 gtned ⊢ j ∈ 1 … M → j ≠ 0
99 98 neneqd ⊢ j ∈ 1 … M → ¬ j = 0
100 99 iffalsed ⊢ j ∈ 1 … M → if j = 0 P − 1 0 = 0
101 100 adantl ⊢ φ ∧ j ∈ 1 … M → if j = 0 P − 1 0 = 0
102 89 101 eqtrd ⊢ φ ∧ j ∈ 1 … M → D ⁡ j = 0
103 102 sumeq2dv ⊢ φ → ∑ j = 1 M D ⁡ j = ∑ j = 1 M 0
104 fzfi ⊢ 1 … M ∈ Fin
105 104 olci ⊢ 1 … M ⊆ ℤ ≥ A ∨ 1 … M ∈ Fin
106 sumz ⊢ 1 … M ⊆ ℤ ≥ A ∨ 1 … M ∈ Fin → ∑ j = 1 M 0 = 0
107 105 106 mp1i ⊢ φ → ∑ j = 1 M 0 = 0
108 87 103 107 3eqtrd ⊢ φ → ∑ j = 0 + 1 M D ⁡ j = 0
109 83 108 oveq12d ⊢ φ → D ⁡ 0 + ∑ j = 0 + 1 M D ⁡ j = P - 1 + 0
110 1 nncnd ⊢ φ → P ∈ ℂ
111 1cnd ⊢ φ → 1 ∈ ℂ
112 110 111 subcld ⊢ φ → P − 1 ∈ ℂ
113 112 addridd ⊢ φ → P - 1 + 0 = P − 1
114 77 109 113 3eqtrd ⊢ φ → ∑ j = 0 M D ⁡ j = P − 1
115 fveq1 ⊢ c = D → c ⁡ j = D ⁡ j
116 115 sumeq2sdv ⊢ c = D → ∑ j = 0 M c ⁡ j = ∑ j = 0 M D ⁡ j
117 116 eqeq1d ⊢ c = D → ∑ j = 0 M c ⁡ j = P − 1 ↔ ∑ j = 0 M D ⁡ j = P − 1
118 117 elrab ⊢ D ∈ c ∈ 0 … P − 1 0 … M | ∑ j = 0 M c ⁡ j = P − 1 ↔ D ∈ 0 … P − 1 0 … M ∧ ∑ j = 0 M D ⁡ j = P − 1
119 71 114 118 sylanbrc ⊢ φ → D ∈ c ∈ 0 … P − 1 0 … M | ∑ j = 0 M c ⁡ j = P − 1
120 119 21 eleqtrrd ⊢ φ → D ∈ C ⁡ P − 1
121 115 fveq2d ⊢ c = D → c ⁡ j ! = D ⁡ j !
122 121 prodeq2ad ⊢ c = D → ∏ j = 0 M c ⁡ j ! = ∏ j = 0 M D ⁡ j !
123 122 oveq2d ⊢ c = D → P − 1 ! ∏ j = 0 M c ⁡ j ! = P − 1 ! ∏ j = 0 M D ⁡ j !
124 fveq1 ⊢ c = D → c ⁡ 0 = D ⁡ 0
125 124 breq2d ⊢ c = D → P − 1 < c ⁡ 0 ↔ P − 1 < D ⁡ 0
126 124 oveq2d ⊢ c = D → P - 1 - c ⁡ 0 = P - 1 - D ⁡ 0
127 126 fveq2d ⊢ c = D → P - 1 - c ⁡ 0 ! = P - 1 - D ⁡ 0 !
128 127 oveq2d ⊢ c = D → P − 1 ! P - 1 - c ⁡ 0 ! = P − 1 ! P - 1 - D ⁡ 0 !
129 126 oveq2d ⊢ c = D → 0 P - 1 - c ⁡ 0 = 0 P - 1 - D ⁡ 0
130 128 129 oveq12d ⊢ c = D → P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 = P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0
131 125 130 ifbieq2d ⊢ c = D → if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 = if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0
132 115 breq2d ⊢ c = D → P < c ⁡ j ↔ P < D ⁡ j
133 115 oveq2d ⊢ c = D → P − c ⁡ j = P − D ⁡ j
134 133 fveq2d ⊢ c = D → P − c ⁡ j ! = P − D ⁡ j !
135 134 oveq2d ⊢ c = D → P ! P − c ⁡ j ! = P ! P − D ⁡ j !
136 133 oveq2d ⊢ c = D → 0 − j P − c ⁡ j = 0 − j P − D ⁡ j
137 135 136 oveq12d ⊢ c = D → P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j
138 132 137 ifbieq2d ⊢ c = D → if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j
139 138 prodeq2ad ⊢ c = D → ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = ∏ j = 1 M if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j
140 131 139 oveq12d ⊢ c = D → if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 ⁢ ∏ j = 1 M if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j
141 123 140 oveq12d ⊢ c = D → P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = P − 1 ! ∏ j = 0 M D ⁡ j ! ⁢ if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 ⁢ ∏ j = 1 M if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j
142 17 18 19 58 120 141 fsumsplit1 ⊢ φ → ∑ c ∈ C ⁡ P − 1 P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = P − 1 ! ∏ j = 0 M D ⁡ j ! ⁢ if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 ⁢ ∏ j = 1 M if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j + ∑ c ∈ C ⁡ P − 1 ∖ D P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j
143 33 74 sselid ⊢ φ ∧ j ∈ 0 … M → D ⁡ j ∈ ℕ 0
144 143 faccld ⊢ φ ∧ j ∈ 0 … M → D ⁡ j ! ∈ ℕ
145 144 nncnd ⊢ φ ∧ j ∈ 0 … M → D ⁡ j ! ∈ ℂ
146 76 fveq2d ⊢ j = 0 → D ⁡ j ! = D ⁡ 0 !
147 72 145 146 fprod1p ⊢ φ → ∏ j = 0 M D ⁡ j ! = D ⁡ 0 ! ⁢ ∏ j = 0 + 1 M D ⁡ j !
148 83 fveq2d ⊢ φ → D ⁡ 0 ! = P − 1 !
149 85 prodeq1i ⊢ ∏ j = 0 + 1 M D ⁡ j ! = ∏ j = 1 M D ⁡ j !
150 149 a1i ⊢ φ → ∏ j = 0 + 1 M D ⁡ j ! = ∏ j = 1 M D ⁡ j !
151 102 fveq2d ⊢ φ ∧ j ∈ 1 … M → D ⁡ j ! = 0 !
152 fac0 ⊢ 0 ! = 1
153 151 152 eqtrdi ⊢ φ ∧ j ∈ 1 … M → D ⁡ j ! = 1
154 153 prodeq2dv ⊢ φ → ∏ j = 1 M D ⁡ j ! = ∏ j = 1 M 1
155 prod1 ⊢ 1 … M ⊆ ℤ ≥ A ∨ 1 … M ∈ Fin → ∏ j = 1 M 1 = 1
156 105 155 mp1i ⊢ φ → ∏ j = 1 M 1 = 1
157 150 154 156 3eqtrd ⊢ φ → ∏ j = 0 + 1 M D ⁡ j ! = 1
158 148 157 oveq12d ⊢ φ → D ⁡ 0 ! ⁢ ∏ j = 0 + 1 M D ⁡ j ! = P − 1 ! ⋅ 1
159 13 faccld ⊢ φ → P − 1 ! ∈ ℕ
160 159 nncnd ⊢ φ → P − 1 ! ∈ ℂ
161 160 mulridd ⊢ φ → P − 1 ! ⋅ 1 = P − 1 !
162 147 158 161 3eqtrd ⊢ φ → ∏ j = 0 M D ⁡ j ! = P − 1 !
163 162 oveq2d ⊢ φ → P − 1 ! ∏ j = 0 M D ⁡ j ! = P − 1 ! P − 1 !
164 159 nnne0d ⊢ φ → P − 1 ! ≠ 0
165 160 164 dividd ⊢ φ → P − 1 ! P − 1 ! = 1
166 163 165 eqtrd ⊢ φ → P − 1 ! ∏ j = 0 M D ⁡ j ! = 1
167 13 nn0red ⊢ φ → P − 1 ∈ ℝ
168 83 167 eqeltrd ⊢ φ → D ⁡ 0 ∈ ℝ
169 168 167 lttri3d ⊢ φ → D ⁡ 0 = P − 1 ↔ ¬ D ⁡ 0 < P − 1 ∧ ¬ P − 1 < D ⁡ 0
170 83 169 mpbid ⊢ φ → ¬ D ⁡ 0 < P − 1 ∧ ¬ P − 1 < D ⁡ 0
171 170 simprd ⊢ φ → ¬ P − 1 < D ⁡ 0
172 171 iffalsed ⊢ φ → if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 = P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0
173 83 eqcomd ⊢ φ → P − 1 = D ⁡ 0
174 112 173 subeq0bd ⊢ φ → P - 1 - D ⁡ 0 = 0
175 174 fveq2d ⊢ φ → P - 1 - D ⁡ 0 ! = 0 !
176 175 152 eqtrdi ⊢ φ → P - 1 - D ⁡ 0 ! = 1
177 176 oveq2d ⊢ φ → P − 1 ! P - 1 - D ⁡ 0 ! = P − 1 ! 1
178 160 div1d ⊢ φ → P − 1 ! 1 = P − 1 !
179 177 178 eqtrd ⊢ φ → P − 1 ! P - 1 - D ⁡ 0 ! = P − 1 !
180 174 oveq2d ⊢ φ → 0 P - 1 - D ⁡ 0 = 0 0
181 0cnd ⊢ φ → 0 ∈ ℂ
182 181 exp0d ⊢ φ → 0 0 = 1
183 180 182 eqtrd ⊢ φ → 0 P - 1 - D ⁡ 0 = 1
184 179 183 oveq12d ⊢ φ → P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 = P − 1 ! ⋅ 1
185 172 184 161 3eqtrd ⊢ φ → if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 = P − 1 !
186 fzssre ⊢ 0 … P − 1 ⊆ ℝ
187 67 adantr ⊢ φ ∧ j ∈ 1 … M → D : 0 … M ⟶ 0 … P − 1
188 51 adantl ⊢ φ ∧ j ∈ 1 … M → j ∈ 0 … M
189 187 188 ffvelcdmd ⊢ φ ∧ j ∈ 1 … M → D ⁡ j ∈ 0 … P − 1
190 186 189 sselid ⊢ φ ∧ j ∈ 1 … M → D ⁡ j ∈ ℝ
191 1 nnred ⊢ φ → P ∈ ℝ
192 191 adantr ⊢ φ ∧ j ∈ 1 … M → P ∈ ℝ
193 1 nngt0d ⊢ φ → 0 < P
194 15 191 193 ltled ⊢ φ → 0 ≤ P
195 194 adantr ⊢ φ ∧ j ∈ 1 … M → 0 ≤ P
196 102 195 eqbrtrd ⊢ φ ∧ j ∈ 1 … M → D ⁡ j ≤ P
197 190 192 196 lensymd ⊢ φ ∧ j ∈ 1 … M → ¬ P < D ⁡ j
198 197 iffalsed ⊢ φ ∧ j ∈ 1 … M → if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j = P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j
199 102 oveq2d ⊢ φ ∧ j ∈ 1 … M → P − D ⁡ j = P − 0
200 110 adantr ⊢ φ ∧ j ∈ 1 … M → P ∈ ℂ
201 200 subid1d ⊢ φ ∧ j ∈ 1 … M → P − 0 = P
202 199 201 eqtrd ⊢ φ ∧ j ∈ 1 … M → P − D ⁡ j = P
203 202 fveq2d ⊢ φ ∧ j ∈ 1 … M → P − D ⁡ j ! = P !
204 203 oveq2d ⊢ φ ∧ j ∈ 1 … M → P ! P − D ⁡ j ! = P ! P !
205 1 nnnn0d ⊢ φ → P ∈ ℕ 0
206 205 faccld ⊢ φ → P ! ∈ ℕ
207 206 nncnd ⊢ φ → P ! ∈ ℂ
208 206 nnne0d ⊢ φ → P ! ≠ 0
209 207 208 dividd ⊢ φ → P ! P ! = 1
210 209 adantr ⊢ φ ∧ j ∈ 1 … M → P ! P ! = 1
211 204 210 eqtrd ⊢ φ ∧ j ∈ 1 … M → P ! P − D ⁡ j ! = 1
212 df-neg ⊢ − j = 0 − j
213 212 eqcomi ⊢ 0 − j = − j
214 213 a1i ⊢ φ ∧ j ∈ 1 … M → 0 − j = − j
215 214 202 oveq12d ⊢ φ ∧ j ∈ 1 … M → 0 − j P − D ⁡ j = − j P
216 211 215 oveq12d ⊢ φ ∧ j ∈ 1 … M → P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j = 1 ⁢ − j P
217 92 znegcld ⊢ j ∈ 1 … M → − j ∈ ℤ
218 217 zcnd ⊢ j ∈ 1 … M → − j ∈ ℂ
219 218 adantl ⊢ φ ∧ j ∈ 1 … M → − j ∈ ℂ
220 205 adantr ⊢ φ ∧ j ∈ 1 … M → P ∈ ℕ 0
221 219 220 expcld ⊢ φ ∧ j ∈ 1 … M → − j P ∈ ℂ
222 221 mullidd ⊢ φ ∧ j ∈ 1 … M → 1 ⁢ − j P = − j P
223 198 216 222 3eqtrd ⊢ φ ∧ j ∈ 1 … M → if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j = − j P
224 223 prodeq2dv ⊢ φ → ∏ j = 1 M if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j = ∏ j = 1 M − j P
225 185 224 oveq12d ⊢ φ → if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 ⁢ ∏ j = 1 M if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j = P − 1 ! ⁢ ∏ j = 1 M − j P
226 166 225 oveq12d ⊢ φ → P − 1 ! ∏ j = 0 M D ⁡ j ! ⁢ if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 ⁢ ∏ j = 1 M if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j = 1 ⁢ P − 1 ! ⁢ ∏ j = 1 M − j P
227 fzfid ⊢ φ → 1 … M ∈ Fin
228 zexpcl ⊢ − j ∈ ℤ ∧ P ∈ ℕ 0 → − j P ∈ ℤ
229 217 205 228 syl2anr ⊢ φ ∧ j ∈ 1 … M → − j P ∈ ℤ
230 227 229 fprodzcl ⊢ φ → ∏ j = 1 M − j P ∈ ℤ
231 230 zcnd ⊢ φ → ∏ j = 1 M − j P ∈ ℂ
232 160 231 mulcld ⊢ φ → P − 1 ! ⁢ ∏ j = 1 M − j P ∈ ℂ
233 232 mullidd ⊢ φ → 1 ⁢ P − 1 ! ⁢ ∏ j = 1 M − j P = P − 1 ! ⁢ ∏ j = 1 M − j P
234 226 233 eqtrd ⊢ φ → P − 1 ! ∏ j = 0 M D ⁡ j ! ⁢ if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 ⁢ ∏ j = 1 M if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j = P − 1 ! ⁢ ∏ j = 1 M − j P
235 eldifi ⊢ c ∈ C ⁡ P − 1 ∖ D → c ∈ C ⁡ P − 1
236 82 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 → 0 ∈ 0 … M
237 44 236 ffvelcdmd ⊢ φ ∧ c ∈ C ⁡ P − 1 → c ⁡ 0 ∈ 0 … P − 1
238 235 237 sylan2 ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → c ⁡ 0 ∈ 0 … P − 1
239 186 238 sselid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → c ⁡ 0 ∈ ℝ
240 167 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P − 1 ∈ ℝ
241 elfzle2 ⊢ c ⁡ 0 ∈ 0 … P − 1 → c ⁡ 0 ≤ P − 1
242 238 241 syl ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → c ⁡ 0 ≤ P − 1
243 239 240 242 lensymd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → ¬ P − 1 < c ⁡ 0
244 243 iffalsed ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 = P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0
245 13 nn0zd ⊢ φ → P − 1 ∈ ℤ
246 245 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P − 1 ∈ ℤ
247 238 elfzelzd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → c ⁡ 0 ∈ ℤ
248 246 247 zsubcld ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P - 1 - c ⁡ 0 ∈ ℤ
249 44 ffnd ⊢ φ ∧ c ∈ C ⁡ P − 1 → c Fn 0 … M
250 249 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 → c Fn 0 … M
251 67 ffnd ⊢ φ → D Fn 0 … M
252 251 ad2antrr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 → D Fn 0 … M
253 fveq2 ⊢ j = 0 → c ⁡ j = c ⁡ 0
254 253 adantl ⊢ φ ∧ P − 1 = c ⁡ 0 ∧ j = 0 → c ⁡ j = c ⁡ 0
255 id ⊢ P − 1 = c ⁡ 0 → P − 1 = c ⁡ 0
256 255 eqcomd ⊢ P − 1 = c ⁡ 0 → c ⁡ 0 = P − 1
257 256 ad2antlr ⊢ φ ∧ P − 1 = c ⁡ 0 ∧ j = 0 → c ⁡ 0 = P − 1
258 76 adantl ⊢ φ ∧ j = 0 → D ⁡ j = D ⁡ 0
259 83 adantr ⊢ φ ∧ j = 0 → D ⁡ 0 = P − 1
260 258 259 eqtr2d ⊢ φ ∧ j = 0 → P − 1 = D ⁡ j
261 260 adantlr ⊢ φ ∧ P − 1 = c ⁡ 0 ∧ j = 0 → P − 1 = D ⁡ j
262 254 257 261 3eqtrd ⊢ φ ∧ P − 1 = c ⁡ 0 ∧ j = 0 → c ⁡ j = D ⁡ j
263 262 adantllr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j = 0 → c ⁡ j = D ⁡ j
264 263 adantlr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ j = 0 → c ⁡ j = D ⁡ j
265 26 ad4antr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → ∑ j = 0 M c ⁡ j = P − 1
266 167 ad5antr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → P − 1 ∈ ℝ
267 167 ad4antr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → P − 1 ∈ ℝ
268 44 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 1 … M → c : 0 … M ⟶ 0 … P − 1
269 50 sseli ⊢ k ∈ 1 … M → k ∈ 0 … M
270 269 adantl ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 1 … M → k ∈ 0 … M
271 268 270 ffvelcdmd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 1 … M → c ⁡ k ∈ 0 … P − 1
272 33 271 sselid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 1 … M → c ⁡ k ∈ ℕ 0
273 47 272 fsumnn0cl ⊢ φ ∧ c ∈ C ⁡ P − 1 → ∑ k = 1 M c ⁡ k ∈ ℕ 0
274 273 nn0red ⊢ φ ∧ c ∈ C ⁡ P − 1 → ∑ k = 1 M c ⁡ k ∈ ℝ
275 274 ad3antrrr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → ∑ k = 1 M c ⁡ k ∈ ℝ
276 0red ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → 0 ∈ ℝ
277 44 ffvelcdmda ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M → c ⁡ j ∈ 0 … P − 1
278 186 277 sselid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M → c ⁡ j ∈ ℝ
279 278 ad2antrr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → c ⁡ j ∈ ℝ
280 nfv ⊢ Ⅎ k φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0
281 nfcv ⊢ Ⅎ _ k c ⁡ j
282 fzfid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → 1 … M ∈ Fin
283 simp-4l ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 ∧ k ∈ 1 … M → φ ∧ c ∈ C ⁡ P − 1
284 73 271 sselid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 1 … M → c ⁡ k ∈ ℂ
285 283 284 sylancom ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 ∧ k ∈ 1 … M → c ⁡ k ∈ ℂ
286 1zzd ⊢ j ∈ 0 … M ∧ ¬ j = 0 → 1 ∈ ℤ
287 elfzel2 ⊢ j ∈ 0 … M → M ∈ ℤ
288 287 adantr ⊢ j ∈ 0 … M ∧ ¬ j = 0 → M ∈ ℤ
289 elfzelz ⊢ j ∈ 0 … M → j ∈ ℤ
290 289 adantr ⊢ j ∈ 0 … M ∧ ¬ j = 0 → j ∈ ℤ
291 elfznn0 ⊢ j ∈ 0 … M → j ∈ ℕ 0
292 291 adantr ⊢ j ∈ 0 … M ∧ ¬ j = 0 → j ∈ ℕ 0
293 neqne ⊢ ¬ j = 0 → j ≠ 0
294 293 adantl ⊢ j ∈ 0 … M ∧ ¬ j = 0 → j ≠ 0
295 elnnne0 ⊢ j ∈ ℕ ↔ j ∈ ℕ 0 ∧ j ≠ 0
296 292 294 295 sylanbrc ⊢ j ∈ 0 … M ∧ ¬ j = 0 → j ∈ ℕ
297 296 nnge1d ⊢ j ∈ 0 … M ∧ ¬ j = 0 → 1 ≤ j
298 elfzle2 ⊢ j ∈ 0 … M → j ≤ M
299 298 adantr ⊢ j ∈ 0 … M ∧ ¬ j = 0 → j ≤ M
300 286 288 290 297 299 elfzd ⊢ j ∈ 0 … M ∧ ¬ j = 0 → j ∈ 1 … M
301 300 adantr ⊢ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → j ∈ 1 … M
302 301 adantlll ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → j ∈ 1 … M
303 fveq2 ⊢ k = j → c ⁡ k = c ⁡ j
304 280 281 282 285 302 303 fsumsplit1 ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → ∑ k = 1 M c ⁡ k = c ⁡ j + ∑ k ∈ 1 … M ∖ j c ⁡ k
305 304 eqcomd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → c ⁡ j + ∑ k ∈ 1 … M ∖ j c ⁡ k = ∑ k = 1 M c ⁡ k
306 305 275 eqeltrd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → c ⁡ j + ∑ k ∈ 1 … M ∖ j c ⁡ k ∈ ℝ
307 elfzle1 ⊢ c ⁡ j ∈ 0 … P − 1 → 0 ≤ c ⁡ j
308 277 307 syl ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M → 0 ≤ c ⁡ j
309 308 ad2antrr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → 0 ≤ c ⁡ j
310 neqne ⊢ ¬ c ⁡ j = 0 → c ⁡ j ≠ 0
311 310 adantl ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → c ⁡ j ≠ 0
312 276 279 309 311 leneltd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → 0 < c ⁡ j
313 diffi ⊢ 1 … M ∈ Fin → 1 … M ∖ j ∈ Fin
314 104 313 mp1i ⊢ φ ∧ c ∈ C ⁡ P − 1 → 1 … M ∖ j ∈ Fin
315 eldifi ⊢ k ∈ 1 … M ∖ j → k ∈ 1 … M
316 315 adantl ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 1 … M ∖ j → k ∈ 1 … M
317 50 316 sselid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 1 … M ∖ j → k ∈ 0 … M
318 44 ffvelcdmda ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 0 … M → c ⁡ k ∈ 0 … P − 1
319 186 318 sselid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 0 … M → c ⁡ k ∈ ℝ
320 317 319 syldan ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 1 … M ∖ j → c ⁡ k ∈ ℝ
321 elfzle1 ⊢ c ⁡ k ∈ 0 … P − 1 → 0 ≤ c ⁡ k
322 318 321 syl ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 0 … M → 0 ≤ c ⁡ k
323 317 322 syldan ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 1 … M ∖ j → 0 ≤ c ⁡ k
324 314 320 323 fsumge0 ⊢ φ ∧ c ∈ C ⁡ P − 1 → 0 ≤ ∑ k ∈ 1 … M ∖ j c ⁡ k
325 324 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M → 0 ≤ ∑ k ∈ 1 … M ∖ j c ⁡ k
326 314 320 fsumrecl ⊢ φ ∧ c ∈ C ⁡ P − 1 → ∑ k ∈ 1 … M ∖ j c ⁡ k ∈ ℝ
327 326 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M → ∑ k ∈ 1 … M ∖ j c ⁡ k ∈ ℝ
328 278 327 addge01d ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M → 0 ≤ ∑ k ∈ 1 … M ∖ j c ⁡ k ↔ c ⁡ j ≤ c ⁡ j + ∑ k ∈ 1 … M ∖ j c ⁡ k
329 325 328 mpbid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M → c ⁡ j ≤ c ⁡ j + ∑ k ∈ 1 … M ∖ j c ⁡ k
330 329 ad2antrr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → c ⁡ j ≤ c ⁡ j + ∑ k ∈ 1 … M ∖ j c ⁡ k
331 276 279 306 312 330 ltletrd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → 0 < c ⁡ j + ∑ k ∈ 1 … M ∖ j c ⁡ k
332 331 305 breqtrd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → 0 < ∑ k = 1 M c ⁡ k
333 275 332 elrpd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → ∑ k = 1 M c ⁡ k ∈ ℝ +
334 267 333 ltaddrpd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → P − 1 < P - 1 + ∑ k = 1 M c ⁡ k
335 334 adantl3r ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → P − 1 < P - 1 + ∑ k = 1 M c ⁡ k
336 fveq2 ⊢ j = k → c ⁡ j = c ⁡ k
337 336 cbvsumv ⊢ ∑ j = 0 M c ⁡ j = ∑ k = 0 M c ⁡ k
338 337 a1i ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → ∑ j = 0 M c ⁡ j = ∑ k = 0 M c ⁡ k
339 72 ad5antr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → M ∈ ℤ ≥ 0
340 simp-5l ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 ∧ k ∈ 0 … M → φ ∧ c ∈ C ⁡ P − 1
341 73 318 sselid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ k ∈ 0 … M → c ⁡ k ∈ ℂ
342 340 341 sylancom ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 ∧ k ∈ 0 … M → c ⁡ k ∈ ℂ
343 fveq2 ⊢ k = 0 → c ⁡ k = c ⁡ 0
344 339 342 343 fsum1p ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → ∑ k = 0 M c ⁡ k = c ⁡ 0 + ∑ k = 0 + 1 M c ⁡ k
345 256 ad4antlr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → c ⁡ 0 = P − 1
346 85 sumeq1i ⊢ ∑ k = 0 + 1 M c ⁡ k = ∑ k = 1 M c ⁡ k
347 346 a1i ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → ∑ k = 0 + 1 M c ⁡ k = ∑ k = 1 M c ⁡ k
348 345 347 oveq12d ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → c ⁡ 0 + ∑ k = 0 + 1 M c ⁡ k = P - 1 + ∑ k = 1 M c ⁡ k
349 338 344 348 3eqtrrd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → P - 1 + ∑ k = 1 M c ⁡ k = ∑ j = 0 M c ⁡ j
350 335 349 breqtrd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → P − 1 < ∑ j = 0 M c ⁡ j
351 266 350 gtned ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → ∑ j = 0 M c ⁡ j ≠ P − 1
352 351 neneqd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 ∧ ¬ c ⁡ j = 0 → ¬ ∑ j = 0 M c ⁡ j = P − 1
353 265 352 condan ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 → c ⁡ j = 0
354 simpr ⊢ φ ∧ j ∈ 0 … M → j ∈ 0 … M
355 33 66 sselid ⊢ φ ∧ j ∈ 0 … M → if j = 0 P − 1 0 ∈ ℕ 0
356 5 fvmpt2 ⊢ j ∈ 0 … M ∧ if j = 0 P − 1 0 ∈ ℕ 0 → D ⁡ j = if j = 0 P − 1 0
357 354 355 356 syl2anc ⊢ φ ∧ j ∈ 0 … M → D ⁡ j = if j = 0 P − 1 0
358 357 adantr ⊢ φ ∧ j ∈ 0 … M ∧ ¬ j = 0 → D ⁡ j = if j = 0 P − 1 0
359 simpr ⊢ φ ∧ j ∈ 0 … M ∧ ¬ j = 0 → ¬ j = 0
360 359 iffalsed ⊢ φ ∧ j ∈ 0 … M ∧ ¬ j = 0 → if j = 0 P − 1 0 = 0
361 358 360 eqtr2d ⊢ φ ∧ j ∈ 0 … M ∧ ¬ j = 0 → 0 = D ⁡ j
362 361 adantllr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M ∧ ¬ j = 0 → 0 = D ⁡ j
363 362 adantllr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 → 0 = D ⁡ j
364 353 363 eqtrd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M ∧ ¬ j = 0 → c ⁡ j = D ⁡ j
365 264 364 pm2.61dan ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 ∧ j ∈ 0 … M → c ⁡ j = D ⁡ j
366 250 252 365 eqfnfvd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ P − 1 = c ⁡ 0 → c = D
367 235 366 sylanl2 ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D ∧ P − 1 = c ⁡ 0 → c = D
368 eldifsni ⊢ c ∈ C ⁡ P − 1 ∖ D → c ≠ D
369 368 neneqd ⊢ c ∈ C ⁡ P − 1 ∖ D → ¬ c = D
370 369 ad2antlr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D ∧ P − 1 = c ⁡ 0 → ¬ c = D
371 367 370 pm2.65da ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → ¬ P − 1 = c ⁡ 0
372 371 neqned ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P − 1 ≠ c ⁡ 0
373 239 240 242 372 leneltd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → c ⁡ 0 < P − 1
374 239 240 posdifd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → c ⁡ 0 < P − 1 ↔ 0 < P - 1 - c ⁡ 0
375 373 374 mpbid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → 0 < P - 1 - c ⁡ 0
376 elnnz ⊢ P - 1 - c ⁡ 0 ∈ ℕ ↔ P - 1 - c ⁡ 0 ∈ ℤ ∧ 0 < P - 1 - c ⁡ 0
377 248 375 376 sylanbrc ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P - 1 - c ⁡ 0 ∈ ℕ
378 377 0expd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → 0 P - 1 - c ⁡ 0 = 0
379 378 oveq2d ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 = P − 1 ! P - 1 - c ⁡ 0 ! ⋅ 0
380 160 adantr ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P − 1 ! ∈ ℂ
381 377 nnnn0d ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P - 1 - c ⁡ 0 ∈ ℕ 0
382 381 faccld ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P - 1 - c ⁡ 0 ! ∈ ℕ
383 382 nncnd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P - 1 - c ⁡ 0 ! ∈ ℂ
384 382 nnne0d ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P - 1 - c ⁡ 0 ! ≠ 0
385 380 383 384 divcld ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P − 1 ! P - 1 - c ⁡ 0 ! ∈ ℂ
386 385 mul01d ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P − 1 ! P - 1 - c ⁡ 0 ! ⋅ 0 = 0
387 244 379 386 3eqtrd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 = 0
388 387 oveq1d ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = 0 ⋅ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j
389 235 55 sylan2 ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j ∈ ℤ
390 389 zcnd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j ∈ ℂ
391 390 mul02d ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → 0 ⋅ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = 0
392 388 391 eqtrd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = 0
393 392 oveq2d ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = P − 1 ! ∏ j = 0 M c ⁡ j ! ⋅ 0
394 fzfid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → 0 … M ∈ Fin
395 33 277 sselid ⊢ φ ∧ c ∈ C ⁡ P − 1 ∧ j ∈ 0 … M → c ⁡ j ∈ ℕ 0
396 235 395 sylanl2 ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D ∧ j ∈ 0 … M → c ⁡ j ∈ ℕ 0
397 396 faccld ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D ∧ j ∈ 0 … M → c ⁡ j ! ∈ ℕ
398 394 397 fprodnncl ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → ∏ j = 0 M c ⁡ j ! ∈ ℕ
399 398 nncnd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → ∏ j = 0 M c ⁡ j ! ∈ ℂ
400 398 nnne0d ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → ∏ j = 0 M c ⁡ j ! ≠ 0
401 380 399 400 divcld ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P − 1 ! ∏ j = 0 M c ⁡ j ! ∈ ℂ
402 401 mul01d ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P − 1 ! ∏ j = 0 M c ⁡ j ! ⋅ 0 = 0
403 393 402 eqtrd ⊢ φ ∧ c ∈ C ⁡ P − 1 ∖ D → P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = 0
404 403 sumeq2dv ⊢ φ → ∑ c ∈ C ⁡ P − 1 ∖ D P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = ∑ c ∈ C ⁡ P − 1 ∖ D 0
405 diffi ⊢ C ⁡ P − 1 ∈ Fin → C ⁡ P − 1 ∖ D ∈ Fin
406 19 405 syl ⊢ φ → C ⁡ P − 1 ∖ D ∈ Fin
407 406 olcd ⊢ φ → C ⁡ P − 1 ∖ D ⊆ ℤ ≥ 0 ∨ C ⁡ P − 1 ∖ D ∈ Fin
408 sumz ⊢ C ⁡ P − 1 ∖ D ⊆ ℤ ≥ 0 ∨ C ⁡ P − 1 ∖ D ∈ Fin → ∑ c ∈ C ⁡ P − 1 ∖ D 0 = 0
409 407 408 syl ⊢ φ → ∑ c ∈ C ⁡ P − 1 ∖ D 0 = 0
410 404 409 eqtrd ⊢ φ → ∑ c ∈ C ⁡ P − 1 ∖ D P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = 0
411 234 410 oveq12d ⊢ φ → P − 1 ! ∏ j = 0 M D ⁡ j ! ⁢ if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 ⁢ ∏ j = 1 M if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j + ∑ c ∈ C ⁡ P − 1 ∖ D P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = P − 1 ! ⁢ ∏ j = 1 M − j P + 0
412 232 addridd ⊢ φ → P − 1 ! ⁢ ∏ j = 1 M − j P + 0 = P − 1 ! ⁢ ∏ j = 1 M − j P
413 nfv ⊢ Ⅎ j φ
414 413 205 227 219 fprodexp ⊢ φ → ∏ j = 1 M − j P = ∏ j = 1 M − j P
415 414 oveq2d ⊢ φ → P − 1 ! ⁢ ∏ j = 1 M − j P = P − 1 ! ⁢ ∏ j = 1 M − j P
416 411 412 415 3eqtrd ⊢ φ → P − 1 ! ∏ j = 0 M D ⁡ j ! ⁢ if P − 1 < D ⁡ 0 0 P − 1 ! P - 1 - D ⁡ 0 ! ⁢ 0 P - 1 - D ⁡ 0 ⁢ ∏ j = 1 M if P < D ⁡ j 0 P ! P − D ⁡ j ! ⁢ 0 − j P − D ⁡ j + ∑ c ∈ C ⁡ P − 1 ∖ D P − 1 ! ∏ j = 0 M c ⁡ j ! ⁢ if P − 1 < c ⁡ 0 0 P − 1 ! P - 1 - c ⁡ 0 ! ⁢ 0 P - 1 - c ⁡ 0 ⁢ ∏ j = 1 M if P < c ⁡ j 0 P ! P − c ⁡ j ! ⁢ 0 − j P − c ⁡ j = P − 1 ! ⁢ ∏ j = 1 M − j P
417 16 142 416 3eqtrd ⊢ φ → ℝ D n F ⁡ P − 1 ⁡ 0 = P − 1 ! ⁢ ∏ j = 1 M − j P