This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Shift membership in a finite sequence of naturals. (Contributed by Scott Fenton, 17-Jul-2013)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | fznatpl1 | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → ( 𝐼 + 1 ) ∈ ( 1 ... 𝑁 ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | 1red | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → 1 ∈ ℝ ) | |
| 2 | elfzelz | ⊢ ( 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) → 𝐼 ∈ ℤ ) | |
| 3 | 2 | zred | ⊢ ( 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) → 𝐼 ∈ ℝ ) |
| 4 | 3 | adantl | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → 𝐼 ∈ ℝ ) |
| 5 | peano2re | ⊢ ( 𝐼 ∈ ℝ → ( 𝐼 + 1 ) ∈ ℝ ) | |
| 6 | 4 5 | syl | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → ( 𝐼 + 1 ) ∈ ℝ ) |
| 7 | peano2re | ⊢ ( 1 ∈ ℝ → ( 1 + 1 ) ∈ ℝ ) | |
| 8 | 1 7 | syl | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → ( 1 + 1 ) ∈ ℝ ) |
| 9 | 1 | ltp1d | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → 1 < ( 1 + 1 ) ) |
| 10 | elfzle1 | ⊢ ( 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) → 1 ≤ 𝐼 ) | |
| 11 | 10 | adantl | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → 1 ≤ 𝐼 ) |
| 12 | 1re | ⊢ 1 ∈ ℝ | |
| 13 | leadd1 | ⊢ ( ( 1 ∈ ℝ ∧ 𝐼 ∈ ℝ ∧ 1 ∈ ℝ ) → ( 1 ≤ 𝐼 ↔ ( 1 + 1 ) ≤ ( 𝐼 + 1 ) ) ) | |
| 14 | 12 12 13 | mp3an13 | ⊢ ( 𝐼 ∈ ℝ → ( 1 ≤ 𝐼 ↔ ( 1 + 1 ) ≤ ( 𝐼 + 1 ) ) ) |
| 15 | 4 14 | syl | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → ( 1 ≤ 𝐼 ↔ ( 1 + 1 ) ≤ ( 𝐼 + 1 ) ) ) |
| 16 | 11 15 | mpbid | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → ( 1 + 1 ) ≤ ( 𝐼 + 1 ) ) |
| 17 | 1 8 6 9 16 | ltletrd | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → 1 < ( 𝐼 + 1 ) ) |
| 18 | 1 6 17 | ltled | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → 1 ≤ ( 𝐼 + 1 ) ) |
| 19 | elfzle2 | ⊢ ( 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) → 𝐼 ≤ ( 𝑁 − 1 ) ) | |
| 20 | 19 | adantl | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → 𝐼 ≤ ( 𝑁 − 1 ) ) |
| 21 | nnz | ⊢ ( 𝑁 ∈ ℕ → 𝑁 ∈ ℤ ) | |
| 22 | 21 | adantr | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → 𝑁 ∈ ℤ ) |
| 23 | 22 | zred | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → 𝑁 ∈ ℝ ) |
| 24 | leaddsub | ⊢ ( ( 𝐼 ∈ ℝ ∧ 1 ∈ ℝ ∧ 𝑁 ∈ ℝ ) → ( ( 𝐼 + 1 ) ≤ 𝑁 ↔ 𝐼 ≤ ( 𝑁 − 1 ) ) ) | |
| 25 | 12 24 | mp3an2 | ⊢ ( ( 𝐼 ∈ ℝ ∧ 𝑁 ∈ ℝ ) → ( ( 𝐼 + 1 ) ≤ 𝑁 ↔ 𝐼 ≤ ( 𝑁 − 1 ) ) ) |
| 26 | 3 23 25 | syl2an2 | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → ( ( 𝐼 + 1 ) ≤ 𝑁 ↔ 𝐼 ≤ ( 𝑁 − 1 ) ) ) |
| 27 | 20 26 | mpbird | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → ( 𝐼 + 1 ) ≤ 𝑁 ) |
| 28 | 2 | peano2zd | ⊢ ( 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) → ( 𝐼 + 1 ) ∈ ℤ ) |
| 29 | 1z | ⊢ 1 ∈ ℤ | |
| 30 | elfz | ⊢ ( ( ( 𝐼 + 1 ) ∈ ℤ ∧ 1 ∈ ℤ ∧ 𝑁 ∈ ℤ ) → ( ( 𝐼 + 1 ) ∈ ( 1 ... 𝑁 ) ↔ ( 1 ≤ ( 𝐼 + 1 ) ∧ ( 𝐼 + 1 ) ≤ 𝑁 ) ) ) | |
| 31 | 29 30 | mp3an2 | ⊢ ( ( ( 𝐼 + 1 ) ∈ ℤ ∧ 𝑁 ∈ ℤ ) → ( ( 𝐼 + 1 ) ∈ ( 1 ... 𝑁 ) ↔ ( 1 ≤ ( 𝐼 + 1 ) ∧ ( 𝐼 + 1 ) ≤ 𝑁 ) ) ) |
| 32 | 28 22 31 | syl2an2 | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → ( ( 𝐼 + 1 ) ∈ ( 1 ... 𝑁 ) ↔ ( 1 ≤ ( 𝐼 + 1 ) ∧ ( 𝐼 + 1 ) ≤ 𝑁 ) ) ) |
| 33 | 18 27 32 | mpbir2and | ⊢ ( ( 𝑁 ∈ ℕ ∧ 𝐼 ∈ ( 1 ... ( 𝑁 − 1 ) ) ) → ( 𝐼 + 1 ) ∈ ( 1 ... 𝑁 ) ) |