Metamath Proof Explorer


Theorem nn0seqcvgd

Description: A strictly-decreasing nonnegative integer sequence with initial term N reaches zero by the N th term. Deduction version. (Contributed by Paul Chapman, 31-Mar-2011)

Ref Expression
Hypotheses nn0seqcvgd.1 ⊢ φ → F : ℕ 0 ⟶ ℕ 0
nn0seqcvgd.2 ⊢ φ → N = F ⁡ 0
nn0seqcvgd.3 ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k + 1 ≠ 0 → F ⁡ k + 1 < F ⁡ k
Assertion nn0seqcvgd ⊢ φ → F ⁡ N = 0

Proof

Step Hyp Ref Expression
1 nn0seqcvgd.1 ⊢ φ → F : ℕ 0 ⟶ ℕ 0
2 nn0seqcvgd.2 ⊢ φ → N = F ⁡ 0
3 nn0seqcvgd.3 ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k + 1 ≠ 0 → F ⁡ k + 1 < F ⁡ k
4 0nn0 ⊢ 0 ∈ ℕ 0
5 ffvelcdm ⊢ F : ℕ 0 ⟶ ℕ 0 ∧ 0 ∈ ℕ 0 → F ⁡ 0 ∈ ℕ 0
6 1 4 5 sylancl ⊢ φ → F ⁡ 0 ∈ ℕ 0
7 2 6 eqeltrd ⊢ φ → N ∈ ℕ 0
8 7 nn0red ⊢ φ → N ∈ ℝ
9 8 leidd ⊢ φ → N ≤ N
10 fveq2 ⊢ m = 0 → F ⁡ m = F ⁡ 0
11 oveq2 ⊢ m = 0 → N − m = N − 0
12 10 11 breq12d ⊢ m = 0 → F ⁡ m ≤ N − m ↔ F ⁡ 0 ≤ N − 0
13 12 imbi2d ⊢ m = 0 → φ → F ⁡ m ≤ N − m ↔ φ → F ⁡ 0 ≤ N − 0
14 fveq2 ⊢ m = k → F ⁡ m = F ⁡ k
15 oveq2 ⊢ m = k → N − m = N − k
16 14 15 breq12d ⊢ m = k → F ⁡ m ≤ N − m ↔ F ⁡ k ≤ N − k
17 16 imbi2d ⊢ m = k → φ → F ⁡ m ≤ N − m ↔ φ → F ⁡ k ≤ N − k
18 fveq2 ⊢ m = k + 1 → F ⁡ m = F ⁡ k + 1
19 oveq2 ⊢ m = k + 1 → N − m = N − k + 1
20 18 19 breq12d ⊢ m = k + 1 → F ⁡ m ≤ N − m ↔ F ⁡ k + 1 ≤ N − k + 1
21 20 imbi2d ⊢ m = k + 1 → φ → F ⁡ m ≤ N − m ↔ φ → F ⁡ k + 1 ≤ N − k + 1
22 fveq2 ⊢ m = N → F ⁡ m = F ⁡ N
23 oveq2 ⊢ m = N → N − m = N − N
24 22 23 breq12d ⊢ m = N → F ⁡ m ≤ N − m ↔ F ⁡ N ≤ N − N
25 24 imbi2d ⊢ m = N → φ → F ⁡ m ≤ N − m ↔ φ → F ⁡ N ≤ N − N
26 2 9 eqbrtrrd ⊢ φ → F ⁡ 0 ≤ N
27 8 recnd ⊢ φ → N ∈ ℂ
28 27 subid1d ⊢ φ → N − 0 = N
29 26 28 breqtrrd ⊢ φ → F ⁡ 0 ≤ N − 0
30 29 a1i ⊢ N ∈ ℕ 0 → φ → F ⁡ 0 ≤ N − 0
31 nn0re ⊢ k ∈ ℕ 0 → k ∈ ℝ
32 posdif ⊢ k ∈ ℝ ∧ N ∈ ℝ → k < N ↔ 0 < N − k
33 31 8 32 syl2anr ⊢ φ ∧ k ∈ ℕ 0 → k < N ↔ 0 < N − k
34 33 adantr ⊢ φ ∧ k ∈ ℕ 0 ∧ F ⁡ k + 1 = 0 → k < N ↔ 0 < N − k
35 breq1 ⊢ F ⁡ k + 1 = 0 → F ⁡ k + 1 < N − k ↔ 0 < N − k
36 35 adantl ⊢ φ ∧ k ∈ ℕ 0 ∧ F ⁡ k + 1 = 0 → F ⁡ k + 1 < N − k ↔ 0 < N − k
37 peano2nn0 ⊢ k ∈ ℕ 0 → k + 1 ∈ ℕ 0
38 ffvelcdm ⊢ F : ℕ 0 ⟶ ℕ 0 ∧ k + 1 ∈ ℕ 0 → F ⁡ k + 1 ∈ ℕ 0
39 1 37 38 syl2an ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k + 1 ∈ ℕ 0
40 39 nn0zd ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k + 1 ∈ ℤ
41 7 nn0zd ⊢ φ → N ∈ ℤ
42 nn0z ⊢ k ∈ ℕ 0 → k ∈ ℤ
43 zsubcl ⊢ N ∈ ℤ ∧ k ∈ ℤ → N − k ∈ ℤ
44 41 42 43 syl2an ⊢ φ ∧ k ∈ ℕ 0 → N − k ∈ ℤ
45 zltlem1 ⊢ F ⁡ k + 1 ∈ ℤ ∧ N − k ∈ ℤ → F ⁡ k + 1 < N − k ↔ F ⁡ k + 1 ≤ N - k - 1
46 40 44 45 syl2anc ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k + 1 < N − k ↔ F ⁡ k + 1 ≤ N - k - 1
47 nn0cn ⊢ k ∈ ℕ 0 → k ∈ ℂ
48 ax-1cn ⊢ 1 ∈ ℂ
49 subsub4 ⊢ N ∈ ℂ ∧ k ∈ ℂ ∧ 1 ∈ ℂ → N - k - 1 = N − k + 1
50 48 49 mp3an3 ⊢ N ∈ ℂ ∧ k ∈ ℂ → N - k - 1 = N − k + 1
51 27 47 50 syl2an ⊢ φ ∧ k ∈ ℕ 0 → N - k - 1 = N − k + 1
52 51 breq2d ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k + 1 ≤ N - k - 1 ↔ F ⁡ k + 1 ≤ N − k + 1
53 46 52 bitrd ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k + 1 < N − k ↔ F ⁡ k + 1 ≤ N − k + 1
54 53 adantr ⊢ φ ∧ k ∈ ℕ 0 ∧ F ⁡ k + 1 = 0 → F ⁡ k + 1 < N − k ↔ F ⁡ k + 1 ≤ N − k + 1
55 34 36 54 3bitr2d ⊢ φ ∧ k ∈ ℕ 0 ∧ F ⁡ k + 1 = 0 → k < N ↔ F ⁡ k + 1 ≤ N − k + 1
56 55 biimpa ⊢ φ ∧ k ∈ ℕ 0 ∧ F ⁡ k + 1 = 0 ∧ k < N → F ⁡ k + 1 ≤ N − k + 1
57 56 an32s ⊢ φ ∧ k ∈ ℕ 0 ∧ k < N ∧ F ⁡ k + 1 = 0 → F ⁡ k + 1 ≤ N − k + 1
58 57 a1d ⊢ φ ∧ k ∈ ℕ 0 ∧ k < N ∧ F ⁡ k + 1 = 0 → F ⁡ k ≤ N − k → F ⁡ k + 1 ≤ N − k + 1
59 39 nn0red ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k + 1 ∈ ℝ
60 1 ffvelcdmda ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k ∈ ℕ 0
61 60 nn0red ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k ∈ ℝ
62 44 zred ⊢ φ ∧ k ∈ ℕ 0 → N − k ∈ ℝ
63 ltletr ⊢ F ⁡ k + 1 ∈ ℝ ∧ F ⁡ k ∈ ℝ ∧ N − k ∈ ℝ → F ⁡ k + 1 < F ⁡ k ∧ F ⁡ k ≤ N − k → F ⁡ k + 1 < N − k
64 59 61 62 63 syl3anc ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k + 1 < F ⁡ k ∧ F ⁡ k ≤ N − k → F ⁡ k + 1 < N − k
65 64 53 sylibd ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k + 1 < F ⁡ k ∧ F ⁡ k ≤ N − k → F ⁡ k + 1 ≤ N − k + 1
66 3 65 syland ⊢ φ ∧ k ∈ ℕ 0 → F ⁡ k + 1 ≠ 0 ∧ F ⁡ k ≤ N − k → F ⁡ k + 1 ≤ N − k + 1
67 66 adantr ⊢ φ ∧ k ∈ ℕ 0 ∧ k < N → F ⁡ k + 1 ≠ 0 ∧ F ⁡ k ≤ N − k → F ⁡ k + 1 ≤ N − k + 1
68 67 expdimp ⊢ φ ∧ k ∈ ℕ 0 ∧ k < N ∧ F ⁡ k + 1 ≠ 0 → F ⁡ k ≤ N − k → F ⁡ k + 1 ≤ N − k + 1
69 58 68 pm2.61dane ⊢ φ ∧ k ∈ ℕ 0 ∧ k < N → F ⁡ k ≤ N − k → F ⁡ k + 1 ≤ N − k + 1
70 69 anasss ⊢ φ ∧ k ∈ ℕ 0 ∧ k < N → F ⁡ k ≤ N − k → F ⁡ k + 1 ≤ N − k + 1
71 70 expcom ⊢ k ∈ ℕ 0 ∧ k < N → φ → F ⁡ k ≤ N − k → F ⁡ k + 1 ≤ N − k + 1
72 71 a2d ⊢ k ∈ ℕ 0 ∧ k < N → φ → F ⁡ k ≤ N − k → φ → F ⁡ k + 1 ≤ N − k + 1
73 72 3adant1 ⊢ N ∈ ℕ 0 ∧ k ∈ ℕ 0 ∧ k < N → φ → F ⁡ k ≤ N − k → φ → F ⁡ k + 1 ≤ N − k + 1
74 13 17 21 25 30 73 fnn0ind ⊢ N ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ N ≤ N → φ → F ⁡ N ≤ N − N
75 7 7 9 74 syl3anc ⊢ φ → φ → F ⁡ N ≤ N − N
76 75 pm2.43i ⊢ φ → F ⁡ N ≤ N − N
77 27 subidd ⊢ φ → N − N = 0
78 76 77 breqtrd ⊢ φ → F ⁡ N ≤ 0
79 1 7 ffvelcdmd ⊢ φ → F ⁡ N ∈ ℕ 0
80 79 nn0ge0d ⊢ φ → 0 ≤ F ⁡ N
81 79 nn0red ⊢ φ → F ⁡ N ∈ ℝ
82 0re ⊢ 0 ∈ ℝ
83 letri3 ⊢ F ⁡ N ∈ ℝ ∧ 0 ∈ ℝ → F ⁡ N = 0 ↔ F ⁡ N ≤ 0 ∧ 0 ≤ F ⁡ N
84 81 82 83 sylancl ⊢ φ → F ⁡ N = 0 ↔ F ⁡ N ≤ 0 ∧ 0 ≤ F ⁡ N
85 78 80 84 mpbir2and ⊢ φ → F ⁡ N = 0