Metamath Proof Explorer


Theorem summolem2a

Description: Lemma for summo . (Contributed by Mario Carneiro, 3-Apr-2014) (Revised by Mario Carneiro, 20-Apr-2014)

Ref Expression
Hypotheses summo.1 ⊢ F = k ∈ ℤ ⟼ if k ∈ A B 0
summo.2 ⊢ φ ∧ k ∈ A → B ∈ ℂ
summo.3 ⊢ G = n ∈ ℕ ⟼ ⦋ f ⁡ n / k⦌ B
summolem2.4 ⊢ H = n ∈ ℕ ⟼ ⦋ K ⁡ n / k⦌ B
summolem2.5 ⊢ φ → N ∈ ℕ
summolem2.6 ⊢ φ → M ∈ ℤ
summolem2.7 ⊢ φ → A ⊆ ℤ ≥ M
summolem2.8 ⊢ φ → f : 1 … N ⟶ 1-1 onto A
summolem2.9 ⊢ φ → K Isom < , < 1 … A A
Assertion summolem2a ⊢ φ → seq M + F ⇝ seq 1 + G ⁡ N

Proof

Step Hyp Ref Expression
1 summo.1 ⊢ F = k ∈ ℤ ⟼ if k ∈ A B 0
2 summo.2 ⊢ φ ∧ k ∈ A → B ∈ ℂ
3 summo.3 ⊢ G = n ∈ ℕ ⟼ ⦋ f ⁡ n / k⦌ B
4 summolem2.4 ⊢ H = n ∈ ℕ ⟼ ⦋ K ⁡ n / k⦌ B
5 summolem2.5 ⊢ φ → N ∈ ℕ
6 summolem2.6 ⊢ φ → M ∈ ℤ
7 summolem2.7 ⊢ φ → A ⊆ ℤ ≥ M
8 summolem2.8 ⊢ φ → f : 1 … N ⟶ 1-1 onto A
9 summolem2.9 ⊢ φ → K Isom < , < 1 … A A
10 fzfid ⊢ φ → 1 … N ∈ Fin
11 10 8 hasheqf1od ⊢ φ → 1 … N = A
12 nnnn0 ⊢ N ∈ ℕ → N ∈ ℕ 0
13 hashfz1 ⊢ N ∈ ℕ 0 → 1 … N = N
14 5 12 13 3syl ⊢ φ → 1 … N = N
15 11 14 eqtr3d ⊢ φ → A = N
16 15 oveq2d ⊢ φ → 1 … A = 1 … N
17 isoeq4 ⊢ 1 … A = 1 … N → K Isom < , < 1 … A A ↔ K Isom < , < 1 … N A
18 16 17 syl ⊢ φ → K Isom < , < 1 … A A ↔ K Isom < , < 1 … N A
19 9 18 mpbid ⊢ φ → K Isom < , < 1 … N A
20 isof1o ⊢ K Isom < , < 1 … N A → K : 1 … N ⟶ 1-1 onto A
21 19 20 syl ⊢ φ → K : 1 … N ⟶ 1-1 onto A
22 f1of ⊢ K : 1 … N ⟶ 1-1 onto A → K : 1 … N ⟶ A
23 21 22 syl ⊢ φ → K : 1 … N ⟶ A
24 nnuz ⊢ ℕ = ℤ ≥ 1
25 5 24 eleqtrdi ⊢ φ → N ∈ ℤ ≥ 1
26 eluzfz2 ⊢ N ∈ ℤ ≥ 1 → N ∈ 1 … N
27 25 26 syl ⊢ φ → N ∈ 1 … N
28 23 27 ffvelcdmd ⊢ φ → K ⁡ N ∈ A
29 7 28 sseldd ⊢ φ → K ⁡ N ∈ ℤ ≥ M
30 7 sselda ⊢ φ ∧ n ∈ A → n ∈ ℤ ≥ M
31 f1ocnvfv2 ⊢ K : 1 … N ⟶ 1-1 onto A ∧ n ∈ A → K ⁡ K -1 ⁡ n = n
32 21 31 sylan ⊢ φ ∧ n ∈ A → K ⁡ K -1 ⁡ n = n
33 f1ocnv ⊢ K : 1 … N ⟶ 1-1 onto A → K -1 : A ⟶ 1-1 onto 1 … N
34 f1of ⊢ K -1 : A ⟶ 1-1 onto 1 … N → K -1 : A ⟶ 1 … N
35 21 33 34 3syl ⊢ φ → K -1 : A ⟶ 1 … N
36 35 ffvelcdmda ⊢ φ ∧ n ∈ A → K -1 ⁡ n ∈ 1 … N
37 elfzle2 ⊢ K -1 ⁡ n ∈ 1 … N → K -1 ⁡ n ≤ N
38 36 37 syl ⊢ φ ∧ n ∈ A → K -1 ⁡ n ≤ N
39 19 adantr ⊢ φ ∧ n ∈ A → K Isom < , < 1 … N A
40 fzssuz ⊢ 1 … N ⊆ ℤ ≥ 1
41 uzssz ⊢ ℤ ≥ 1 ⊆ ℤ
42 zssre ⊢ ℤ ⊆ ℝ
43 41 42 sstri ⊢ ℤ ≥ 1 ⊆ ℝ
44 40 43 sstri ⊢ 1 … N ⊆ ℝ
45 ressxr ⊢ ℝ ⊆ ℝ *
46 44 45 sstri ⊢ 1 … N ⊆ ℝ *
47 46 a1i ⊢ φ ∧ n ∈ A → 1 … N ⊆ ℝ *
48 7 adantr ⊢ φ ∧ n ∈ A → A ⊆ ℤ ≥ M
49 uzssz ⊢ ℤ ≥ M ⊆ ℤ
50 49 42 sstri ⊢ ℤ ≥ M ⊆ ℝ
51 48 50 sstrdi ⊢ φ ∧ n ∈ A → A ⊆ ℝ
52 51 45 sstrdi ⊢ φ ∧ n ∈ A → A ⊆ ℝ *
53 27 adantr ⊢ φ ∧ n ∈ A → N ∈ 1 … N
54 leisorel ⊢ K Isom < , < 1 … N A ∧ 1 … N ⊆ ℝ * ∧ A ⊆ ℝ * ∧ K -1 ⁡ n ∈ 1 … N ∧ N ∈ 1 … N → K -1 ⁡ n ≤ N ↔ K ⁡ K -1 ⁡ n ≤ K ⁡ N
55 39 47 52 36 53 54 syl122anc ⊢ φ ∧ n ∈ A → K -1 ⁡ n ≤ N ↔ K ⁡ K -1 ⁡ n ≤ K ⁡ N
56 38 55 mpbid ⊢ φ ∧ n ∈ A → K ⁡ K -1 ⁡ n ≤ K ⁡ N
57 32 56 eqbrtrrd ⊢ φ ∧ n ∈ A → n ≤ K ⁡ N
58 eluzelz ⊢ n ∈ ℤ ≥ M → n ∈ ℤ
59 30 58 syl ⊢ φ ∧ n ∈ A → n ∈ ℤ
60 eluzelz ⊢ K ⁡ N ∈ ℤ ≥ M → K ⁡ N ∈ ℤ
61 29 60 syl ⊢ φ → K ⁡ N ∈ ℤ
62 61 adantr ⊢ φ ∧ n ∈ A → K ⁡ N ∈ ℤ
63 eluz ⊢ n ∈ ℤ ∧ K ⁡ N ∈ ℤ → K ⁡ N ∈ ℤ ≥ n ↔ n ≤ K ⁡ N
64 59 62 63 syl2anc ⊢ φ ∧ n ∈ A → K ⁡ N ∈ ℤ ≥ n ↔ n ≤ K ⁡ N
65 57 64 mpbird ⊢ φ ∧ n ∈ A → K ⁡ N ∈ ℤ ≥ n
66 elfzuzb ⊢ n ∈ M … K ⁡ N ↔ n ∈ ℤ ≥ M ∧ K ⁡ N ∈ ℤ ≥ n
67 30 65 66 sylanbrc ⊢ φ ∧ n ∈ A → n ∈ M … K ⁡ N
68 67 ex ⊢ φ → n ∈ A → n ∈ M … K ⁡ N
69 68 ssrdv ⊢ φ → A ⊆ M … K ⁡ N
70 1 2 29 69 fsumcvg ⊢ φ → seq M + F ⇝ seq M + F ⁡ K ⁡ N
71 addlid ⊢ m ∈ ℂ → 0 + m = m
72 71 adantl ⊢ φ ∧ m ∈ ℂ → 0 + m = m
73 addrid ⊢ m ∈ ℂ → m + 0 = m
74 73 adantl ⊢ φ ∧ m ∈ ℂ → m + 0 = m
75 addcl ⊢ m ∈ ℂ ∧ x ∈ ℂ → m + x ∈ ℂ
76 75 adantl ⊢ φ ∧ m ∈ ℂ ∧ x ∈ ℂ → m + x ∈ ℂ
77 0cnd ⊢ φ → 0 ∈ ℂ
78 27 16 eleqtrrd ⊢ φ → N ∈ 1 … A
79 iftrue ⊢ k ∈ A → if k ∈ A B 0 = B
80 79 adantl ⊢ φ ∧ k ∈ A → if k ∈ A B 0 = B
81 80 2 eqeltrd ⊢ φ ∧ k ∈ A → if k ∈ A B 0 ∈ ℂ
82 81 ex ⊢ φ → k ∈ A → if k ∈ A B 0 ∈ ℂ
83 iffalse ⊢ ¬ k ∈ A → if k ∈ A B 0 = 0
84 0cn ⊢ 0 ∈ ℂ
85 83 84 eqeltrdi ⊢ ¬ k ∈ A → if k ∈ A B 0 ∈ ℂ
86 82 85 pm2.61d1 ⊢ φ → if k ∈ A B 0 ∈ ℂ
87 86 adantr ⊢ φ ∧ k ∈ ℤ → if k ∈ A B 0 ∈ ℂ
88 87 1 fmptd ⊢ φ → F : ℤ ⟶ ℂ
89 elfzelz ⊢ m ∈ M … K ⁡ A → m ∈ ℤ
90 ffvelcdm ⊢ F : ℤ ⟶ ℂ ∧ m ∈ ℤ → F ⁡ m ∈ ℂ
91 88 89 90 syl2an ⊢ φ ∧ m ∈ M … K ⁡ A → F ⁡ m ∈ ℂ
92 fveqeq2 ⊢ k = m → F ⁡ k = 0 ↔ F ⁡ m = 0
93 eldifi ⊢ k ∈ M … K ⁡ A ∖ A → k ∈ M … K ⁡ A
94 93 elfzelzd ⊢ k ∈ M … K ⁡ A ∖ A → k ∈ ℤ
95 eldifn ⊢ k ∈ M … K ⁡ A ∖ A → ¬ k ∈ A
96 95 83 syl ⊢ k ∈ M … K ⁡ A ∖ A → if k ∈ A B 0 = 0
97 96 84 eqeltrdi ⊢ k ∈ M … K ⁡ A ∖ A → if k ∈ A B 0 ∈ ℂ
98 1 fvmpt2 ⊢ k ∈ ℤ ∧ if k ∈ A B 0 ∈ ℂ → F ⁡ k = if k ∈ A B 0
99 94 97 98 syl2anc ⊢ k ∈ M … K ⁡ A ∖ A → F ⁡ k = if k ∈ A B 0
100 99 96 eqtrd ⊢ k ∈ M … K ⁡ A ∖ A → F ⁡ k = 0
101 92 100 vtoclga ⊢ m ∈ M … K ⁡ A ∖ A → F ⁡ m = 0
102 101 adantl ⊢ φ ∧ m ∈ M … K ⁡ A ∖ A → F ⁡ m = 0
103 isof1o ⊢ K Isom < , < 1 … A A → K : 1 … A ⟶ 1-1 onto A
104 f1of ⊢ K : 1 … A ⟶ 1-1 onto A → K : 1 … A ⟶ A
105 9 103 104 3syl ⊢ φ → K : 1 … A ⟶ A
106 105 ffvelcdmda ⊢ φ ∧ x ∈ 1 … A → K ⁡ x ∈ A
107 106 iftrued ⊢ φ ∧ x ∈ 1 … A → if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0 = ⦋ K ⁡ x / k⦌ B
108 7 adantr ⊢ φ ∧ x ∈ 1 … A → A ⊆ ℤ ≥ M
109 108 106 sseldd ⊢ φ ∧ x ∈ 1 … A → K ⁡ x ∈ ℤ ≥ M
110 eluzelz ⊢ K ⁡ x ∈ ℤ ≥ M → K ⁡ x ∈ ℤ
111 109 110 syl ⊢ φ ∧ x ∈ 1 … A → K ⁡ x ∈ ℤ
112 nfv ⊢ Ⅎ k φ
113 nfv ⊢ Ⅎ k K ⁡ x ∈ A
114 nfcsb1v ⊢ Ⅎ _ k ⦋ K ⁡ x / k⦌ B
115 nfcv ⊢ Ⅎ _ k 0
116 113 114 115 nfif ⊢ Ⅎ _ k if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0
117 116 nfel1 ⊢ Ⅎ k if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0 ∈ ℂ
118 112 117 nfim ⊢ Ⅎ k φ → if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0 ∈ ℂ
119 fvex ⊢ K ⁡ x ∈ V
120 eleq1 ⊢ k = K ⁡ x → k ∈ A ↔ K ⁡ x ∈ A
121 csbeq1a ⊢ k = K ⁡ x → B = ⦋ K ⁡ x / k⦌ B
122 120 121 ifbieq1d ⊢ k = K ⁡ x → if k ∈ A B 0 = if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0
123 122 eleq1d ⊢ k = K ⁡ x → if k ∈ A B 0 ∈ ℂ ↔ if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0 ∈ ℂ
124 123 imbi2d ⊢ k = K ⁡ x → φ → if k ∈ A B 0 ∈ ℂ ↔ φ → if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0 ∈ ℂ
125 118 119 124 86 vtoclf ⊢ φ → if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0 ∈ ℂ
126 125 adantr ⊢ φ ∧ x ∈ 1 … A → if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0 ∈ ℂ
127 eleq1 ⊢ n = K ⁡ x → n ∈ A ↔ K ⁡ x ∈ A
128 csbeq1 ⊢ n = K ⁡ x → ⦋ n / k⦌ B = ⦋ K ⁡ x / k⦌ B
129 127 128 ifbieq1d ⊢ n = K ⁡ x → if n ∈ A ⦋ n / k⦌ B 0 = if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0
130 nfcv ⊢ Ⅎ _ n if k ∈ A B 0
131 nfv ⊢ Ⅎ k n ∈ A
132 nfcsb1v ⊢ Ⅎ _ k ⦋ n / k⦌ B
133 131 132 115 nfif ⊢ Ⅎ _ k if n ∈ A ⦋ n / k⦌ B 0
134 eleq1 ⊢ k = n → k ∈ A ↔ n ∈ A
135 csbeq1a ⊢ k = n → B = ⦋ n / k⦌ B
136 134 135 ifbieq1d ⊢ k = n → if k ∈ A B 0 = if n ∈ A ⦋ n / k⦌ B 0
137 130 133 136 cbvmpt ⊢ k ∈ ℤ ⟼ if k ∈ A B 0 = n ∈ ℤ ⟼ if n ∈ A ⦋ n / k⦌ B 0
138 1 137 eqtri ⊢ F = n ∈ ℤ ⟼ if n ∈ A ⦋ n / k⦌ B 0
139 129 138 fvmptg ⊢ K ⁡ x ∈ ℤ ∧ if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0 ∈ ℂ → F ⁡ K ⁡ x = if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0
140 111 126 139 syl2anc ⊢ φ ∧ x ∈ 1 … A → F ⁡ K ⁡ x = if K ⁡ x ∈ A ⦋ K ⁡ x / k⦌ B 0
141 elfznn ⊢ x ∈ 1 … A → x ∈ ℕ
142 107 126 eqeltrrd ⊢ φ ∧ x ∈ 1 … A → ⦋ K ⁡ x / k⦌ B ∈ ℂ
143 fveq2 ⊢ n = x → K ⁡ n = K ⁡ x
144 143 csbeq1d ⊢ n = x → ⦋ K ⁡ n / k⦌ B = ⦋ K ⁡ x / k⦌ B
145 144 4 fvmptg ⊢ x ∈ ℕ ∧ ⦋ K ⁡ x / k⦌ B ∈ ℂ → H ⁡ x = ⦋ K ⁡ x / k⦌ B
146 141 142 145 syl2an2 ⊢ φ ∧ x ∈ 1 … A → H ⁡ x = ⦋ K ⁡ x / k⦌ B
147 107 140 146 3eqtr4rd ⊢ φ ∧ x ∈ 1 … A → H ⁡ x = F ⁡ K ⁡ x
148 72 74 76 77 9 78 7 91 102 147 seqcoll ⊢ φ → seq M + F ⁡ K ⁡ N = seq 1 + H ⁡ N
149 5 5 jca ⊢ φ → N ∈ ℕ ∧ N ∈ ℕ
150 1 2 3 4 149 8 21 summolem3 ⊢ φ → seq 1 + G ⁡ N = seq 1 + H ⁡ N
151 148 150 eqtr4d ⊢ φ → seq M + F ⁡ K ⁡ N = seq 1 + G ⁡ N
152 70 151 breqtrd ⊢ φ → seq M + F ⇝ seq 1 + G ⁡ N