Metamath Proof Explorer


Theorem fsum0diag2

Description: Two ways to express "the sum of A ( j , k ) over the triangular region 0 <_ j , 0 <_ k , j + k <_ N ". (Contributed by Mario Carneiro, 21-Jul-2014)

Ref Expression
Hypotheses fsum0diag2.1 ⊢ x = k → B = A
fsum0diag2.2 ⊢ x = k − j → B = C
fsum0diag2.3 ⊢ φ ∧ j ∈ 0 … N ∧ k ∈ 0 … N − j → A ∈ ℂ
Assertion fsum0diag2 ⊢ φ → ∑ j = 0 N ∑ k = 0 N − j A = ∑ k = 0 N ∑ j = 0 k C

Proof

Step Hyp Ref Expression
1 fsum0diag2.1 ⊢ x = k → B = A
2 fsum0diag2.2 ⊢ x = k − j → B = C
3 fsum0diag2.3 ⊢ φ ∧ j ∈ 0 … N ∧ k ∈ 0 … N − j → A ∈ ℂ
4 fznn0sub2 ⊢ n ∈ 0 … N − j → N - j - n ∈ 0 … N − j
5 4 ad2antll ⊢ φ ∧ j ∈ 0 … N ∧ n ∈ 0 … N − j → N - j - n ∈ 0 … N − j
6 3 expr ⊢ φ ∧ j ∈ 0 … N → k ∈ 0 … N − j → A ∈ ℂ
7 6 ralrimiv ⊢ φ ∧ j ∈ 0 … N → ∀ k ∈ 0 … N − j A ∈ ℂ
8 1 eleq1d ⊢ x = k → B ∈ ℂ ↔ A ∈ ℂ
9 8 cbvralvw ⊢ ∀ x ∈ 0 … N − j B ∈ ℂ ↔ ∀ k ∈ 0 … N − j A ∈ ℂ
10 7 9 sylibr ⊢ φ ∧ j ∈ 0 … N → ∀ x ∈ 0 … N − j B ∈ ℂ
11 10 adantrr ⊢ φ ∧ j ∈ 0 … N ∧ n ∈ 0 … N − j → ∀ x ∈ 0 … N − j B ∈ ℂ
12 nfcsb1v ⊢ Ⅎ _ x ⦋ N - j - n / x⦌ B
13 12 nfel1 ⊢ Ⅎ x ⦋ N - j - n / x⦌ B ∈ ℂ
14 csbeq1a ⊢ x = N - j - n → B = ⦋ N - j - n / x⦌ B
15 14 eleq1d ⊢ x = N - j - n → B ∈ ℂ ↔ ⦋ N - j - n / x⦌ B ∈ ℂ
16 13 15 rspc ⊢ N - j - n ∈ 0 … N − j → ∀ x ∈ 0 … N − j B ∈ ℂ → ⦋ N - j - n / x⦌ B ∈ ℂ
17 5 11 16 sylc ⊢ φ ∧ j ∈ 0 … N ∧ n ∈ 0 … N − j → ⦋ N - j - n / x⦌ B ∈ ℂ
18 17 fsum0diag ⊢ φ → ∑ j = 0 N ∑ n = 0 N − j ⦋ N - j - n / x⦌ B = ∑ n = 0 N ∑ j = 0 N − n ⦋ N - j - n / x⦌ B
19 nfcsb1v ⊢ Ⅎ _ x ⦋ k / x⦌ B
20 19 nfel1 ⊢ Ⅎ x ⦋ k / x⦌ B ∈ ℂ
21 csbeq1a ⊢ x = k → B = ⦋ k / x⦌ B
22 21 eleq1d ⊢ x = k → B ∈ ℂ ↔ ⦋ k / x⦌ B ∈ ℂ
23 20 22 rspc ⊢ k ∈ 0 … N − j → ∀ x ∈ 0 … N − j B ∈ ℂ → ⦋ k / x⦌ B ∈ ℂ
24 10 23 mpan9 ⊢ φ ∧ j ∈ 0 … N ∧ k ∈ 0 … N − j → ⦋ k / x⦌ B ∈ ℂ
25 csbeq1 ⊢ k = 0 + N − j - n → ⦋ k / x⦌ B = ⦋ 0 + N − j - n / x⦌ B
26 24 25 fsumrev2 ⊢ φ ∧ j ∈ 0 … N → ∑ k = 0 N − j ⦋ k / x⦌ B = ∑ n = 0 N − j ⦋ 0 + N − j - n / x⦌ B
27 elfz3nn0 ⊢ j ∈ 0 … N → N ∈ ℕ 0
28 27 ad2antlr ⊢ φ ∧ j ∈ 0 … N ∧ n ∈ 0 … N − j → N ∈ ℕ 0
29 elfzelz ⊢ j ∈ 0 … N → j ∈ ℤ
30 29 ad2antlr ⊢ φ ∧ j ∈ 0 … N ∧ n ∈ 0 … N − j → j ∈ ℤ
31 nn0cn ⊢ N ∈ ℕ 0 → N ∈ ℂ
32 zcn ⊢ j ∈ ℤ → j ∈ ℂ
33 subcl ⊢ N ∈ ℂ ∧ j ∈ ℂ → N − j ∈ ℂ
34 31 32 33 syl2an ⊢ N ∈ ℕ 0 ∧ j ∈ ℤ → N − j ∈ ℂ
35 28 30 34 syl2anc ⊢ φ ∧ j ∈ 0 … N ∧ n ∈ 0 … N − j → N − j ∈ ℂ
36 addlid ⊢ N − j ∈ ℂ → 0 + N - j = N − j
37 35 36 syl ⊢ φ ∧ j ∈ 0 … N ∧ n ∈ 0 … N − j → 0 + N - j = N − j
38 37 oveq1d ⊢ φ ∧ j ∈ 0 … N ∧ n ∈ 0 … N − j → 0 + N − j - n = N - j - n
39 38 csbeq1d ⊢ φ ∧ j ∈ 0 … N ∧ n ∈ 0 … N − j → ⦋ 0 + N − j - n / x⦌ B = ⦋ N - j - n / x⦌ B
40 39 sumeq2dv ⊢ φ ∧ j ∈ 0 … N → ∑ n = 0 N − j ⦋ 0 + N − j - n / x⦌ B = ∑ n = 0 N − j ⦋ N - j - n / x⦌ B
41 26 40 eqtrd ⊢ φ ∧ j ∈ 0 … N → ∑ k = 0 N − j ⦋ k / x⦌ B = ∑ n = 0 N − j ⦋ N - j - n / x⦌ B
42 41 sumeq2dv ⊢ φ → ∑ j = 0 N ∑ k = 0 N − j ⦋ k / x⦌ B = ∑ j = 0 N ∑ n = 0 N − j ⦋ N - j - n / x⦌ B
43 elfz3nn0 ⊢ n ∈ 0 … N → N ∈ ℕ 0
44 43 adantl ⊢ φ ∧ n ∈ 0 … N → N ∈ ℕ 0
45 addlid ⊢ N ∈ ℂ → 0 + N = N
46 44 31 45 3syl ⊢ φ ∧ n ∈ 0 … N → 0 + N = N
47 46 oveq1d ⊢ φ ∧ n ∈ 0 … N → 0 + N - n = N − n
48 47 oveq2d ⊢ φ ∧ n ∈ 0 … N → 0 … 0 + N - n = 0 … N − n
49 47 oveq1d ⊢ φ ∧ n ∈ 0 … N → 0 + N - n - j = N - n - j
50 49 adantr ⊢ φ ∧ n ∈ 0 … N ∧ j ∈ 0 … N − n → 0 + N - n - j = N - n - j
51 43 ad2antlr ⊢ φ ∧ n ∈ 0 … N ∧ j ∈ 0 … N − n → N ∈ ℕ 0
52 elfzelz ⊢ n ∈ 0 … N → n ∈ ℤ
53 52 ad2antlr ⊢ φ ∧ n ∈ 0 … N ∧ j ∈ 0 … N − n → n ∈ ℤ
54 elfzelz ⊢ j ∈ 0 … N − n → j ∈ ℤ
55 54 adantl ⊢ φ ∧ n ∈ 0 … N ∧ j ∈ 0 … N − n → j ∈ ℤ
56 zcn ⊢ n ∈ ℤ → n ∈ ℂ
57 sub32 ⊢ N ∈ ℂ ∧ n ∈ ℂ ∧ j ∈ ℂ → N - n - j = N - j - n
58 31 56 32 57 syl3an ⊢ N ∈ ℕ 0 ∧ n ∈ ℤ ∧ j ∈ ℤ → N - n - j = N - j - n
59 51 53 55 58 syl3anc ⊢ φ ∧ n ∈ 0 … N ∧ j ∈ 0 … N − n → N - n - j = N - j - n
60 50 59 eqtrd ⊢ φ ∧ n ∈ 0 … N ∧ j ∈ 0 … N − n → 0 + N - n - j = N - j - n
61 60 csbeq1d ⊢ φ ∧ n ∈ 0 … N ∧ j ∈ 0 … N − n → ⦋ 0 + N - n - j / x⦌ B = ⦋ N - j - n / x⦌ B
62 48 61 sumeq12rdv ⊢ φ ∧ n ∈ 0 … N → ∑ j = 0 0 + N - n ⦋ 0 + N - n - j / x⦌ B = ∑ j = 0 N − n ⦋ N - j - n / x⦌ B
63 62 sumeq2dv ⊢ φ → ∑ n = 0 N ∑ j = 0 0 + N - n ⦋ 0 + N - n - j / x⦌ B = ∑ n = 0 N ∑ j = 0 N − n ⦋ N - j - n / x⦌ B
64 18 42 63 3eqtr4d ⊢ φ → ∑ j = 0 N ∑ k = 0 N − j ⦋ k / x⦌ B = ∑ n = 0 N ∑ j = 0 0 + N - n ⦋ 0 + N - n - j / x⦌ B
65 fzfid ⊢ φ ∧ k ∈ 0 … N → 0 … k ∈ Fin
66 elfzuz3 ⊢ j ∈ 0 … k → k ∈ ℤ ≥ j
67 66 adantl ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → k ∈ ℤ ≥ j
68 elfzuz3 ⊢ k ∈ 0 … N → N ∈ ℤ ≥ k
69 68 adantl ⊢ φ ∧ k ∈ 0 … N → N ∈ ℤ ≥ k
70 69 adantr ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → N ∈ ℤ ≥ k
71 elfzuzb ⊢ k ∈ j … N ↔ k ∈ ℤ ≥ j ∧ N ∈ ℤ ≥ k
72 67 70 71 sylanbrc ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → k ∈ j … N
73 elfzelz ⊢ j ∈ 0 … k → j ∈ ℤ
74 73 adantl ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → j ∈ ℤ
75 elfzel2 ⊢ k ∈ 0 … N → N ∈ ℤ
76 75 ad2antlr ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → N ∈ ℤ
77 elfzelz ⊢ k ∈ 0 … N → k ∈ ℤ
78 77 ad2antlr ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → k ∈ ℤ
79 fzsubel ⊢ j ∈ ℤ ∧ N ∈ ℤ ∧ k ∈ ℤ ∧ j ∈ ℤ → k ∈ j … N ↔ k − j ∈ j − j … N − j
80 74 76 78 74 79 syl22anc ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → k ∈ j … N ↔ k − j ∈ j − j … N − j
81 72 80 mpbid ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → k − j ∈ j − j … N − j
82 subid ⊢ j ∈ ℂ → j − j = 0
83 74 32 82 3syl ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → j − j = 0
84 83 oveq1d ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → j − j … N − j = 0 … N − j
85 81 84 eleqtrd ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → k − j ∈ 0 … N − j
86 simpll ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → φ
87 fzss2 ⊢ N ∈ ℤ ≥ k → 0 … k ⊆ 0 … N
88 69 87 syl ⊢ φ ∧ k ∈ 0 … N → 0 … k ⊆ 0 … N
89 88 sselda ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → j ∈ 0 … N
90 86 89 10 syl2anc ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → ∀ x ∈ 0 … N − j B ∈ ℂ
91 nfcsb1v ⊢ Ⅎ _ x ⦋ k − j / x⦌ B
92 91 nfel1 ⊢ Ⅎ x ⦋ k − j / x⦌ B ∈ ℂ
93 csbeq1a ⊢ x = k − j → B = ⦋ k − j / x⦌ B
94 93 eleq1d ⊢ x = k − j → B ∈ ℂ ↔ ⦋ k − j / x⦌ B ∈ ℂ
95 92 94 rspc ⊢ k − j ∈ 0 … N − j → ∀ x ∈ 0 … N − j B ∈ ℂ → ⦋ k − j / x⦌ B ∈ ℂ
96 85 90 95 sylc ⊢ φ ∧ k ∈ 0 … N ∧ j ∈ 0 … k → ⦋ k − j / x⦌ B ∈ ℂ
97 65 96 fsumcl ⊢ φ ∧ k ∈ 0 … N → ∑ j = 0 k ⦋ k − j / x⦌ B ∈ ℂ
98 oveq2 ⊢ k = 0 + N - n → 0 … k = 0 … 0 + N - n
99 oveq1 ⊢ k = 0 + N - n → k − j = 0 + N - n - j
100 99 csbeq1d ⊢ k = 0 + N - n → ⦋ k − j / x⦌ B = ⦋ 0 + N - n - j / x⦌ B
101 100 adantr ⊢ k = 0 + N - n ∧ j ∈ 0 … k → ⦋ k − j / x⦌ B = ⦋ 0 + N - n - j / x⦌ B
102 98 101 sumeq12dv ⊢ k = 0 + N - n → ∑ j = 0 k ⦋ k − j / x⦌ B = ∑ j = 0 0 + N - n ⦋ 0 + N - n - j / x⦌ B
103 97 102 fsumrev2 ⊢ φ → ∑ k = 0 N ∑ j = 0 k ⦋ k − j / x⦌ B = ∑ n = 0 N ∑ j = 0 0 + N - n ⦋ 0 + N - n - j / x⦌ B
104 64 103 eqtr4d ⊢ φ → ∑ j = 0 N ∑ k = 0 N − j ⦋ k / x⦌ B = ∑ k = 0 N ∑ j = 0 k ⦋ k − j / x⦌ B
105 vex ⊢ k ∈ V
106 105 1 csbie ⊢ ⦋ k / x⦌ B = A
107 106 a1i ⊢ j ∈ 0 … N ∧ k ∈ 0 … N − j → ⦋ k / x⦌ B = A
108 107 sumeq2dv ⊢ j ∈ 0 … N → ∑ k = 0 N − j ⦋ k / x⦌ B = ∑ k = 0 N − j A
109 108 sumeq2i ⊢ ∑ j = 0 N ∑ k = 0 N − j ⦋ k / x⦌ B = ∑ j = 0 N ∑ k = 0 N − j A
110 ovex ⊢ k − j ∈ V
111 110 2 csbie ⊢ ⦋ k − j / x⦌ B = C
112 111 a1i ⊢ k ∈ 0 … N ∧ j ∈ 0 … k → ⦋ k − j / x⦌ B = C
113 112 sumeq2dv ⊢ k ∈ 0 … N → ∑ j = 0 k ⦋ k − j / x⦌ B = ∑ j = 0 k C
114 113 sumeq2i ⊢ ∑ k = 0 N ∑ j = 0 k ⦋ k − j / x⦌ B = ∑ k = 0 N ∑ j = 0 k C
115 104 109 114 3eqtr3g ⊢ φ → ∑ j = 0 N ∑ k = 0 N − j A = ∑ k = 0 N ∑ j = 0 k C