Metamath Proof Explorer


Theorem iseraltlem1

Description: Lemma for iseralt . A decreasing sequence with limit zero consists of positive terms. (Contributed by Mario Carneiro, 6-Apr-2015)

Ref Expression
Hypotheses iseralt.1 𝑍 = ( ℤ𝑀 )
iseralt.2 ( 𝜑𝑀 ∈ ℤ )
iseralt.3 ( 𝜑𝐺 : 𝑍 ⟶ ℝ )
iseralt.4 ( ( 𝜑𝑘𝑍 ) → ( 𝐺 ‘ ( 𝑘 + 1 ) ) ≤ ( 𝐺𝑘 ) )
iseralt.5 ( 𝜑𝐺 ⇝ 0 )
Assertion iseraltlem1 ( ( 𝜑𝑁𝑍 ) → 0 ≤ ( 𝐺𝑁 ) )

Proof

Step Hyp Ref Expression
1 iseralt.1 𝑍 = ( ℤ𝑀 )
2 iseralt.2 ( 𝜑𝑀 ∈ ℤ )
3 iseralt.3 ( 𝜑𝐺 : 𝑍 ⟶ ℝ )
4 iseralt.4 ( ( 𝜑𝑘𝑍 ) → ( 𝐺 ‘ ( 𝑘 + 1 ) ) ≤ ( 𝐺𝑘 ) )
5 iseralt.5 ( 𝜑𝐺 ⇝ 0 )
6 eqid ( ℤ𝑁 ) = ( ℤ𝑁 )
7 eluzelz ( 𝑁 ∈ ( ℤ𝑀 ) → 𝑁 ∈ ℤ )
8 7 1 eleq2s ( 𝑁𝑍𝑁 ∈ ℤ )
9 8 adantl ( ( 𝜑𝑁𝑍 ) → 𝑁 ∈ ℤ )
10 5 adantr ( ( 𝜑𝑁𝑍 ) → 𝐺 ⇝ 0 )
11 3 ffvelrnda ( ( 𝜑𝑁𝑍 ) → ( 𝐺𝑁 ) ∈ ℝ )
12 11 recnd ( ( 𝜑𝑁𝑍 ) → ( 𝐺𝑁 ) ∈ ℂ )
13 1z 1 ∈ ℤ
14 uzssz ( ℤ ‘ 1 ) ⊆ ℤ
15 zex ℤ ∈ V
16 14 15 climconst2 ( ( ( 𝐺𝑁 ) ∈ ℂ ∧ 1 ∈ ℤ ) → ( ℤ × { ( 𝐺𝑁 ) } ) ⇝ ( 𝐺𝑁 ) )
17 12 13 16 sylancl ( ( 𝜑𝑁𝑍 ) → ( ℤ × { ( 𝐺𝑁 ) } ) ⇝ ( 𝐺𝑁 ) )
18 3 ad2antrr ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → 𝐺 : 𝑍 ⟶ ℝ )
19 1 uztrn2 ( ( 𝑁𝑍𝑛 ∈ ( ℤ𝑁 ) ) → 𝑛𝑍 )
20 19 adantll ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → 𝑛𝑍 )
21 18 20 ffvelrnd ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → ( 𝐺𝑛 ) ∈ ℝ )
22 eluzelz ( 𝑛 ∈ ( ℤ𝑁 ) → 𝑛 ∈ ℤ )
23 22 adantl ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → 𝑛 ∈ ℤ )
24 fvex ( 𝐺𝑁 ) ∈ V
25 24 fvconst2 ( 𝑛 ∈ ℤ → ( ( ℤ × { ( 𝐺𝑁 ) } ) ‘ 𝑛 ) = ( 𝐺𝑁 ) )
26 23 25 syl ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → ( ( ℤ × { ( 𝐺𝑁 ) } ) ‘ 𝑛 ) = ( 𝐺𝑁 ) )
27 11 adantr ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → ( 𝐺𝑁 ) ∈ ℝ )
28 26 27 eqeltrd ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → ( ( ℤ × { ( 𝐺𝑁 ) } ) ‘ 𝑛 ) ∈ ℝ )
29 simpr ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → 𝑛 ∈ ( ℤ𝑁 ) )
30 18 adantr ( ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) ∧ 𝑘 ∈ ( 𝑁 ... 𝑛 ) ) → 𝐺 : 𝑍 ⟶ ℝ )
31 simplr ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → 𝑁𝑍 )
32 elfzuz ( 𝑘 ∈ ( 𝑁 ... 𝑛 ) → 𝑘 ∈ ( ℤ𝑁 ) )
33 1 uztrn2 ( ( 𝑁𝑍𝑘 ∈ ( ℤ𝑁 ) ) → 𝑘𝑍 )
34 31 32 33 syl2an ( ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) ∧ 𝑘 ∈ ( 𝑁 ... 𝑛 ) ) → 𝑘𝑍 )
35 30 34 ffvelrnd ( ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) ∧ 𝑘 ∈ ( 𝑁 ... 𝑛 ) ) → ( 𝐺𝑘 ) ∈ ℝ )
36 simpl ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → ( 𝜑𝑁𝑍 ) )
37 elfzuz ( 𝑘 ∈ ( 𝑁 ... ( 𝑛 − 1 ) ) → 𝑘 ∈ ( ℤ𝑁 ) )
38 33 adantll ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑘 ∈ ( ℤ𝑁 ) ) → 𝑘𝑍 )
39 4 adantlr ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑘𝑍 ) → ( 𝐺 ‘ ( 𝑘 + 1 ) ) ≤ ( 𝐺𝑘 ) )
40 38 39 syldan ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑘 ∈ ( ℤ𝑁 ) ) → ( 𝐺 ‘ ( 𝑘 + 1 ) ) ≤ ( 𝐺𝑘 ) )
41 36 37 40 syl2an ( ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) ∧ 𝑘 ∈ ( 𝑁 ... ( 𝑛 − 1 ) ) ) → ( 𝐺 ‘ ( 𝑘 + 1 ) ) ≤ ( 𝐺𝑘 ) )
42 29 35 41 monoord2 ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → ( 𝐺𝑛 ) ≤ ( 𝐺𝑁 ) )
43 42 26 breqtrrd ( ( ( 𝜑𝑁𝑍 ) ∧ 𝑛 ∈ ( ℤ𝑁 ) ) → ( 𝐺𝑛 ) ≤ ( ( ℤ × { ( 𝐺𝑁 ) } ) ‘ 𝑛 ) )
44 6 9 10 17 21 28 43 climle ( ( 𝜑𝑁𝑍 ) → 0 ≤ ( 𝐺𝑁 ) )