Metamath Proof Explorer


Theorem etransclem27

Description: The N -th derivative of F applied to J is an integer. (Contributed by Glauco Siliprandi, 5-Apr-2020)

Ref Expression
Hypotheses etransclem27.s ⊢ φ → S ∈ ℝ ℂ
etransclem27.x ⊢ φ → X ∈ TopOpen ⁡ ℂ fld ↾ 𝑡 S
etransclem27.p ⊢ φ → P ∈ ℕ
etransclem27.h ⊢ H = j ∈ 0 … M ⟼ x ∈ X ⟼ x − j if j = 0 P − 1 P
etransclem27.cfi ⊢ φ → C ∈ Fin
etransclem27.cf ⊢ φ → C : dom ⁡ C ⟶ ℕ 0 0 … M
etransclem27.g ⊢ G = x ∈ X ⟼ ∑ l ∈ dom ⁡ C ∏ j = 0 M S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ x
etransclem27.jx ⊢ φ → J ∈ X
etransclem27.jz ⊢ φ → J ∈ ℤ
Assertion etransclem27 ⊢ φ → G ⁡ J ∈ ℤ

Proof

Step Hyp Ref Expression
1 etransclem27.s ⊢ φ → S ∈ ℝ ℂ
2 etransclem27.x ⊢ φ → X ∈ TopOpen ⁡ ℂ fld ↾ 𝑡 S
3 etransclem27.p ⊢ φ → P ∈ ℕ
4 etransclem27.h ⊢ H = j ∈ 0 … M ⟼ x ∈ X ⟼ x − j if j = 0 P − 1 P
5 etransclem27.cfi ⊢ φ → C ∈ Fin
6 etransclem27.cf ⊢ φ → C : dom ⁡ C ⟶ ℕ 0 0 … M
7 etransclem27.g ⊢ G = x ∈ X ⟼ ∑ l ∈ dom ⁡ C ∏ j = 0 M S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ x
8 etransclem27.jx ⊢ φ → J ∈ X
9 etransclem27.jz ⊢ φ → J ∈ ℤ
10 fveq2 ⊢ x = J → S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ x = S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ J
11 10 prodeq2ad ⊢ x = J → ∏ j = 0 M S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ x = ∏ j = 0 M S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ J
12 11 sumeq2sdv ⊢ x = J → ∑ l ∈ dom ⁡ C ∏ j = 0 M S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ x = ∑ l ∈ dom ⁡ C ∏ j = 0 M S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ J
13 dmfi ⊢ C ∈ Fin → dom ⁡ C ∈ Fin
14 5 13 syl ⊢ φ → dom ⁡ C ∈ Fin
15 fzfid ⊢ φ ∧ l ∈ dom ⁡ C → 0 … M ∈ Fin
16 1 ad2antrr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → S ∈ ℝ ℂ
17 2 ad2antrr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → X ∈ TopOpen ⁡ ℂ fld ↾ 𝑡 S
18 3 ad2antrr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → P ∈ ℕ
19 etransclem5 ⊢ j ∈ 0 … M ⟼ x ∈ X ⟼ x − j if j = 0 P − 1 P = z ∈ 0 … M ⟼ y ∈ X ⟼ y − z if z = 0 P − 1 P
20 4 19 eqtri ⊢ H = z ∈ 0 … M ⟼ y ∈ X ⟼ y − z if z = 0 P − 1 P
21 simpr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → j ∈ 0 … M
22 6 ffvelcdmda ⊢ φ ∧ l ∈ dom ⁡ C → C ⁡ l ∈ ℕ 0 0 … M
23 elmapi ⊢ C ⁡ l ∈ ℕ 0 0 … M → C ⁡ l : 0 … M ⟶ ℕ 0
24 22 23 syl ⊢ φ ∧ l ∈ dom ⁡ C → C ⁡ l : 0 … M ⟶ ℕ 0
25 24 ffvelcdmda ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → C ⁡ l ⁡ j ∈ ℕ 0
26 16 17 18 20 21 25 etransclem20 ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → S D n H ⁡ j ⁡ C ⁡ l ⁡ j : X ⟶ ℂ
27 8 ad2antrr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → J ∈ X
28 26 27 ffvelcdmd ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ J ∈ ℂ
29 15 28 fprodcl ⊢ φ ∧ l ∈ dom ⁡ C → ∏ j = 0 M S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ J ∈ ℂ
30 14 29 fsumcl ⊢ φ → ∑ l ∈ dom ⁡ C ∏ j = 0 M S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ J ∈ ℂ
31 7 12 8 30 fvmptd3 ⊢ φ → G ⁡ J = ∑ l ∈ dom ⁡ C ∏ j = 0 M S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ J
32 16 17 18 20 21 25 27 etransclem21 ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ J = if if j = 0 P − 1 P < C ⁡ l ⁡ j 0 if j = 0 P − 1 P ! if j = 0 P − 1 P − C ⁡ l ⁡ j ! ⁢ J − j if j = 0 P − 1 P − C ⁡ l ⁡ j
33 iftrue ⊢ if j = 0 P − 1 P < C ⁡ l ⁡ j → if if j = 0 P − 1 P < C ⁡ l ⁡ j 0 if j = 0 P − 1 P ! if j = 0 P − 1 P − C ⁡ l ⁡ j ! ⁢ J − j if j = 0 P − 1 P − C ⁡ l ⁡ j = 0
34 0zd ⊢ if j = 0 P − 1 P < C ⁡ l ⁡ j → 0 ∈ ℤ
35 33 34 eqeltrd ⊢ if j = 0 P − 1 P < C ⁡ l ⁡ j → if if j = 0 P − 1 P < C ⁡ l ⁡ j 0 if j = 0 P − 1 P ! if j = 0 P − 1 P − C ⁡ l ⁡ j ! ⁢ J − j if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℤ
36 35 adantl ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ if j = 0 P − 1 P < C ⁡ l ⁡ j → if if j = 0 P − 1 P < C ⁡ l ⁡ j 0 if j = 0 P − 1 P ! if j = 0 P − 1 P − C ⁡ l ⁡ j ! ⁢ J − j if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℤ
37 0zd ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → 0 ∈ ℤ
38 nnm1nn0 ⊢ P ∈ ℕ → P − 1 ∈ ℕ 0
39 3 38 syl ⊢ φ → P − 1 ∈ ℕ 0
40 3 nnnn0d ⊢ φ → P ∈ ℕ 0
41 39 40 ifcld ⊢ φ → if j = 0 P − 1 P ∈ ℕ 0
42 41 nn0zd ⊢ φ → if j = 0 P − 1 P ∈ ℤ
43 42 ad3antrrr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → if j = 0 P − 1 P ∈ ℤ
44 25 nn0zd ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → C ⁡ l ⁡ j ∈ ℤ
45 44 adantr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → C ⁡ l ⁡ j ∈ ℤ
46 43 45 zsubcld ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℤ
47 45 zred ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → C ⁡ l ⁡ j ∈ ℝ
48 43 zred ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → if j = 0 P − 1 P ∈ ℝ
49 simpr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j
50 47 48 49 nltled ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → C ⁡ l ⁡ j ≤ if j = 0 P − 1 P
51 48 47 subge0d ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → 0 ≤ if j = 0 P − 1 P − C ⁡ l ⁡ j ↔ C ⁡ l ⁡ j ≤ if j = 0 P − 1 P
52 50 51 mpbird ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → 0 ≤ if j = 0 P − 1 P − C ⁡ l ⁡ j
53 0red ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → 0 ∈ ℝ
54 25 nn0red ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → C ⁡ l ⁡ j ∈ ℝ
55 41 nn0red ⊢ φ → if j = 0 P − 1 P ∈ ℝ
56 55 ad2antrr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → if j = 0 P − 1 P ∈ ℝ
57 25 nn0ge0d ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → 0 ≤ C ⁡ l ⁡ j
58 53 54 56 57 lesub2dd ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → if j = 0 P − 1 P − C ⁡ l ⁡ j ≤ if j = 0 P − 1 P − 0
59 56 recnd ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → if j = 0 P − 1 P ∈ ℂ
60 59 subid1d ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → if j = 0 P − 1 P − 0 = if j = 0 P − 1 P
61 58 60 breqtrd ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → if j = 0 P − 1 P − C ⁡ l ⁡ j ≤ if j = 0 P − 1 P
62 61 adantr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → if j = 0 P − 1 P − C ⁡ l ⁡ j ≤ if j = 0 P − 1 P
63 37 43 46 52 62 elfzd ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ 0 … if j = 0 P − 1 P
64 permnn ⊢ if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ 0 … if j = 0 P − 1 P → if j = 0 P − 1 P ! if j = 0 P − 1 P − C ⁡ l ⁡ j ! ∈ ℕ
65 63 64 syl ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → if j = 0 P − 1 P ! if j = 0 P − 1 P − C ⁡ l ⁡ j ! ∈ ℕ
66 65 nnzd ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → if j = 0 P − 1 P ! if j = 0 P − 1 P − C ⁡ l ⁡ j ! ∈ ℤ
67 9 ad3antrrr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → J ∈ ℤ
68 elfzelz ⊢ j ∈ 0 … M → j ∈ ℤ
69 68 ad2antlr ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → j ∈ ℤ
70 67 69 zsubcld ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → J − j ∈ ℤ
71 elnn0z ⊢ if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℕ 0 ↔ if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℤ ∧ 0 ≤ if j = 0 P − 1 P − C ⁡ l ⁡ j
72 46 52 71 sylanbrc ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℕ 0
73 zexpcl ⊢ J − j ∈ ℤ ∧ if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℕ 0 → J − j if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℤ
74 70 72 73 syl2anc ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → J − j if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℤ
75 66 74 zmulcld ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → if j = 0 P − 1 P ! if j = 0 P − 1 P − C ⁡ l ⁡ j ! ⁢ J − j if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℤ
76 37 75 ifcld ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M ∧ ¬ if j = 0 P − 1 P < C ⁡ l ⁡ j → if if j = 0 P − 1 P < C ⁡ l ⁡ j 0 if j = 0 P − 1 P ! if j = 0 P − 1 P − C ⁡ l ⁡ j ! ⁢ J − j if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℤ
77 36 76 pm2.61dan ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → if if j = 0 P − 1 P < C ⁡ l ⁡ j 0 if j = 0 P − 1 P ! if j = 0 P − 1 P − C ⁡ l ⁡ j ! ⁢ J − j if j = 0 P − 1 P − C ⁡ l ⁡ j ∈ ℤ
78 32 77 eqeltrd ⊢ φ ∧ l ∈ dom ⁡ C ∧ j ∈ 0 … M → S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ J ∈ ℤ
79 15 78 fprodzcl ⊢ φ ∧ l ∈ dom ⁡ C → ∏ j = 0 M S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ J ∈ ℤ
80 14 79 fsumzcl ⊢ φ → ∑ l ∈ dom ⁡ C ∏ j = 0 M S D n H ⁡ j ⁡ C ⁡ l ⁡ j ⁡ J ∈ ℤ
81 31 80 eqeltrd ⊢ φ → G ⁡ J ∈ ℤ