Proof of Theorem etransclem26
Step | Hyp | Ref
| Expression |
1 | | etransclem26.d |
. . . . . . . . . 10
⊢ (𝜑 → 𝐷 ∈ (𝐶‘𝑁)) |
2 | | etransclem26.c |
. . . . . . . . . . 11
⊢ 𝐶 = (𝑛 ∈ ℕ0 ↦ {𝑐 ∈ ((0...𝑛) ↑m (0...𝑀)) ∣ Σ𝑗 ∈ (0...𝑀)(𝑐‘𝑗) = 𝑛}) |
3 | | etransclem26.n |
. . . . . . . . . . 11
⊢ (𝜑 → 𝑁 ∈
ℕ0) |
4 | 2, 3 | etransclem12 43787 |
. . . . . . . . . 10
⊢ (𝜑 → (𝐶‘𝑁) = {𝑐 ∈ ((0...𝑁) ↑m (0...𝑀)) ∣ Σ𝑗 ∈ (0...𝑀)(𝑐‘𝑗) = 𝑁}) |
5 | 1, 4 | eleqtrd 2841 |
. . . . . . . . 9
⊢ (𝜑 → 𝐷 ∈ {𝑐 ∈ ((0...𝑁) ↑m (0...𝑀)) ∣ Σ𝑗 ∈ (0...𝑀)(𝑐‘𝑗) = 𝑁}) |
6 | | fveq1 6773 |
. . . . . . . . . . . 12
⊢ (𝑐 = 𝐷 → (𝑐‘𝑗) = (𝐷‘𝑗)) |
7 | 6 | sumeq2sdv 15416 |
. . . . . . . . . . 11
⊢ (𝑐 = 𝐷 → Σ𝑗 ∈ (0...𝑀)(𝑐‘𝑗) = Σ𝑗 ∈ (0...𝑀)(𝐷‘𝑗)) |
8 | 7 | eqeq1d 2740 |
. . . . . . . . . 10
⊢ (𝑐 = 𝐷 → (Σ𝑗 ∈ (0...𝑀)(𝑐‘𝑗) = 𝑁 ↔ Σ𝑗 ∈ (0...𝑀)(𝐷‘𝑗) = 𝑁)) |
9 | 8 | elrab 3624 |
. . . . . . . . 9
⊢ (𝐷 ∈ {𝑐 ∈ ((0...𝑁) ↑m (0...𝑀)) ∣ Σ𝑗 ∈ (0...𝑀)(𝑐‘𝑗) = 𝑁} ↔ (𝐷 ∈ ((0...𝑁) ↑m (0...𝑀)) ∧ Σ𝑗 ∈ (0...𝑀)(𝐷‘𝑗) = 𝑁)) |
10 | 5, 9 | sylib 217 |
. . . . . . . 8
⊢ (𝜑 → (𝐷 ∈ ((0...𝑁) ↑m (0...𝑀)) ∧ Σ𝑗 ∈ (0...𝑀)(𝐷‘𝑗) = 𝑁)) |
11 | 10 | simprd 496 |
. . . . . . 7
⊢ (𝜑 → Σ𝑗 ∈ (0...𝑀)(𝐷‘𝑗) = 𝑁) |
12 | 11 | eqcomd 2744 |
. . . . . 6
⊢ (𝜑 → 𝑁 = Σ𝑗 ∈ (0...𝑀)(𝐷‘𝑗)) |
13 | 12 | fveq2d 6778 |
. . . . 5
⊢ (𝜑 → (!‘𝑁) = (!‘Σ𝑗 ∈ (0...𝑀)(𝐷‘𝑗))) |
14 | 13 | oveq1d 7290 |
. . . 4
⊢ (𝜑 → ((!‘𝑁) / ∏𝑗 ∈ (0...𝑀)(!‘(𝐷‘𝑗))) = ((!‘Σ𝑗 ∈ (0...𝑀)(𝐷‘𝑗)) / ∏𝑗 ∈ (0...𝑀)(!‘(𝐷‘𝑗)))) |
15 | | nfcv 2907 |
. . . . 5
⊢
Ⅎ𝑗𝐷 |
16 | | fzfid 13693 |
. . . . 5
⊢ (𝜑 → (0...𝑀) ∈ Fin) |
17 | | nn0ex 12239 |
. . . . . . 7
⊢
ℕ0 ∈ V |
18 | | fzssnn0 42856 |
. . . . . . 7
⊢
(0...𝑁) ⊆
ℕ0 |
19 | | mapss 8677 |
. . . . . . 7
⊢
((ℕ0 ∈ V ∧ (0...𝑁) ⊆ ℕ0) →
((0...𝑁) ↑m
(0...𝑀)) ⊆
(ℕ0 ↑m (0...𝑀))) |
20 | 17, 18, 19 | mp2an 689 |
. . . . . 6
⊢
((0...𝑁)
↑m (0...𝑀))
⊆ (ℕ0 ↑m (0...𝑀)) |
21 | 10 | simpld 495 |
. . . . . 6
⊢ (𝜑 → 𝐷 ∈ ((0...𝑁) ↑m (0...𝑀))) |
22 | 20, 21 | sselid 3919 |
. . . . 5
⊢ (𝜑 → 𝐷 ∈ (ℕ0
↑m (0...𝑀))) |
23 | 15, 16, 22 | mccl 43139 |
. . . 4
⊢ (𝜑 → ((!‘Σ𝑗 ∈ (0...𝑀)(𝐷‘𝑗)) / ∏𝑗 ∈ (0...𝑀)(!‘(𝐷‘𝑗))) ∈ ℕ) |
24 | 14, 23 | eqeltrd 2839 |
. . 3
⊢ (𝜑 → ((!‘𝑁) / ∏𝑗 ∈ (0...𝑀)(!‘(𝐷‘𝑗))) ∈ ℕ) |
25 | 24 | nnzd 12425 |
. 2
⊢ (𝜑 → ((!‘𝑁) / ∏𝑗 ∈ (0...𝑀)(!‘(𝐷‘𝑗))) ∈ ℤ) |
26 | | etransclem26.p |
. . . 4
⊢ (𝜑 → 𝑃 ∈ ℕ) |
27 | | etransclem26.m |
. . . 4
⊢ (𝜑 → 𝑀 ∈
ℕ0) |
28 | | elmapi 8637 |
. . . . 5
⊢ (𝐷 ∈ ((0...𝑁) ↑m (0...𝑀)) → 𝐷:(0...𝑀)⟶(0...𝑁)) |
29 | 21, 28 | syl 17 |
. . . 4
⊢ (𝜑 → 𝐷:(0...𝑀)⟶(0...𝑁)) |
30 | | etransclem26.jz |
. . . 4
⊢ (𝜑 → 𝐽 ∈ ℤ) |
31 | 26, 27, 29, 30 | etransclem10 43785 |
. . 3
⊢ (𝜑 → if((𝑃 − 1) < (𝐷‘0), 0, (((!‘(𝑃 − 1)) / (!‘((𝑃 − 1) − (𝐷‘0)))) · (𝐽↑((𝑃 − 1) − (𝐷‘0))))) ∈
ℤ) |
32 | | fzfid 13693 |
. . . 4
⊢ (𝜑 → (1...𝑀) ∈ Fin) |
33 | 26 | adantr 481 |
. . . . 5
⊢ ((𝜑 ∧ 𝑗 ∈ (1...𝑀)) → 𝑃 ∈ ℕ) |
34 | 29 | adantr 481 |
. . . . 5
⊢ ((𝜑 ∧ 𝑗 ∈ (1...𝑀)) → 𝐷:(0...𝑀)⟶(0...𝑁)) |
35 | | 0z 12330 |
. . . . . . . 8
⊢ 0 ∈
ℤ |
36 | | fzp1ss 13307 |
. . . . . . . 8
⊢ (0 ∈
ℤ → ((0 + 1)...𝑀) ⊆ (0...𝑀)) |
37 | 35, 36 | ax-mp 5 |
. . . . . . 7
⊢ ((0 +
1)...𝑀) ⊆ (0...𝑀) |
38 | | 1e0p1 12479 |
. . . . . . . . . 10
⊢ 1 = (0 +
1) |
39 | 38 | oveq1i 7285 |
. . . . . . . . 9
⊢
(1...𝑀) = ((0 +
1)...𝑀) |
40 | 39 | eleq2i 2830 |
. . . . . . . 8
⊢ (𝑗 ∈ (1...𝑀) ↔ 𝑗 ∈ ((0 + 1)...𝑀)) |
41 | 40 | biimpi 215 |
. . . . . . 7
⊢ (𝑗 ∈ (1...𝑀) → 𝑗 ∈ ((0 + 1)...𝑀)) |
42 | 37, 41 | sselid 3919 |
. . . . . 6
⊢ (𝑗 ∈ (1...𝑀) → 𝑗 ∈ (0...𝑀)) |
43 | 42 | adantl 482 |
. . . . 5
⊢ ((𝜑 ∧ 𝑗 ∈ (1...𝑀)) → 𝑗 ∈ (0...𝑀)) |
44 | 30 | adantr 481 |
. . . . 5
⊢ ((𝜑 ∧ 𝑗 ∈ (1...𝑀)) → 𝐽 ∈ ℤ) |
45 | 33, 34, 43, 44 | etransclem3 43778 |
. . . 4
⊢ ((𝜑 ∧ 𝑗 ∈ (1...𝑀)) → if(𝑃 < (𝐷‘𝑗), 0, (((!‘𝑃) / (!‘(𝑃 − (𝐷‘𝑗)))) · ((𝐽 − 𝑗)↑(𝑃 − (𝐷‘𝑗))))) ∈ ℤ) |
46 | 32, 45 | fprodzcl 15664 |
. . 3
⊢ (𝜑 → ∏𝑗 ∈ (1...𝑀)if(𝑃 < (𝐷‘𝑗), 0, (((!‘𝑃) / (!‘(𝑃 − (𝐷‘𝑗)))) · ((𝐽 − 𝑗)↑(𝑃 − (𝐷‘𝑗))))) ∈ ℤ) |
47 | 31, 46 | zmulcld 12432 |
. 2
⊢ (𝜑 → (if((𝑃 − 1) < (𝐷‘0), 0, (((!‘(𝑃 − 1)) / (!‘((𝑃 − 1) − (𝐷‘0)))) · (𝐽↑((𝑃 − 1) − (𝐷‘0))))) · ∏𝑗 ∈ (1...𝑀)if(𝑃 < (𝐷‘𝑗), 0, (((!‘𝑃) / (!‘(𝑃 − (𝐷‘𝑗)))) · ((𝐽 − 𝑗)↑(𝑃 − (𝐷‘𝑗)))))) ∈ ℤ) |
48 | 25, 47 | zmulcld 12432 |
1
⊢ (𝜑 → (((!‘𝑁) / ∏𝑗 ∈ (0...𝑀)(!‘(𝐷‘𝑗))) · (if((𝑃 − 1) < (𝐷‘0), 0, (((!‘(𝑃 − 1)) / (!‘((𝑃 − 1) − (𝐷‘0)))) · (𝐽↑((𝑃 − 1) − (𝐷‘0))))) · ∏𝑗 ∈ (1...𝑀)if(𝑃 < (𝐷‘𝑗), 0, (((!‘𝑃) / (!‘(𝑃 − (𝐷‘𝑗)))) · ((𝐽 − 𝑗)↑(𝑃 − (𝐷‘𝑗))))))) ∈ ℤ) |