Metamath Proof Explorer


Theorem bpolysum

Description: A sum for Bernoulli polynomials. (Contributed by Scott Fenton, 16-May-2014) (Proof shortened by Mario Carneiro, 22-May-2014)

Ref Expression
Assertion bpolysum ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → ∑ k = 0 N ( N k) ⁢ k BernPoly X N - k + 1 = X N

Proof

Step Hyp Ref Expression
1 simpl ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N ∈ ℕ 0
2 nn0uz ⊢ ℕ 0 = ℤ ≥ 0
3 1 2 eleqtrdi ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N ∈ ℤ ≥ 0
4 elfzelz ⊢ k ∈ 0 … N → k ∈ ℤ
5 bccl ⊢ N ∈ ℕ 0 ∧ k ∈ ℤ → ( N k) ∈ ℕ 0
6 1 4 5 syl2an ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ ∧ k ∈ 0 … N → ( N k) ∈ ℕ 0
7 6 nn0cnd ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ ∧ k ∈ 0 … N → ( N k) ∈ ℂ
8 elfznn0 ⊢ k ∈ 0 … N → k ∈ ℕ 0
9 simpr ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → X ∈ ℂ
10 bpolycl ⊢ k ∈ ℕ 0 ∧ X ∈ ℂ → k BernPoly X ∈ ℂ
11 8 9 10 syl2anr ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ ∧ k ∈ 0 … N → k BernPoly X ∈ ℂ
12 fznn0sub ⊢ k ∈ 0 … N → N − k ∈ ℕ 0
13 12 adantl ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ ∧ k ∈ 0 … N → N − k ∈ ℕ 0
14 nn0p1nn ⊢ N − k ∈ ℕ 0 → N - k + 1 ∈ ℕ
15 13 14 syl ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ ∧ k ∈ 0 … N → N - k + 1 ∈ ℕ
16 15 nncnd ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ ∧ k ∈ 0 … N → N - k + 1 ∈ ℂ
17 15 nnne0d ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ ∧ k ∈ 0 … N → N - k + 1 ≠ 0
18 11 16 17 divcld ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ ∧ k ∈ 0 … N → k BernPoly X N - k + 1 ∈ ℂ
19 7 18 mulcld ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ ∧ k ∈ 0 … N → ( N k) ⁢ k BernPoly X N - k + 1 ∈ ℂ
20 oveq2 ⊢ k = N → ( N k) = ( N N)
21 oveq1 ⊢ k = N → k BernPoly X = N BernPoly X
22 oveq2 ⊢ k = N → N − k = N − N
23 22 oveq1d ⊢ k = N → N - k + 1 = N - N + 1
24 21 23 oveq12d ⊢ k = N → k BernPoly X N - k + 1 = N BernPoly X N - N + 1
25 20 24 oveq12d ⊢ k = N → ( N k) ⁢ k BernPoly X N - k + 1 = ( N N) ⁢ N BernPoly X N - N + 1
26 3 19 25 fsumm1 ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → ∑ k = 0 N ( N k) ⁢ k BernPoly X N - k + 1 = ∑ k = 0 N − 1 ( N k) ⁢ k BernPoly X N - k + 1 + ( N N) ⁢ N BernPoly X N - N + 1
27 bcnn ⊢ N ∈ ℕ 0 → ( N N) = 1
28 27 adantr ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → ( N N) = 1
29 nn0cn ⊢ N ∈ ℕ 0 → N ∈ ℂ
30 29 adantr ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N ∈ ℂ
31 30 subidd ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N − N = 0
32 31 oveq1d ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N - N + 1 = 0 + 1
33 0p1e1 ⊢ 0 + 1 = 1
34 32 33 eqtrdi ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N - N + 1 = 1
35 34 oveq2d ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N BernPoly X N - N + 1 = N BernPoly X 1
36 bpolycl ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N BernPoly X ∈ ℂ
37 36 div1d ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N BernPoly X 1 = N BernPoly X
38 35 37 eqtrd ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N BernPoly X N - N + 1 = N BernPoly X
39 28 38 oveq12d ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → ( N N) ⁢ N BernPoly X N - N + 1 = 1 ⁢ N BernPoly X
40 36 mullidd ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → 1 ⁢ N BernPoly X = N BernPoly X
41 39 40 eqtrd ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → ( N N) ⁢ N BernPoly X N - N + 1 = N BernPoly X
42 41 oveq2d ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → ∑ k = 0 N − 1 ( N k) ⁢ k BernPoly X N - k + 1 + ( N N) ⁢ N BernPoly X N - N + 1 = ∑ k = 0 N − 1 ( N k) ⁢ k BernPoly X N - k + 1 + N BernPoly X
43 bpolyval ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N BernPoly X = X N − ∑ k = 0 N − 1 ( N k) ⁢ k BernPoly X N - k + 1
44 43 eqcomd ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → X N − ∑ k = 0 N − 1 ( N k) ⁢ k BernPoly X N - k + 1 = N BernPoly X
45 expcl ⊢ X ∈ ℂ ∧ N ∈ ℕ 0 → X N ∈ ℂ
46 45 ancoms ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → X N ∈ ℂ
47 fzfid ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → 0 … N − 1 ∈ Fin
48 fzssp1 ⊢ 0 … N − 1 ⊆ 0 … N - 1 + 1
49 ax-1cn ⊢ 1 ∈ ℂ
50 npcan ⊢ N ∈ ℂ ∧ 1 ∈ ℂ → N - 1 + 1 = N
51 30 49 50 sylancl ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → N - 1 + 1 = N
52 51 oveq2d ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → 0 … N - 1 + 1 = 0 … N
53 48 52 sseqtrid ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → 0 … N − 1 ⊆ 0 … N
54 53 sselda ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ ∧ k ∈ 0 … N − 1 → k ∈ 0 … N
55 54 19 syldan ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ ∧ k ∈ 0 … N − 1 → ( N k) ⁢ k BernPoly X N - k + 1 ∈ ℂ
56 47 55 fsumcl ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → ∑ k = 0 N − 1 ( N k) ⁢ k BernPoly X N - k + 1 ∈ ℂ
57 46 56 36 subaddd ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → X N − ∑ k = 0 N − 1 ( N k) ⁢ k BernPoly X N - k + 1 = N BernPoly X ↔ ∑ k = 0 N − 1 ( N k) ⁢ k BernPoly X N - k + 1 + N BernPoly X = X N
58 44 57 mpbid ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → ∑ k = 0 N − 1 ( N k) ⁢ k BernPoly X N - k + 1 + N BernPoly X = X N
59 26 42 58 3eqtrd ⊢ N ∈ ℕ 0 ∧ X ∈ ℂ → ∑ k = 0 N ( N k) ⁢ k BernPoly X N - k + 1 = X N