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 ⊢ ( 𝜑 → 𝑃 ∈ ℕ )
etransclem35.m ⊢ ( 𝜑 → 𝑀 ∈ ℕ0 )
etransclem35.f ⊢ 𝐹 = ( 𝑥 ∈ ℝ ↦ ( ( 𝑥 ↑ ( 𝑃 − 1 ) ) · ∏ 𝑗 ∈ ( 1 ... 𝑀 ) ( ( 𝑥 − 𝑗 ) ↑ 𝑃 ) ) )
etransclem35.c ⊢ 𝐶 = ( 𝑛 ∈ ℕ0 ↦ { 𝑐 ∈ ( ( 0 ... 𝑛 ) ↑m ( 0 ... 𝑀 ) ) ∣ Σ 𝑗 ∈ ( 0 ... 𝑀 ) ( 𝑐 ‘ 𝑗 ) = 𝑛 } )
etransclem35.d ⊢ 𝐷 = ( 𝑗 ∈ ( 0 ... 𝑀 ) ↦ if ( 𝑗 = 0 , ( 𝑃 − 1 ) , 0 ) )
Assertion etransclem35 ( 𝜑 → ( ( ( ℝ D𝑛 𝐹 ) ‘ ( 𝑃 − 1 ) ) ‘ 0 ) = ( ( ! ‘ ( 𝑃 − 1 ) ) · ( ∏ 𝑗 ∈ ( 1 ... 𝑀 ) - 𝑗 ↑ 𝑃 ) ) )

Proof

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